組合語言裡的巨集指令不知道是什麼意思,求解釋一下

2021-03-03 20:36:47 字數 1322 閱讀 2016

1樓:白雲深處是我家

就是求x(dw型別)的平方,結果送回xxh, xxl指向的兩個儲存單元。

組合語言裡jc指令是什麼意思?

2樓:天池血崩

jc=jump if carry

當運算產生進製標誌時,即cf=1時,跳轉到目標程式處。e69da5e6ba9062616964757a686964616f31333363396462

例如:add al,bl

jc carrybit

inc al;如果al+bl產生了進製,這一句就不執行了。

carrybit:

neg al

這段程式沒有任何意義,僅僅作為示例哈。。。

相同的指令還有:

jnc,當cf=0時跳轉;

jz,當zf=1時跳轉,jnz,當zf=0時跳轉;

jo,當of=1時跳轉,jno,當of=0時跳轉;

jp,當pf=1時跳轉......

依此類推,標誌暫存器的各個位基本上都可以用來做「條件跳轉」的條件。

當然,條件跳轉不僅僅是標誌暫存器位,還可以是cx如:a_loop:

;do something

dec cx

jcxz

jmp a_loop

可以看出,這一段相當於乙個loop指令。。。

還有,用於大小判斷型的:

cmp op1,op2

jxx ***x

其中jxx有以下幾種:

ja表示op1>op2,jna表示op1<=op2;

jb表示op1=op2;

je表示op1=op2,jne表示op1<>op2;

還有jae、jnae、jbe、jnbe等等功能重複不再贅述。

以上是無符號數的比較。

有符號數的比較將a換成g,將b換成l即可。

a=above b=below g=greater l=less介紹的夠詳細了吧。。。

組合語言中jns的意思,詳細解釋一下!謝謝

3樓:匿名使用者

這條指令用漢語解釋就是:如果符號位s不為1,就跳轉。

這條指令是相對跳轉,指令的運算元是向前或向後的相對位元組數,當然,如果用組合語言書寫,可以直接寫上轉移的目標位址。

其實說書上的內容很生澀,還不如說你還沒有充分接觸組合語言和處理器,多看看,就不會有這樣的感覺的。

4樓:匿名使用者

就是標誌的意思sf=0時跳轉

5樓:匿名使用者

如果符號位s不為1,就跳轉

組合語言的偽指令是什麼

簡單理解就是匯 bai編du語言中那些zhi 沒有對應機器指令的彙編指令。dao 在計算機中直接執行的程式所對專應屬的叫機器 指令 語言,如果直接按二進位制表示出來就是一系列 0 和 1 當然,用機器語言編寫程式的時代一般都使用八進位制或十六進製制,它們和二進位制是3位對1位或4位對1位的關係,從而...

組合語言中符號的意思是什麼,在組合語言裡 符號代表什麼意思?

看圖你就會明白。實際上標號x1的首地址為ascii碼c的字單元地址,x2的首地址開始於 db 16 dup 語句,緊接著x1的終止地址,那麼它的首地址相對於x1偏移4 1個位元組單元 x2的終止地址相對於其首地址偏移16 1個位元組單元,相對於x1偏移18個位元組單元。那麼 x1實際上是當前地址與x...

BL W在組合語言中是什麼意思,在組合語言裡 表示什麼意思 ?具體怎麼用?

表示該指令為32位指令,單獨用bl 可能是16位的,也可能是32位,keil為了區分 反彙編時 用bl.w 表示 32位,bl表示16位 單獨用bl 有2種可能的情況 1 16位 2 32位 使用keil是為了區分 反彙編時 用bl.w 表示 32位 bl是arm彙編中用來呼叫子程式的指令,它把bl...