微处理器的指令系统.ppt

合集下载

微机原理 第02章

微机原理 第02章
• 则其对应的物理地址为BC777H 。
存储器单元的地址
物理地址 12340H 67H 逻辑地址(段+偏移) 1234H:0000H
12341H
12342H 12343H 12344H
67H
67H 67H 67H
1234H:0001H
1234H:0002H 1234H:0003H 1234H:0004H
AH AL BH BL CH CL DH DL SP BP
DI SI
(图2-2) 数据寄存器
地址寄存器
总线 控制 逻辑 电路
外 总 线
运算寄存器 ALU 标志
执行部分 控制电路
1 2 3 4
指令队列缓冲器 4个字节 总线接口单元 (BIU)
执行单元 (EU)
指令预取
取指令1 执行指令1 取指令2 执行指令2 取指令3 执行指令3
存储器的分段管理
• 8086/8088将1MB存储器空间分成若干个逻辑段 来管理。每个段最大限制为64KB。 • 采用逻辑地址(段地址:偏移地址)的形式来表达 段中每个存储器单元的20位物理地址。 • 段地址和偏移地址都是16位二进制数。
段地址
• 段地址说明该逻辑段在内存中的起始位置,即该 段中的第一个内存单元的物理地址。 • 段地址必须是模16地址,即××××0H的形式, 故可采用16位二进制数据表示,保存在段寄存器 (CS,DS,ES,SS)中。
低地址
AL ... 操作码 05H ... 指 令 代 码 段
例: MOV AL, 05H
指令执行后: (AL)=05H
05H
高地址
低地址
例:MOV AX, 3064H
指令执行后: (AX)=3064H

单片机课件第二章 ARM体系结构

单片机课件第二章 ARM体系结构

2.5
ARM微处理器指令系统
2.5.1 基本寻址方式
寻址方式是根据指令中给出的地址码字段来实现寻找真实操作数地 址的方式,ARM处理器有9 种基本寻址方式。
1.寄存器寻址
操作数的值在寄存器中,指令中的地址码字段给出的是寄存器编 号,指令执行时直接取出寄存器值操作。
例如指令: MOV R1,R2 SUB R0,R1,R2
11111
系统模式
PC,R14~R0,CPSR(ARM v4及以上版本)
并非所有的模式位组合都能定义一种有效的处理器模式。其他组合的 结果不可预知。
2.2 ARM微处理器的寄存器结构
2.2.4 Thumb状态的寄存器集
2.2 ARM微处理器的寄存器结构
2.2.4 Thumb状态的寄存器集
Thumb 状态的寄存器在ARM 状态的寄存器上的映射


在Thumb状态下,程序计数器PC(Program Counter)使用位[1]选 择另一个半字。ARM处理器在两种工作状态之间可以切换。
Thumb状态:当操作数PSR控制位T为1时,执行BX指令进入Thumb 状态。如果处理器在Thumb状态进入异常,则当异常处理(IRQ、 FIQ、Undef、Abort和SWI)返回时,自动转换到Thumb状态。(异 常都是在ARM 状态中执行) ARM状态:当操作数PSR控制位T为0时,执行BX指令进入ARM状态 ;处理器发生异常(IRQ、FIQ、Reset、Undef、Abort和SWI)。在 此情况下,把PC内容复制到异常模式的链接寄存器中,并且异常处 理将从异常向量地址开始。
sys(系统模式):运行具有特权的操作系统任务。

und(未定义指令中止模式):当未定义的指令执行时进入该 模式,可用于支持硬件协处理器的软件仿真。

CORTE-M3指令系统 PPT

CORTE-M3指令系统 PPT

