MCS-51单片机指令表_文(2)

上传人:飞*** 文档编号:47735546 上传时间:2018-07-04 格式:PDF 页数:8 大小:42.34KB
返回 下载 相关 举报
MCS-51单片机指令表_文(2)_第1页
第1页 / 共8页
MCS-51单片机指令表_文(2)_第2页
第2页 / 共8页
MCS-51单片机指令表_文(2)_第3页
第3页 / 共8页
MCS-51单片机指令表_文(2)_第4页
第4页 / 共8页
MCS-51单片机指令表_文(2)_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《MCS-51单片机指令表_文(2)》由会员分享,可在线阅读,更多相关《MCS-51单片机指令表_文(2)(8页珍藏版)》请在金锄头文库上搜索。

1、单片机指令集2010.6.3助记符指令说明字节数周期数(数据传递类指令)MOV A,Rn 寄存器传送到累加器1 1 DEC Ri 间接 RAM 减 1 1 1 MUL AB 累加器和 B 寄存器相乘1 4 DIV AB 累加器除以B 寄存器1 4 DA A 累加器十进制调整1 1 ADD A,Rn 寄存器与累加器求和1 1 ADD A,direct 直接地址与累加器求和2 1 ADD A,Ri 间接 RAM 与累加器求和1 1 ADD A,#data 立即数与累加器求和2 1 MOV A,direct 直接地址传送到累加器2 1 MOV A,Ri 累加器传送到外部RAM(8 地址 ) 1 1

2、MOV A,#data 立即数传送到累加器2 1 MOV Rn,A 累加器传送到寄存器1 1 MOV Rn,direct 直接地址传送到寄存器2 2 MOV Rn,#data 累加器传送到直接地址2 1 MOV direct ,Rn 寄存器传送到直接地址2 1 MOV direct ,direct 直接地址传送到直接地址3 2 MOV direct ,A 累加器传送到直接地址2 1 MOV direct ,Ri 间接 RAM 传送到直接地址2 2 MOV direct ,#data 立即数传送到直接地址3 2 MOV Ri ,A 直接地址传送到直接地址1 2 MOV Ri ,direct 直接

3、地址传送到间接RAM 2 1 MOV Ri ,#data 立即数传送到间接RAM 2 2 MOV DPTR ,#data16 16 位常数加载到数据指针3 1 MOVC A,A+DPTR 代码字节传送到累加器1 2 MOVC A,A+PC 代码字节传送到累加器1 2 MOVX A,Ri 外部 RAM(8 地址 ) 传送到累加器1 2 MOVX A,DPTR 外部 RAM(16 地址 )传送到累加器1 2 MOVX Ri ,A 累加器传送到外部RAM(8 地址 ) 1 2 MOVX DPTR ,A 累加器传送到外部RAM(16 地址 ) 1 2 PUSH direct 直接地址压入堆栈2 2 P

4、OP direct 直接地址弹出堆栈2 2 XCH A,Rn 寄存器和累加器交换1 1 XCH A, direct 直接地址和累加器交换2 1 XCH A, Ri 间接 RAM 和累加器交换1 1 XCHD A, Ri 间接 RAM 和累加器交换低4 位字节1 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 DEC A 累加器减 1 1 1 DEC Rn 寄存器减 1 1 1 DEC direct 直接地址减1 2 2

5、ADDC A,Rn 寄存器与累加器求和(带进位 ) 1 1 ADDC A,direct 直接地址与累加器求和(带进位 ) 2 1 ADDC A,Ri 间接 RAM 与累加器求和 (带进位 ) 1 1 ADDC A,#data 立即数与累加器求和(带进位 ) 2 1 SUBB A,Rn 累加器减去寄存器(带借位 ) 1 1 SUBB A,direct 累加器减去直接地址(带借位 ) 2 1 SUBB A,Ri 累加器减去间接RAM( 带借位 ) 1 1 SUBB A,#data 累加器减去立即数(带借位 ) 2 1 ( 逻辑运算类指令) ANL A,Rn 寄存器 “ 与” 到累加器1 1 ANL

