彙編指令介紹

2021-10-24 01:53:20 字數 2869 閱讀 8157

彙編指令總共有7種定址方式,111條指令!

運算速度

功能

【標號:】 助記符 【運算元】 【;注釋】

mov、movx、movc、xch、xchd、swap、push、pop

mov a, rn    		;rn→a

mov a, direct ;(direct)→a

mov a, @ri ;(ri)→a

mov a, #data ;data→a

mov rn, a			;a →rn	

mov rn, direct ;(direct)→rn

mov rn, #data ;data→rn

mov direct, a		;a→(direct)

mov direct, rn ;rn→(direct)

mov direct1,direct2

mov direct, @ri ;(ri) →(direct)

mov direct, #data ;data→(direct)

mov @ri, a          ;a →(ri)

mov @ri, direct ;(direct) →(ri)

mov @ri, #data ;data →(ri)

mov dptr, #data16
8051是一種8位機,這是唯一的一條16位立即數傳遞指令。

功能:將乙個16位的立即數送入 dptr 中去。其中高8位送入 dph,低8位送入 dpl。

movx a, @ri

movx @ri, a

movx a, @dptr

movx @dptr, a

​ 在51中,與外部儲存器ram打交道的只可以是a累加器。所有需要送入外部ram的資料必需要通過a送去,而所有要讀入的外部ram中的資料也必需通過a讀入。

​ 在此我們可以看出內外部ram的區別了,內部ram間可以直接進行資料的傳遞,而外部則不行。

movc a, @a+dptr

movc a, @a+pc

本組指令是將rom中的數送入a中。本組指令也被稱為查表指令,常用此指令來查乙個已做好在rom中的**。說明:查詢到的結果被放在a中,因此,本條指令執行前後,a中的值是不相同的。

push  direct    ;sp ← sp+1,(sp) ← (direct)

pop direct ;(direct) ← (sp), sp←sp-1

第一條為壓入指令,就是將direct中的內容送入堆疊中;

第二條為彈出指令,就是將堆疊中的內容送回到direct中。

xch   a, rn	    	;a←→rn

xch a, direct ;a←→(direct)

xch a, @ri ;a←→(ri)

xchd a, @ri ;a.3~a.0←→(ri).3~(ri).0

swap a ;a.3~a.0←→a.7~a.4

add、addc、inc、subb、dec、da、mul、div

1.不帶進製位的加法指令(4條)

add a,#data 		;a+data→a

add a,direct ;a+(direct )→a

add a,rn ;a+rn→a

add a,@ri ;a+(ri)→a

2.帶進製位的加法指令(4條)

帶進製位的加法指令常用於多位元組的加法指令中

addc a,rn			;a+rn+cy→a

addc a,direct ;a+(direct )+cy→a

addc a,@ri ;a+(ri)+cy→a

addc a,#data ;a+data+cy→a

3. 加1指令(5條)
inc  a			;a+1→a,影響p標誌

inc rn ;rn+1→rn

inc direct ;(direct)+1→(direct)

inc @ri ;((ri))+1→((ri))

inc dptr ;dptr+1→dptr

4. 十進位制調整指令(1條)

在進行bcd碼加法運算時,跟在add和addc指令之後,用來對bcd碼加法運算結果進行自動修正。

da  a
例:a = 0001 0101 bcd(代表十進位制數15)

add  a,#8	;執行完之後,a = 1dh

da a ;調整後,a = 23h

1.帶借位的減法指令(4條)
subb a,rn	     	;a-rn-cy→a

subb a,direct ;a-(direct )-cy→a

subb a,@ri ;a-(ri)-cy→a

subb a,#data ;a-data-cy→a

ARM常用彙編指令介紹

b 跳轉指令 跳轉範圍為32mb pc 暫存器r15,程式計數器指向當前執行的程式位址 ldr 從記憶體中讀取資料載入到暫存器中 str 將暫存器中的資料儲存到記憶體 mov 暫存器與暫存器之間的資料傳送指令,也可以將立即數傳給目標暫存器 add 加法指令 sub 減法指令 bic 位清除指令 or...

mo彙編指令 彙編指令大全

一 資料傳輸指令 它們在存貯器和暫存器 暫存器和輸入輸出埠之間傳送資料.1.通用資料傳送指令.mov 傳送字或位元組.movsx 先符號擴充套件,再傳送.movzx 先零擴充套件,再傳送.push 把字壓入堆疊.pop 把字彈出堆疊.pusha 把ax,cx,dx,bx,sp,bp,si,di依次壓...

彙編 彙編指令大全

一 資料傳輸指令 它們在存貯器和暫存器 暫存器和輸入輸出埠之間傳送資料.1.通用資料傳送指令.mov 傳送字或位元組.movsx 先符號擴充套件,再傳送.movzx 先零擴充套件,再傳送.push 把字壓入堆疊.pop 把字彈出堆疊.pusha 把ax,cx,dx,bx,sp,bp,si,di依次壓...