任意位得到的常量。
0x00XY00XY格式的任意常量
0xXY00XY00格式的任意常量
半字重复
0xXYXYXYXY格式的任意常量
例:ADD R1,R2,#0x12001200
寄存器方式 Rm
例:ADD R1,R2,R3
Cortex-M3指令结构
寄存器移位方式 Rm,Shift 微处理器内嵌了桶形移位器,支持数据的各种移位操作。
指令中操作数给出的形式不同有多种寻址方式:
寻址方式
立即寻址 寄存器寻址 寄存器移位寻址 寄存器间接寻址 基址变址寻址 多寄存器寻址 相对寻址 堆栈寻址
基本寻址方式
❖立即寻址
立即寻址又称为立即数寻址,指令中直接给出操作数,只要 取出指令也就取到了操作数,这个操作数称为立即数。
例如:
MOV R0, #2
例:MOV R1,R2 ,ROR #2
带扩展的循环右移ROR
Rm,RRX
功能:将寄存器Rm中内容和C标志位构成33位数据组成的一个环, 向右移一位;C标志位移入最高位,最低位移入C标志位。
Cortex-M3指令结构
❖指令宽度选择
Thumb2指令集中有许多指令都可以产生16位编码或32位 编码。对于这类指令,可使用某种指令宽度后缀来强制指定特 定的指令宽度。
基本寻址方式
❖寄存器间接寻址
寄存器间接寻址是指将寄存器中存放的数作为操作数的 有效地址,而操作数本身存放在内存中。
指令中用于间接寻址的寄存器必须用“[ ]”括起来。
例如: LDR R0, [R1]
; R0←[R1]
R0
R1
基本寻址方式
❖基址变址寻址
基址变址寻址是指将寄存器(该寄存器一般作为基址寄存 器)的内容与指令中给出的地址偏移量相加,形成操作数的 有效地址。

微处理器的指令系统.

微处理器的指令系统.

BR 指令 X 基址值 IR 变址
段寄存器 段首址 左移 4 位
+
EA
+
PA
操作数
说明:X表示位移量,其值是用8位或16位二进制补码表示的有符号 BR表示基址寄存器,只能选用BX、BP之一;IR表示变址寄存器,只能选用SI DI之一。BR的内容加上IR的内容,再加上X,所得之和是操作数的偏移地址EA 所以,在基址加变址寻址方式中,操作数的偏移地址EA按如下公式计算:
BR
指令 基址值
段寄存器 段首址 左移 4 位
+
IR 变址值
EA
+
PA 操作数
图2.9 基址变址寻址
说明:BR表示基址寄存器,只能选用BX、BP之一;IR表示变址寄存器, 只能选用SI、DI之一。BR的内容加上IR的内容是操作数的偏移地址EA,所以,在基址变址 [BX]+[SI],用BX作基址寄存器,SI作变址 寻址方式中,操作数的偏移地址EA按如下公式计算: 寄存器时 [BX]+[DI],用BX作基址寄存器,DI作变址 EA= 寄存器时 [BP]+[SI],用BP作基址寄存器,SI作变址 寄存器时 [BP]+[DI],用BP作基址寄存器,DI作变址 【例2.7】 MOV AX,[BX][DI]。 执行前:BX=2000H,DI=0002H寄存器时 ,DS=3000H,(32002H)=1AFEH 目的操作数地址是AX。源操作数采用基址变址寻址,基址寄存器选用了BX,变址寄存 器选用了DI。由于源操作数选用BX作基址寄存器,所以其物理地址PA由数据段寄存器DS 的内容左移4位与偏移地址EA相加形成,即源操作数的PA=(DS)左移4位+BX+DI=32002H, (32002H)=1AFEH,所以 执行后:AX=1AFEH,BX、DI、DS、(32002H)未变。 【例2.8】 MOV [BX+SI],CX。 执行前:DS=1000H,BX=300H,SI=50H,CX=1234H,(10350H)=0FFFFH 目的操作数采用基址变址寻址方式,基址寄存器选用了BP,段寄存器就是DS,变址寄 存器选用了SI。所以,其物理地址PA由堆栈段寄存器DS的内容左移4位与偏移地址EA相加 形成,即目的操作数的PA=(DS)左移4位+BX+SI =10350H,所以 执行后:(10350H)=1234H,BX、SI、CX的内容不变。 5. 相对基址加变址寻址 在相对基址加变址寻址方式中,操作数的偏移地址EA是指令中指定的基址寄存器内容

微机原理第3章-指令系统

微机原理第3章-指令系统

