汇编语言指令集

上传人:pu****.1 文档编号:491920400 上传时间:2022-09-11 格式:DOC 页数:5 大小:20KB
返回 下载 相关 举报
汇编语言指令集_第1页
第1页 / 共5页
汇编语言指令集_第2页
第2页 / 共5页
汇编语言指令集_第3页
第3页 / 共5页
汇编语言指令集_第4页
第4页 / 共5页
汇编语言指令集_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《汇编语言指令集》由会员分享,可在线阅读,更多相关《汇编语言指令集(5页珍藏版)》请在金锄头文库上搜索。

1、51汇编语言指令集符号定义表符号含义RnR0R7寄存器n=07Direct直接地址,内部数据区的地址RAM(00H7FH)SFR(80HFFH) B,ACC,PSW,IP,P3,IE,P2,SCON,P1,TCON,P0Ri间接地址Ri=R0或R1 8051/31RAM地址(00H7FH) 8052/32RAM地址(00HFFH)#data8位常数#data1616位常数Addr1616位的目标地址Addr1111位的目标地址Rel相关地址bit内部数据RAM(20H2FH),特殊功能寄存器的直接地址的位指令介绍指令字节周期动作说明算数运算指令1ADD A,Rn11将累加器与寄存器的内容相加,

2、结果存回累加器2ADD A,direct21将累加器与直接地址的内容相加,结果存回累加器3ADD A,Ri11将累加器与间接地址的内容相加,结果存回累加器4ADD A,#data21将累加器与常数相加,结果存回累加器5ADDC A,Rn11将累加器与寄存器的内容及进位C相加,结果存回累加器6ADDC A,direct21将累加器与直接地址的内容及进位C相加,结果存回累加器7ADDC A,Ri11将累加器与间接地址的内容及进位C相加,结果存回累加器8ADDC A,#data21将累加器与常数及进位C相加,结果存回累加器9SUBB A,Rn11将累加器的值减去寄存器的值减借位C,结果存回累加器10

3、SUBB A,direct21将累加器的值减直接地址的值减借位C,结果存回累加器11SUBB A,Ri11将累加器的值减间接地址的值减借位C,结果存回累加器12SUBB A,#data21将累加器的值减常数值减借位C,结果存回累加器13INC A11将累加器的值加114INC Rn11将寄存器的值加l15INC direct21将直接地址的内容加116INC Ri11将间接地址的内容加117INC DPTR11数据指针寄存器值加1说明:将16位的DPTR加1,当DPTR的低字节(DPL)从FFH溢出至00H时,会使高字节(DPH)加1,不影响任何标志位18DEC A11将累加器的值减119DE

4、C Rn11将寄存器的值减120DEC direct21将直接地址的内容减121DEC Ri11将间接地址的内容减122MUL AB14将累加器的值与B寄存器的值相乘,乘积的低位字节存回累加器,高位字节存回B寄存器说明:将累加器A和寄存器B内的无符号整数相乘,产生16位的积,低位字节存入A,高位字节存入B寄存器。如果积大于FFH,则溢出标志位(OV)被设定为1,而进位标志位为023DIV AB14将累加器的值除以B寄存器的值,结果的商存回累加器,余数存回B寄存器说明:无符号的除法运算,将累加器A除以B寄存器的值,商存入A,余数存入B。执行本指令后,进位位(C)及溢出位(OV)被清除为024DA

5、 A11将累加器A作十进制调整,若(A) 3-09或(AC)=1,则(A) 3-0(A)3-0+6若(A) 7-49或 (C)=1,则(A) 7-4(A)7-4+6逻辑运算指令25ANL A,Rn11将累加器的值与寄存器的值做AND的逻辑判断,结果存回累加器26ANL A,direct21将累加器的值与直接地址的内容做AND的逻辑判断,结果存回累加器27ANL A,Ri11将累加器的值与间接地址的内容做AND的逻辑判断,结果存回累加器28ANL A,#data21将累加器的值与常数做AND的逻辑判断,结果存回累加器29ANL direct,A21将直接地址的内容与累加器的值做AND的逻辑判断,

6、结果存回该直接地址30ANL direct,#data32将直接地址的内容与常数值做AND的逻辑判断,结果存回该直接地址31ORL A,Rn11将累加器的值与寄存器的值做OR的逻辑判断,结果存回累加器32ORL A,direct21将累加器的值与直接地址的内容做OR的逻辑判断,结果存回累加器33ORL A,Ri11将累加器的值与间接地址的内容做OR的逻辑判断,结果存回累加器34ORL A,#data21将累加器的值与常数做OR的逻辑判断,结果存回累加器35ORL direct,A21将直接地址的内容与累加器的值做OR的逻辑判断,结果存回该直接地址36ORL direct,#data32将直接地

