2023年51单片机汇编指令集.pdf

上传人:c****1 文档编号:93169131 上传时间:2023-06-29 格式:PDF 页数:15 大小:601.76KB
返回 下载 相关 举报
2023年51单片机汇编指令集.pdf_第1页
第1页 / 共15页
2023年51单片机汇编指令集.pdf_第2页
第2页 / 共15页
点击查看更多>>
资源描述

《2023年51单片机汇编指令集.pdf》由会员分享,可在线阅读,更多相关《2023年51单片机汇编指令集.pdf(15页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、51 单片机汇编指令集(附记忆方法)-1-51 单片机汇编指令集(附记忆方法)编辑整理:尊敬的读者朋友们:这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望(51 单片机汇编指令集(附记忆方法))的内容能够给您的工作和学习带来便利。同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快 业绩进步,以下为 51 单片机汇编指令集(附记忆方法)的全部内容。51 单片机汇编指令集(附记忆方法)-1-51 单片机汇编指令集

2、 一、数据传送类指令(7 种助记符)MOV(英文为 Move):对内部数据寄存器 RAM 和特殊功能寄存器 SFR的数据进行传送;MOVC(Move Code)读取程序存储器数据表格的数据传送;MOVX(Move External RAM)对外部 RAM 的数据传送;XCH(Exchange)字节交换;XCHD(Exchange low order Digit)低半字节交换;PUSH(Push onto Stack)入栈;POP(Pop from Stack)出栈;二、算术运算类指令(8 种助记符)ADD(Addition)加法;ADDC(Add with Carry)带进位加法;SUBB(S

3、ubtract with Borrow)带借位减法;DA(Decimal Adjust)十进制调整;INC(Increment)加 1;DEC(Decrement)减 1;MUL(Multiplication、Multiply)乘法;DIV(Division、Divide)除法;三、逻辑运算类指令(10 种助记符)ANL(AND Logic)逻辑与;ORL(OR Logic)逻辑或;方但是任然希望单片机汇编指令集附记忆方法的内容能够给您的工作和学习带来便利同时也真诚的希望收到您的建议 活愉快业绩进步以下为单片机汇编指令集附记忆方法的全部内容单片机汇编指令集附记忆方法单片机汇编指令集一数 据传送

4、对外部的数据传送字节交换低半字节交换入栈出栈二算术运算类指令种助记符加法带进位加法带借位减法十进51 单片机汇编指令集(附记忆方法)-2-XRL(Exclusive-OR Logic)逻辑异或;CLR(Clear)清零;CPL(Complement)取反;RL(Rotate left)循环左移;RLC(Rotate Left throught the Carry flag)带进位循环左移;RR(Rotate Right)循环右移;RRC(Rotate Right throught the Carry flag)带进位循环右移;SWAP(Swap)低 4 位与高 4 位交换;四、控制转移类指令(

5、17 种助记符)ACALL(Absolute subroutine Call)子程序绝对调用;LCALL(Long subroutine Call)子程序长调用;RET(Return from subroutine)子程序返回;RETI(Return from Interruption)中断返回;SJMP(Short Jump)短转移;AJMP(Absolute Jump)绝对转移;LJMP(Long Jump)长转移;CJNE(Compare Jump if Not Equal)比较不相等则转移;DJNZ(Decrement Jump if Not Zero)减后不为则转移;JZ(Jump

6、if Zero)结果为则转移;JNZ(Jump if Not Zero)结果不为则转移;JC(Jump if the Carry flag is set)有进位则转移;JNC(Jump if Not Carry)无进位则转移;方但是任然希望单片机汇编指令集附记忆方法的内容能够给您的工作和学习带来便利同时也真诚的希望收到您的建议 活愉快业绩进步以下为单片机汇编指令集附记忆方法的全部内容单片机汇编指令集附记忆方法单片机汇编指令集一数 据传送对外部的数据传送字节交换低半字节交换入栈出栈二算术运算类指令种助记符加法带进位加法带借位减法十进51 单片机汇编指令集(附记忆方法)-3-JB(Jump if

7、the Bit is set)位为则转移;JNB(Jump if the Bit is Not set)位为则转移;JBC(Jump if the Bit is set and Clear the bit)位为则转移,并清除该位;NOP(No Operation)空操作;五、位操作指令(1 种助记符)CLR 位清零;SETB(Set Bit)位 置。8 种常用伪指令 ORG 16 位地址;此指令用在原程序或数据块的开始,指明此语句后面目标程序或数据块存放的起始地址。标号:DB 字节数据项表;将项表中的字节数据存放到从标号开始的连续字节单元中。例如:SEG:DB 88H,100,“7,“C”标号

8、:DW 双字节数据项表;定义 16 位地址表,16 地址按低位地址存低位字节,高位地址存高位字节。例如:TAB:DW 1234H,7BH 名字 EQU 表达式 或名字=表达式;用与给一个表达式赋值或给字符串起名字.之后名字可用做程序地址,数据地址或立即数地址使用.名字必须是一字母开头的字母数字串。例如:COUNT=10 或 SPACE EQU 10H 名字 DATA 直接字节地址;方但是任然希望单片机汇编指令集附记忆方法的内容能够给您的工作和学习带来便利同时也真诚的希望收到您的建议 活愉快业绩进步以下为单片机汇编指令集附记忆方法的全部内容单片机汇编指令集附记忆方法单片机汇编指令集一数 据传送对

9、外部的数据传送字节交换低半字节交换入栈出栈二算术运算类指令种助记符加法带进位加法带借位减法十进51 单片机汇编指令集(附记忆方法)-4-给 8 位内部 RAM 单元起个名字,名字必须是一字母开头的字母数字串。同一单元可起多个名字。例如:ERROR DATA 80H 名字 XDATA 直接字节地址;给 8 位外部 RAM 起个名字,名字规定同 DATA 伪指令。例如:IO_PORT XDATA 0CF04H 名字 BIT 位指令;给一可位寻址的位单元起个名字,规定同 DATA 伪指令。例如:SWT BIT 30H 标号:;指出源程序到此结束,汇编对其后的程序语句不予理睬.源程序只在主程序最后使用

10、一个。指 令 集(111 条)助 记 符 说明 字节 周期 代 码 1。数据传送指令(30 条)MOV A,Rn 寄存器送 A 1 1 E8-EF MOV A,data 直接字节送 A 2 1 E5 MOV A,Ri 间接 RAM 送 A 1 1 E6-E7 MOV A,#data 立接数送 A 2 1 74 方但是任然希望单片机汇编指令集附记忆方法的内容能够给您的工作和学习带来便利同时也真诚的希望收到您的建议 活愉快业绩进步以下为单片机汇编指令集附记忆方法的全部内容单片机汇编指令集附记忆方法单片机汇编指令集一数 据传送对外部的数据传送字节交换低半字节交换入栈出栈二算术运算类指令种助记符加法带

11、进位加法带借位减法十进51 单片机汇编指令集(附记忆方法)-5-MOV Rn,A A 送寄存器 1 1 F8 FF MOV Rn,data 直接数送寄存器 2 2 A8-AF MOV Rn,#data 立即数送寄存器 2 1 78-7F MOV data,A A 送直接字节 2 1 F5 MOV data,Rn 寄存器送直接字节 2 1 88 8F MOV data,data 直接字节送直接字节 3 2 85 MOV data,Ri 间接 Rn 送直接字节 2 2 86;87 MOV data,#data 立即数送直接字节 3 2 75 MOV Ri,A A 送间接 Rn 1 2 F6;F7

12、MOV Ri,data 直接字节送间接 Rn 1 1 A6;A7 MOV Ri,data 立即数送间接 Rn 2 2 76;77 MOV DPTR,#data16 16 位常数送数据指针 3 1 90 MOV C,bit 直接位送进位位 2 1 A2 MOV bit,C 进位位送直接位 2 2 92 MOVC A,A+DPTR A+DPTR 寻址程序存贮字节送 A 3 2 93 MOVC A,A+PC A+PC 寻址程序存贮字节送 A 1 2 83 MOVX A,Ri 外部数据送 A(8 位地址)1 2 E2;E3 方但是任然希望单片机汇编指令集附记忆方法的内容能够给您的工作和学习带来便利同时

13、也真诚的希望收到您的建议 活愉快业绩进步以下为单片机汇编指令集附记忆方法的全部内容单片机汇编指令集附记忆方法单片机汇编指令集一数 据传送对外部的数据传送字节交换低半字节交换入栈出栈二算术运算类指令种助记符加法带进位加法带借位减法十进51 单片机汇编指令集(附记忆方法)-6-MOVX A,DPTR 外部数据送 A(16 位地址)1 2 E0 MOVX Ri,A A 送外部数据(8 位地址)1 2 F2;F3 MOVX DPTR,A A 送外部数据(16 位地址)1 2 F0 PUSH data 直接字节进栈道,SP 加 1 2 2 C0 POP data 直接字节出栈,SP 减 1 2 2 D0

14、 XCH A,Rn 寄存器与 A 交换 1 1 C8 CF XCH A,data 直接字节与 A 交换 2 1 C5 XCH A,Ri 间接 Rn 与 A 交换 1 1 C6;C7 XCHD A,Ri 间接 Rn 与 A 低半字节交换 1 1 D6;D7 2.逻辑运算指令(35 条)ANL A,Rn 寄存器与到 A 1 1 58 5F ANL A,data 直接字节与到 A 2 1 55 ANL A,Ri 间接 RAM 与到 A 1 1 56;57 ANL A,data 立即数与到 A 2 1 54 ANL data,A A与到直接字节 2 1 52 ANL data,#data 立即数与到直

15、接字节 3 2 53 ANL C,bit 直接位与到进位位 2 2 82 ANL C,/bit 直接位的反码与到进位位 2 2 B0 ORL A,Rn 寄存器或到 A 1 1 48-4F ORL A,data 直接字节或到 A 2 1 45 方但是任然希望单片机汇编指令集附记忆方法的内容能够给您的工作和学习带来便利同时也真诚的希望收到您的建议 活愉快业绩进步以下为单片机汇编指令集附记忆方法的全部内容单片机汇编指令集附记忆方法单片机汇编指令集一数 据传送对外部的数据传送字节交换低半字节交换入栈出栈二算术运算类指令种助记符加法带进位加法带借位减法十进51 单片机汇编指令集(附记忆方法)-7-ORL

16、 A,Ri 间接 RAM 或到 A 1 1 46;47 ORL A,data 立即数或到 A 2 1 44 ORL data,A A或到直接字节 2 1 42 ORL data,data 立即数或到直接字节 3 2 43 ORL C,bit 直接位或到进位位 2 2 72 ORL C,/bit 直接位的反码或到进位位 2 2 A0 XRL A,Rn 寄存器异或到 A 1 1 68 6F XRL A,data 直接字节异或到 A 2 1 65 XRL A,Ri 间接 RAM 异或到 A 1 1 66;67 XRL A,data 立即数异或到 A 2 1 64 XRL data,A A异或到直接字

17、节 2 1 62 XRL data,data 立即数异或到直接字节 3 2 63 SETB C 进位位置 1 1 1 D3 SETB bit 直接位置 1 2 1 D2 CLR A A清 0 1 1 E4 CLR C 进位位清 0 1 1 C3 CLR bit 直接位清 0 2 1 C2 CPL A A求反码 1 1 F4 CPL C 进位位取反 1 1 B3 CPL bit 直接位取反 2 1 B2 RL A A循环左移一位 1 1 23 方但是任然希望单片机汇编指令集附记忆方法的内容能够给您的工作和学习带来便利同时也真诚的希望收到您的建议 活愉快业绩进步以下为单片机汇编指令集附记忆方法的全

18、部内容单片机汇编指令集附记忆方法单片机汇编指令集一数 据传送对外部的数据传送字节交换低半字节交换入栈出栈二算术运算类指令种助记符加法带进位加法带借位减法十进51 单片机汇编指令集(附记忆方法)-8-RLC A A 带进位左移一位 1 1 33 RR A A右移一位 1 1 03 RRC A A 带进位右移一位 1 1 13 SWAP A A 半字节交换 1 1 C4 3.算术运算指令(24 条)ADD A,Rn 寄存器加到 A 1 1 28 2F ADD A,data 直接字节加到 A 2 1 25 ADD A,Ri 间接 RAM 加到 A 1 1 26;27 ADD A,#data 立即数加

19、到 A 2 1 24 ADDC A,Rn 寄存器带进位加到 A 1 1 38-3F ADDC A,data 直接字节带进位加到 A 2 1 35 ADDC A,Ri 间接 RAM 带进位加到 A 1 1 36;37 ADDC A,#data 立即数带进位加到 A 2 1 34 SUBB A,Rn 从 A 中减去寄存器和进位 1 1 98 9F SUBB A,data 从 A 中减去直接字节和进位 2 1 95 SUBB A,Ri 从 A 中减去间接 RAM 和进位 1 1 96;97 SUBB A,#data 从 A 中减去立即数和进位 2 1 94 INC A A加 1 1 1 04 INC

20、 Rn 寄存器加 1 1 1 08 0F 方但是任然希望单片机汇编指令集附记忆方法的内容能够给您的工作和学习带来便利同时也真诚的希望收到您的建议 活愉快业绩进步以下为单片机汇编指令集附记忆方法的全部内容单片机汇编指令集附记忆方法单片机汇编指令集一数 据传送对外部的数据传送字节交换低半字节交换入栈出栈二算术运算类指令种助记符加法带进位加法带借位减法十进51 单片机汇编指令集(附记忆方法)-9-INC data 直接字节加 1 2 1 05 INC Ri 间接 RAM 加 1 1 1 06;07 INC DPTR 数据指针加 1 1 2 A3 DEC A A减 1 1 1 14 DEC Rn 寄存

21、器减 1 1 1 18 1F DEC data 直接字节减 1 2 1 15 DEC Ri 间接 RAM 减 1 1 1 16;17 MUL AB A乘 B 1 4 A4 DIV AB A被 B 除 1 4 84 DA A A十进制调整 1 1 D4 4.转移指令(22 条)AJMP addr 11 绝对转移 2 2*1 LJMP addr 16 长转移 3 2 02 SJMP rel 短转移 2 2 80 JMP A+DPTR 相对于 DPTR 间接转移 1 2 73 JZ rel 若 A 0 则转移 2 2 60 JNZ rel 若 A0 则转移 2 2 70 JC rel 若 C 1 则

22、转移 2 2 40 JNC rel 若 C1 则转移 2 2 50 JB bit,rel 若直接位 1 则转移 3 2 20 JNB bit,rel 若直接位 0 则转移 3 2 30 方但是任然希望单片机汇编指令集附记忆方法的内容能够给您的工作和学习带来便利同时也真诚的希望收到您的建议 活愉快业绩进步以下为单片机汇编指令集附记忆方法的全部内容单片机汇编指令集附记忆方法单片机汇编指令集一数 据传送对外部的数据传送字节交换低半字节交换入栈出栈二算术运算类指令种助记符加法带进位加法带借位减法十进51 单片机汇编指令集(附记忆方法)-10-JBC bit,rel 若直接位 1 则转移且清除 3 2

23、10 CJNE A,data,rel 直接数与 A 比较,不等转移 3 2 B5 CJNE A,data,rel 立即数与 A 比较,不等转移 3 2 B4 CJNE Ri,data,rel 立即数与间接 RAM 比较,不等转移 3 2 B6;B7 CJNE Rn,data,rel 立即数与寄存器比较不等转移 3 2 B8BF DJNZ Rn,rel 寄存器减 1 不为 0 转移 2 2 D8 DF DJNZ data,rel 直接字节减 1 不为 0 转移 3 2 D5 ACALL addr 11 绝对子程序调用 2 2 1 LCALL addr 16 子程序调用 3 2 12 RET 子程

24、序调用返回 1 2 22 RETI 中断程序调用返回 1 2 32 NOP 空操作 1 1 00 六记忆方法 MCS 51 使用汇编语言指令,它共有 44 个操作码助记符,33 种功能,其操作数有#data、direct、Rn、Ri等。这里先介绍指令助记符及其相关符号的记忆方法。一、助记符号的记忆方法 1 表格列举法 把 44 个指令助记符按功能分为五类,每类列表记忆.此处从略,请读者自己总结。方但是任然希望单片机汇编指令集附记忆方法的内容能够给您的工作和学习带来便利同时也真诚的希望收到您的建议 活愉快业绩进步以下为单片机汇编指令集附记忆方法的全部内容单片机汇编指令集附记忆方法单片机汇编指令集

25、一数 据传送对外部的数据传送字节交换低半字节交换入栈出栈二算术运算类指令种助记符加法带进位加法带借位减法十进51 单片机汇编指令集(附记忆方法)-11-2 英文还原法 单片机的操作码助记符是该指令功能的英文缩写,将缩写还原成英语原文,再对照汉 语有助于理解其助记符含义,从而加强记忆。例如:增量 INC Incremect 减量 DNC Decrement 短转移 SJMP Short jump 长转移 LJMP Long jump 比较转移 CJNE Compare jump not equality 绝对转移 AJMP Absolute jump 空操作 NOP No operation 交

26、换 XCH Exchange 加法 ADD Addition 乘法 MUL Multiplication 除法 DIV Division 左环移 RL Rotate left 进位左环移 RLC Rotate left carry 右环移 RR Rotate right 进位右环移 RRC Rotate right carry 3 功能模块记忆法 单片机的 44 个指令助记符,按所属指令功能可分为五大类,每类又可以按功能相似原 则为 2 3 组。这样,化整为零,各个击破,实现快速记忆。1)数据传送组。2)加减运算组 MOV 内部数据传送 ADD 加法 MOVC 程序存储器传送 ADDC 带进位