▲按给出偏移地址方式的不同,分为以下5种: 寄存器间接寻址 寄存器相对寻址 基址加变址寄存器 相对基址加变址寄存器 MOV AL, [ BX ] MOV AL, [ BX + 10H ] MOV AL, [ BX + SI ] MOV AL, [ BX + SI + 10H ]
(1)寄存器间接寻址
寄存器寻址方式的操作数是寄存器的值,指令中直接 使用寄存器名,包括8位或16位通用寄存器和段寄存器。可 使用的16位寄存器:AX、BX、CX、DX、SI、DI、SP、 BP;其中:AX、BX、CX、DX可分成两8位使用。
例: MOV AX,CX
;(AX)
(CX)
INC CX
;(CX)
(CX)+1
3.直接寻址(Direct Addressing)
0002
AH
AL
默认段寄存器的关系: ① 使用BX、SI、DI,默认段寄存器为DS
(BX)
PA = ( DS )×10H + (SI) (DI)
② 使用BP,默认段寄存器为SS PA = ( SS )×10H + ( BP )
使用BX、SI、DI的寄存器寻址,默认段寄存器为DS
寄存器组 AH AL BH BL CH CL DH DL SI DI BP SP AX BX CX DX DS ES SS CS IP 地 址 加 法 器
运 算 器
控制总线CB


PSW标志 寄存器
执行部件控制电路
CPU
总线
内存
例: MOV AX , [ BX + SI ]
若 ( DS ) = 4000H
( BX ) = 2000H ( SI ) = 100H 则内存操作数的物理地址为:

微机原理5_8086指令系统08

微机原理5_8086指令系统08

• 指令中的操作数:
– 可以是一个具体的数值 – 可以是存放数据的寄存器 – 或指明数据在主存位置的存储器地址
6
双操作数指令
MOV dst, src ; (dst) (src) ↑ ↑ ↑ 助记符 目的 源操作数 操作数 例: MOV AH,BL MOV AX,1234H
ADD dst, src ; (dst) (dst)+(src) ↑ ↑ ↑ 助记符 目的 源操作数 操作数 例: ADD AL,36H ADD BX,CX 大多数运算型指令都是双操作数指令,对这种指令, 有的机器(大中型)使用“三地址”指令:除给出参加 运算的两个操作数外,还要指出运算结果的存放地址 7
18
寄存器寻址
19
特 点
(1) 操作数就在寄存器中,不需要访问存
储器来取得操作数(指令执行时,操作就在 CPU的内部进行),因而执行速度快。
(2)寄存器号比内存地址短 * 在编程中,如有可能,尽量使用这种寻址 方式的指令。 * 寄存器寻址方式既可用于源操作数,也可 用于目的操作数,还可以两者都用于寄存器寻 址方式(如 MOV BX , AX )
物理地址 = 16d (DS) +
BP (SS)
(SI)
(DI)
28
物理地址 = 16d (SS) + (BP)
例:
MOV AX, [BX] MOV ES:[BX] , AX MOV DX, [BP] • MOV AX , [BX] ;
设 ( DS) = 2000H ,(BX) = 1000H PA =20000H + 1000H =21000H 指令的执行结果为: (AX) = 50A0H *指令中也可以通过“段跨越前缀”取 得其他段中的数据, 例如: MOV AX,ES: [BX] PA = 16d (DS) + (BX) PA = 16d (ES) + (BX) PA = 16d (SS) + (BP)

微处理器与系统结构PPT详细讲解

微处理器与系统结构PPT详细讲解

•29 •HLDA* •28 •WR*
有效,三态)
•27 •M/IO* 测试信号(输入、低电
•26 •DT/R* •25 •DEN*
平有效)
•24 •23 •22
•ALE* •INTA* •TEST
READY 准备就绪(输入 、高电平有效)
•21 •READY
•RESET
状态信号指示当前使用段
一、8086通用引脚信号
•1
•40 •VCC
•2
•39 •AD15 INTR可屏蔽中断请求
•3 •4
•38 •A16/S3 •37 •A17/S4
信号(输入、高有效)
•5 •6
•36 •35
•A18/S5 •A19/S6
NMI非屏蔽中断请求(
•7 •8
•34 •BHE/S7 •33 •MN/M
输入,上升沿触发)
•GND •AD14 •AD13 •AD12 •AD11 •AD10 •AD9 •AD8 •AD7 •AD6 •AD5 •AD4 •AD3 •AD2 •AD1 •AD0 •NMI •INTR •CLK •GND
二、8086最小模式引脚信号
M/ 存储器/IO控制信号
•1 •2 •3
•40 •39 •38
微处理器与系统结构PPT详 细讲解
第二章学习要点
重点掌握内容: 1.微处理器的基本结构。 2.Intel 8086微处理器的基本结构,包括: 功能结构、寄存器结构和总线结构。 3.Intel 8086微处理器系统的组成: 控制核心单元+存储器组织+I/O端口组织 4.Intel 8086微处理器在最小模式下的典型总线 操作和时序。 5.几个重要概念:时钟周期,总线周期,指令周期。

