第4章 MCS51的指令系统资料

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

93H MOVC A,@A+DPTR
RAM
240FH单元的内
容88H为操作数 2400H
88H 240FH

00H DPL 24H DPH 808FHH ACC
SFR
ROM
变址寻址还用于跳转指令,如JMP @A+DPTR
4.2.6 相对寻址
用于跳转指令,实现程序分支
【例】若rel为75H,PSW.7为1,JC rel存于1000H开始的单元。 执行JC rel指令后,程序将??取指令并执行跳。转到1077H单元
位号 7 6 5 4 3 2 1 0 字节 opcode r r r
1 1 1 0 1 0 0 0 即:E8H
4
双字节指令(45条)
位号 字节
76543210 opcode
data或direct
如:MOV A,#50H 编码为:
0 1 1 1 0 1 0 0 即:74H
01010000
50H
三字节指令(17条)
00H
JC rel
40H 1000H 原PC值
75H
当前PC值
字节数
RAM
1002H=1000H+02H
+ 75H 偏移量
1077H
跳转到新PC处取指
10000000 PSW
源自文库
ROM
注意:此例中CY(PSW.7)为1
SFR
Rel常用符号地址表示,离源地址不要超过(-128~+127 )
4.2.7 位寻址
操作码后紧跟 操作数50H
50H ACC
SFR
对于MOV DPTR,#2100H指令,立即数高8位“21H”装入 DPH
4.2.5 变址寻址
操作数地址:基地址+偏移量 寻址空间:
ROM
【例】(A)=0FH, (DPTR)=2400H , 执行MOVC A, @A+DPTR 后(A)=?88H
00H
操作数 在50H单元
50H
E5H 50H
MOV A,50H
ROM
33AAHH
RAM
ACC SFR
4.2.3 寄存器间接寻址
寄存器中的内容是操作数的地址 寻片址内空RA间M:(@Ri、SP)【例】若(R0)=30H,(30H)=5AH 片外RAM(@Ri、@DPTR)
执行MOV A,@R0后,(A)=?5AH
在R0
特点: 传送和执行速度快
ROM
RAM
ACC SFR
4.2.2 直接寻址
操作码后字节存放的是操作数的地址
寻址空间: 片内RAM低128字节 【例】若(50H)=3AH ,
SFR(符号形式)
执行MOV A,50H后,(A)=?3AH
另一类直接寻 址是转移目标地 址的寻址。如: LJMP ADDR16
位号 字节
76543210
opcode data或direct data或direct
如:MOV 20H,#50H 编码为:
01110101 01000000 01010000
即:75H 20H 50H
4.1.2 符号指令的书写格式
书写格式
一般格式
操作助记符 [目的操作数][,源操作数][;注释]
(17条)
• 位操作类指令
(17条)
3
4.1 指令格式及常用符号
机器指令:计算机能直接识别和执行的指令。
4.1.1 机器指令的字节编码形式
单字节指令(49条)
8位编码仅为操作码
如:INC A 编码为:
位号 字节
76543210 opcode
即:04H
8位编码含操作码和寄存器编码
如:MOV A,R0 编码为:
4.2 8051的寻址方式
寻址方式:寻找(源)操作数或指令转移地址的方式 8051单片机有7种寻址方式
4.2.1 寄存器寻址 【例】若(R0)=30H,
操作数在寄存器中
执行MOV A, R0后,(A)=3?0H
寻址空间:
R0~R7、A、B(AB形式)
00H 30H R0
和DPTR
操作数
E8H
MOV A,R0
寻址位数据 寻址空间
片内RAM位空间 SFR位空间
位寻址方式实 质属于位的直 接寻址。
【例】位地址00H内容为1,MOV C, 00H执行后,位地址PSW.7的内容??为1。
位地址07H
20H
A2H 00H
MOV C,00H
1 位地址00H
RAM
ROM
PSW.7(或CY)
PSW
SFR
练习一
说明下列指令中源操作数采用的寻址方式
第7章: MCS51的定时器/计 数器(*)
第8章: MCS51的串行口(*)
第9章: 系统扩 展技术
第10章: 模拟接 第11章: 人机交

互接口
2
本讲主要内容
• 指令格式及常用符号
• 8051的寻址方式
• 数据传送指令
(29条)
• 算术运算指令
(24条)
• 逻辑运算与循环类指令(24条)
• 控制转移类指令
课程主讲:曹一鹏 办公地点:重点实验室中楼412室 联系电话:13898151009
第1章:微机原理 概述
课程内容
第2章:单片机概 述
第3章: MCS51单片机的硬 件结构(*)
第4章: MCS51单片机指令 系统(*)
第5章: MCS51单片机程序 设计(*)
第6章: MCS51的中断系统 (*)
片内:MOV 片外:MOVX
E6H MOV A,@R0 30H
ROM
R0中的内容为 操作数的地址
30H R0
5AH
RAM
ACC SFR
4.2.4 立即寻址
操作数在指令编码中 寻址空间: ROM
【例】执行MOV A,#50H 结果:(A)=?50H
00H
74H 50H
MOV A,#50H
RAM
ROM
MOV 30H, R7 MOV A, 55H MOV A, #55H JMP @A+DPTR MOV 30H, C MOV A, @R0 MOVX A, @R0
练习二
判断正误,并说明理由
注意:
操作助记符不能缺少 操作数个数可为:1、2、3个 2个操作数的指令,目的操作数在左边
描述符号
Rn(n=0~7)-当前工作寄存器组中的寄存器R0~R7之一 Ri(i=0,1)-当前工作寄存器组中的寄存器R0或R1 @ ----------间址寄存器前缀 #data ------8位立即数/ #data16-----16位立即数 direct------片内低128个RAM单元地址及SFR地址 addr11------11位目的地址 addr16------16位目的地址 rel---------8位地址偏移量,范围:-128~+127 bit---------片内RAM位地址、SFR的位地址 (×)------表示 × 地址单元或寄存器中的内容 / ----------位操作数的取反操作前缀
相关文档
最新文档