MCS51单片机指令系统32寻址方式.ppt

上传人:san****019 文档编号:19955143 上传时间:2021-01-18 格式:PPT 页数:35 大小:558.10KB
收藏 版权申诉 举报 下载
MCS51单片机指令系统32寻址方式.ppt_第1页
第1页 / 共35页
MCS51单片机指令系统32寻址方式.ppt_第2页
第2页 / 共35页
MCS51单片机指令系统32寻址方式.ppt_第3页
第3页 / 共35页
资源描述:

《MCS51单片机指令系统32寻址方式.ppt》由会员分享,可在线阅读,更多相关《MCS51单片机指令系统32寻址方式.ppt(35页珍藏版)》请在装配图网上搜索。

1、第 3章 MCS - 51单片机指令系统 3.1 指令系统简介 3.2 寻址方式 本章内容 3.1 指令系统简介 3.2 寻址方式 3.3 MCS-51的指令集 3.4 汇编语言程序的基本形式 3.5 汇编语言程序的基本结构 程序框架 1. ORG 0000H 2. LJMP MAIN ;跳转至主程序 3. ORG 0003H 4. LJMP INT0_INT ;跳转至外部中断 0的中断服务程序 5. ORG 000BH 6. LJMP T0_INT ;跳转至定时器 0的中断服务程序 7. ORG 0013H 8. LJMP INT1_INT ;跳转至外部中断 1的中断服务程序 9. 10.O

2、RG 0030H 11.MAIN: ;开始写主程序 12. 13. END 中断入口地址 主程序开始 软件编程环境 3.1 指令系统简介 指令:规定计算机进行某种操作的命令 指令系统:指令集合 不同系列的机器,其指令系统不同 指令编码 机器语言指令: 二进制数 汇编语言指令: 助记符(英文缩写) 3.1.1 MCS-51单片机指令 111条 分类 按 机器周期数 单、双、四 按指令功能 数据传送、算术运算、逻辑运算及移位、控 制转移、位操作 按指令的字长分 单字节、双字节、三字节 字节少的指令占用存储 单元少,执行速度快 3.1.2 指令的格式 标号 : 操作码助记符 目的操作数 ,源操作数

3、;注释 NEXT: MOV A, #0A7H ;立即数 0A7H送累加器 A 常用的指令说明符号 符 号 含 义 Rn 表示当前选定寄存器组的工作寄存器 R0 R7, n=0 7 Ri 表示作为 间接寻址 的地址指针 R0 R1, i=0, 1 #data 表示 8位立即数 , 即 00H FFH #datal6 表示 16位立即数 , 即 0000H FFFFH addrl6 16位地址,可表示用于 64K范围内寻址,用于 LCALL和 LJMP指令中( 216=64K) addrll 11位地址 , 可表示 2K范围内寻址 , 用于 ACALL和 AJMP指 令中 ( 211=2K) re

4、l 带符号 的 8位地址偏移量 ( 128 +127),用于 SJMP和条 件转移指令中 bit 位寻址区的直接寻址位 , 表示 片内 RAM中可寻址 位 和 SFR 中的可寻址 位 $ 当前指令所在地址 DPTR 数据指针 间接寻址寄存器或基址寄存器的前缀 / 加在位地址之前,表示该位先取反再参与运算,但 不影响该 位的值 direct 8位直接地址 , 可以是内部 RAM区的某一单元或某一专用 功能寄存器的地址 (X) X地址单元中的内容 , 或 X作为间接寻址寄存器时所指单 元的内容 (X) 由 X寻址的单元的内容 将箭头后面的内容传送到箭头前面去 3.1.3 指令的字节 ( 1)单字节

5、指令 操作码和操作数加起来只有一个字节 ( 2)双字节指令 操作码和操作数各占一个字节 ( 3)三字节指令 第一字节为操作码 第二、第三字节为操作数或操作数地址 ( 1)单字节指令 (49条) 无操作数单字节指令 指令中 只有 操作码 字段, 操作数 隐含 在操作码中 例: INC A ; 指令编码为 04H 含有操作数寄存器号的单字节指令 指令码由 操作码 字段 和 指示操作数所在 寄存器号 的 字段 组成 例: MOV A, Rn ; 指令编码为 E8H EFH ALU A TMP PSW PC IR ID 控制器 AR B +1 RAM地址锁存 RAM ROM 04H INC A 指令编