5 CORTEX-M3指令系统

5 CORTEX-M3指令系统
❖指令宽度选择
Thumb2指令集中有许多指令都可以产生16位编码或32位 编码。对于这类指令,可使用某种指令宽度后缀来强制指定特 定的指令宽度。
后缀.W:强制制定指令产生32位编码
指令宽度后缀
后缀.N:强制制定指令产生16位编码
例:ADDS.N R1,R2,#2 ADDS.W R1,R2,#2
;16位Thumb指令 ;32位Thumb指令
计算机系统原理
(综合性强,理论结合应用的一门学科基础课程)
学科拓展课程
2020/7/30 .
1
第五章 Cortex-M3 指令 系统
Cortex-M3指令结构 ARM基本寻址方式 Cortex-M3指令集
数据处理类指令 跳转类指令 特殊寄存器访问 存储器访问2020/7/30 . Nhomakorabea2
§5.1 Cortex-M3 指令结构
10
基本寻址方式
❖立即寻址
立即寻址又称为立即数寻址,指令中直接给出操作数,只要 取出指令也就取到了操作数,这个操作数称为立即数。
例如: MOV R0, #2 ADD R0,R0,#100 R0←R0+100
; R0←2 ;
以“#”为前缀的操作数即为立即数。 十六进制的立即数:在“#”后加上“0x”或“&” 二进制的立即数:在“#”后加上“0b” 十进制的立即数:在“#”后加上“0d”或缺省。
2020/7/30 .
9
§5.2 ARM基本寻址方式
寻址方式:指处理器根据指令中给出的数据地址信息,找出操作 数的物理地址,实现对操作数的访问。
指令中操作数给出的形式不同有多种寻址方式:
寻址方式
立即寻址 寄存器寻址 寄存器移位寻址 寄存器间接寻址 基址变址寻址 多寄存器寻址 相对寻址 堆栈寻址

微处理器指令系统.ppt

微处理器指令系统.ppt

常用命令:
-A 汇编
-U 反汇编
-T 单步执行
-G 断点执行
-D 数据显示
-R பைடு நூலகம்存器
启动方法
Windows 2000/XP/NT下运行CMD\COMMAND\“命令提 示符”)
;reg reg/mem
寄存器与寄存器之间对换数据 寄存器与存储器之间对换数据 不能在存储器与存储器之间对换数据
换码指令XLAT
XLAT ;al←ds:[bx+al]
将BX指定的缓冲区中、AL指定的位移处的
一个字节数据取出赋给AL
tab 00H
tab db 0,1,4,9,15,25;定义DS段数据 Mov bx,offset tab(lea bx,tab)
FFFDFHH
高地址
堆栈操作的特点
堆栈操作的单位是字,进栈和出栈只对字量 字量数据从栈顶压入和弹出时,都是低地址字
节送低字节,高地址字节送高字节 堆栈操作遵循先进后出原则,但可用存储器寻
址方式随机存取堆栈中的数据 堆栈段是程序中不可或缺的一个内存区,常用

临时存放数据 传递参数 保存中断断点、中断现场
8086/8088指令系统
指令主要种类 指令功能 指令格式 指令的寻址方式、执行时间 指令对标志位的影响 使用指令的注意事项
2.3数据传送类指令
数据传送是计算机中最基本、最重要的一种操 作,传送指令也是最常使用的一类指令
传送指令把数据从一个位置传送到另一个位置 除标志寄存器传送指令外,均不影响标志位 重点掌握
MOV指令-段寄存器传送
mov [si],ds mov ax,ds mov es,ax