7、址的内容与常数值做OR的逻辑判断,结果存回该直接地址37XRL A,Rn11将累加器的值与寄存器的值做XOR的逻辑判断,结果存回累加器38XRL A,direct21将累加器的值与直接地址的内容做XOR的逻辑判断,结果存回累加器39XRL A,Ri11将累加器的值与间接地扯的内容做XOR的逻辑判断,结果存回累加器40XRL A,#data21将累加器的值与常数作XOR的逻辑判断,结果存回累加器41XRL direct,A21将直接地址的内容与累加器的值做XOR的逻辑判断,结果存回该直接地址42XRL direct,#data32将直接地址的内容与常数的值做XOR的逻辑判断,结果存回该直接地址4

8、3CLR A11清除累加器的值为044CPL A11将累加器的值反相45RL A11将累加器的值左移一位46RLC A11将累加器含进位C左移一位47RR A11将累加器的值右移一位48RRC A11将累加器含进位C右移一位49SWAP A11将累加器的高4位与低4位的内容交换。(A)3-0(A)7-4数据转移指令50MOV A,Rn11将寄存器的内容载入累加器51MOV A,direct21将直接地址的内容载入累加器52MOV A,Ri11将间接地址的内容载入累加器53MOV A,#data21将常数载入累加器54MOV Rn,A11将累加器的内容载入寄存器55MOV Rn,direct22

9、将直接地址的内容载入寄存器56MOV Rn,gdata21将常数载入寄存器57MOV direct,A21将累加器的内容存入直接地址58MOV direct,Rn22将寄存器的内容存入直接地址59MOV direct1, direct232将直接地址2的内容存入直接地址160MOV direct,Ri22将间接地址的内容存入直接地址61MOV direct,#data32将常数存入直接地址62MOV Ri,A11将累加器的内容存入某间接地址63MOV Ri,direct22将直接地址的内容存入某间接地址64MOV Ri,#data21将常数存入某间接地址65MOV DPTR,#data1632

10、将16位的常数存入数据指针寄存器66MOVC A,A+DPTR12(A) (A)+(DPTR)累加器的值再加数据指针寄存器的值为其所指定地址,将该地址的内容读入累加器67MOVC A,A+PC12(PC)(PC)+1;(A)(A)+(PC)累加器的值加程序计数器的值作为其所指定地址,将该地址的内容读入累加器68MOVX A,Ri12将间接地址所指定外部存储器的内容读入累加器(8位地址)69MOVX A,DPTR12将数据指针所指定外部存储器的内容读入累加器(16位地址)70MOVX Ri,A12将累加器的内容写入间接地址所指定的外部存储器(8位地址)71MOVX DPTR,A12将累加器的内容

11、写入数据指针所指定的外部存储器(16位地址)72PUSH direct22将直接地址的内容压入堆栈区73POP direct22从堆栈弹出该直接地址的内容74XCH A,Rn11将累加器的内容与寄存器的内容互换75XCH A,direct21将累加器的值与直接地址的内容互换76XCH A,Ri11将累加器的值与间接地址的内容互换77XCHD A,Ri11将累加器的低4位与间接地址的低4位互换布尔代数运算78CLR C11清除进位C为079CLR bit21清除直接地址的某位为080SETB C11设定进位C为181SETB bit21设定直接地址的某位为182CPL C11将进位C的值反相83

12、CPL bit21将直接地址的某位值反相84ANL C,bit22将进位C与直接地址的某位做AND的逻辑判断,结果存回进位C85ANL C,/bit22将进位C与直接地址的某位的反相值做AND的逻辑判断,结果存回进位C86ORL C,bit22将进位C与直接地址的某位做OR的逻辑判断,结果存回进位C87ORL C,/bit22将进位C与直接地址的某位的反相值做OR的逻辑判断,结果存回进位C88MOV C,bit21将直接地址的某位值存入进位C89MOV bit,C22将进位C的值存入直接地址的某位90JC rel22若进位C=1则跳至rel的相关地址91JNC rel22若进位C=0则跳至re

13、l的相关地址92JB bit,rel32若直接地址的某位为1,则跳至rel的相关地址93JNB bit,rel32若直接地址的某位为0,则跳至rel的相关地址94JBC bit,rel32若直接地址的某位为1,则跳至rel的相关地址,并将该位值清除为0程序跳跃95ACALL addr1122调用2K程序存储器范围内的子程序96LCALL addr1632调用64K程序存储器范围内的子程序97RET12从子程序返回98RETI12从中断子程序返回99AJMP addr1122绝对跳跃(2K内)100LJMP addr1632长跳跃(64K内)101SJMP rel22短跳跃(2K内)-128+127字节102JMP A+DPTR12跳至累加器的内容加数据指针所指的相关地址103JZ rel22累加器的内容为0,则跳至rel所指相关地址104JNZ rel22累加器的内容不为0,则跳至rel所指相关地址105CJNE A,direct,rel32将累加器的内容与直接地址的内容比较,不相等则跳至rel所指的相关地址106CJNE A,#data,rel32将累加器的内容与常数比较,若不相等则跳至rel所指的相关地址107CJNE Rn,#data,rel32将寄存器的内容与常数比较,若不相等则跳至rel所指的相关地址1

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号