27、加法 MOVX 外部数据传送 SUBB 带进位减法 3)逻辑运算组。4)子程序调用组.ANL 逻辑与 LCALL 长调用 ORL 逻辑或 ALALL 绝对调用 XRL 逻辑异或 RET 子程序返回 二、指令的记忆方法 方但是任然希望单片机汇编指令集附记忆方法的内容能够给您的工作和学习带来便利同时也真诚的希望收到您的建议 活愉快业绩进步以下为单片机汇编指令集附记忆方法的全部内容单片机汇编指令集附记忆方法单片机汇编指令集一数 据传送对外部的数据传送字节交换低半字节交换入栈出栈二算术运算类指令种助记符加法带进位加法带借位减法十进51 单片机汇编指令集(附记忆方法)-12-1 指令操作数的有关符号 M

28、CS 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 指令虽多,但按功能可分为五类,其中数据传送

29、类 28 条,算术运算类 24 条,逻辑操作类 25 条,控制转移类 17 条,布尔位操作 类 17 条。在每类指令里,根据其功能,抓住其源、目的操作数的不同组合,再辅之以下方法,是完全能记住的。我们约定,可能的目的操作数按(data/direct/A/Rn/Ri)顺序表示。对于 MOV 指令,其目的操作数按 A、Rn、direct、Ri 的顺序书写,则可以记住 MOV 的 15 条指令。例如以累加器 A为目的操作数,可写出如下 4 条指令.MOV A,data/direct/A/Rn/Ri 以此类推,写出其它指令.MOV Rn,data/direct/A MOV direct,#data/d