第3课微处理器和指令系统1

第3课微处理器和指令系统1

• 执行:10→AX • 执行后:(AX)=000AH
直接寻址
指在指令的操作数部分直接给出操作数的 有效地址EA EA。 有效地址EA。 物理地址= DS) 物理地址=(DS)×10H+EA
• 汇编格式:①含有变量的地址表达式。 汇编格式: 含有变量的地址表达式。 • ②段寄存器名:[EA] 。 段寄存器名: • 功能: 指令下一字单元的内容是操作数的偏移地 功能 : EA。 址EA。 • 图形表示: 图形表示:
【例2.2】
AX, 机器码: 例:MOV AX,1234H ;机器码:B8 34 12 AX AH AL … B8 34 12 … 代 码 段
【例2.3】
• 【例2.3】MOV AX, 10 • 执行后(AX)=? • 该例中源操作数为立即寻址方式,立即数为10, 存放在指令的下一单元。 • 图形表示:
(1)16位寻址方式下, BX和BP作为基址寄 1 16位寻址方式下, BX和BP作为 位寻址方式下 BX相应的段寄存器为DS,BP相应的段 相应的段寄存器为DS 存器BX相应的段寄存器为DS,BP相应的段 寄存器为SS 位移量可为8位和16 SS, 16位 寄存器为SS,位移量可为8位和16位。 (2)32位寻址方式下 ,EAX、EBX、ECX、 2 32位寻址方式下 EAX、EBX、ECX、 EDX、EBP、ESI、EDI、ESP均可作 EDX、EBP、ESI、EDI、ESP均可作基址寄 存器,EAX、EBX、ECX、EDX、ESI、EDI相 存器,EAX、EBX、ECX、EDX、ESI、EDI相 应的段寄存器为DS EBP、 DS, 应的段寄存器为DS,EBP、ESP 相应的段 寄存器为SS 位移量可为8位和32 SS, 32位 寄存器为SS,位移量可为8位和32位。

Chapter 4 MCS—96指令系统

Chapter 4   MCS—96指令系统

LD 22H, [30H]; ADDB AL, [BX] 地址寄存器的地址号需是偶数. 3.立即寻址方式 操作数是直接的数据(立即数). LDB 22H, #56H 4.自动增量寻址方式 与寄存器间接寻址方式相似,不同的是指 令执行后地址寄存器的内容视情况增1 或增2. LDB 37H, [20H]+ ; LD AX, [CX]+
Chapter 4 MCS—96
单片机指令系统
Chapter 4 MCS—96单片机 指令系统
第一节 概述
指令系统---微处理器全部指令的集合. 一.指令的格式 指令有两种形式:机器码和汇编指令. 1.机器码的格式 操作码 [操作数] 操作码为1~2个字节. 操作数为0~5个字节.
FE 5F 28 20 24 38 2E 2.汇编指令的格式 其采用了”助记符”而具有很强的可读性. 两个部分.四种格式(视操作数的个数). 注意操作数的排列顺序. ADD 20H, [30H]; 66 30 20 ADD AX, BX, #1234H; 45 34 12 BX AX 二.操作数类型 操作数有三种体现形式:立即数,寄存器,
操作数的类型在指令中的区分:在操作码 上加后缀.如LDB, ADDB, LD. 三.状态标志及PSW 1.状态标志:反映CPU操作结果的某些特 征, 如运算结果是否为零,做加法后有否 进位等. 2.PSW---程序状态字 PSW实际由两器件构成.高字节为状态寄 存器(CPU中);低字节为SFR中的08H即 INT_MASK(中断屏蔽寄存器).
二.数据类型变换指令 将字节操作数传送后扩展为字操作数:按 符号位扩展或按零扩展. 按符号位扩展: LDBSE AX, CL 按零扩展: LDBZE BX, #78H 三.存储指令 是一个较特殊的指令:源和目的的位置与 其它指令相反;可将寄存器数送到存储器 或寄存器. ST 20H, [32H]; STB CL, 22[20H]

微处理器的指令系统

微处理器的指令系统

