第3章. 80868088微处理器及其系统-1
第3章 8086的指令系统—3.1寻址方式
![第3章 8086的指令系统—3.1寻址方式](https://img.taocdn.com/s3/m/2793f181d4d8d15abe234e97.png)
例:(BX)=2000H,(SI)=1000H,偏移量=0250H,
则EA= 2000H+1000H+0250H=3250H
寻址目的
确定本条指令的操作数据 在指令中 PA:存储器内的绝对地址(20位) 在存储器中 EA:某个段内的相对地址(16位) 在寄存器中 确定下一条指令的地址 根据指令长度计算 根据转移指令的目标地址
寄存器名表示其内容(操作数)
MOV AX, BX
MOV AL, BH
;AX←BX
;AL←BH
演示
第3章: 3.1.3 存储器寻址方式
操作数在主存储器中,用主存地址表示 程序设计时,8088采用逻辑地址表示主存地址
段地址在默认的或用段超越前缀指定的段寄存器中 指令中只需给出操作数的偏移地址(有效地址EA)
演示
;AX←DS:[SI+06H]
第3章:4. 基址加变址寻址方式
有效地址由基址寄存器(BX或BP)的内容加上 变址寄存器(SI或DI)的内容构成: 有效地址=BX/BP+SI/DI 段地址对应BX基址寄存器默认是DS,对应BP基 址寄存器默认是SS;可用段超越前缀改变
MOV AX, [BX+SI] MOV AX, [BX][SI]
*微型计算机汇编语言特点 *微型计算机指令系统概述 *寻址方式
指令及其格式
指令及指令集 计算机能够识别和执行的基本操作命令
指令的作用
告诉CPU干什么?What? 告诉CPU从哪儿取数据?Where? 告诉CPU下一条指令在哪儿?Where? 操作码 操作数或操作数地址 指令的格式
第03-1章. 80868088微处理器及其系统
![第03-1章. 80868088微处理器及其系统](https://img.taocdn.com/s3/m/2cb28a3210661ed9ad51f3a4.png)
3.1.1、8086/8088CPU的内部结构
执行单元( Execute Unit ) 总线接口单元 ( Bus Interface Unit )
8088的内部结构
AH BH CH DH AL BL CL DL SP BP SI DI
16位
地址 加法 器
∑
20位
通用 寄存器
CS DS SS ES IP 内部暂存器
PA的书写方式:
段地址:段内偏移
如:1121H : 2200H=11210+2200=13410H
已知CS=1055H,DS=250AH,ES=2EF0H, SS=8FF0H,DS段有一操作数,其偏移地址=0204H, 1)画出各段在内存中的分布 2)指出各段首地址 10550H CS 3)该操作数的物理地址=?
2.地址加法器和段寄存器
BIU中的地址加法器用来实现逻辑地址到物理地址的变换 8086采用了 “段加偏移”的技术。
15 0 15 0
逻辑地址
段基值
3 0
偏移量
0000
各段寄存器分别来存放确定各段的 起始地址的16位段地址信息
寻址单元的16位偏移地址
Σ
19 0
物理地址
物理地址
左移4位后的段寄存器的内容同时 送到地址加法器进行相加
CH DH CL DL
地址 加法 器
∑
20位
CS DS SS ES IP 内部暂存器
16位
输入/输出 控制电路 外 部 总 线
1 2
8位
3 4
把EU的操作结果存储 标志寄存器 到指定的M或I/O口。
执行部件 (EU)
指令队列
总线接口部件 (BIU)
微机原理习题集答案
![微机原理习题集答案](https://img.taocdn.com/s3/m/a2aefdd06037ee06eff9aef8941ea76e58fa4ae6.png)
第1章 概述1.电子计算机主要由.电子计算机主要由 运算器运算器 、 控制器控制器 、 存储器存储器 、 输入设备输入设备 和 输出设备输出设备 等五部分组成。
等五部分组成。
等五部分组成。
2. 运算器运算器 和 控制器控制器 集成在一块芯片上,被称作CPU CPU。
3.总线按其功能可分.总线按其功能可分 数据总线数据总线 、 地址总线地址总线 和 控制总线控制总线 三种不同类型的总线。
三种不同类型的总线。
4.计算机系统与外部设备之间相互连接的总线称为.计算机系统与外部设备之间相互连接的总线称为 系统总线(或通信总线)系统总线(或通信总线) ;用于连接微型机系统内各插件板的总线称为系统内总线(板级总线) ; CPU 内部连接各寄存器及运算部件之间的总线称为内部连接各寄存器及运算部件之间的总线称为 内部总线内部总线 。
5.迄今为止电子计算机所共同遵循的工作原理是迄今为止电子计算机所共同遵循的工作原理是 程序存储程序存储 和 程序控制程序控制 的工作原理。
的工作原理。
这种原理又称这种原理又称为 冯·诺依曼型冯·诺依曼型 原理。
原理。
第3章 微处理器及其结构1.8086/8088 CPU 执行指令中所需操作数地址由执行指令中所需操作数地址由 EU EU EU 计算出计算出计算出 16 16 16 位偏移量部分送位偏移量部分送位偏移量部分送 BIU BIU BIU ,由,由,由 BIU BIU BIU 最后最后形成一个形成一个 20 20 20 位的内存单元物理地址。
位的内存单元物理地址。
2.8086/8088 CPU CPU在总线周期的在总线周期的在总线周期的T1 T1 T1 时刻,用时刻,用时刻,用A19/S6A19/S6A19/S6~~A16/S3 A16/S3 输出输出输出 20 20 20 位地址信息的最高位地址信息的最高位地址信息的最高 4 4 4 位,而在位,而在其他时钟周期,则输出其他时钟周期,则输出 状态状态 信息。
微机原理第二版+田辉+课后答案
![微机原理第二版+田辉+课后答案](https://img.taocdn.com/s3/m/353ed1efc9d376eeaeaad1f34693daef5ef7134c.png)
微机原理第⼆版+⽥辉+课后答案答:2 =1048576=1MB 习题1-1.微型计算机包括哪⼏个主要组成部分,各部分的基本功能是什么?答:微型计算机由CPU、存储器、输⼊/输出接⼝及系统总线组成。
CPU是微型计算机的核⼼部件,⼀般具有下列功能:进⾏算术和逻辑运算。
暂存少量数据。
对指令译码并执⾏指令所规定的操作。
与存储器和外设进⾏数据交换的能⼒。
提供整个系统所需要的定时和控制信号。
响应其他部件发出的中断请求;总线是计算机系统各功能模块间传递信息的公共通道,⼀般由总线控制器、总线发送器、总线接收器以及⼀组导线组成;存储器是⽤来存储数据、程序的部件;I/O接⼝是微型计算机的重要组成部件,在CPU 和外设之间起适配作⽤。
1-2.CPU 执⾏指令的⼯作过程。
答:取指令、执⾏指令。
指令执⾏的基本过程:(1)开始执⾏程序时,程序计数器中保存第⼀条指令的地址,指明当前将要执⾏的指令存放在存储器的哪个单元。
(2)控制器:将程序计数器中的地址送⾄地址寄存器MAR,并发出读命令。
存储器根据此地址取出⼀条指令,经过数据总线进⼊指令寄存器IR。
(3)指令译码器译码,控制逻辑阵列发操作命令,执⾏指令操作码规定的操作。
(4)修改程序计数器的内容。
1-3.果微处理器的地址总线为20 位,它的最⼤寻址空间为多少?201-4.处理器、微型计算机和微型计算机系统之间有什么关系?答:微处理器是微型计算机的核⼼部件。
微处理器配上存储器、输⼊/输出接⼝及相应的外设构成完整的微型计算机。
以微型计算机为主体,配上系统软件和外部设备以后,就构成了完整的微型计算机系统。
1-5.下⾯⼗进制数分别转换为⼆进制、⼋进制和⼗六进制数:128,65535,1024答:128,⼆进制:10000000B,⼋进制:200O,⼗六进制:80H65535,⼆进制:1111111111111111B,⼋进制:177777O,⼗六进制:FFFFH1024,⼆进制:10000000000B,⼋进制:2000O,⼗六进制:400H1-6.下⾯⼆进制数分别转换为⼗进制及⼗六进制数:1011.1010B,1111101.11 B答:1011.1010B,⼗进制:11.625,⼗六进制:B.AH1111101.11B,⼗进制:125.75,⼗六进制:7D.CH1-7.(5487)10=(0101010010000111)BCD=1010101101111 B若 CPU 的主时钟频率为 10MHz ,则⼀个时钟周期为10 s ,⼀个基本总线周期为 4× 1-8.设字长为 8 位,请写出下列数的原码、反码、补码和移码:15,-20,-27/32 答:[+15]原 =00001111, [+15]反 =00001111, [+15]补 =00001111, [+15]移 =10001111[-20]原 =10010100, [-20]反 =11101011, [-20]补 =11101100, [-20]移 =01101100[-27/32]原 =1.1101100, [-27/32]反 =1.0010011, [-27/32]补 =1.0010100,第 2 章微型计算机系统的微处理器习题2-1.086/8088 CPU 的功能结构由哪两部分组成?它们的主要功能是什么?答:8086/8088 CPU 的功能结构由以下两部分组成:总线接⼝单元BIU (Bus Interface Unit ),执⾏部件EU (Execution Unit )。
微机原理第三章:8086微处理器结构
![微机原理第三章:8086微处理器结构](https://img.taocdn.com/s3/m/c56f30005f0e7cd184253690.png)
4.8086 和8088 二者的指令系统完全兼容
(1)有24 种寻址方式,具有乘、除法指令等。 (2)取指令和执行指令的操作并行运行,运行速度大大提高。
(3)具有最小模式和最大模式,应用领域宽广,适应性强。
(4)可方便地和数据处理器8087、I/O 处理器8089 或其它处理器 组成多处理机系统,提高数据处理能力和输人输出能力。
代码段寄存器 CS 标 志 寄 存 器
数据段寄存器 DS
堆栈段寄存器 SS
附加段寄存器 ES
由于8086/8088 CPU 可直接寻址的存储器空间是1M字节,直接寻址需要 20位地址码,而所有的内部寄存器都是16位的,用这些寄存器只能寻址 64K字节,为此需要采取分段技术来解决这个问题。
表3.1
通用寄存器的隐含使用
程序调试过程中。
3.1.2 8086/8088 的寄存器结构
四、指令指针寄存器 IP ★ 16 位的指令指针寄存器 IP 用来存放将要执行的下一条 指令在代码段中的偏移地址。 ★ 在程序运行过程中,BIU 可修改 IP 中的内容,使它始终 指向将要执行的下一条指令。 ★ 程序不能直接访问 IP,但可通过某些指令修改 IP 内容。 ★ 如遇到转移类指令,则将转移目标地址送人IP中,以实 现程序的转移。
★ 规则字的读/写操作可以一次完成。由于两个存储体上的地址
线 A19~A1 是连在一起的,只要使 A0=0,BHE=0,就可 以实现一次在两个存储体中对一个字的读/写操作。 ★ 读写的是从奇地址开始的字(高字节在偶体中,低字节在奇体 中),这种字的存放规则称为“非规则字”或“非对准字”。 ★ 非规则字的读/写,需要两次访问存储器才能完成。 第一次访问存储器读/写奇地址中的字节;
三、标志寄存器 FR
8086-8088CPU系统结构
![8086-8088CPU系统结构](https://img.taocdn.com/s3/m/349d75bbe518964bce847c70.png)
1.2 8086/8088寄存器结构及用途
1.1.3 指针寄存器和变址寄存器
▲指针寄存器:
♣ SP:堆栈指针寄存器 ♣ BP:基址指针寄存器
▲变址寄存器:
♣ SI:源变址寄存器 ♣ DI:目的变址寄存器
汇编语言程序设计
8086/8088CPU系统结构
• 1.1 Intel8086/8088微处理器的结构 • 1.2 8086/8088寄存器结构及其用途 • 1.3 8086的存储器组织
• 1.4 堆栈
1.1 Intel8086/8088微处理器的结构
• 1.1.1 8086微处理器的结构
8086微处理器由两大部分组成: ♣ 执行部件EU ♣ 总线接口部件BIU 其内部结构如图(P20 图1.1)
1.3 8086的存储器组织
• 1.3.2 存储器的分段结构
◆8086CPU的寻址能力为:220=1MB; ◆8086CPU的内部寄存器为16位,直接 寻址:216=64KB; ◆在8086系统中引入逻辑段的概念:把 的地址空间划分为任意个逻辑段,长度 为64KB。
1.3 8086的存储器组织
• 1.3.3 物理地址和逻辑地址
▲是CPU与外部存储器、I/O设备的接口;
▲BIU由以下几部分组成: ♣16位指令指针寄存器IP; ♣指令队列; ♣4个16位段寄存器CS、DS、ES、
SS; ♣20位地址加法器; ♣总线控制部件。
1.1.1 8086微处理器的结构
• 3. BIU和EU的管理
▲二者处于并行的工作状态和重叠的工 作方式; ▲相互配合,协调工作; ▲充分利用总线实现最大限度的信息传 输,提高了程序的执行速度。
第三章 8086 8088指令系统
![第三章 8086 8088指令系统](https://img.taocdn.com/s3/m/f8afeee3aeaad1f346933f8c.png)
SI 1200
+)
6000 0 1200 61200 AX 33 44
61200H 61201H
存储器 . . . 44H 33H 数 据 段
. . .
图 3-5 寄存器间接寻址示意图
3.2.5 寄存器相对寻址
寄存器相对寻址——操作数在存储器中。由指令指定的地址寄存器的内容加上指令中
给出的一个8位或16位的地址位移量,即可得操作数的偏移地址。
SI AX AX AX AX AX
3.2.8隐含寻址
隐含寻址—— 操作数隐含在操作码中,在有些指令的操作数中,不仅包含了操作的性质,
还隐含了部分操作数的地址。如乘法指令 MUL,在这条指令中只须指明乘数的地址,而被乘数 已经乘积的地址是隐含且固定的。这种将一个操作数隐含在指令码中的寻址方式就称为隐含
立即数操作数: 所谓立即数指具有固定数值的操作数,不因指令的执行而发生变化 。立即数操作 数只能用作源操作数,而不能用作目标操作数。
寄存器操作数:
8086CPU的8个通用寄存器和4个段寄存器可以作为指令中的寄存器操作数,寄存
器操作数在指令中既可以作为源操作数,也可以用作目标操作数。 存储器操作数: 参加运算的数据是存放在内存中。
两单元的内容送到AX中。假设DS=2000H,则所寻找的操作数的物理地址为: 2000H×10H+3102H = 23102H, 指令的执行情况如图3-3所示
存储器 . . .
MOV操作码
02H 31H AH AL 23102H 23103H
图 3-3 直接寻址方式
代 码 段
. . . ×× ×× . . . 数 据 段
请注意:使用基址—变址方式时,不允许将两个基址寄存器或两个变址寄存器组合
微机原理第3章 8086微型计算机系统
![微机原理第3章 8086微型计算机系统](https://img.taocdn.com/s3/m/8e33cd12a8114431b90dd84d.png)
2、总线接口部件BIU
BIU组成: 4个16位段寄存器(DS、CS、ES、SS); 指令指针寄存器(IP); 20位的地址加法器; 6字节指令队列缓冲器; 内部暂存器和总线控制逻辑。 BIU功能:负责CPU与存储器、I/O设备之间的 数据传送。具体包括: 取指令送指令队列,配合EU从指定的内存 单元或者外设端口中取数据,将数据传送 给EU,或者把EU的操作结果传送到指定的 内存单元或外设端口中。第3章 8086微型计算机系统
第3章 8086微型计算机系统
4、内存操作
读:将内存单元的内容取入CPU,原单元内容不改变; 写:CPU将信息放入内存单元,单元中原内容被覆盖; 刷新:对CPU透明,仅动态存储器有此操作 内存的读写的步骤为: 1)CPU把要读写的内存单元的地址放到AB上 2) 若是写操作, CPU紧接着把要写入的数据放到DB上 3) CPU发出读写命令 4) 数据被写入指定的单元或从指定的单元读出到DB 若是读操作, CPU紧接着从DB上取回数据
第3章 8086微型计算机系统
3、8086的存储器的地址
内存包含有很多存储单元(每个内存单元包含 8bit),为区分不同的内存单元,对计算机中 的每个内存单元进行编号,内存单元的编号 就称为内存单元的地址。
内存单 元地址
. . .
Bit 7 6 5 4 3 2 1 0 01011000
内存单 元内容
段基地址(16位)
第3章 8086微型计算机系统
段地址说明逻辑段在主存中的起始位置 8086规定段地址必须是模16地址:xxxx0H 省略低4位0000B,段地址就可以用16位数据 表示,就能用16位段寄存器表达段地址 偏移地址(也称有效地址EA)说明主存单元 距离段起始位置的偏移量 每段不超过64KB,偏移地址也可用16位数据 表示
微机原理与单片机接口技术课后题参考答案_1-6章_
![微机原理与单片机接口技术课后题参考答案_1-6章_](https://img.taocdn.com/s3/m/06d88ace50e2524de5187edf.png)
5.若下列字符码(ASCII)中有奇偶校验位,但没有数据错误,采用偶校验的
三、简答题
1.简述微处理器、微计算机及微计算机系统三个术语的内涵。 答:微处理器是微计算机系统的核心硬件部件,它本身具有运算能力和控制功 能,对系统的性能起决定性的影响。微处理器一般也称为 CPU;微计算机是由微处 理器、存储器、I/O 接口电路及系统总线组成的裸机系统。微计算机系统是在微计算 机的基础上配上相应的外部设备和各种软件,形成一个完整的、独立的信息处理系 统。三者之间是有很大不同的,微处理器是微型计算机的组成部分,而微型计算机 又是微型计算机系统的组成部分。 2.什么叫总线?为什么各种微型计算机系统中普遍采用总线结构? 答:总线是模块与模块之间传送信息的一组公用信号线。 总线标准的建立使得各种符合标准的模块可以很方便地挂在总线上,使系统扩 展和升级变得高效、简单、易行。因此微型计算机系统中普遍采用总线结构。 3.微型计算机系统总线从功能上分为哪三类?它们各自的功能是什么? 答:微型计算机系统总线从功能上分为地址总线、数据总线和控制总线三类。 地址总线用于指出数据的来源或去向,单向;数据总线提供了模块间数据传输的路 径,双向;控制总线用来传送各种控制信号或状态信息以便更好协调各功能部件的 工作。
2
第 2 章 微处理器及其结构
一、填空题
1.8086/8088 CPU执行指令中所需操作数地址由 EU 计算出 16 位偏移量部分 送 BIU ,由 BIU 最后形成一个 20 位的内存单元物理地址。 2.8086/8088 CPU在总线周期的T1时刻,用A19/S6~A16/S3 输出 20 位地址信息 的最高 4 位,而在其他时钟周期,则输出 状态 信息。 3.8086/8088 CPU复位后,从 0FFFF0H 单元开始读取指令字节,一般这个单 元在 ROM 区中,在其中设置一条 跳转 指令,使CPU对系统进行初始化。 4. 8086系统的存储体系结构中, 1MB存储体分 2 个库, 每个库的容量都是512K 字节, 其中和数据总线D15~D8相连的库全部由 奇地址 单元组成, 称为高位字节库, 并用 BHE 作为此库的选通信号。 5.8086/8088系统中,可以有 64K 个段起始地址,任意相邻的两个段起始地址 相距 16 个存储单元。 6.用段基值及偏移量来指明内存单元地址的方式称为 逻辑地址 。 7.通常8086/8088 CPU中当EU执行一条占用很多时钟周期的指令时,或者在多 处理器系统中在交换总线控制时会出现 空闲 状态。 8.8086 CPU使用 16 根地址线访问I/O端口,最多可访问 64K 个字节端口, 使用 20 根地址线访问存储单元,最多可访问 1M 个字节单元。 9. CPU取一条指令并执行该指令的时间称为 指令 周期, 它通常包含若干个 总 线 周期,而后者又包含有若干个 时钟 周期。 10.设内存中一个数据区的起始地址是1020H:0A1CBH,在存入5个字数据后, 该数据区的下一个可以使用的单元的物理地址是 1020H:0A1D5H 或1A3D5H。 11.8086系统中,默认方式下对指令寻址由寄存器 CS 和 IP 完成,而堆栈段 中的偏移量可由寄存器 SP 或 BP 来指示。 12. 8086的中断向量表位于内存的 00000H~003FFH 区域, 它可以容纳 256 个 中断向量,每个向量占 4 个字节。 13. 8086CPU中典型总线周期由 4 个时钟周期组成, 其中T1期间, CPU输出 地 址 信息;如有必要,可以在 T3和T4 两个时钟周期之间插入1个或多个TW等待周期
第三章 8086的寻址方式
![第三章 8086的寻址方式](https://img.taocdn.com/s3/m/26fea047c850ad02de804169.png)
8086/8088指令概述
操作数的一般形式: 3、存储器操作数:这类操作数是指定存储单元 的内容或该单元的地址.
例1:MOV DS:[1000H], AL 其意义是将AL的内容送存储器数据段中偏移地址为 1000H的单元中去。
例2: 若指令改写为MOV AL,DS: [1000H]
指令意义为将数据段中偏移地址为 1000H 单元中的 内容送AL寄存器。前者指的是存储单元的地址,后者指 的是存储单元的内容
22
3.1 寻址方式
直接寻址: 符号地址:
8086/8088指令寻址方式
例3 :AREA1 EQU 0867H ; 等值伪指令EQU给常数0867H定义 一个符号AREA1 MOV AX,AREA1 ;AX=0867H 例4:AREA1 DW 0867H ;DW伪指令用来定义变量,
变量用来表示存储器中的数据。变量名AREA1表示内存中 一个数据区的名字,也就是符号地址,该地址单元存放一个字 数据0867H。 MOV AX,AREA1 ;
4、隐含操作数:这类操作数被操作助记符隐含着。 如,对压缩BCD加法结果进行调整的DAA,其操 作数就是隐含操作数AL。
5 、I/O端口操作数:可以作源操作数或目的操作数。 (I/O端口地址,可以直接或寄存器间接给出)
如: IN AL, 44H
OUT 量和常量三个概念:
例如:MOV AX,BX
3
8086/8088指令概述
例如:MOV AX,BX
用 MOV表示进行数据传送的操作码,用 AX、 BX表示操作数, 显然这样的表示方式更清晰,更便于记忆和使用。 用符号、助记符书写的指令称为符号指令。用符号指令书写程 序的规范称为汇编语言,对应的程序称为汇编语言源程序。
3现代微机结构-8086及80286
![3现代微机结构-8086及80286](https://img.taocdn.com/s3/m/896815f63086bceb19e8b8f67c1cfad6195fe99f.png)
理 器
器 存储器 存储器 I/O
AD15~AD0 双向
DT/R DEN
数据 锁存 器
第二节 Intel 80286
与8086的显著区别:
1. 地址线和数据线不再分时复用, 简化了硬件设计;
2. 增加了地址线的宽度, 物理地址空间增加到16M 3. 增加了新的指令, 以增强其控制能力。 4. 引入存储管理中的虚存管理机制。通过“虚地址”
结论:
采用地址流水线后, 由于地址信号的提前建立, 与非地址的流水线相比, 可以尽量减少插入Tw 等待周期。因而加快了访存速度。 (但并没有提高存储器的速度)。
四、80286的工作模式
(一) 实地址模式
系统开机复位时,自动进入实地址模式, A23~A20自 动置为0, 以 A19~A0寻址1M的存储空间。
实地址模式下的寻址过程:
段基地址
段基地址 0000
+ 20位物理地址 内存单元
偏移量
为实施“虚地址保护”所希望的寻址过
程:
应用设计 者给出的 虚地址
• 实施保护 • 实现虚地址到
物理地址
内存单元
实地址的转换
“虚地址保护” 实施的中间平台
“ 中 间 平 台 ” 的 核 心 部描述子 (Descriptor) 分描:述子的作用:
(物理地址)
左移4位
偏移量 基地址
…
15
0 15
0ห้องสมุดไป่ตู้
段寄存器
偏移量
19
0
一 个
16位基地址 0000
段
+
20位的物理地址
外部地址总线
三、8086的中断系统
(一) 中断源
1、外部中断
微机原理2-1:8088CPU内部结构、寄存器组、存储器组织
![微机原理2-1:8088CPU内部结构、寄存器组、存储器组织](https://img.taocdn.com/s3/m/73d894f9f8c75fbfc77db2d9.png)
栈段和附加段。
段寄存器即是存放各个逻辑段段首地址的寄 存器。
23
存储器的分段管理
8088有20条地址线, 20=1MB, 最大可寻址空间为 2 可寻址的地址范围为 00000H~FFFFFH 该地址称物理地址 硬件用 20位的物理地址来对存储单元进行寻 址
24
存储器的分段管理
由于 8088 中的地址寄存器都是 16 位的,用 户不能直接使用20位的物理地址,编程时需 要使用逻辑地址来寻址存储单元。 物理地址 14700H 逻辑地址由两个16位数构成,其形式为: 逻辑地址 1460H:100H 段的起始地址 : 段内的偏移地址 (16位段地址) :( 16位偏移量)
分隔符
7
②指针和变址寄存器 共BP、SP、SI、DI四个 BP:基址指针寄存器Base Pointer ,默认表示
堆栈段基地址;
SP:堆栈指针寄存器Stack Pointer,指示栈顶 SI:源变址寄存器Source Index DI:目的变址寄存器Destination Index
8
2、标志寄存器 标志寄存器( FR )是 一个 十六位的 寄存器,但只利用了其中的9位:六个条 件标志和三个控制标志。
CLI 指令复位中断标志:IF=0
STI 指令置位中断标志:IF=1
20
陷阱标志TF(Trap Flag)
用于控制处理器是否进入单步执行方式: 设置TF=0,处理器正常工作; 设置 TF=1,处理器每执行一条指令就中断一次, 中断编号为 1 (称单步中断), TF 也被称为单 步标志。 单步执行和单步调试
注意: PF 标志仅反映最低 8 位中“ 1 ”的个数
微机原理 第三章1
![微机原理 第三章1](https://img.taocdn.com/s3/m/2eac1261783e0912a2162a8f.png)
(2)立即(数)寻址
② MOV AX,1234H
说明:这条指令的功能就是将立即数 1234H传送到寄存器AX中。 执行完该条指令后, AX=1234H
(3)寄存器寻址(Segment Addressing)
当操作数在寄存器中时为寄存器寻址(或称寄 存器直接寻址)。如: ① MOV AL,12H 说明:目的操作数AL即为寄存器寻址。
DS(BX的默认段)值
0000
Memory
ES值
SS(BP的默认段)值
CS值
BP: +)位移量:
0000 0000 0000
…… ××
0100 0000 0000 0000 0000 0000 0000 0010
20 位 物 理 地 址
MOV [SI]10 ,AH ( 设SI原值为008CH)
Bit 19 4 3 0
1、通用数据传送指令
(1)MOV指令 (2)PUSH和POP指令 (3)交换指令XCHG (4)换码指令XLAT
(1)MOV指令
是基本传送类指令,实现字或字节数据的 复制。
指令格式:MOV dst,src
指令功能:将源操作数src,传送到目的操作 数dst中。 如:MOV AL,12H
功能:执行指令就是将立即数12H传送到 AL中,执行完指令后AL=12H。
(6)寄存器相对寻址方式 使用基址寄存器(BX或BP)、并带位移 量的间接寻址。操作数EA=BX或BP值+位 移量。 例:MOV DL,[BP+2] 其它等效写法: MOV DL,[BP] 2 MOV DL,2 [BP]
MOV DL,[BP+2] ( 设BP原值为4000H)
Bit 19 4 3 0
汇编语言 用指令助记符表示机器码,例如对应于机器码 B8H、C3H的助记符为MOV AX,BX 。 CPU不同,机器码不同,助记符也不同。
《计算机原理与应用》习题(1-6章)
![《计算机原理与应用》习题(1-6章)](https://img.taocdn.com/s3/m/9183ad854431b90d6d85c728.png)
第1章微机系统导论1.2微处理器、微型计算机和微型计算机系统之间有何联系与区别?答:微处理器是微型计算机的中央处理器,微型计算机是微型计算机系统硬件部分的核心部件。
微处理器是指由一片或几片大规模集成电路组成的具有运算器和控制器功能的中央处理器部件。
微型计算机又称主机,是指以微处理器为核心,配上存储器、输入/输出接口电路及系统总线所组成的计算机。
微型计算机系统是指以微型计算机为中心,配以相应的外围设备(如硬盘、显示器、键盘、鼠标等)、电源和辅助电路(统称硬件)以及指挥微型计算机工作的软件系统(如系统软件、应用软件)所构成的系统。
1.3一个基本的微机硬件系统的组成部分包括哪几部分?实际微机硬件系统一般都由哪些部件组成?答:一个基本的微机硬件系统的组成包括微处理器芯片、存储器芯片与输入输出接口芯片。
微处理器芯片是微机的运算和控制中心,存储器芯片(内存)用来存储程序和数据,输入输出接口芯片是微机与外设之间的接口。
主流微机硬件系统一般由主机(包括CPU、主存储器RAM、CPU外围芯片组和总线插槽)、外设接口卡、外部设备(如显示器、键盘、鼠标)及电源等部件组成。
1.6 一个最基本的微处理器由哪几部分组成?它们各自的主要功能是什么?答:一个最基本的微处理器由运算器、控制器和内部寄存器阵列3个部分组成。
运算器又称为算术逻辑单元(ALU),用来进行算术或逻辑运算以及位移循环等操作;控制器包括指令寄存器(IR)、指令译码器(ID)、可编程逻辑阵列(PLA),三者共同作用完成取指控制、执指控制等操作;内部寄存器的数量和类型视具体的微处理器类型而定,一般包括累加器、数据寄存器、程序计数器、地址寄存器和标志寄存器等,用以存放对应的数据,供控制器和运算器使用。
1.7 试说明程序计数器PC在程序执行过程中的具体作用与功能特点。
答:PC中存放着正待取出的指令的地址。
根据PC中的指令地址,CPU准备从存储器中取出将要执行的指令。
80x86微处理器习题及答案
![80x86微处理器习题及答案](https://img.taocdn.com/s3/m/15be60db5022aaea998f0f10.png)
80x86微处理器习题及答案 16.8086/8088的主要操作有: (1)系统的复位和启动操作;
(2)总线操作;
(3)中断操作; (4)最小模式下的总线保持;
(5)最大模式下的总线请求与保持。
总线操作又分为最小模式下的总线读操作、最小模 式下的总线写操作、最大模式下的总线读操作和最大模 式下的总线写操作。
对基址变址寻址方式中,隐含的数据段是DS。
BX:在寄存器间接寻址、寄存器相对寻址、基址变址寻址和相 BP:在寄存器间接寻址、寄存器相对寻址、基址变址寻址和相 对基址变址寻址方式中,隐含的数据段是SS。
SI:在寄存器间接寻址、寄存器相对寻址、基址变址寻址和相
对基址变址寻址方式中,隐含的数据段是DS。在字符串操作 时,SI作为源变址,隐含的数据段是DS。
(4)往指令队列中装入指令时,是按照指令在存储器中的排列 顺序进行的。但执行转移、调用和返回指令时,下一条要 执行的指令就不是存储器中紧接着的那条指令了。遇到这 种情况,BIU先把指令队列中原内容清零,再从要执行的那 条指令开始装入。
80x86微处理器习题及答案
9.
指示偏移地址的寄存器有BX,BP,SI,DI,SP,1P。
中不使用。 10. (1)→(D);(2)→(G);(3)→(J); (4)→(A);(5)→(H);(6)→(B); (7)→(F);(8)→(C);(9)→(E);
(10)→(1)。
80x86微处理器习题及答案
12.为了取指令或传送数据,就需要BIU执行一个总线周期。一
个基本的总线周期由四个时钟周期组成,习惯上将它们称为 四个T状态,即T1状态、T2状态、T3状态和T4状态。有时会 出现等待状态Tw和空闲状态Ti。在各个T状态中,CPU完成的 工作分别为: (1)在T1状态,CPU往地址/数据复用总线上发地址信息。 (2)在T2状态,从地址/数据总线上撤销地址信息,并使地址 /数据总线的低16位成为高阻态,为传送数据信息做准备。
《微机原理与接口技术》徐惠民 微机原理与接口技术3章
![《微机原理与接口技术》徐惠民 微机原理与接口技术3章](https://img.taocdn.com/s3/m/466f65d7376baf1ffd4fad96.png)
数据传送指令
③ 两个段寄存器之间不能直接传送信息,也不允许 用立即寻址方式为段寄存器赋初值; (X) MOV DS, 100H; (X) MOV DS, ES;
④ 目的操作数,不能用立即寻址方式。
⑤ MOV指令不影响标志位
数据传送指令
2.堆栈指令
功能:从I/O端口输入数据至AL或AX.
输入指令允许把一个字节或一个字 由一个输入端口传送到AL或AX中。若端 口地址超过255时,则必须用DX保存端 口地址,这样用DX作端口寻址最多可寻 找64K个端口。
8086/8088通过 输入输出指令与 外设进行数据交 换;呈现给程序 员的外设是端口 (Port)即I/O地 址。
一般格式:
LES OPRD1,OPRD2
这条指令除将地址指针的段地址部分送入ES外,与 LDS类似。
例如: LES DI,[BX]
数据传送指令
6.标志寄存器传送(有四条标志传送指令)
⑴ LAHF (LOAD AH WITH FLAG) 将标志寄存器中的S、Z、A、P和C(即低8 位)传送至AH寄存器的指定位,空位没有定 义。
2、寄存器寻址
操作数就放在CPU的内部寄存器中,AX、BX、CX、DX、 DI、SI、SP和BP,不需要访问存储器。
例:INC CX MOV AX,BX 若执行前 AX =30A6H, BX =69EDH, CX =40D9H 则执行后 AX =69EDH, BX内容不变 CX =40DAH
3.1 8088/8086的寻址方式
– 操作数是指令执行的参与者,即各种操作的对象。 – 有些指令不需要操作数,通常的指令都有一个或两
个操作数,也有个别指令有3个甚至4个操作数。
新编16 32位微型计算机原理及应用答案(第五版)_第三章参考答案
![新编16 32位微型计算机原理及应用答案(第五版)_第三章参考答案](https://img.taocdn.com/s3/m/c7378d3a4b35eefdc9d33300.png)
第三章 8086/8088微处理器及其系统 教材习题3.1-3.70参考答案3.1 为什么要研究8086/8088微处理器及其系统?这比直接研究32位微处理器及其系统有何优缺点?解:尽管8086/8088后续的80286、80386、80486以及Pentium系列CPU结构和功能已发生很大变化,但从基本概念与结构以及指令格式上来讲,他们仍然是经典的8086/8088CPU的延续与提升。
3.2 8086 CPU有多少根数据线和地址线?它能寻址多少内存地址单元和I/O端口?8088CPU又有多少根数据线和地址线?为什么要设计8088CPU?解:8086 CPU有16根数据线和20根地址线,可寻址1MB存储单元和64KB的I/O端口。
8088 CPU 有16位内部数据线和8条外部数据总线,20根地址线。
8088 CPU 是8086 CPU的向下兼容版,这样设计主要为了与INTEL原有的8位外围接口芯片直接兼容。
3.3 8086 CPU内部按功能可分为哪两大部分?他们各自的主要功能是什么?解:从功能上讲,8086可分为两个部分,即总线接口单元(bus interface unit,BIU)和执行单元(execution unit ,EU)。
总线接口单元(BIU)的功能是负责CPU与存储器或I/O设备之间的数据传送。
EU的功能只是负责执行指令;执行的指令从BIU的指令队列缓冲器中取得,执行指令的结果或执行指令所需要的数据,都由EU向BIU发出请求,再由BIU经总线控制电路对存储器或外设存取。
3.4 8086 CPU内部的总线接口单元BIU由哪些功能部件组成?他们的基本操作原理是什么?解:BIU内有4个16位的段地址寄存器CS、DS、SS和ES,16位指令指针IP,6字节指令队列缓冲器,20位地址加法器和总线控制电路。
基本操作原理是BIU要从内存取指令送到指令队列缓冲器;CPU执行指令时,总线接口单元要配合执行单元从指定的内存单元或者外设端口中取数据,将数据传送给执行单元,或者把执行单元的操作结果传送到指定的内存单元或外设端口中。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
21
2 段寄存器
段寄存器是为实现“段加偏移”寻址而设置的。
4个16位段寄存器,8086/8088 指令可直接访问。
16位段寄存器
00000H
段基址
代码段
段基址
代码段寄存器
数据段寄存器 堆栈段寄存器
CS
DS SS
数据段
段基址 段基址
附加段寄存器
ES
堆栈段 附加段
注意:段寄存器的功能不能互换!
FFFFF H
26
CS + IP CPU 掌握
0000
偏移量IP
FFFFFH
…
3 .专用寄存器—标志寄存器F
标志(Flag)用于反映指令执行结果的情况或控制指令的执行 方式 又称程序状态字寄存器(program status word,PSW)。
27
3 .标志寄存器
8086/8088标志寄存器F为16位,只用了其中的9位 6个状态标志位:CF、PF、AF、ZF、SF、OF 3个控制标志位:DF、IF、TF FH
IP中含有BIU要取的下1条指令(字节) 的偏移地址。 IP在程序运行中能自动加1, 指向要执行的下1条指 令(字节) 。 有些指令能使IP值改变或使IP值压进堆栈,或由堆 栈弹出恢复原值。
14
3.1.1 8068/8088CPU内部结构
执行单元组成
16位算术逻辑单元(ALU)
算术、逻辑运算,计算16位偏移量
15
0 SI 源变址寄存器
DI
目的变址寄存器
变址寄存器
20
数据寄存器举例
例如: 在指令中指明使用 ADD AX,BX MOV BL,AL 例如: 在指令中特定使用CL SHL AX,CL; 逻辑左移(CL)位 例如: 在指令中隐含使用AL MUL BL;无符号乘法;(AX)=(AL)×(BL)
掌握
24
3.1.2.3 专用寄存器
8086/8088/80286: 16位寄存器 指令指针寄存器IP 标志寄存器F 80386及其后继机型(了解) 32位寄存器
指令指针寄存器EIP
标志寄存器EFLAGES
25
3 .专用寄存器—IP或EIP
IP
(Instruction Pointer)指令指针寄存器IP
微型计算机原理及应用
主编:李继灿 清华大学出版社
第三章 微处理器及其系统
内容提要
3.1 8086/8088微处理器 3.2 最小/最大工作方式
3.3 存储器 3.4 指令系统
3.5 微处理器
2
引言
运算器(ALU)
微处理器(MP) 控制器(控制单元CU) 寄存器阵列(RA) RAM, ROM, EPROM
15
0 SP BP 堆栈指针寄存器 基址寄存器 指针寄存器
19
1. 通用寄存器
② 指针及变址寄存器( 16位,存放偏移地址) 变址寄存器(I组):
源变址寄存器SI和目的变址寄存器DI 。 存放当前数据段的偏移地址。
SI(Source Index):源操作数的偏移地址。
BP(Destination Index):目的操作数的偏移地址。
15 11 10 9
IF
FL
8 7 6 4
AF
2
PF
0
CF
OF DF
TF SF ZF
溢出标志
方向标志 中断允许标志 跟踪标志 符号标志 进位标志 奇偶标志
辅助进位标志 零标志
28
掌握
3 .标志寄存器
例 某CPU内含 8位运算器,则: 参加运算的数及结果均以 8位 表示,
最高位产生的进位或借位在8位运算器中不保存, 而将其保存到标志寄存器中。
23
2. 段寄存器
8086/8088 CPU有20条地址线,具有寻址1MB存储空间。 8086/8088指令中给出的地址码仅有16位,指针寄存器 和变址寄存器也只有16位,不能直接寻址1MB的内存空 间。 用8086/8088CPU内部一组16位的段寄存器内容作为段 地址,再由段寄存器左移4位形成20位的段起始地址,被 称为段基地址或段基址。这样,8086/8088可寻址1MB 存储空间。 将1MB存储空间分成为若干个逻辑段,使每个逻辑段的 长度为64KB。
16位标志寄存器F
CPU运算的状态特征或存放控制标志
数据暂存寄存器
协助ALU完成运算
通用寄存器组:
4个16位数据寄存器,4个16位指针与变址寄存器
EU控制电路
控制、定时与状态逻辑电路
15
3.1.1 8068/8088CPU内部结构
8088CPU内部结构
BIU指令队列长度为4个字节 BIU通过总线控制电路与外部交换数据的总线宽度
DB(16位)
总线控制 电 路
8086总线 DB(16位)
暂存寄存器 EU 控制电路 (8位) 指令队列缓冲器 1 2 3 4 5 6
ALU
标志寄存器
执行单元(EU)
总线接口单元(BIU)
8
3.1.1 8068/8088CPU内部结构
总线接口单元(Bus
interface Unit,BIU):
10
3.1.1 8068/8088CPU内部结构
1.指令队列缓冲器:
用于存放预取的指令。 8086的指令队列为6个字节,而8088的指令队列为4 个字节。 在执行指令的同时,从内存中取下面1条或几条指令, 取来的指令依次放在指令队列中。
采用“先进先出”的原则:
11
1.指令队列缓冲器:
“先进先出”的原则:按顺序存放,并按顺序取到EU中 去执行。
理解“段加偏移”寻址机制。
掌握寻址方式。
掌握6大指令系统的基本用法。
4
3.1 8086/8088微处理器
Intel系列的CPU一直占着主导地位。 Intel8086/8088、Z8000和MC68000为代表的16 位微处理器是第3代产品,其性能已达到中、高 档小型计算机的水平。 8086/8088后续的80286、80386、80486。以及 Pentium系列CPU结构与功能已经发生了很大变 化,但从基本结构以及指令格式上来讲,仍然 是经典8086/8088CPU的延续与提升。
记录运算时从最高有效位(字节第7位,字第15位)产生 的进/借位值
CF=
0 1
NC CY
没有产生进/借位 有进/借位产生 BL
例如:执行指令:ADD AL,
3AH + 7CH=B6H,没有进位:CF = 0
AAH + 7CH=(1)26H,有进位:CF = 1
掌握
30
3 .标志寄存器
奇偶性标志PF(Parity Flag)
微型计算机 (MC)
内存储器
EEPROM, Cash等
地址总线(AD)
输入输出(I/O)接口电路 系统总线 数据总线(DB) 控制总线(CB)
微型计算机的组成
3
学习要求
透彻理解和掌握8086/8088内部组成结构、寄存器结 构与总线周期等。 深入理解储存器的分段设计。 正确理解与熟练掌握物理地址和逻辑地址关系。 理解堆栈及其操作。
DL
DX 数据寄存器
18
掌握
1. 通用寄存器
② 指针及变址寄存器( 16位,存放偏移地址) 指针寄存器(P组):
堆栈指针寄存器SP和基址指针寄存器BP。 当前堆栈段中的数据所在的地址。
SP(Stack Pointer):给出栈顶的偏移地址 (入栈和出栈指令时)。 BP(Base Pointer):存放位于堆栈段中的数 据区基地址的偏移地址。
6
3.1.1 8068/8088CPU内部结构
从功能上讲,可分为两个独立的部分,并行重叠操作;
数 据 寄存器 指针和变址 寄存器
通用寄存器 AH AL BH BL CH CL DH DL SP BP SI DI AB(20位) AX BX CX DX
地址 加法器
∑
ALU 数据总线(16位)
CS DS SS ES IP 内部寄存器 数据总线(16位)
15 11 10 9 IF 8 7 6 4 AF 2 PF 0 CF OF DF TF SF ZF
负责完成CPU与存储器或I/O设备之间的数据传送。
BIU从内存取指令送到指令队列缓冲器;
CPU执行指令时,BIU配合EU从指定的内存单元或
I/O端口存取数据
执行单元(Execution
unit,EU):
负责执行指令,即 执行的指令从BIU的指令队列缓冲器中取得; 执行指令的结果或所需要的数据,由EU向BIU发 出请求; 再由BIU对存储器或I/O端口进行存取。
10110101 + 10001111 进位 1 1 1 1 1 1 1 01000100 被加数8位 加数8位 和8位 被加数 运 运 算 算 器 器
PSW 标志 进位 标志寄存器 寄存器
加数 和
掌握
29
3 .标志寄存器
进位标志CF(Carry Flag)
15 11 10 9 IF 8 7 6 4 AF 2 PF 0 CF OF DF TF SF ZF
CX 计数寄存器
DX 数据寄存器 堆栈指针寄存器 基址寄存器 源变址寄存器 目的变址寄存器 0 指令指针寄存器 状态标志寄存器 0 代码段寄存器 数据段寄存器 堆栈段寄存器
指针寄存器 变址寄存器
通用寄存器
15
IP
15
FLAGS CS DS SS
控制寄存器
段寄存器
17
掌握
ES
附加数据段寄存器
1. 通用寄存器
0
偏移地址 0
段寄存器