30、irect/A/Rn/Ri MOV Ri,#data/direct/A 2 指令图示记忆法 方但是任然希望单片机汇编指令集附记忆方法的内容能够给您的工作和学习带来便利同时也真诚的希望收到您的建议 活愉快业绩进步以下为单片机汇编指令集附记忆方法的全部内容单片机汇编指令集附记忆方法单片机汇编指令集一数 据传送对外部的数据传送字节交换低半字节交换入栈出栈二算术运算类指令种助记符加法带进位加法带借位减法十进51 单片机汇编指令集(附记忆方法)-13-图示记忆法是把操作功能相同或相似、但其操作数不同的指令,用图形和箭头将目 的、源操作数的关系表示出来的一种记忆方法。例如:由助记符 MOV、MOVX、MO

31、VC 组成的送数组指令,可以用图 1、2 帮助记忆。由助记符 CJNE形成的四条指令,也可以用图示法表示,如图 3.CJNE A,data,rel CJNE A,direct,rel CJNE Rn,data,rel CJNE Ri,data,rel 另外,对于由(ANL、ORL、ARL)形成的 18 条逻辑操作指令,有关 A的四条环移指令,也可以用图示法表示,请读者自行画出记忆。3 相似功能归类法 在 MCS 51 指令中,我们发现部分指令其操作码不同,但功能相似,而操作数则完全一 样。相似功能归类法就是把具有这样特点的指令放在一起记忆,只要记住其中的一条,其余的也就记住了.如加、减法的十二