MOV 码 段
偏移地址
┇ 1200H
AH AL 11 22
22H 11H
数 据 段
7
寄存器间接寻址

由寄存器间接给出操作数的偏移地址; 存放偏移地址的寄存器称为间址寄存器,它们 是:BX,BP,SI,DI 操作数的段地址(数据处于哪个段)取决于选 择哪一个间址寄存器:

BX,SI,DI
BP
默认在数据段
偏移地址
┇ 1200H 22H 11H
数 据 段
寻址方式下,操作数的段地址默认为数据 段,但允许段重设,即由指令定义段。 例:MOV AX,ES:[1200H]

6
4、寄存器间接寻址
参与操作的操作数存放在内存中,其偏移地址 为指令中的寄存器的内容。 例:MOV AX,[BX] 设(BX)=1200H 代
转移类指令的转移目标地址的表示方式。
3.1.3 3.1.4
特定的存储器区域。
1.串操作指令寻址方式 隐含用SI、DI间址。 2.I/O端口寻址方式 直接和间接两种。在指令系统中讨论。
13

例:MOV AX,[BX+DATA] 设DS=2000H,BX=0220H,DATA=05H 则:AX=[20225H]
10
7、相对基址加变址
有效地址=基址+变址+位移量(与基址变址类 似) 例:MOV AX,[BP+SI+DATA] 隐含寻址: 指令隐含了的一个或两个操作数的地址,即操 作数在默认的地址中 例: MUL BL 指令的执行:AL×BL AX
2
1、立即寻址
指令中的源操作数是立即数,即源操作数是参 加操作的数据本身 例:MOV AX,1234H

《指令系统》PPT课件

《指令系统》PPT课件

例:
已知:(DS)=2100H,(DI)=2000H
指令: MOV AX,[DI] ;AX ((DI))
物理地址=(DS)× 16 + (DI)
是一个内存 单元地址
=2100H × 16 + 2000H
=21000H + 2000H
=23000H
指令结果:将23000H单元内容送AL中,
将23001H单元内容送AH中。
22
2020/11/14
例:
将数据段的变量WVAR(即该变量名指示的内存单元数据)送至 AX寄存器 变量指示内存的一个数据,直接引用变量名就是采用直接寻址方式 变量应该在数据段进行定义,常用的变量定义伪指令 DB和 DW分别表示定义
字节变量和字变量 变量一经定义便具有逻辑地址和类型属性
23
南京理工大学动力学院
2009年
1
2020/11/14
第二章 8086/8088 指令系统
2.1 概述 2.2 寻址方式 2.3 数据传送指令 2.4 算术运算指令 2.5 逻辑运算指令 2.6 串操作指令 2.7 程序控制指令
2
2020/11/14
•指令是微处理器执行某种操作的命令。 •微处理器全部指令的集合称为指令系统(指令集)
将数据段中由BX指定偏移地址处的内存数据送至 AX寄存器 汇编指令: MOV AX, [BX]; 指令功能:AX←DS : [ BX ]; 该指令中有效地址存放于BX寄存器中,而数据则存放在数据段内存单元中,
假设BX内容设置为2000H,则该指令等同于 MOV AX, [2000H]
28
2020/11/14
一方面,会影响处理器执行指令的速度和效率 另一方面,对程序设计也很重要

《典型微处理器》课件

《典型微处理器》课件

总结
1 微处理器的重要性
推动了现代计算机技术的发展。
3 学习建议
深入了解微处理器的原理和应用。
2 应用前景
在各个领域持续迭代和创新。
编程步骤
编辑、汇编和下载代码到8051微处理器。
应用案例
嵌入式系统、汽车和家电等领域。
ARM微处理器
历史背景
由ARM公司于1980年代开发,现在是全球最重要的 芯片设计架构之一。
架构介绍
具有可扩展性和节能性的高性能处理器架构。
编程步骤
使用ARM指令集编写和调试代码。
应用案例
智能手机、平板电脑和物联网设备。
中断
• 处理紧急事件的接口。 • 优先级和异常情况的控制。
汇编语言1 基本概念Fra bibliotek一种低级编程语言,用于 直接操作微处理器。
2 指令集
微处理器能理解和执行的 基本操作。
3 寄存器
暂存数据和指令。
8051微处理器
历史背景
由英特尔公司于1980年推出,成为最受欢迎的8位 微处理器之一。
架构介绍
包括中央处理单元、存储器、外设和总线等组件。
《典型微处理器》PPT课件
什么是微处理器
微处理器是一种集成电路芯片,用于执行计算机的指令集,常见应用包括个 人电脑、手机和物联网设备。
微处理器的构成
内存
存储指令和数据的空间。
运算器
执行算术和逻辑运算。
控制器
指挥微处理器内部组件的操作。
总线
连接内部组件和外部设备的通信通道。
硬件接口
输入输出
• 与人机交互的接口。 • 连接外部设备和传感器。