6、码: 04H ( 2)双字节指令 (46条 ) 指令 操作码字节 在前 ; 在后 的操作数字节可以是 立即数 ,也可以是操 作数所在片内 RAM的 地址 。 例: MOV A, #data ; 指令编码为 74H data MOV A, dir ; 指令编码为 E5H dir ALU A TMP PSW PC IR ID 控制器 AR B +1 RAM地址锁存 RAM ROM E5H 35H FFH 36H 37H 38H 34H 33H 35H MOV A, 35H 指令编码: E535H ( 3)三字节指令 (16条 ) 指令 第一字节为操作码 第二、第三字节为操作数或操作数地址。分为 4

7、类 16位数据 MOV DPTR, #26ABH 8位地址和 8位数据 MOV 74H, #0FFH 8位数据和 8位地址 CJNE A, #00, 60H 16位地址 LCALL 2020H 3.2 寻址方式 寻找操作数的方式 7种: ( 1) 立即寻址 ( 2) 直接寻址 ( 3) 寄存器寻址 ( 4) 寄存器间接寻址 ( 5) 变址寻址 ( 6) 相对寻址 ( 7) 位寻址 寻址方式 越多 指令功能就 越强 ,灵活性 越大 ( 1)立即寻址 S F R 区 M O V A, # 3 A H R O M 3 A H 7 4 H A C C ( E 0 H ) 0 F F F F H 附 加

8、 R A M 区 例 1 MOV A, 3AH 例 2 MOV DPTR, 1638H ; A3AH ; DPTR1638H MOV 3AH, A 3AH S F R 区 M O V D P T R, # 1 6 3 8 H R O M 3 8 H 1 6 H 9 0 H D P H ( 8 3 H ) D P L ( 8 2 H ) 0 F F F F H 附 加 R A M 区 16H 38H MOV 1638H , DPTR ( 2) 直接寻址 例 若( 30H) = 0AAH,执行指令 MOV A, 30H ; (A)(30H) 结果:( A) = 0AAH M O V A , 3 0

9、 H R O M E 5 H 3 0 H A C C ( E 0 H ) 3 0 H A A H 3 0 H 0 F F F F H S F R 区 附 加 R A M 区 0AAH 注意: 直接寻址 可以访问 : 内部数据存储器的 低 128 个字节单元 特殊功能寄存器 特殊功能寄存器 只能用 直接寻址 方式进行访问 A、 B、 DPTR? ( 3)寄存器寻址 例 若( R0) = 0AAH,执行指令 MOV A, R0 ; A(R0) 结果: (A) = 0AAH M O V A , R 0 R O M E 8 H A C C ( E 0 H ) 3 0 H 附 加 R A M 区 A A

10、 H R 0 ( 0 0 H ) 0 F F F F H S F R 区 指令码为: E8H 0AAH 注意: 可采用寄存器寻址的寄存器 R0 R7 累加器 A INC A ;寄存器寻址 ( 机器码 :04H) INC ACC ;直接寻址(机器码 :05E0H) INC 0E0H ;直接寻址(机器码 :05E0H) 寄存器 B MUL AB 和 DIV AB;寄存器寻址 MOV B, #12H ;直接寻址(机器码 :75F012H) 数据指针 DPTR INC DPTR 和 MOV DPTR, #1234H ;寄存器寻址 特 有 指 令 ( 4) 寄存器间接寻址 使用规定 片内( 256B)

11、RAM 间接用 Ri( i = 0 或 1) ,即 MOV A, R1 或 MOV A, R0 片外 64KB RAM 间接用 DPTR,即 MOVX A, DPTR 间接用 Ri,即 MOVX A, R1 或 MOVX A, R0 此时, 高 8位 地址由 P2提供, 低 8位 地址由 Ri提供 例 1 若( R0) =0AAH,( 0AAH) =5BH,执行指令 MOV A, R0 ; A(R0) 结果:( A) = 5BH M O V A , R 0 R O M E 6 H A C C ( E 0 H ) 3 0 H A A H R 0 ( 0 0 H ) 5 B H A A H 0 F

12、 F F F H S F R 区 附 加 R A M 区 5BH 例 2 MOV DPTR, #3456H ; DPTR 3456H 若( 3456H) =99H,则 MOVX A, DPTR ; A ( DPTR) ; (A) = 99H 注意: 寄存器 间接 寻址, 不能 用于对 SFR 寻址 片内 RAM和 片外 RAM之间 不能 直接 传递数据 堆栈操作( PUSH, POP)隐含为 SP间接寻址 ( 5) 变址寻址 3条 MOVC A, A+PC ; A ( (A)+(PC)) MOVC A, A+DPTR ; A ( (A)+(DPTR)) JMP A+DPTR ; PC (A)+

