当前位置:首页 >> 信息与通信 >>

MCS-51单片机汇编语言指令集


MCSMCS-51 单片机汇编语言指令集 [转贴 2007-09-28 11:36:38] 字号:大 中 小

51 汇编语言指令集 符号定义表

符号 含义 Rn R0~R7 寄存器 n=0~7 Direct 直接地址,内部数据区的地址 RAM(00H~7FH) SFR(80H~FFH) B,ACC,PSW,IP,P3,IE,P2,SCO

N,P1,TCON,P0 @Ri 间接地址 Ri=R0 或 R1 #data 8 位常数 #data16 16 位常数 Addr16 16 位的目标地址 Addr11 11 位的目标地址 Rel 相关地址 bit 内部数据 RAM(20H~2FH),特殊功能寄存器的直接地址的位 8051/31RAM 地址(00H~7FH) 8052/32RAM 地址(00H~FFH)

指令介绍

指令 字节 周期 动作说明 算数运算指令 1.ADD A,Rn 1 1 将累加器与寄存器的内容相加,结果存回累加器 2.ADD A,direct 2 1 将累加器与直接地址的内容相加,结果存回累加器 3.ADD A,@Ri 1 1 将累加器与间接地址的内容相加,结果存回累加器 4.ADD A,#data 2 1 将累加器与常数相加,结果存回累加器

5.ADDC A,Rn 1 1 将累加器与寄存器的内容及进位 C 相加,结果存回累加器 6.ADDC A,direct 2 1 将累加器与直接地址的内容及进位 C 相加,结果存回累加器 7.ADDC A,@Ri 1 1 将累加器与间接地址的内容及进位 C 相加,结果存回累加器 8.ADDC A,#data 2 1 将累加器与常数及进位 C 相加,结果存回累加器 9.SUBB A,Rn 1 1 将累加器的值减去寄存器的值减借位 C,结果存回累加器 10.SUBB A,direct 2 1 将累加器的值减直接地址的值减借位 C,结果存回累加器 11.SUBB A,@Ri 1 1 将累加器的值减间接地址的值减借位 C,结果存回累加器 12.SUBB A,#data 2 1 将累加器的值减常数值减借位 C,结果存回累加器 13.INC A 1 1 将累加器的值加 1 14.INC Rn 1 1 将寄存器的值加 l 15.INC direct 2 1 将直接地址的内容加 1 16.INC @Ri 1 1 将间接地址的内容加 1 17.INC DPTR 1 1 数据指针寄存器值加 1 说明: 16 位的 DPTR 加 1, DPTR 的低字节(DPL)从 FFH 溢出至 00H 时, 将 当 会使高字节(DPH) 加 1,不影响任何标志位 18.DEC A 1 1 将累加器的值减 1 19.DEC Rn 1 1 将寄存器的值减 1 20.DEC direct 2 1 将直接地址的内容减 1 21.DEC @Ri 1 1 将间接地址的内容减 1 22.MUL AB 1 4 将累加器的值与 B 寄存器的值相乘,乘积的低位字节存回累加器,高位字 节存回 B 寄存器 说明:将累加器 A 和寄存器 B 内的无符号整数相乘,产生 16 位的积,低位字节存入 A,高 位字节存入 B 寄存器. 如果积大于 FFH, 则溢出标志位(OV)被设定为 1, 而进位标志位为 0 23.DIV AB 1 4 将累加器的值除以 B 寄存器的值,结果的商存回累加器,余数存回 B 寄存 器

说明:无符号的除法运算,将累加器 A 除以 B 寄存器的值,商存入 A,余数存入 B.执行本 指令后,进位位(C)及溢出位(OV)被清除为 0 24.DA A 1 1 将累加器 A 作十进制调整, 若(A) 3-0>9 或(AC)=1,则(A) 3-0←(A)3-0+6 若(A) 7-4>9 或 (C)=1,则(A) 7-4←(A)7-4+6 逻辑运算指令 25.ANL A,Rn 1 1 将累加器的值与寄存器的值做 AND 的逻辑判断,结果存回累加器 26.ANL A,direct 2 1 将累加器的值与直接地址的内容做 AND 的逻辑判断,结果存回累加 器 27.ANL A,@Ri 1 1 将累加器的值与间接地址的内容做 AND 的逻辑判断,结果存回累加器 28.ANL A,#data 2 1 将累加器的值与常数做 AND 的逻辑判断,结果存回累加器 29.ANL direct,A 2 1 将直接地址的内容与累加器的值做 AND 的逻辑判断,结果存回该直 接地址 30.ANL direct,#data 3 2 将直接地址的内容与常数值做 AND 的逻辑判断,结果存回该直 接地址 31.ORL A,Rn 1 1 将累加器的值与寄存器的值做 OR 的逻辑判断,结果存回累加器 32.ORL A,direct 2 1 将累加器的值与直接地址的内容做 OR 的逻辑判断,结果存回累加器 33.ORL A,@Ri 1 1 将累加器的值与间接地址的内容做 OR 的逻辑判断,结果存回累加器 34.ORL A,#data 2 1 将累加器的值与常数做 OR 的逻辑判断,结果存回累加器 35.ORL direct,A 2 1 将直接地址的内容与累加器的值做 OR 的逻辑判断,结果存回该直接 地址 36.ORL direct,#data 3 2 将直接地址的内容与常数值做 OR 的逻辑判断,结果存回该直接 地址 37.XRL A,Rn 1 1 将累加器的值与寄存器的值做 XOR 的逻辑判断,结果存回累加器 38.XRL A,direct 2 1 将累加器的值与直接地址的内容做 XOR 的逻辑判断,结果存回累加

