第3章指令系统课程.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第3章 MCS-51单片机的指令系统 本章内容 MCS-51单片机指令系统的格式 MCS-51单片机寻址方式 指令系统的分析 3.1 指令格式 指令:即命令,人们给计算机的命令 指令有两种表示方式: 机器码——机器语言(机器能直接识别) 助记符——汇编语言(供设计人员使用) 机器码和助记符一一对应,汇编语言可汇编为机器语言,机器语言可反汇编为汇编语言。 如 MOV A,#3FH 这条指令的机器码为“74 3FH”。 3.1 指令格式 机器语言的几种形式: (1)单字节指令 : INC DPTR 指令机器码:A3 ADD A, R7 指令机器码:2F (2) 双字节指令 : SUBB A, 2BH 指令机器代码:95 2B ORL C, #27H 指令机器代码:A0 27 (3)三字节指令: MOV 20H, #00H 指令机器代码: 75 20 00 LJMP 2000H 指令机器代码: 02 20 00 二、指令系统说明 在MCS-51系列单片机指令系统中,约定了一些指令格式描述中的常用符号。现将这些符号的标记和含义说明如下: A: 累加器(ACC),通常用ACC表示累加器的地址,A表示它的名称; AB: 累加器(ACC)和寄存器B组成的寄存器对 direct: 8位片内RAM低128B区或SFR块的存储单元地址; 3.2 MCS-51 单片机的寻址方式 寻址方式 :CPU执行指令时获取操作数地址的方式 MSC-51单片机有7种不同的寻址方式 : (1)立即寻址方式 (2)直接寻址方式 (3)寄存器寻址方式 (4)寄存器间接寻址方式 (5)变址寻址方式 (6)位寻址方式 (7)相对寻址方式 寻址方式通常是针对源操作数的,否则需特别指明针对目的操作数。 MCS-51 单片机的寻址方式 (1)立即寻址方式 在指令中直接给出了参与运算的操作数(立即数)。 MOV A,#20H MOV DPTR,#2100H (2)直接寻址方式 指令中给出了参与运算的操作数所在单元的地址或所在位的位地址 MOV A,20H 直接寻址方式的使用范围: 1)单元地址 : 00~7FH 、21个SFR 2)对SFR的访问只能采用直接寻址方式(可使用单元地址,也可使用专用寄存器符号寻址) 如:MOV A,P1 MOV A,90H MCS-51 单片机的寻址方式 (3)寄存器寻址方式 指令中,指出了参与运算的操作数所在的寄存器。 MOV A,R0 寄存器寻址方式中的寄存器 : 1)工作(通用)寄存器R0~R7 、DPTR 2)累加器A、寄存器B(仅在乘除法时)和布 尔累加器C MCS-51 单片机的寻址方式 把存放操作数地址的寄存器称为地址寄存器。 地址寄存器可以是:R0、R1、DPTR、SP(隐含)。在指令中表示为@R0、@R1、 @DPTR 寄存器间接寻址方式寻址范围: 1)片内RAM:00~7FH 地址寄存器:@R0、@R1 2)片外RAM:0000~FFFFH 地址寄存器:@R0、@R1、@DPTR 如:MOV R0,#20H MOV A,@R0 MOV DPTR,#1000H MOVX A,@DPTR MCS-51 单片机的寻址方式 (5)变址寻址方式(基址寄存器+变址寄存器间接寻址) 操作数的地址由基址寄存器+变址寄存器间接寻址指出。 MCS-51单片机中可以作基址寄存器: 2个十六位寄存器:DPTR和PC MCS-51单片机中变址寄存器: 8位寄存器:累加器A 操作数存放在一个由[(PC)+(A)]或[(DPTR)+(A)] 指出的十六位地址所指的单元中(在ROM中),有以下 3种指令: MOVC A,@A+PC MOVC A,@A+DPTR JMP @A+DPTR ;变址寻址转移指令 MCS-51 单片机的寻址方式 (6)位寻址方式 在指令中,指出了参与运算的操作数(一位)所在的位地址或寄存器(仅有位累加器C) 指令中位地址: 1)20~2FH的16个单元的128 位;00~7FH 2)专用寄存器(SFR)中的某些寄存器中的位(80~FFH) CLR C

文档评论(0)

妈妈王子 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档