微机原理与接口技术第三章指令系统

微机原理与接口技术第三章指令系统
子程序名:表示某个存储单元的地址,对应存储单元为子 程序的起始位臵;
标识符的构成
符号集合 英文字母(a~Z)、数字(0~9)、特殊符号(?、@、 _、 $)。 构成规则 不可以以数字开头;
不能实用单独的“?”作为标识符;
取名尽量有含义,但不能采用汇编语言的保留字; 助记符、定义符、寄存器名称等 最大长度为31字符。 例如: ABCDH →标识符 0ABCDH →立即数
MOV AX,05C7H 汇编指令 B8C705H
一对一
机器指令
3.1.2 指令格式 汇编语言指令:由操作码和操作数两部分组成。 操作码 操作数 操作数 指令的一般格式
操作码:指示指令要执行的具体操作。用助记符(一 般为英文字母缩写)表示。 操作数:指出指令执行过程中的操作对象。用符号或 符号地址标志。
(×)MOV CS,AX
(×)MOV AH, BX
AH AL BH BL CH CL DH DL
MOV AX, BX
;AX←BX
演示
寄存器寻址方式举例
MOV BX,1234H ;AX=1234H
源操作数是立即数寻址方式
目的操作数是寄存器寻址方式 MOV AX,BX BX=AX=1234H 源操作数和目的操作数均为寄存器寻址方式
AX 88H 66H … 66H 88H … 堆栈段 33200H 33201H
……
……
MOV BX, 1100H MOV AX, [BX]
码段
AX: 0078H
堆栈段
DS:0000H
…… ……
内存内容 偏移地址
0000H 0001H …… 1100H 1101H 1102H
…… ……
78H 00H 56H
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

指令执行前: 指令执行后:
SS 1234H
3064H
AX 3064H
3064H
(SS)=3064H
(AX)保持不变
信息学院自动化仪表研究所
微机原理及接口技术
(三)直接寻址(Direct addressing)
操作数地址的16位偏移量,直接包含在指令中, 存放在代码段中指令操作码之后, 但操作数一般存放在数据段中, 必须先求出操作数的物理地址, 然后再访问存储器才能取得操作数。
AH
AL 13000H
34H

12H 34H

12H

执行后:PA=13000H (13000H)=1234H
微机原理及接口技术
例:MOV BX,[DI]
DS 6000H
DI 2000H
(DS)=6000H
60000
(DI)=2000H
+ 2000
...
PA=62000H
62000
(62000H)=50A0H
BH
BL 62000H
AOH

(BX)=50A0H
50H A0H

50H

