您当前的位置:五五电子网电子知识单片机-工控设备51单片机MCS-51单片机指令集 正文
MCS-51单片机指令集

MCS-51单片机指令集

点击数:7640 次   录入时间:03-04 12:02:40   整理:http://www.55dianzi.com   51单片机
MCS-51系列 单片机 指令系统表 发布日期:2006-5-24 9:01:08   作者:admin   出处:dangdangdz.com 数据传送类指令 序 助记符

  功                   能

字节数 振荡周期 1 MOV A,Rn 寄存器内容送入累加器 1 12 2 MOV A,direct 直接地址单元中的数据送入累加器 2 12 3 MOV A,@Ri 间接RAM中的数据送入累加器 1 12 4 MOV A,#tata 立即数送入累加器 2 12 5 MOV Rn,A 累加器内容送入寄存器 1 12 6 MOV Rn,direct 直接地址单元中的数据送入寄存器 2 24 7 MOV Rn,#data 立即数送入寄存器 2 12 8 MOV direct,A 累加器内容送入直接地址单元 2 12 9 MOV direct,Rn 寄存器内容送入直接地址单元 2 24 10 MOV direct,direct 直接地址单元中的数据送入另一个直接地址单元 3 24 11 MOV direct,@Ri 间接RAM中的数据送入直接地址单元 2 24 12 MOV direct,#data 立即数送入直接地址单元 3 24 13 MOV @Ri,A 累加器内容送间接RAM单元 1 12 14 MOV @Ri,direct 直接地址单元数据送入间接RAM单元 2 24 15 MOV @RI,#data 立即数送入间接RAM单元 2 12 16 MOV DRTR,#dat16 16位立即数送入地址寄存器 3 24 17 MOVC A,@A+DPTR 以DPTR为基地址变址寻址单元中的数据送入累加器 1 24 18 MOVC A,@A+PC 以PC为基地址变址寻址单元中的数据送入累加器 1 24 19 MOVX A,@Ri 外部RAM(8位地址)送入累加器 1 24 20 MOVX A,@DPTR 外部RAM(16位地址)送入累加器 1 24 21 MOVX @Ri,A 累计器送外部RAM(8位地址) 1 24 22 MOVX @DPTR,A 累计器送外部RAM(16位地址) 1 24 23 PUSH direct 直接地址单元中的数据压入堆栈 2 24 24 POP direct 弹栈送直接地址单元 2 24 25 XCH A,Rn 寄存器与累加器交换 1 12 26 XCH A,direct 直接地址单元与累加器交换 2 12 27 XCH A,@Ri 间接RAM与累加器交换 1 12 28 XCHD A,@Ri 间接RAM的低半字节与累加器交换 1 12 布尔变量操作类指令 序 助记符

  功                   能

字节数 振荡周期 1 CLR C 清进位位 1 12 2 CLR bit 清直接地址位 2 12 3 SETB C 置进位位 1 12 4 SETB bit 置直接地址位 2 12 5 CPL C 进位位求反 1 12 6 CPL bit 置直接地址位求反 2 12 7 ANL C,bit 进位位和直接地址位相“与” 2 24 8 ANL C,bit 进位位和直接地址位的反码相“与” 2 24 9 ORL C,bit 进位位和直接地址位相“或” 2 24 10 ORL C,bit 进位位和直接地址位的反码相“或” 2 24 11 MOV C,bit 直接地址位送入进位位 2 12 12 MOV bit,C 进位位送入直接地址位 2 24 13 JC rel 进位位为1则转移 2 24 14 JNC rel 进位位为0则转移 2 24 15 JB bit,rel 直接地址位为1则转移 3 24 16 JNB bit,rel 直接地址位为0则转移 3 24 17 JBC bit,rel 直接地址位为1则转移,该位清零 3 24 逻辑操作数指令 序 助记符

功                能

