51微控制器彙編指令速查表
指令格式 功能簡述 位元組數 週期
一、資料傳送類指令
mov a,rn 暫存器送累加器
1 1
mov rn,a 累加器送暫存器
1 1
mov a ,@ri 內部ram單元送累加器
1 1
mov @ri ,a 累加器送內部ram單元
1 1
mov a ,#data 立即數送累加器
2 1
mov a ,direct 直接定址單元送累加器
2 1
mov direct ,a 累加器送直接定址單元
2 1
mov rn,#data 立即數送暫存器
2 1
mov direct ,#data 立即數送直接定址單元
3 2
mov @ri ,#data 立即數送內部ram單元
2 1
mov direct ,rn 暫存器送直接定址單元
2 2
mov rn ,direct 直接定址單元送暫存器
2 2
mov direct ,@ri 內部ram單元送直接定址單元
2 2
mov @ri ,direct 直接定址單元送內部ram單元
2 2
mov direct2,direct1 直接定址單元送直接定址單元
3 2
mov dptr ,#data16 16位立即數送資料指標
3 2
movx a ,@ri 外部ram單元送累加器(8位位址
) 1 2
movx @ri ,a 累加器送外部ram單元(8位位址
) 1 2
movx a ,@dptr 外部ram單元送累加器(16位位址
) 1 2
movx @dptr ,a 累加器送外部ram單元(16位位址
) 1 2
movc a ,@a+dptr 查表資料送累加器(dptr為基址
) 1 2
movc a ,@a+pc 查表資料送累加器(pc為基址
) 1 2
xch a ,rn 累加器與暫存器交換
1 1
xch a ,@ri 累加器與內部ram單元交換
1 1
xchd a ,direct 累加器與直接定址單元交換
2 1
xchd a ,@ri 累加器與內部ram單元低4位交換
1 1
swap a 累加器高4位與低4位交換
1 1
pop direct 棧頂彈出指令直接定址單元
2 2
push direct 直接定址單元壓入棧頂2 2
二、算術運算類指令
add a,rn 累加器加暫存器
1 1
add a, @ri 累加器加內部ram單元
1 1
add a,direct 累加器加直接定址單元
2 1
add a,#data 累加器加立即數
2 1
addc a,rn 累加器加暫存器和進製標誌
1 1
addc a, @ri 累加器加內部ram單元和進製標誌
1 1
addc a,#data 累加器加立即數和進製標誌
2 1
addc a,direct 累加器加直接定址單元和進製標誌
2 1
inc a 累加器加
1 1 1
inc rn 暫存器加
1 1 1
inc direct 直接定址單元加
1 2 1
inc @ri 內部ram單元加
1 1 1
inc dptr 資料指標加
1 1 2
da a 十進位制調整
1 1
subb a,rn 累加器減暫存器和進製標誌
1 1
subb a, @ri 累加器減內部ram單元和進製標誌
1 1
subb a,#data 累加器減立即數和進製標誌
2 1
subb a,direct 累加器減直接定址單元和進製標誌
2 1
dec a 累加器減
1 1 1
dec rn 暫存器減
1 1 1
dec @ri 內部ram單元減
1 1 1
dec direct 直接定址單元減
1 2 1
mul ab 累加器乘暫存器
b 1 4
div ab 累加器除以暫存器b 1 4
三、邏輯運算類指令
anl a,rn 累加器與暫存器
1 1
anl a, @ri 累加器與內部ram單元
1 1
anl a,#data 累加器與立即數
2 1
anl a,direct 累加器與直接定址單元
2 1
anl direct,a 直接定址單元與累加器
2 1
anl direct,#data 直接定址單元與立即數
3 1
orl a,rn 累加器或暫存器
1 1
orl a,@ri 累加器或內部ram單元
1 1
orl a,#data 累加器或立即數
2 1
orl a,direct 累加器或直接定址單元
2 1
orl direct,a 直接定址單元或累加器
2 1
orl direct,#data 直接定址單元或立即數
3 1
xrl a,rn 累加器異或暫存器
1 1
xrl a,@ri 累加器異或內部ram單元
1 1
xrl a,#data 累加器異或立即數
2 1
xrl a,direct 累加器異或直接定址單元
2 1
xrl direct,a 直接定址單元異或累加器
2 1
xrl direct,#data 直接定址單元異或立即數
3 2
rl a 累加器左迴圈移位
1 1
rlc a 累加器連進製標誌左迴圈移位
1 1
rr a 累加器右迴圈移位
1 1
rrc a 累加器連進製標誌右迴圈移位
1 1
cpl a 累加器取反
1 1
clr a 累加器清零1 1
四、控制轉移類指令類
accall addr11 2kb範圍內絕對呼叫
2 2
ajmp addr11 2kb範圍內絕對轉移
2 2
lcall addr16 2kb範圍內長呼叫
3 2
ljmp addr16 2kb範圍內長轉移
3 2
sjmp rel 相對短轉移
2 2
jmp @a+dptr 相對長轉移
1 2
ret 子程式返回
1 2
ret1 中斷返回
1 2
jz rel 累加器為零轉移
2 2
jnz rel 累加器非零轉移
2 2
cjne a ,#data ,rel 累加器與立即數不等轉移
3 2
cjne a ,direct ,rel 累加器與直接定址單元不等轉移
3 2
cjne rn,#data ,rel 暫存器與立即數不等轉移
3 2
cjne @ri ,#data,rel ram單元與立即數不等轉移
3 2
djnz rn ,rel 暫存器減1不為零轉移
2 2
djnz direct ,rel 直接定址單元減1不為零轉移
3 2
nop 空操作1 1
五、布林操作類指令
mov c
,bit
直接定址位送
c 2 1
mov bit
,c c
送直接定址位
2 1
clr c c
清零1 1
clr bit
直接定址位清零
2 1
cpl c c
取反1 1
cpl bit
直接定址位取反
2 1
setb c c
置位1 1
setb bit
直接定址位置位
2 1
anl c
,bit c
邏輯與直接定址位
2 2
anl c
,/bit c
邏輯與直接定址位的反
2 2
orl c
,bit c
邏輯或直接定址位
2 2
orl c
,/bit c
邏輯或直接定址位的反
2 2
jc rel c為1
轉移2 2
jnc rel c
為零轉移
2 2
jb bit
,rel
直接定址位為1轉移
3 2
jnb bit
,rel
直接定址為0轉移
mo彙編指令 彙編指令速查表
一 資料傳輸指令 它們在存貯器和暫存器 暫存器和輸入輸出埠之間傳送資料.1.通用資料傳送指令.mov 傳送字或位元組.movsx 先符號擴充套件,再傳送.movzx 先零擴充套件,再傳送.push 把字壓入堆疊.pop 把字彈出堆疊.pusha 把 ax,cx,dx,bx,sp,bp,si,di 依...
vim指令速查表
命令 描述vim filename 開啟或新建檔案,並將游標置於第一行首 vim n filename 開啟檔案,並將游標置於第n行首 vim filename 開啟檔案,並將游標置於最後一行首 vim pattern filename 開啟檔案,並將游標置於第乙個與pattern匹配的串處 vim...
linux重要指令速查表
brew install findutils with default namesdocker build t link v2 qemu img create f qcow2 test vm 1.qcow2 10g f 選項用於指定映象的格式,qcow2 格式是 qemu 最常用的映象格式,採用來寫...