器 39.XRL A,@Ri 1 1 将累加器的值与间接地扯的内容做 XOR 的逻辑判断,结果存回累加器 40.XRL A,#data 2 1 将累加器的值与常数作 XOR 的逻辑判断,结果存回累加器 41.XRL direct,A 2 1 将直接地址的内容与累加器的值做 XOR 的逻辑判断,结果存回该直 接地址 42.XRL direct,#data 3 2 将直接地址的内容与常数的值做 XOR 的逻辑判断,结果存回该 直接地址 43.CLR A 1 1 清除累加器的值为 0 44.CPL A 1 1 将累加器的值反相 45.RL A 1 1 将累加器的值左移一位 46.RLC A 1 1 将累加器含进位 C 左移一位 47.RR A 1 1 将累加器的值右移一位 48.RRC A 1 1 将累加器含进位 C 右移一位 49.SWAP A 1 1 将累加器的高 4 位与低 4 位的内容交换.(A)3-0←(A)7-4 数据转移指令 50.MOV A,Rn 1 1 将寄存器的内容载入累加器 51.MOV A,direct 2 1 将直接地址的内容载入累加器 52.MOV A,@Ri 1 1 将间接地址的内容载入累加器 53.MOV A,#data 2 1 将常数载入累加器 54.MOV Rn,A 1 1 将累加器的内容载入寄存器 55.MOV Rn,direct 2 2 将直接地址的内容载入寄存器 56.MOV Rn,gdata 2 1 将常数载入寄存器 57.MOV direct,A 2 1 将累加器的内容存入直接地址 58.MOV direct,Rn 2 2 将寄存器的内容存入直接地址 59.MOV direct1, direct2 3 2 将直接地址 2 的内容存入直接地址 1

60.MOV direct,@Ri 2 2 将间接地址的内容存入直接地址 61.MOV direct,#data 3 2 将常数存入直接地址 62.MOV @Ri,A 1 1 将累加器的内容存入某间接地址 63.MOV @Ri,direct 2 2 将直接地址的内容存入某间接地址 64.MOV @Ri,#data 2 1 将常数存入某间接地址 65.MOV DPTR,#data16 3 2 将 16 位的常数存入数据指针寄存器 66.MOVC A,@A+DPTR 1 2 (A) ←((A)+(DPTR)) 累加器的值再加数据指针寄存器的值为其所指定地址,将该地址的内容读入累加器 67.MOVC A,@A+PC 1 2 (PC)←(PC)+1;(A)←((A)+(PC))累加器的值加程序计数器的值作为 其所指定地址,将该地址的内容读入累加器 68.MOVX A,@Ri 1 2 将间接地址所指定外部存储器的内容读入累加器(8 位地址) 69.MOVX A,@DPTR 1 2 将数据指针所指定外部存储器的内容读入累加器(16 位地址) 70.MOVX @Ri,A 1 2 将累加器的内容写入间接地址所指定的外部存储器(8 位地址) 71.MOVX @DPTR,A 1 2 将累加器的内容写入数据指针所指定的外部存储器(16 位地址) 72.PUSH direct 2 2 将直接地址的内容压入堆栈区 73.POP direct 2 2 从堆栈弹出该直接地址的内容 74.XCH A,Rn 1 1 将累加器的内容与寄存器的内容互换 75.XCH A,direct 2 1 将累加器的值与直接地址的内容互换 76.XCH A,@Ri 1 1 将累加器的值与间接地址的内容互换 77.XCHD A,@Ri 1 1 将累加器的低 4 位与间接地址的低 4 位互换 布尔代数运算 78.CLR C 1 1 清除进位 C 为 0 79.CLR bit 2 1 清除直接地址的某位为 0 80.SETB C 1 1 设定进位 C 为 1 81.SETB bit 2 1 设定直接地址的某位为 1