字节数 振荡周期 1 ANL A,Rn 累加器与寄存器相“与” 1 12 2 ANL A,direct 累加器与直接地址单元相“与” 2 12 3 ANL A,@Ri 累加器与间接RAM单元相“与” 1 12 4 ANL A,#data 累加器与立即数相“与” 2 12 5 ANL direct,A 直接地址单元与累加器相“与” 2 12 6 ANL direct,#data 直接地址单元与立即数相“与” 3 24 7 ORL A,Rn 累加器与寄存器相“或” 1 12 8 ORL A,direct 累加器与直接地址单元相“或” 2 12 9 ORL A,@Ri 累加器与间接RAM单元单元相“或” 1 12 10 ORL A,#data 累加器与立即数相“或” 2 12 11 ORL direct,A 直接地址单元与累加器相“或” 2 12 12 ORL direct,#data 直接地址单元与立即数相“或” 3 24 13 XRL A,Rn 累加器与寄存器相“异或” 1 12 14 XRL A,direct 累加器与直接地址单元相“异或” 2 12 15 XRL A,@Ri 累加器与间接RAM单元单元相“异或” 1 12 16 XRL A,#data 累加器与立即数相“异或” 2 12 17 XRL direct,A 直接地址单元与累加器相“异或” 2 12 18 XRL direct,#data 直接地址单元与立即数相“异或” 3 24 19 CLR A 累加器清“0” 1 12 20 CPL A 累加器求反 1 12 21 RL A 累加器循环左移 1 12 22 RLC A 累加器带进位位循环左移 1 12 23 RR A 累加器循环右移 1 12 24 RRC A 累加器带进位位循环右移 1 12 25 SWAP A 累加器半字节交换 1 12 控制转移类指令 序 助记符

功           能

字节数 振荡周期 1 ACALL addr11 绝对(短)调用子程序 2 24 2 LCALL addr16 长调用子程序 3 24 3 RET   子程序返回 1 24 4 RETI   中数返回 1 24 5 AJMP addr11 绝对(短)转移 2 24 6 LJMP addr16 长转移 3 24 7 SJMP rel 相对转移 2 24 8 JMP @A+DPTR 相对于DPTR的间接转移 1 24 9 JZ rel 累加器为零转移 2 24 10 JNZ rel 累加器非零转移 2 24 11 CJNE A,direct,rel 累加器与直接地址单元比较,不相等则转移 3 24 12 CJNE A,#data,rel 累加器与立即数比较,不相等则转移 3 24 13 CJNE Rn,#data,rel 寄存器与立即数比较,不相等则转移 3 24 14 CJNE @Ri,#data,rel 间接RAM单元与立即数比较,不相等则转移 3 24 15 DJNZ Rn,rel 寄存器减1,非零转移 3 24 16 DJNZ direct,erl 直接地址单元减1,非零转移 3 24 17 NOP   空操作 1 12 算术操作类指令 1 ADD A,Rn 寄存器内容加到累加器 1 12 2 ADD A,direct 直接地址单元的内容加到累加器 2 12 3 ADD A,@Ri 间接ROM的内容加到累加器 1 12 4 ADD A,#data 立即数加到累加器 2 12 5 ADDC A,Rn 寄存器内容带进位加到累加器 1 12 6 ADDC A,direct 直接地址单元的内容带进位加到累加器 2 12 7 ADDC A,@Ri 间接ROM的内容带进位加到累加器 1 12 8 ADDC A,#data 立即数带进位加到累加器 2 12 9 SUBB A,Rn 累加器带借位减寄存器内容 1 12 10 SUBB A,direct 累加器带借位减直接地址单元的内容 2 12 11 SUBB A,@Ri 累加器带借位减间接RAM中的内容 1 12 12 SUBB A,#data 累加器带借位减立即数 2 12 13 INC A 累加器加1 1 12 14 INC Rn 寄存器加1 1 12 15 INC direct 直接地址单元加1 2 12 16 INC @Ri 间接RAM单元加1 1 12 17 DEC A 累加器减1 1 12 18 DEC Rn 寄存器减1 1 12 19 DEC direct 直接地址单元减1 2 12 20 DEC @Rj 间接RAM单元减1 1 12 21 INC DPTR 地址寄存器DPTR加1 1 24 22 MUL AB A乘以B 1 48 23 DIV AB A除以B 1 48 24 DA A 累加器十进制调整 1 12


本文关键字:单片机  51单片机单片机-工控设备 - 51单片机