分享
分享赚钱 收藏 举报 版权申诉 / 10

类型51单片机指令表.doc

  • 上传人:kpmy5893
  • 文档编号:7253476
  • 上传时间:2019-05-10
  • 格式:DOC
  • 页数:10
  • 大小:63.50KB
  • 配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    51单片机指令表.doc
    资源描述:

    1、51 单片机指令表2009 年 5 月 4 日 作者: 发布人:专业嵌入式网站 本文已被浏览 1155 次(转嵌入式博文) 单片机指令功能一览表 助记笿代码 说明 MOV A,Rn E8EF 寄存器 A MOV A,direct E5 dircet 直接字节送 A MOV A,Ri ERE7 间接 RAM 送 A MOV A,#data 74 data 立即数送 A MOV Rn,A F8FF A 送寄存器 MOV Rn,dircet A8AF dircet 直接字节送寄存器 MOV Rn,#data 787F data 立即数送寄存器 MOV dircet,A F5 dircet A 送直接

    2、字芿MOV dircet,Rn 888F dircet 寄存器送直接字芿MOV dircet1,dircet2 85 dircet1 dircet2 直接字节送直接字芿MOV dircet,Ro 8687 间接 RAM 送直接字芿MOV dircet,#data 75 dircet data 立即数送直接字芿MOV Ri,A F6F7 A 送间接 RAM MOV Ri,#data 7677 data 直接字节送间接 RAM MOV Ri,#data 7677 data 立即数送间接 RAM MOV DPTR,#data16 90 data 158 16 位常数送数据指钿data70 MOVC

    3、A,A+DPTR 93 甿(A)+(DPTR)寻址的程序存贿器字节选 A MOVC A,A+PC 83 甿(A)+(PC);寻址的程序存贮器字节送 A MOVX A,Ri E2E3 送外部数据(8 位地址)送 A MOVX A,DPTR E0 送外部数据(16 位地址)送 A MOVX Ri,A F2F3 A 送外部数据(8 位地址MOVX DPTR,A F0 A 送外部数据(16 位地址PUSH dircet C0 dircet 直接字节进栈,SP 势 POP dircet D0 dircet 直接字节退栈,SP 凿 XCH A,Rn C8CF 交换 A 和寄存器 XCH A,dircet

    4、C5 dircet 交换 A 和直接字芿XCH A,Ri C6C7 交换 A 和间接 RAM XCH A,Ri D6D7 交换 A 和间接 RAM 的低使SWAP A C4 算术操作 (A 的二个半字节交换ADD A,Rn 282F 寄存器加到 A ADD A,dircet 25 dircet 直接字节加到 A ADD A,Ri 2627 间接 RAM 加到 A ADD A,#data 24data 立即数加到 A ADD A,Rn 383F 寄存器和进位位加到 A ADD A,dircet 35dircet 直接字节和进位位加到 A ADD A,Ri 3637 间接字节和进位位加到 A AD

    5、D A,data 34 data 立即数和进位位加到 A ADD A,Rn 989F A 减去寄存器和进位使ADD A,dircet 95 dircet A 减去直接字节和进位位 ADD A,Ri 3637 间接 RAM 和进位位加到 A ADD A,data 34 data 立即数和进位位加到 A SUBB A,Rn 989F A 减去寄存器和进位使SUBB A,dircet 95 dircet A 减去直接字节和进位位 SUBB A,Ri 9697 A 减去间接 RAM 和进位位 SUBB A,#data 94 data A 减去立即数和进位使INC A 04 A 势 INC Rn 080

    6、F 寄存器加 1 INC dircet 05 dircet 直接字节势 INC Ri 0607 间接 RAM 势 DEC A 14 A 凿 DEC Rn 181F 寄存器减 1 DEC dircet 15 dircet 直接字节凿 DEC Ri 1617 间接 RAM 凿 INC DPTR A3 数据指针势 MUL AB A4 A 乘以 B DIV AB 84 A 除以 B DA A D4 A 的十进制加法调整 逻辑操作 ANL A,Rn 585F 寄存噿 ldquo;丿 rdquo;到 A ANL A,dircet 55 dircet 直接字节 “丿 rdquo;到 A ANL A,Ri 5

    7、657 间接 RAm“丿 rdquo;到 A ANL A,#data 54 data 立即敿 ldquo;丿 rdquo;到 A ANL dircet A 52 dircet A“丿 rdquo;到直接字芿ANL dircet,#data 53 dircet data 立即敿 ldquo;丿 rdquo;到直接字芿ORL A,Rn 484F 寄存噿 ldquo;房 rdquo;到 A ORL A,dircet 45 dircet 直接字节“房 rdquo;到 A ORL A,Ri 4647 间接 RAM“房 rdquo;到 A ORL A,#data 44 data 立即敿 ldquo;房 r

    8、dquo;到 A ORL dircet,A 42 dircet A“房 rdquo;到直接字芿ORL dircet,#data 43 dircet data 立即敿 ldquo;房 rdquo;到直接字芿XRL A,Rn 686F 寄存噿 ldquo;异或”到 A XRL A,dircet 65 dircet 直接字节“异或”到 A XRL A,Ri 6667 间接 RAM“异或”到 A XRL A,#data 64 data 立即敿 ldquo;异或”到 A XRL dircet A 62 dircet A“异或”到直接字芿XRL dircet,#data 63 dircet data 立即

    9、敿 ldquo;异或”到直接字芿CLR A E4 清零 CPL A F4 A 取反 RL A 23 A 左环秿RLC A 33 A 通过进位左环秿RR A 03 A 右环秿RRC A 13 A 通过进位右环秿控制程序转移 ACALL addr 11 *1 addr(a7a0) 绝对子程序调甿LCALL addr 16 12 addr(158) 长子程序调用 addr(70) RET 22 子程序调用返囿RETI addr 11 32 中断调用返回 AJMP addr 11 ? addr(a7a6) 绝对转移 LJMP addr 16 02addr(158) 长转秿addr(70) SJMP r

    10、el 80 rel 短转移,相对转移 JMP A+DPTR 73 相对于 DPTR 间接转移 JZ rel 60 rel A 为零转移 JNZ rel 70 rel A 为零转移 CJNE A,dircet,rel B5 dircet rel 直接字节与 A 比较,不等则转移 CJNE A,#data,rel B4 data rel 立即数与 A 比较,不等则转移 CJNE A,Rn,#data,rel B8BF data rel 立即数与寄存器比较,不等则转秿CJNE Ri,#data,rel B6B7 data rel 立即数与间接 RAM 比较,不等则转移 DJNZ Rn,rel D8D

    11、F rel 寄存器减 1,不为零则转秿DJNZ dircet,rel B5 dircet rel 直接字节凿,不为零则转秿NOP 00 空操使*=a10a9a8l ?a10a9a80 布尔变量操作 CLR C C3 清零进位 CLR bit C2 清零直接使SETB C D3 置位进位 SETB bit D2 置位直接使CPL C B3 进位取反 CPL bit B2 直接位取叿ANL C,bit 82 dit 直接敿 ldquo;丿 rdquo;到进使ANL C,/bit B0 直接位的叿 ldquo;丿 rdquo;到进使ORL C,bit 72 bit 直接使 ldquo;房 rdquo

    12、;到进使ORL C,/bit A0 bit 直接位的叿 ldquo;房 rdquo;到进使MOV C,bit A2 bit 直接位送进使MOV bit,C 92 bit 进位送直接位 JC rel 40 rel 进位位为 1 转移 JNC rel 50 rel 进位位为 0 转移 JB bit,rel 20 bit rel 直接位为 1 相对转移 JNB bit,rel 30 bit rel 直接位为 0 相对转移 JBC bit,rel 10 bit rel 直接位为 1 相对转移,然后清零该使1. 循环移位指令条) RL A 累加器 A 中的内容左移一使RR A 累加器 A 中的内容右移一

    13、使RLC A 累加器 A 中的内容连同进位位 CY 左移一使RRC A 累加器 A 中的内容连同进位位 CY 右移一使2. 累加器半字节交换指令条) SWAP A 累加器中的内容高低半字节互换 3. 求反指令条) CPL A 累加器中的内容按位取叿4. 清零指令条) CLR A 0(A),累加器中的内容清 0 5. 逻辑与操作指令(6 条) ANL A,data 累加器 A 中的内容和直接地址单元中的内容执行与逻辑操作。结果存在寄存器 A 中?ANL data,#data 直接地址单元中的内容和立即数执行与逻辑操作。结果存在直接地址单元中?ANL A,#data 累加器 A 的内容和立即数执行

    14、与逻辑操作。结果存在累加器 A 中?ANL A,Rn 累加器 A 的内容和寄存器 Rn 中的内容执行与逻辑操作。结果存在累加器A 中 ?ANL data,A 直接地址单元中的内容和累加器 A 的内容执行与逻辑操作。结果存在直接地址单元中?ANL A,Ri 累加器 A 的内容和工作寄存器 Ri 指向的地址单元中的内容执行与逻辑操作。结果存在累加器 A 中?6. 逻辑或操作指令(6 条) 这组指令的作用是将两个单元中的内容执行逻辑或操作。如果直接地址是 I/O 地址,则丿 ldquo;诿 mdash;修改冿 rdquo;操作?ORL A,data 累加器 A 中的内容和直接地址单元中的内容执行逻辑

    15、或操作。结果存在寄存器 A 中?ORL data,#data 直接地址单元中的内容和立即数执行逻辑或操作。结果存在直接地址单元中?ORL A,#data 累加器 A 的内容和立即数执行逻辑或操作。结果存在累加器 A 中?ORL A,Rn 累加器 A 的内容和寄存器 Rn 中的内容执行逻辑或操作。结果存在累加器A 中 ?ORL data,A 直接地址单元中的内容和累加器 A 的内容执行逻辑或操作。结果存在直接地址单元中?ORL A,Ri 累加器 A 的内容和工作寄存器 Ri 指向的地址单元中的内容执行逻辑或操作。结果存在累加器 A 中?7. 逻辑异或操作指令条) XRL A,data 累加器 A

    16、 中的内容和直接地址单元中的内容执行逻辑异或操作。结果存在寄存器 A 中?XRL data,#data 直接地址单元中的内容和立即数执行逻辑异或操作。结果存在直接地址单元中?XRL A,#data 累加器 A 的内容和立即数执行逻辑异或操作。结果存在累加器 A 中?XRL A,Rn 累加器 A 的内容和寄存器 Rn 中的内容执行逻辑异或操作。结果存在累加器A 中 ?XRL data,A 直接地址单元中的内容和累加器 A 的内容执行逻辑异或操作。结果存在直接地址单元中?XRL A,Ri 累加器 A 的内容和工作寄存器 Ri 指向的地址单元中的内容执行逻辑异或操作。结果存在累加器 A 丿控制转移类

    17、指令分枿1. 无条件转移指令(4 条) LJMP addr16 addr16(PC),给程序计数器赋予新值(16 位地址AJMP addr11 (PC2 (PC),addr11(PC10-0 )程序计数器赋予新值(11位地址),(PC15-11 )不改变 SJMP rel (PC 2 + rel(PC)当前程序计数器先加丿再加上偏移量给程序计数器赋予新倿JMP A+DPTR (A (DPTR)(PC),累加器所指向地址单元的值加上数据指针的值给程序计数器赋予新倿2. 条件转移指令条) JZ rel A=0,( PC 2 + rel(PC累加器中的内容为 0,则转移到偏移量所指向的地址,否则程序

    18、往下执衿JNZ rel A?,(PC 2 + rel(PC累加器中的内容不丿,则转移到偏移量所指向的地址,否则程序往下执衿CJNE A, data, rel A(data (PC 3 + rel(PC累加器中的内容不等于直接地址单元的内容,则转移到偏移量所指向的地址,否则程序往下执衿CJNE A, #data, rel A?data,(PC 3 + rel(PC累加器中的内容不等于立即数,则转移到偏移量所指向的地址,否则程序往下执衿CJNE Rn, #data, rel A?data,(PC 3 + rel(PC工作寄存器 Rn 中的内容不等于立即数,则转移到偏移量所指向的地址,否则程序往下执

    19、衿CJNE Ri, #data, rel A?data,(PC 3 + rel(PC工作寄存器 Ri 指向地址单元中的内容不等于立即数,则转移到偏移量所指向的地址,否则程序往下执衿布尔变量操作指令分析 1. 位传送指令(2 条) MOV C,bit bitCY,某位数据送 CY MOV bit,C CYbit,CY 数据送某使2. 位置位复位指令(4 条) CLR C 0CY,清 CY CLR bit 0bit,清某一使SETB C 1CY,置位 CY SETB bit 1bit, 置位某一使3. 位运算指令(6 条) ANL C,bit (CY)?bit)CY ANL C,/bit (CY)

    20、? )CY ORL C,bit (CY)?bit)CY ORL C,/bit (CY)?)CY CPL C ()CY CPL bit ()bir 4. 位控制转移指令(5JC rel (CY)=1 转移,(PC2+relPC ,否则程序往下执行,(PC 2PC?JNC rel (CY)=0 转移,(PC2+relPC,否则程序往下执行,(PC2 PC?JB bit, rel 位状态为 1 转移?JNB bit, rel 位状态为 0 转移?JBC bit, rel 位状态为 1 转移,并使该位清“0”?/p -51 单片机指令表助记笿 nbsp; 指令说明 字节敿周期敿/p (数据传递类指令b

    21、r MOV A,Rn 寄存器传送到累加噿 1 1 MOV A,direct 直接地址传送到累加噿 2 1 MOV A,Ri 累加器传送到外部 RAM(8) 1 1 MOV Adata 立即数传送到累加噿 2 1 MOV Rn,A 累加器传送到寄存噿 1 1 MOV Rn,direct 直接地址传送到寄存噿 2 2 MOV Rndata 累加器传送到直接地址 2 1 MOV direct,Rn 寄存器传送到直接地址 2 1 MOV direct,direct 直接地址传送到直接地址 3 2 MOV direct,A 累加器传送到直接地址 2 1 MOV direct,Ri 间接 RAM 传送到直

    22、接地址 2 2 MOV directdata 立即数传送到直接地址 3 2 MOV Ri,A 直接地址传送到直接地址 1 2 MOV Ri,direct 直接地址传送到间接 RAM 2 1 MOV Ridata 立即数传送到间接 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

    23、) 1 2 MOVX DPTR,A 累加器传送到外部 RAM(16) 1 2 PUSH direct 直接地址压入堆栈 2 2 POP direct 直接地址弹出堆栈 2 2 XCH A,Rn 寄存器和累加器交捿 1 1 XCH A, direct 直接地址和累加器交换 2 1 XCH A, Ri 间接 RAM 和累加器交换 1 1 XCHD A, Ri 间接 RAM 和累加器交换 1 1 使 位字芿/p (算术运算类指仿INC A 累加器加 1 1 1 INC Rn 寄存器加 1 1 1 INC direct 直接地址势 2 1 INC Ri 间接 RAM 势 1 1 INC DPTR 数据

    24、指针势 1 2 DEC A 累加器减 1 1 1 DEC Rn 寄存器减 1 1 1 DEC direct 直接地址凿 2 2DEC Ri 间接 RAM 凿 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 ADDC A,Rn 寄存器与累加器求咿带进使 1 1 ADDC A,direct 直接地址与累加

    25、器求和(带进使 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 寄存噿 ldquo;丿 rdquo;到累加器 1 1 ANL A,direct 直接地址“丿 rdquo;到累加器 2 1 ANL A,Ri 间接 RAM“丿 rdq

    26、uo;到累加器 1 1 ANL A,#data 立即敿 ldquo;丿 rdquo;到累加器 2 1 ANL direct,A 累加噿 ldquo;丿 rdquo;到直接地址 2 1 ANL direct, #data 立即敿 ldquo;丿 rdquo;到直接地址 3 2 ORL A,Rn 寄存噿 ldquo;房 rdquo;到累加器 1 2 ORL A,direct 直接地址“房 rdquo;到累加器 2 1 ORL A,Ri 间接 RAM“房 rdquo;到累加器 1 1 ORL A,#data 立即敿 ldquo;房 rdquo;到累加器 2 1 ORL direct,A 累加噿 ld

    27、quo;房 rdquo;到直接地址 2 1 ORL direct, #data 立即敿 ldquo;房 rdquo;到直接地址 3 1 XRL A,Rn 寄存噿 ldquo;异或”到累加器 1 2 XRL A,direct 直接地址“异或”到累加器 2 1 XRL A,Ri 间接 RAM“异或”到累加器 1 1 XRL A,#data 立即敿 ldquo;异或”到累加器 2 1 XRL direct,A 累加噿 ldquo;异或”到直接地址 2 1 XRL direct, #data 立即敿 ldquo;异或”到直接地址 3 1 CLR A 累加器清雿 1 2 CPL A 累加器求叿 1 1

    28、RL A 累加器循环左秿 1 1 RLC A 带进位累加器循环左移 1 1 RR A 累加器循环右秿 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 CJ

    29、NE Ri,#data,rel 比较立即数和间接 RAM,不相等转秿 3 2 DJNZ Rn,rel 寄存器减 1,不为 0 则转秿 3 2 DJNZ direct,rel 直接地址凿 ,不为 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 bi

    30、t 清直接寻址使 2 1 SETB C 置位进位使 1 1 SETB bit 置位直接寻址使 2 1 CPL C 取反进位使 1 1 CPL bit 取反直接寻址使 2 1 ANL C,bit 直接寻址使 ldquo;丿 rdquo;到进位位 2 2 ANL Cbit 直接寻址位的反码 “丿 rdquo;到进位位 2 2 ORL C,bit 直接寻址使 ldquo;房 rdquo;到进位位 2 2 ORL Cbit 直接寻址位的反码“房 rdquo;到进位位 2 2 MOV C,bit 直接寻址位传送到进位使 2 1 MOV bit, C 进位位位传送到直接寻址 2 2 JC rel 如果进位

    31、位为 1 则转秿 2 2 JNC rel 如果进位位为 0 则转秿 2 2 JB bit,rel 如果直接寻址位为 1 则转秿 3 2 JNB bit,rel 如果直接寻址位为 0 则转秿 3 2 JBC bit,rel 直接寻址位为 1 则转移并清除该位 2 2(伪指令br ORG 指明程序的开始位罿DB 定义数据衿DW 定义 16 位的地址衿EQU 给一个表达式或一个字符串起名 DATA 给一丿 位的内部 RAM 起名 XDATA 给一丿 位的外部 RAM 起名 BIT 给一个可位寻址的位单元起名 END 指出源程序到此为歿 br (指令中的符号标识)Rn 工作寄存器 R0-R7 Ri 工作寄存器 R0 和 R1 Ri 间接寻址皿 位 RAM 单元地址 0H-FFH#data8 8 位常敿 br #data16 16 位常敿 br addr16 16 位目标地址,能转移或调用到 64KROM 的任何地斿 br addr11 11 位目标地址,在下条指令皿 K 范围内转移或调用Rel 8 位偏移量,用于 SJMP 和所有条件转移指令,范围 -128?127 Bit 片内 RAM 中的可寻址位和 SFR 的可寻址使 br Direct 直接地址,范围片内RAM 单元 0H-7FH)和 80H-FFH $ 指本条指令的起始位置

    展开阅读全文
    提示  道客多多所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:51单片机指令表.doc
    链接地址:https://www.docduoduo.com/p-7253476.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    道客多多用户QQ群:832276834  微博官方号:道客多多官方   知乎号:道客多多

    Copyright© 2025 道客多多 docduoduo.com 网站版权所有世界地图

    经营许可证编号:粤ICP备2021046453号    营业执照商标

    1.png 2.png 3.png 4.png 5.png 6.png 7.png 8.png 9.png 10.png



    收起
    展开