首页 单片微型计算机汇编语言指令表

单片微型计算机汇编语言指令表

举报
开通vip

单片微型计算机汇编语言指令表附录5 MCS-51 指令表 MCS-51指令中所用符号和含义 Rn——当前工作寄存器组的8个工作寄存器(n=0~7)。 Ri—— 可用于间接寻址的寄存器,只能是当前寄存器组中的2个寄存器R0、R1(i=0,1)。 direct——内部RAM中的8位地址(包括内部RAM低128单元地址和专用寄存器单元地址)。 #data——8位常数。 #data16——16位常数。 addr16——16位目的地址,只限于在LCALL和LJMP指令中使用。 addr11——11位目的地址,只限于在ACALL和AJMP...

单片微型计算机汇编语言指令表
附录5 MCS-51 指令表 MCS-51指令中所用符号和含义 Rn——当前工作寄存器组的8个工作寄存器(n=0~7)。 Ri—— 可用于间接寻址的寄存器,只能是当前寄存器组中的2个寄存器R0、R1(i=0,1)。 direct——内部RAM中的8位地址(包括内部RAM低128单元地址和专用寄存器单元地址)。 #data——8位常数。 #data16——16位常数。 addr16——16位目的地址,只限于在LCALL和LJMP指令中使用。 addr11——11位目的地址,只限于在ACALL和AJMP指令中使用。 rel——相对转移指令中的8位带符号偏移量。 DPTR——数据指针,16位寄存器,可用作16位地址寻址。 SP——堆栈指针,用来保护有用数据。 bit——内部RAM或专用寄存器中的直接寻址位。 A——累加器。 B——专用寄存器,用于乘法和除法指令或暂存器。 C——进位标志或进位位,或布尔处理机中的累加器。 @——间接寻址寄存器的前缀标志,如@Ri,@DPTR。 /——位操作数的前缀,表示对位操作数取反,如/bit。 (×)——以×的内容为地址的单元中的内容,X为表示指针的寄存器Ri(i=0、1)、DPTR、SP(Ri、DPTR、SP的内容均为地址)或直接地址单元。如:为了区别地址单元与立即数如30H单元与立即数30H,注释时,表述地址单元时用括号如(30H),立即数直接表示30H。 $——表示当前指令的地址。 <=>——表示数据交换。 ←——箭头左边的内容被箭头右边的内容所代替。 十六进制代码 助记符 功能 对标志位影响 字 节 数 周 期 数 P OV AC CY 算 术 运 算 指 令 28~2F ADD A,Rn A+ Rn→A √ √ √ √ 1 1 25 ADD A,direct A+(direct)→A √ √ √ √ 2 1 26,27 ADD A,@Ri A+( Ri )→A √ √ √ √ 1 1 24 ADD A,#data A+ data →A √ √ √ √ 2 1 38~3F ADDC A,Rn A+ Rn+CY→A √ √ √ √ 1 1 35 ADDC A,direct A+(direct)+CY→A √ √ √ √ 2 1 36,37 ADDC A,@Ri A+( Ri )+CY→A √ √ √ √ 1 1 34 ADDC A,#data A+ data +CY→A √ √ √ √ 2 1 98~9F SUBB A,Rn A- Rn-CY→A √ √ √ √ 1 1 95 SUBB A,direct A-(direct)-CY→A √ √ √ √ 2 1 96,97 SUBB A,@Ri A-( Ri )-CY→A √ √ √ √ 1 1 94 SUBB A,#data A- data -CY→A √ √ √ √ 2 1 04 INC A A+1→A √ X X X 1 08~0F INC Rn Rn+1→ Rn X X X X 1 1 05 INC direct (direct)+1→(direct) X X X X 2 1 06,07 INC @Ri ( Ri )+1→( Ri ) X X X X 1 1 A3 INC DPTR DPTR+1→ DPTR 1 2 14 DEC A A-1→A √ X X X 1 1 18~1F DEC Rn Rn-1→ Rn X X X X 1 1 15 DEC direct (direct)-1→(direct) X X X X 2 1 16,17 DEC @Ri ( Ri )-1→( Ri ) X X X X 1 1 A4 MUL AB A*B→BA √ √ X 0 1 4 84 DIV AB A/B→A……B √ √ X 0 1 4 D4 DA A 对A进行十进制调整 √ X √ √ 1 1 逻 辑 运 算 指 令 58~5F ANL A,Rn A∧ Rn→A √ X X X 1 1 55 ANL A,direct A∧(direct)→A √ X X X 2 1 56,57 ANL A,@Ri A∧( Ri )→A √ X X X 1 1 54 ANL A,#data A∧data →A √ X X X 2 1 52 ANL direct,A (direct)∧A→(direct) X X X X 2 1 53 ANL direct,#data (direct)∧ data →(direct) X X X X 3 2 48~4F ORL A,Rn A∨Rn→A √ X X X 1 1 45 ORL A,direct A∨(direct)→A √ X X X 2 1 十六进制代码 助记符 功能 对标志位影响 字 节 数 周 期 数 P OV AC C Y 46,47 ORL A,@Ri A∨( Ri )→A √ X X X 1 1 44 ORL A,#data A∨data →A √ X X X 2 1 42 ORL direct,A (direct)∨A→(direct) X X X X 2 1 43 ORL direct,#data (direct)∨ data →(direct) X X X X 3 2 68~6F XRL A,Rn A⊕Rn→A √ X X X 1 1 65 XRL A,direct A⊕(direct)→A √ X X X 2 1 66,67 XRL A,@Ri A⊕( Ri )→A √ X X X 1 1 64 XRL A,#data A⊕data →A √ X X X 2 1 62 XRL direct,A (direct)⊕A→(direct) X X X X 2 1 63 XRL direct,#data (direct)⊕ data →(direct) X X X X 3 2 E4 CLR A 0→A √ X X X 1 1 F4 CPL A →A X X X X 1 1 23 RL A A循环左移一位 X X X X 1 1 33 RLC A A带进位位循环左移一位 √ X X √ 1 1 03 RR A A循环右移一位 X X X X 1 1 13 RRC A A带进位位循环右移一位 √ X X √ 1 1 C4 SWAP A A半字节交换 X X X X 1 1 数 据 传 送 指 令 E8~EF MOV A,Rn Rn→A √ X X X 1 1 E5 MOV A,direct (direct)→A √ X X X 2 1 E6,E7 MOV A,@Ri ( Ri )→A √ X X X 1 1 74 MOV A,#data data →A √ X X X 2 1 F8~FF MOV Rn, A A→Rn X X X X 1 1 A8~AF MOV Rn ,direct (direct)→ Rn X X X X 2 2 78~7F MOV Rn ,#data data → Rn X X X X 2 1 F5 MOV direct , A A→ (direct) X X X X 2 1 88~8F MOV direct ,Rn direct→ Rn X X X X 2 2 85 MOV direct1 ,direct2 (direct2)→(direct1) X X X X 3 2 86,87 MOV direct ,@Ri ( Ri )→ (direct) X X X X 2 2 75 MOV direct ,#data data → (direct) X X X X 3 2 F6,F7 MOV @Ri , A A→(Ri) X X X X 1 1 A6,A7 MOV @Ri ,direct (direct)→(Ri) X X X X 2 2 76,77 MOV @Ri ,#data data → (Ri) X X X X 2 1 90 MOV DPTR,#data16 data16→ DPTR X X X X 3 2 93 MOVC A,@A+DPTR A+DPTR→A √ X X X 1 2 83 MOVC A,@A+PC A+PC→A √ X X X 1 2 十六进制代码 助记符 功能 对标志位影响 字 节 数 周 期 数 P OV A C C Y E2,E3 MOVX A,@ Ri (Ri)→A √ X X X 1 2 E0 MOVX A,@ DPTR (DPTR)→A √ X X X 1 2 F2,F3 MOVX @ Ri,A A→(Ri) X X X X 1 2 F0 MOVX @DPTR,A A→(DPTR) X X X X 1 2 C0 PUSH direct SP+1→SP (direct)→SP X X X X 2 2 D0 POP direct SP→(direct) SP-1→SP X X X X 2 2 C8~CF XCH A, Rn A<=>Rn √ X X X 1 1 C5 XCH A, direct A<=>(direct) √ X X X 2 1 C6,C7 XCH A,@ Ri A<=>( Ri) √ X X X 1 1 D6,D7 XCHD A,@ Ri A0~3<=>( Ri) 0~3 √ X X X 1 1 位 操 作 指 令 C3 CLR C 0→CY X X X √ 1 1 C2 CLR bit 0→bit X X X 2 1 D3 SETB C 1→CY X X X √ 1 1 D2 SETB bit 1→bit X X X 2 1 B3 CPL C →CY X X X √ 1 1 B2 CPL bit →bit X X X 2 1 82 ANL C, bit CY∧bit→CY X X X √ 2 2 B0 ANL C, /bit CY∧ →CY X X X √ 2 2 72 ORL C, bit CY∨bit→CY X X X √ 2 2 A0 ORL C, /bit CY∨ →CY X X X √ 2 2 A2 MOV C, bit bit→CY X X X √ 2 1 92 MOV bit,C CY→bit X X X X 2 2 控 制 转 移 指 令 *1 ACALL addr11 PC+2→PC,SP+1→SP (PC)0~7→(SP), SP+1→SP (PC)8~15→(SP) addr11→( PC)10~0 X X X X 2 2 12 LCALL addr16 PC+3→PC,SP+1→SP (PC)0~7→(SP), SP+1→SP (PC)8~15→(SP) addr16→PC X X X X 3 2 十六进制代码 助记符 功能 对标志位影响 字 节 数 周 期 数 P O V A C C Y 22 RET SP→(PC)8~15,SP-1→SP SP→(PC)0~7, SP-1→SP X X X X 1 2 32 RETI SP→(PC)8~15,SP-1→SP SP→(PC)0~7, SP-1→SP 中断返回 X X X X 1 2 *1 AJMP addr11 PC+2→PC addr11→( PC)10~0 X X X X 2 2 02 LJMP addr16 addr16→PC X X X X 3 2 80 SJMP rel PC+2→PC,rel→PC X X X X 2 2 73 JMP @A+ DPTR A+ DPTR→PC √ X X X 1 2 60 JZ rel A=0,rel→PC A≠0, PC+2→PC X X X X 2 2 70 JNZ rel A≠0,rel→PC A=0, PC+2→PC X X X X 2 2 40 JC rel CY=1,rel→PC CY=0, PC+2→PC X X X X 2 2 50 JNC rel CY=0,rel→PC CY=1, PC+2→PC X X X X 2 2 20 JB bit,rel bit=1,rel→PC bit=0, PC+3→PC X X X X 3 2 30 JNB bit,rel bit=0,rel→PC bit=1, PC+3→PC X X X X 3 2 10 JBC bit,rel bit=1,rel→PC,0→bit bit=0, PC+3→PC X X X X 3 2 B5 CJNE A, direct, rel A≠(direct), rel→PC A=(direct),PC+3→PC X X X √ 3 2 B4 CJNE A,# data, rel A≠data, rel→PC A= data,PC+3→PC X X X √ 3 2 B8~BF CJNE Rn, # data, rel Rn≠data, rel→PC Rn = data,PC+3→PC X X X √ 3 2 B6~B7 CJNE @ Ri, # data, rel (Ri)≠data, rel→PC (Ri)=data, PC+3→PC X X X √ 3 2 D8~DF DJNZ Rn, rel Rn-1≠0, rel→PC Rn-1=0,PC+2→PC X X X X 2 2 D5 DJNZ direct, rel (direct)-1≠0, rel→PC (direct)-1=0,PC+3→PC X X X √ 3 2 00 NOP 空操作,PC+1→PC X X X X 1 1 附录6 AT89 系列单片机 1.AT89 系列单片机简介 AT89 系列单片机是ATMEL 公司的8 位Flash 单片机系列,这个系列单片机的最大特点是在片内含有Flash 存储器。因此, 在应用中有着十分广泛的前途, 特别是在便携式省电及特殊信息保存的仪器和系统中显得更为有用。AT89 系列单片机是以8051 核构成的, 它和8051 系列单片机是兼容的,故而对于熟悉8051 的用户来说, 用ATMEL公司的89 系列单片机进行取代8051 的系统设计是轻而易举的事 2.8 9 系列单片机的优点 1)内部含Flash 存储器。在系统的开发过程中可以十分容易进行程序的修改,从而大大缩短了系统的开发周期;能有效地保存一些数据信息,即使外界电源损坏也不会影响到信息的保存。 2)89 系列单片机的引脚和80C51 的引脚相同。当用89 系列单片机取代80C51 时,不管采用40 引脚或是44 引脚的产品,只要用相同引脚的89 系列单片机取代80C51 的单片机即可以直接进行代换。 3)静态时钟方式。89 系列单片机采用静态时钟方式,节省电能,这对于降低便携式产品的功耗十分有用。 4)错误编程亦无废品产生。一般的OTP 产品一旦错误编程就成了废品,而89 系列单片机内部采用了Flash 存储器,所以错误编程之后仍可以重新编程直到正确为止故不存在废品。 5)可进行反复系统试验。用89 系列单片机设计的系统可以反复进行系统试验,每次试验可以编入不同的程序修改使系统不断能追随用户的最新要求。 3.89 系列单片机的内部结构 89 系列单片机的内部结构和80C51 相近,主要含有如下一些部件: (1)8031 CPU (6)片内RAM (2)振荡电路 (7)并行I O 接口 (3)总线控制部件 (8)定时器 (4)中断控制部件 (9)串行I O 接口 (5)片内Flash 存储器 (10)片内EEPROM 89 系列单片机中AT89C1051 的Flash 存储器容量最小只有1 K ,储器容量最大有20K 。这个系列中结构最简单的是AT89C1051, 它内部不含串行接口;最复杂的是AT89S8252 内部含 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 的串行接口、一个串行外围接口SPI, Watchdog 定时器,双数据指针,EEPROM 电源下降的中断恢复等功能和部件。 89 系列单片机目前有多种型号分别为AT89C1051、AT89C2051、AT89C4051、AT89C51 AT89LV51、AT89C52 、AT89LV52、 AT89S8252、AT89LS8252、AT89C55、AT89LV55、AT89S53 AT89LS53、AT89S4D12 。其中AT89LV51、 AT89LV52 和AT89LV55 分别是AT89C51、 AT89C52 和AT89C55 的低电压产品,最低电压可以低至2.7 V 。而AT89C1051 和AT89C2051 则是低档型低电压产品,它们仅有20 个引脚最低电压仅为2.7 V 。 4.8 9 系列单片机的型号编码 89 系列单片机的型号编码由三个部分组成,前缀、型号和后缀。格式如下: AT89CXXXX XXXX ,其中AT 是前缀,89CXXXX 是型号,XXXX 是后缀。 下面分别对这三个部分进行说明,并且对其中有关参数的表示和意义作相应的解释。 l)前缀由字母AT 组成表示该器件是ATMEL 公司的产品。 2)型号由89CXXXX 或89LVXXXX 或89SXXXX 等表示。 89CXXXX 中9 是表示内部含Flash 存储器,C 表示为CMOS 产品。 89LVXXXX 中LV 表示低压产品。 89SXXXX 中S 表示含有串行下载Flash 存储器,XXXX表示器件型号数,四个参数组成如51 、1051 、8252 等每个参数的表示和意义不同。 3)后缀由XXXX组成 在型号与后缀部分有空格隔开 ① 后缀中的第一个参数X 用于表示速度它的意义如下: X 12 表示速度为12 MHz ,X 20 表示速度为20 MHz X 16 表示速度为16 MHz ,X 24 表示速度为24 MHz ② 后缀中的第二个参数X 用于表示封装,它的意义如下: X D 表示陶瓷封装,X Q 表示PQFP 封装 X J 表示PLCC 封装,X A 表示TQFP 封装 X P 表示塑料双列直插DIP 封装,X W 表示裸芯片 X S 表示SOIC 封装 ③ 后缀中第三个参数X 用于表示温度范围,它的意义如下: X C 表示商业用产品温度范围为0 十70; X I 表示工业用产品温度范围为40 十85; X A 表示汽车用产品温度范围为40 十125; X M 表示军用产品温度范围为55 十150; ④ 后缀中第四个参数X 用于说明产品的处理情况,它的意义如下: X 为空表示处理工艺是标准工艺; X 883 表示处理工艺采用MIL STD 883 标准; 例如有一个单片机型号为AT89C51 12PI 则表示意义为该单片机是ATMEL 公司的Flash 单片机、内部是CMOS 结构速度为12 MHz 、封装为塑封DIP、 是工业用产品、按标准处理工艺生产。 5. 8 9 系列单片机分类 AT89 系列单片机可分为标准型号、低档型号、和、高档型号三类。 标准型有AT89C51 等六种型号它们的基本结构和89C51 是类似的是80C51 的兼容产品;低档型有AT89C1051 等两种型号它们的CPU 核和89C51 是相同的但并行I O 口较少;高档型有AT89S8252 等型号,是一种可串行下载的Flash 单片机,可以用在线方式对单片机进行程序下载。 1)标准型单片机 标准型单片机有89C51、 89LV51、 89C52 、89LV52、89C55、89LV55 六种型号。 标准型89 系列单片机和MCS 51 系列单片机兼容的,内部含有4K、 8K 或20K 可重复编程的Flash 存储器,可进行1000次擦写操作;全静态工作为0 ~33 MHz ,三级程序存储器加密锁定;内部含128、 256 字节的RAM, 有32 位可编程的I /O 端口,有2 ~3 个16 位定时器计数器,有6~ 8 级中断,UART通用串行接口,有低电压空闲及电源下降方式。 在这六种型号中AT89C51 是一种基本型号,AT89LV51 是一种能在低电压范围工作的改进型,可在2.7 6 V 电压范围工作,其它功能和89C51 相同。AT89C52 是在AT89C51 的基础上,在存储器容量、定时器和中断能力上得到改进的型号,89C52 的Flash 存储器容量为8K ,16 位定时器计数器有3 个,中断有8 级。89C51 的Flash 存储器容量为4K ,16 位定时器计数器有2 个,中断只有6 级。AT89LV52 是89C52 的低电压型号,可在2.7 6 V 电压范围内工作,89C55 的Flash 存储器容量为20K ,16 位定时计数器有3 个,中断有8 级,AT89 LV55 是89C55 的低电压型号可在2.7 6 V 电压范围内工作。 2)低档型单片机 低档型的单片机有AT89C1051 和AT89C2051 两种型号。除并行I O 端口数较少之外其它部件结构基本和AT89C51 差不多,之所以被称为低档型主要是因为它的引脚只有20 脚,比标准型的40 引脚少得多。AT89C1051 的Flash 存储器只有1K, RAM 只有64 个字节,内部不含串行接口,内部的中断响应只有3 种,保密锁定位只有2 位,这些也是和标准型的AT89C51 有区别的地方。AT89C2051 的Flash 存储器只有2K ,RAM 只有128 个字节,保密锁定位有2 位,也由于在上述有关部件上AT89C1051 AT89C2051 的功能比标准型AT89C51 要弱,所以它们就处于低档位置。 3)高档型单片机 高档型有AT89S53、 AT89S8252 、AT89S4D12 等型号,是在标准型的基础上增加了一些功能形成的。增加的功能主要有如下几点: ① AT89S4D12 有4K 可下载Flash 存储器,AT89S8252 有8K 可下载Flash 存储器,AT89S53 有12K 可下载Flash 存储器,下载功能是由IBM 微机通过89 系列单片机的串行外围接口SPI 执行的。 ② 除8K Flash 存储器外,AT89S8252 还含有一个2K 的EEPROM ,从而提高了存储容量。 ③ 含有9 个中断响应的能力。 ④ 含标准型和低档型所不具有的SPI 接口。 ⑤ 含有Watchdog 定时器(看门狗定时器) 。 ⑥ 含有双数据指针。 ⑦ 含有从电源下降的中断恢复。 ⑧ AT89S4D12 除了4K 可下载Flash 存储器之外, 还有一个128K 片内Flash 数据存储器,12MHz 内部振荡器,5 个可编程I O 线。 PAGE 9 _1222113034.unknown _1222113070.unknown _1222031122.unknown
本文档为【单片微型计算机汇编语言指令表】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_657452
暂无简介~
格式:doc
大小:340KB
软件:Word
页数:0
分类:
上传时间:2013-09-29
浏览量:21