彙編指令按運算元個數怎麼分類,彙編指令,INC指令的運算元都可以是什麼

2022-10-14 06:35:15 字數 3033 閱讀 6226

1樓:胖大海君

呵呵 俺來為你解答吧

1 彙編指令 由於cpu不同 其指令中的運算元的數目也是略有不同的

指令中可以無運算元 如nop 空操作指令

也可以有一個運算元 即叫單目運算元 inc bx

也可以有2個運算元 叫做雙目運算元 mov [2000h],1234

最多的彙編指令 也可以有3個運算元 叫做3目運算元

(微控制器8051cpu cjne 運算元1,運算元2,運算元3**移到目的地址)

2 一般cpu指令中最多的就是雙目運算元指令

如 mov [2000h],1234

其機器指令為 0c7h 00h 20h 34h 12h

0c7h為操作碼:即指令功能為 mov mem,data

00h 20h 為目的運算元的直接有效地址 即2000h

34h 12h 為源運算元即立即數1234h

呵呵 滿意就給加分嘍

2樓:匿名使用者

指令中可以無運算元 如nop 空操作指令也可以有一個運算元 即叫單目運算元 inc ax也可以有2個運算元 叫做雙目運算元 mov [2000h],124

最多的彙編指令 也可以有3個運算元 叫做3目運算元(微控制器8051cpu cjne 運算元1,運算元2,運算元3**移到目的地址)

彙編指令,inc指令的運算元都可以是什麼

3樓:匿名使用者

1. oprd 為暫存器或儲存器運算元.

2. 這條指令執行結果影響af、of、pf、sf、zf標誌位,但不影響cf標誌位.

3. 示例:

inc si;(si)<--(si)+1

inc word ptr[bx]

inc byte ptr[bx+di]

inc cl;(cl)<--(cl)+1

注意: 上述第二,三兩條指令,是對儲存字及儲存位元組的內容加1以替代原來的內容.

變數可以 你可以吧變數想象成一個容器它可以裝任何東西常量 不可以 常量就好比你的名字從生到死一直都是你那個名字

彙編中的 字運算元 是指什麼

4樓:胖大海君

彙編中的 字運算元 是指彙編指令中需要加工或操作的資料或物件。

彙編指令的格式:

由2部分組成 操作碼 運算元

例如: 彙編指令 add a, #67 ;

其中add是操作碼 表示指令的功能為加法指令a, #67 為2個運算元 即參與加法運算的資料 如:(a) + 67 結果儲存在累加器a

呵呵 滿意 就選滿意回答啊

彙編運算元長度怎樣確定?

5樓:匿名使用者

這個問題問的很好,在不確定的時候確實需要屬性操作符,比如mov word ptr [bx],05h就表明要傳送的資料是字型的,而不是位元組(byte).

6樓:

不知道樓主有沒有接觸過霍夫曼樹。如果你瞭解霍夫曼樹的話就比較容易理解指令運算元的長度了。從指令的結構來看,每指令中最開始的那一部分已經確定指令中運算元的長度和型別,比如mov ax,16位立即數的指令結構可能是 78 + 兩個位元組(這個是我瞎寫的)。

78大致對應於 mov ax,8指令中的第二和第三個位元組大致對應於16位立即數。這也出現了一些問題,就是如果從某條指令中間開始反彙編的話,可能後面所有的指令的反彙編很可能會全部出錯,不過在正常操作下是根本不會發生這種情況的。而組合語言編輯器隱藏了一部分必須指明的對運算元的長度和型別的限制,只要不會引起二義性,對運算元的長度和型別是不需要指明的。

8086/8088的指令系統中運算元的型別有哪幾種

7樓:123摩天輪

看前面幾個回答真真慘不忍睹啊!

8086/8088的指令系統中的運算元主要有3種型別:立即數運算元(即常數)、暫存器運算元(如通用暫存器ax、段暫存器ds)和儲存器運算元(存放在記憶體中的資料)。

8樓:x_d鈣

指令系統分為如下六個功能組:

(1)資料傳送

(2)算術運算

(3)邏輯運算

(4)串操作

(5)程式控制

(6)處理器控制

指令的一般格式分為四個部分

[標號:] 指令助記符 [運算元1][,運算元2][;註釋]指令是否帶有運算元完全取決於指令

標號的使用取決於程式的需要,但是不被彙編程式識別,與指令系統無關。

標號有點類似於c語言中的goto語句中的標號,做為一個偏移。

指令助記符代表操作碼,從二進位制的操作碼到助記符的一個翻譯過程。

9樓:兩情~相悅

立即數,暫存器裡的運算元,記憶體運算元,i/o埠裡的運算元

彙編add指令運算元問題

10樓:du知道君

具體的順序現在有2種,如果是inter 彙編的話 後面的是源運算元,前面的是目的運算元 at&t彙編的話恰恰相反 實際上這個問題取決於彙編器,不過的彙編器決定了不同的格式,如果是微控制器裡面的話 還有更多的區別呢

請問組合語言中運算類指令,兩個運算元的位數必須一樣嗎?可以8位+16位或者8位×16位嗎?

11樓:匿名使用者

必須一致。

8位+16位,可以先把8位擴充套件成16位,然後相加或者可以8位+16位的低8位,其後高8位adc xx, 0,帶進位加1個0。

乘法也一樣,(a+100a + b) x c = 100a*c + b*c,分開相乘,結果相加即可。

彙編push壓桟指令,彙編push壓桟指令

push可以儲存現場,然後呼叫其他函式,等其他函式返回後,又可以接著原來的執行。push也可以將引數傳遞給函式呼叫。當然還有其他的作用。彙編裡的push功能是壓棧但為什麼要壓棧的呢?計算機程式用來放資料的地方有兩種,一個是堆,一個是棧。棧一般用來放一些函式的臨時變數,還有中斷和呼叫函式時的返回地址。...

8086彙編條件轉移指令問題

等於就無所謂了。關鍵是大於與高於 小於與低於的區別。大於 小於用於有符號數比較的條件轉移,大於用jg,小於用jl 高於 低於用於無符號數比較的條件轉移,大於用ja,小於用jb。無論是有符號數比較還是無符號數比較,涉及到等於的,在條件轉移指令裡面加上一個 e 便是。如jge jbe jae jle等。...

微控制器組合語言指令中中斷返回指令RET和RETI有什麼不同

ret是子程式返bai回指令,返 du回到呼叫該子程式處zhi的下一條指令執dao行,返回的地址是從專ret執行前的sp中最屬後兩個值。reti是中斷服務程式返回指令,返回到進入中斷服務的斷點處執行,返回的地址是從reti執行前的sp中最後兩個值。ret是普通子程式的返回指令,而不能用reti,所以...