13、(DPTR) 所用寄存器 基地址寄存器: DPTR、 PC 累加器 A: 预先 存放 被寻址操作数地址 相对 基地址 的 偏移量 只能 访问 ROM 取操作 数 获得程序的跳转 地址 下一条 指令 的 PC值 例 1 若( A) = 08H,( DPH) = 20H,( DPL) = 00H; 执行: MOVC A, A+DPTR 执行后: (A) = 88H S F R A C C ( E 0 H ) 3 0 H 0 8 H R O M D P L ( 8 2 H ) D P H ( 8 3 H ) 2 0 H 0 0 H 0 F F F F H 88H 88H ( D P T R ) +

14、( A ) = 2 0 0 0 H + 0 8 H 2 0 0 8 H 例 2 若( A) =30H,( 1031H) = 20H 执行: 地址 1000H处的指令 1000H: MOVC A, A+PC 执行后:( A) = 20H M O V C A , A + P C S F R A C C ( E 0 H ) 3 0 H 3 0 H R O M 1 0 0 0 H 1 0 0 1 H 8 3 H 0 F F F F H ( A ) = ( ( P C ) + ( A ) ) = ( 1 0 0 1 H + 3 0 H ) 2 0 H 1 0 3 1 H 20H 例 3 若( A) =0

15、8H, (DPTR)=2000H 执行: JMP A+DPTR 执行后: ( PC) = 2008H 程序从 ROM 地址 2008H 处开始执行 S F R A C C ( E 0 H ) 3 0 H 0 8 H R O M D P L ( 8 2 H ) D P H ( 8 3 H ) 2 0 H 0 0 H P C = 2 0 0 8 H 指 令 执 行 后 P C = ( A ) + ( D P T R ) = 2 0 0 8 H 程 序 转 到 此 处 开 始 执 行 0 0 H N O P 7 3 H J M P A + D P T R 0 F F F F H ( 6) 相对寻址

16、操作 修改 PC的值,实现程序的 分支转移 转移的目的地址 目的地址 转移指令下条指令地址 (PC的 当前 值 ) rel 目的地址 转移指令地址 转移指令 字节数 rel 其中 rel 带符号的 8位二进制数 补码形式( 128 127) 等价 等价 在实际编程中, “ rel” 通常用 标号 代替 rel 例 已知 ( PC) =2000H 执行如下指令 地址 ORG 2000H 指令码 2000H SJMP 200AH 80H 08H 2002H NOP 00H 200AH NOP 00H 结果:程序转移到 200A处开始继续执行 0 0 H R O M 2 0 0 0 H 2 0 0

17、1 H 8 0 H 0 8 H S J M P 2 0 0 A H 2 0 0 2 H 0 0 H 2 0 0 A H N O P N O P 2 0 0 2 H + 0 8 H = 0 F F F F H ( 7) 位寻址 操作数: 片内 RAM 单元中的某一 位 只给出 位地址 ,而 不是 字节地址 例 CLR ACC.0 MOV 30H, C ; 30H为片内 RAM中的位地址 可位寻址区为: 片内 RAM(共 16个字节, 128个位) 字节地址: 20H 2FH 位地址: 00H 7FH 字节 地址 能被 8整除 的 SFR的相应位地址 位地址的表示方式, 4种 直接使用位地址 MO

18、V C, 0D5H PSW的位 5(位地址 D5H)的状态送进位标志位 单元地址加位序号的形式 MOV C, 0D0H.5 PSW(单元地址 0D0H)的位 5(位地址 D5H)的状态送进位标志位 特殊功能寄存器符号加位序号的形式 MOV C, PSW.5 PSW的位 5的状态送进位标志位 位名称表示形式 MOV C, F0 PSW的位 5(位地址 D5H、位名称为 F0)的状态送进位标志位 小结: 寻址方式和寻址空间 序号 寻址方式 使用的变量 寻址空间 1 立即寻址 ROM 2 直接寻址 (1)内部 RAM的低 128字节; (2)特殊功能寄存器 3 寄存器寻址 R0 R7、 A、 B、DPTR 4 寄存器间接 寻址 R0、 R1、 SP 内部 RAM R0、 R1、 DPTR 外部 RAM 5 相对寻址 PC+偏移量 ROM 6 变址寻址 A+PC、 A+DPTR ROM 7 位寻址 (1)内部 RAM中的位寻址区; (2)可位寻址的特殊功能寄存器位 课本 P51表 3-1 小结 MCS-51单片机指令 分类 格式 寻址方式 作业: P94 3.3 预习 MCS 51单片机指令系统 指令集

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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