...
寄存器间接寻址方式 信息学院自动化仪M表O研V 究B所X,[DI]
BP、BX、SI、DI寄存器中。
1、若选择SI、DI、BX作为间接寻址 操作数一般在现行数据段区域中,用(DS)作为段地址。 即操作数物理地址为: 物理地址PA=16 d ×(DS)+(BX) 物理地址PA=16 d × (DS)+(SI) 物理地址PA=16 d × (DS)+(DI)
信息学院自动化仪表研究所
信息学院自动化仪表研究所
1、8086、8088寻址方式
微机原理及接口技术
(一)立即寻址
(Immediate addressing)
(二)寄存器寻址方式
(Register addressing)
(三)直接寻址
(Direct addressing)
(四)寄存器间接寻址方式(Register indirect addressing)
微机原理及接口技术
2 、若选择BP寄存器作为间接寻址
操作数在堆栈段区域中,用SS寄存器的内容作为段地址。
操作数物理地址:
SS
BP
1000H
3000H
PA=16d × (SS)+(BP)
例: MOV [BP], AX
10000
H ,
13000
(BP)=3000H , (AX)=1234H
信息学院自动化仪表研究所
微机原理及接口技术
(一)立即寻址(Immediate addressing)
操作数直接存放在指令中,紧跟在操作码之后,作为指 令 的一部分,存放在代码段里,这种操作数称为立即数。
立即数可以是8位或16位的。
例: MOV AL,05H 指令执行后: (AL)=05H
AL
...
第三章 8086微处理器的指令 系统
§3-1 寻址方式 §3-2 指令系统
微机原理及接口技术
§3-18086/8088的寻址方式
信息学院自动化仪表研究所
1、指令系统概念和指令组成
微机原理及接口技术
(1)、指令系统概念
计算机通过执行指令序列来解决问题, 每种计算机都有一组指令集提供用户使用, 这组指令集就称为计算机的指令系统。
或(10H)
物理地址 : PA=16d×(DS)+EA IBMPC机允许数据存放在数据段以外的其它段中。
此时应在指令中指定段跨越(可以是CS,SS,ES)。
信息学院自动化仪表研究所
微机原理及接口技术
例:MOV AX,[3100H]
DS
6000H
...
(DS)=6000H , (63100H)=3050H
(五)寄存器相对寻址方式(Register relative addressing)
或变址寻址(Index Addressing) (六)基址加变址寻址方式(Based indexed addressing)
(七)相对基址加变址寻址方式(Relative based indexed addressing)
段内偏移量为适应各种数据结构的需要,可以有几个部分组 成,所以也把它称为有效地址EA。
信息学院自动化仪表研究所
寻址方式不同EA的构成不同。
微机原理及接口技术
归纳EA可有多种情况构成: 直接寻址,寄存器间接寻址,寄存器相对寻址, 基址加变址寻址,相对基址加变址寻址。
寻址方式——如何寻找操作数。 不同寻址方式实质上是构成它段内的偏移量的方法不同。
(2)、指令组成
计算机中指令由操作码字段和操作数字段两部分组成。 一条可以由1~7个字节组成。
操作码字段-----―指示计算机要执行的操作, 操作数字段-----―指出在指令执行操作过程中所需要的操作数;
可以是操作数本身; 可以是操作数地址或是地址的一部分; 可以是指向操作数地址的指针
或其他有关 操作数的信息。
60000
操作码

则:(AX)=3050H
+ 3100
00
码 段
31
63100 ...
63100H 50H
AH AL
30H
数 据
30H 50H

...
直接寻址方式
信息学院自动化仪表研究所
微机原理及接口技术
(四) 寄存器间接寻址方式(Register indirect addressing)
操作数在存储器中, 操作数地址的16位偏移量包含在:
信息学院自动化仪表研究所
➢操作数在内存数据区
微机原理及接口技术
操作数在内存数据区,操作数字段包含着此操作数地址。
在8086中,任何内存地址是由两部分组成:
段的基地址:单元所在段的基地址 (大部分情况是数据段寄存器DS中);
段内偏移量:此单元与段基地址的距离。
有效地址EA(Effective Address) :
05H
操作码 指

05H 令 码

...
信息学院自动化仪表研究所
微机原理及接口技术
(二)、寄存器寻址方式 (Register addressing)
操作数在寄存器中,指令指定寄存器号。
这种寻址方式因为操作数在寄存器中,不需要访问存储 器,运算速度较高。
例:
指令执行前:
(AX)=3064H (SS)=1234H MOV SS,AX 指令执行后:
信息学院自动化仪表研究所
(3)、操作数的存放
微机原理及接口技术
操作数的存放不外乎三种情况:
➢操作数包含在指令中 即指令的操作数字段包含操作数本身。这种操作数为立即数。 例:MOV AL , 08H
➢操作数包含在CPU的一个内部寄存器中
例:INC CX
指令中的操作数字段是CPU内部寄存器的一个编码。 这种寻址方式称为寄存器寻址。
相关文档
最新文档