6、 A,direct 直接地址 “ 与” 到累加器2 1 ANL A,Ri 间接 RAM “与” 到累加器1 1 ANL A,#data 立即数 “ 与” 到累加器2 1 ANL direct,A 累加器 “ 与” 到直接地址2 1 ANL direct, #data 立即数 “ 与” 到直接地址3 2 ORL A,Rn 寄存器 “ 或” 到累加器1 2 ORL A,direct 直接地址 “ 或” 到累加器2 1 ORL A,Ri 间接 RAM “或” 到累加器1 1 ORL A,#data 立即数 “ 或” 到累加器2 1 ORL direct,A 累加器 “ 或” 到直接地址2 1 ORL

7、 direct, #data 立即数 “ 或” 到直接地址3 1 XRL A,Rn 寄存器 “ 异或 ” 到累加器1 2 XRL A,direct 直接地址 “ 异或 ” 到累加器2 1 XRL A,Ri 间接 RAM “异或 ” 到累加器1 1 XRL A,#data 立即数 “ 异或 ” 到累加器2 1 XRL direct,A 累加器 “ 异或 ” 到直接地址2 1 XRL direct, #data 立即数 “ 异或 ” 到直接地址3 1 CLR A 累加器清零1 2 CPL A 累加器求反1 1 RL A 累加器循环左移1 1 RLC A 带进位累加器循环左移1 1 RR A 累加器

8、循环右移1 1 RRC A 带进位累加器循环右移1 1 SWAP A 累加器高、低4 位交换1 1 ( 控制转移类指令) JMP A+DPTR 相对 DPTR 的无条件间接转移1 2 JZ rel 累加器为 0 则转移2 2 JNZ rel 累加器为 1 则转移2 2 CJNE A,direct,rel 比较直接地址和累加器,不相等转移3 2 CJNE A,#data,rel 比较立即数和累加器,不相等转移3 2 CJNE Rn,#data,rel 比较寄存器和立即数,不相等转移2 2 CJNE Ri,#data,rel 比较立即数和间接RAM, 不相等转移3 2 DJNZ Rn,rel 寄存

9、器减 1, 不为 0 则转移3 2 DJNZ direct,rel 直接地址减1, 不为 0 则转移3 2 NOP 空操作 ,用于短暂延时1 1 ACALL add11 绝对调用子程序2 2 LCALL add16 长调用子程序3 2 RET 从子程序返回1 2 RETI 从中断服务子程序返回1 2 AJMP add11 无条件绝对转移2 2 LJMP add16 无条件长转移3 2 SJMP rel 无条件相对转移2 2 (布尔指令 ) CLR C 清进位位1 1 CLR bit 清直接寻址位2 1 SETB C 置位进位位1 1 SETB bit 置位直接寻址位2 1 CPL C 取反进位

10、位1 1 CPL bit 取反直接寻址位2 1 ANL C,bit 直接寻址位 “ 与” 到进位位2 2 ANL C,/bit 直接寻址位的反码“ 与” 到进位位2 2 ORL C,bit 直接寻址位 “ 或” 到进位位2 2 ORL C,/bit 直接寻址位的反码“ 或” 到进位位2 2 MOV C,bit 直接寻址位传送到进位位2 1 MOV bit, C 进位位位传送到直接寻址2 2 JC rel 如果进位位为1 则转移2 2 JNC rel 如果进位位为0 则转移2 2 JB bit ,rel 如果直接寻址位为1 则转移3 2 JNB bit ,rel 如果直接寻址位为0 则转移3 2

11、 JBC bit ,rel 直接寻址位为1 则转移并清除该位2 2 (伪指令)ORG 指明程序的开始位置DB 定义数据表DW 定义 16 位的地址表EQU 给一个表达式或一个字符串起名DATA 给一个 8 位的内部 RAM 起名XDATA 给一个 8 位的外部 RAM 起名BIT 给一个可位寻址的位单元起名END 指出源程序到此为止(指令中的符号标识)Rn 工作寄存器R0-R7 Ri 工作寄存器R0 和 R1 Ri 间接寻址的8 位 RAM 单元地址( 00H-FFH )#data8 8 位常数#data16 16 位常数addr16 16 位目标地址,能转移或调用到64KROM 的任何地方a