82.CPL C 1 1 将进位 C 的值反相 83.CPL bit 2 1 将直接地址的某位值反相 84.ANL C,bit 2 2 将进位 C 与直接地址的某位做 AND 的逻辑判断,结果存回进位 C 85.ANL C,/bit 2 2 将进位 C 与直接地址的某位的反相值做 AND 的逻辑判断,结果存回进 位C 86.ORL C,bit 2 2 将进位 C 与直接地址的某位做 OR 的逻辑判断,结果存回进位 C 87.ORL C,/bit 2 2 将进位 C 与直接地址的某位的反相值做 OR 的逻辑判断,结果存回进位 C 88.MOV C,bit 2 1 将直接地址的某位值存入进位 C 89.MOV bit,C 2 2 将进位 C 的值存入直接地址的某位 90.JC rel 2 2 若进位 C=1 则跳至 rel 的相关地址 91.JNC rel 2 2 若进位 C=0 则跳至 rel 的相关地址 92.JB bit,rel 3 2 若直接地址的某位为 1,则跳至 rel 的相关地址 93.JNB bit,rel 3 2 若直接地址的某位为 0,则跳至 rel 的相关地址 94.JBC bit,rel 3 2 若直接地址的某位为 1,则跳至 rel 的相关地址,并将该位值清除为 0 程序跳跃 95.ACALL addr11 2 2 调用 2K 程序存储器范围内的子程序 96.LCALL addr16 3 2 调用 64K 程序存储器范围内的子程序 97.RET 1 2 从子程序返回 98.RETI 1 2 从中断子程序返回 99.AJMP addr11 2 2 绝对跳跃(2K 内) 100.LJMP addr16 3 2 长跳跃(64K 内) 101.SJMP rel 2 2 短跳跃(2K 内)-128~+127 字节 102.JMP @A+DPTR 1 2 跳至累加器的内容加数据指针所指的相关地址

103.JZ rel 2 2 累加器的内容为 0,则跳至 rel 所指相关地址 104.JNZ rel 2 2 累加器的内容不为 0,则跳至 rel 所指相关地址 105.CJNE A,direct,rel 3 2 将累加器的内容与直接地址的内容比较,不相等则跳至 rel 所指的相关地址 106.CJNE A,#data,rel 3 2 将累加器的内容与常数比较,若不相等则跳至 rel 所指的相关 地址 107.CJNE @Rn,#data,rel 3 2 将寄存器的内容与常数比较,若不相等则跳至 rel 所指的相 关地址 108.CJNE @Ri,#data,rel 3 2 将间接地址的内容与常数比较,若不相等则跳至 rel 所指的 相关地址 109.DJNZ Rn,rel 2 2 将寄存器的内容减 1,不等于 0 则跳至 rel 所指的相关地址 110.DJNZ direct,rel 3 2 将直接地址的内容减 1,不等于 0 则跳至 rel 所指的相关地址 111.NOP 1 1 无动作

相关文章:
MCS51单片机汇编指令
MCS51 单片机汇编指令集一、数据传送类指令(7 种助记符) MOV(英文为 Move):...记忆方法 MCS-51 使用汇编语言指令,它共有 44 个操作码助记符,33 种功能, ...
51单片机汇编指令集(附记忆方法)_图文
51 单片机汇编指令集一、数据传送类指令(7 种助记符) MOV(英文为 Move):对...记忆方法 MCS-51 使用汇编语言指令,它共有 44 个操作码助记符,33 种功能, ...
51单片机汇编指令集_图文
51 单片机汇编指令集一、数据传送类指令(7 种助记符) MOV(Move)对内部数据...大家都知道,汇编语言指令由操作码、操作数两部分组成。MCS-51 使用汇编语言指 ...
MCS-51单片机的指令集(分类)
MCS-51单片机的指令集(顺... 4页 1下载券 MCS-51单片机汇编语言指... 7页...MCS-51 单片机的指令集 MCS-51 系列单片机的指令系统,按功能分类可分为:数据...
MCS51原理和汇编指令集
MCS51原理和汇编指令集_信息与通信_工程科技_专业资料。mcs51基础原理和 汇编语言的学习基础 51指令集我们学习51单片机的好帮手。。概述...
51单片机汇编指令集
指令 指令代码:B0H 指令功能:进位标志逻辑与直接寻址位的反 操作内容:C←(C)∧(bit) 字节数: 2 机器周期:2 MCS-51 系列单片机指令以 C 开头的指令有 ...
51单片机汇编指令集
51单片机汇编语言指令集 5页 免费 51单片机汇编程序指令集 5页 1财富值 MCS-51单片机汇编指令集 2页 免费如要投诉违规内容,请到百度文库投诉中心;如要提出功能问...
MCS-51单片机汇编指令详解
MCS-51 单片机汇编指令详解 以累加器为目的操作数的...(类似 C 语言中的指针) 说明: 此条指令引出一个...(又称布尔处理器),它有一 套位变量处理的指令集...
MCS-51汇编语言指令集
并将该位值清除为 0 MCSMCS-51 单片机指令集 第 5 页共 10 页 MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV ...
单片机汇编语言指令表
MCS——51单片机——汇编... 4页 免费 第三讲C51单片机汇编语言... 60页 1...51单片机汇编语言指令集 5页 免费 51单片机汇编语言指令教... 120页 1下载券...
更多相关标签:
mcs51汇编语言指令集 | 汇编语言指令集 | 51汇编语言指令集 | 单片机汇编语言 | 单片机汇编语言100例 | 单片机汇编语言教程 | 单片机汇编语言入门 | 单片机汇编语言学习 |