32、条指令,与、或、非的十八 条指令,现列举如下。ADD/ADDC/SUBB A,data/direct/Rn/Ri ANL/ORL/XRL A,data/direct/Rn/Ri ANL/ORL/XRL direct,data/a 上述每一排指令,功能相似,其操作数都相同.其它的如加 1(INC)、减 1(DEC)指令也 可照此办理。4 口诀记忆法 对于有些指令,我们可以把相关的功能用精练的语言编成一句话来记忆.如 PUSH direct 和 POP direct 这两条指令。初学者常常分不清堆栈 SP 的变化情况,为此编成这样一句话:(SP 的内容)加 1(direct 的内 容)再入栈,(S

33、P 的内容)弹出(到 direct 单元)SP才减 1。方但是任然希望单片机汇编指令集附记忆方法的内容能够给您的工作和学习带来便利同时也真诚的希望收到您的建议 活愉快业绩进步以下为单片机汇编指令集附记忆方法的全部内容单片机汇编指令集附记忆方法单片机汇编指令集一数 据传送对外部的数据传送字节交换低半字节交换入栈出栈二算术运算类指令种助记符加法带进位加法带借位减法十进51 单片机汇编指令集(附记忆方法)-14-又如乘法指令中积的存放,除法指令中被除数和除数以及商的存放,都可以编成口诀记忆 如下。MUL AB 高位积(存于)B,低位积(存于)A。DIV AB A 除以 B,商(存于)A余(下)B。上面介绍了几种快速记忆单片机指令的方法,希望能起到抛砖引玉的作用,相信读者 在学习单片机的过程中能找到适合自己的方法来记忆。但是,有了好的方法还不够,还需要实践,即多读书上的例题和别人编写的程序,自己再 结合实际编写一些程序。只有这样,才能更好更快地掌握单片机指令系统。方但是任然希望单片机汇编指令集附记忆方法的内容能够给您的工作和学习带来便利同时也真诚的希望收到您的建议 活愉快业绩进步以下为单片机汇编指令集附记忆方法的全部内容单片机汇编指令集附记忆方法单片机汇编指令集一数 据传送对外部的数据传送字节交换低半字节交换入栈出栈二算术运算类指令种助记符加法带进位加法带借位减法十进

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

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com