12、ddr11 11 位目标地址,在下条指令的2K 范围内转移或调用Rel 8 位偏移量,用于SJMP 和所有条件转移指令,范围-128 +127 Bit 片内 RAM 中的可寻址位和SFR 的可寻址位Direct 直接地址,范围片内RAM 单元( 00H-7FH)和 80H-FFH $ 指本条指令的起始位置随着微电子技术和超大规模集成电路技术的发展,单片微型计算机以其体积小、性价比高、功能强、可 *性高等独有的特点,在各个领域(如工业控制、家电产品、汽车电子、通信、智能仪器仪表)得到了广泛的应用。学习、使用单片机的人越来越多,而生产单片机的厂家很多,单片机种类繁杂,不知如何选择。据统计,八位单片

13、机占全球单片机销量的65。在八位单片机中, Intel公司的 8051 单片机内核已成为8 位单片机事实上的标准。因此,对初学者而言,选择8051 单片机来学习不失为明智的选择。学习单片机,除了搞清单片机内部功能、存储空间分配及I/O 接口外,还应掌握其指令系统。 MCS 51 共有 111 条指令,现介绍我们总结出的快速记忆MCS 51 指令的方法,供大家参考。大家都知道,汇编语言指令由操作码、操作数两部分组成。MCS 51 使用汇编语言指令,它共有 44 个操作码助记符,33 种功能,其操作数有data 、direct、Rn、Ri等。这里先介绍指令助记符及其相关符号的记忆方法。一、助记符号

14、的记忆方法1把 44 个指令助记符按功能分为五类,每类列表记忆。此处从略,请读者自己总结。2单片机的操作码助记符是该指令功能的英文缩写,将缩写还原成英语原文,再对照汉语有助于理解其助记符含义,从而加强记忆。例如:增量 INC Incremect 减量 DNC Decrement 短转移 SJMP Short jump 长转移 LJMPLong jump 比较转移 CJNE Compare jump not equality 绝对转移 AJMP Absolute jump 空操作 NOP No operation 交换 XCHExchange 加法ADD Addition 乘法 MULMulti

15、plication 除法 DIV Division 左环移 RLRotate left 进位左环移 RLC Rotate left carry 右环移 RRRotate right 进位右环移RRC Rotate right carry 3单片机的44 个指令助记符, 按所属指令功能可分为五大类,每类又可以按功能相似原则为 23 组。这样,化整为零,各个击破,实现快速记忆。1)数据传送组。2)加减运算组MOV 内部数据传送 ADD 加法MOVC 程序存储器传送 ADDC 带进位加法MOVX 外部数据传送 SUBB 带进位减法3)逻辑运算组。 4 )子程序调用组。ANL 逻辑与 LCALL 长调

16、用ORL 逻辑或 ALALL 绝对调用XRL 逻辑异或 RET 子程序返回二、指令的记忆方法1MCS 51 的寻址方式共有六种:立即数寻址、直接寻址、寄存器寻址、寄存器间址、变址寻址、相对寻址。我们必须掌握其表示的方法。1)立即数与直接地址。ata 表示八位立即数,data16 表示是十六位立即数,data 或 direct表示直接地址。2)Rn(n=0 7) 、A、B、CY、DPTR寄存器寻址变量。3)R0 、R1 、DPTR、SP表示寄存器间址变量。4)DPTR A 、PC A表示变址寻址的变量。5)PC rel (相对量)表示相对寻址变量。记住指令的助记符,掌握不同寻址方式的指令操作数的表示方法,为我们记忆汇编指令打下了基础。 MCS 51 指令虽多,但按功能可分为五类,其中数据传送类28 条,算术运算类24 条,逻辑操作类25 条,控制转移类17 条,布尔位操作类17 条。在每类指令里,根据其功能,抓住其源、目的操作数的不同组合,再

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

当前位置:首页 > 行业资料 > 其它行业文档

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