第二章 微处理器

合集下载

计算机原理

计算机原理
12
例: 设代码段寄存器CS的内容为1234H,指令指 针IP的内容为0022H,即(CS)=1234H,(IP)= 0022H,则访问代码段存储单元的物理地址计算如 下:
左移4位 12340
1234 0022
段基值 逻辑地址
偏移量
整理课件
+)
002 2
1236 2
物理地址
13
整理课件
4. 6字节的指令队列(ISQ)
例: 49H+6DH=B6H,就是73+109=182, 补码B6H表达真值是-74,显然运算结果不正确; 计算结果超出-128~+127范围,产生溢出,故 OF=1。
30
整理课件
奇偶标志PF(Parity Flag) – 当运算结果最低字节中“1”的个数为零或偶 数时,PF = 1;否则PF = 0 – PF 标 志 仅 反 映 最 低 8 位 中 “ 1” 的 个 数 是 偶或奇,即使是进行16位字操作
地址指针寄存器用于存放操作数的地址,编程 时通过修改寄存器的内容达到修改地址的目的。
通过地址指针寄存器寻址内存内的数据
SP为堆栈指针寄存器,指示栈顶的偏移地址, SP不能再用于其他目的,具有专用目的
23
整理课件
BP为基址指针寄存器,表示数据在堆栈段中一 个数据区的基地址,SP和BP寄存器与SS段寄存 器联合使用以确定堆栈段中的存储单元地址。
整理课件
对其中某8位的操作,并不影 响另外对应8位的数据 ;
数据寄存器用于存放操作数及 中间结果,也可以存放地址;
AX和AL可用作累加操作,因
此又可称作累加器。
21
每个寄存器又有它们各自的专用目的
– AX--累加器,使用频度最高; 用于算术、逻辑运算存放中间结果; 与外设传送信息等

第2章-8086微处理器part2

第2章-8086微处理器part2

8086 CPU在最小模式中引脚定义
M/#IO:Memory/Input & Output,三态输出
存储器或I/O端口访问信号 。指示8086的访问对象,发 给MEM或I/O接口。 M/# IO为高电平时,表示 当前CPU正在访问存储器;
M/# IO 为低电平时,表 示当前CPU正在访问I/O端 口
数据驱动器数据流向控制信 号,输出,三态。
在8086系统中,通常采用 74LS245、8286或8287作 为数据总线的驱动器,用 DT/#R信号来控制数据驱动 器的数据传送方向。 当DT/#R=1时,进行数据 发送; 当DT/#R=0时,进行数据 接收。
8086 CPU在最小模式中引脚定义
READY:准备就绪信号 由外部输入,高电平有效 ,表示CPU访问的存储器 或I/O端口己准备好传送 数据。 当READY无效时,要求 CPU插入一个或多个等待 周期Tw,直到READY信 号有效为止。
S3 0 1 0 1
当前正在使用的段寄存器 ES SS CS或未使用任何段寄存器 DS
8086 CPU在最小模式中引脚定义
#BHE/S7:高8位总线允许(Bus High Enable)
T1:指示高8位数据总线上的数据 是否有效 (#BHE:AD0)配合:00时读写字 ,01时读写奇地址字节,10时读写 偶地址字节 其他T周期:输出状态信号S7(S7 始终为逻辑1,未定义) DMA方式下,该引脚为高阻态。
最大模式引脚信号(续)
LOCK# :总线封锁(优先权锁定) 三态输出,低电平有效。 LOCK有效时表示CPU不允许其它总线主控者占用 总线。 ห้องสมุดไป่ตู้ 这个信号由软件设置。 • 当在指令前加上LOCK前缀时,则在执行这条 指令期间LOCK保持有效,即在此指令执行期 间,CPU封锁其它主控者使用总线。 在保持响应期间,LOCK#为高阻态。

【教学课件】第2章 8086微处理器

【教学课件】第2章  8086微处理器

控制 电路
局部总线 接口
SYSB/RESB
1
20
2
19
3
18
4
17
5
8289 16
6
15
7
14
8
13
9
12
10
11
INIT
BCLK BREQ BPRN BPRO BUSY CBRQ
总线仲裁 信号
AEN
V CC S1 S0 CLK
LOCK
CRQLCK ANYRQST
AEN CBRQ BUSY
2021/8/17
DEN CEN
INTA IORC AIOWC IOWC
2021/8/17
23
2.总线仲裁控制器8289
仲裁电路
状态
S2
信号
S1
S0
状态 译码器
多路总线 接口
控制 输入
LOCK CLK
CRQLCK
RESB ANYRQST
IOB
S2 IOB
RESB BCLK INIT BREQ BPRO BPRN
GND
数据总线
2021/8/17
S0
S1
S2
INTR R Q / G T0
R Q / G T1
8288 总线控制器
IN T A
8259A 及有关电路
控制总线 中 断 请 求
22
1.总线控制器8288
状态
S2
信号
S1
S0
状态 译码器
控制 输入
CLK
AEN CEN IOB
控制 电路
命令 信号 发生器
控制信号 发生器
2.3.1 最小模式和最大模式的概念

《微处理器系统结构与嵌入式系统设计》课程教案

《微处理器系统结构与嵌入式系统设计》课程教案

《微处理器系统结构与嵌入式系统设计》课程教案第一章:微处理器概述1.1 微处理器的定义与发展历程1.2 微处理器的组成与工作原理1.3 微处理器的性能指标1.4 嵌入式系统与微处理器的关系第二章:微处理器指令系统2.1 指令系统的基本概念2.2 常见的指令类型及其功能2.3 指令的寻址方式2.4 指令执行过程第三章:微处理器存储系统3.1 存储器的分类与特点3.2 内存管理单元(MMU)3.3 存储器层次结构与缓存技术3.4 存储系统的性能优化第四章:微处理器输入/输出系统4.1 I/O 接口的基本概念与分类4.2 常见的I/O 接口技术4.3 直接内存访问(DMA)4.4 interrupt 与事件处理第五章:嵌入式系统设计概述5.1 嵌入式系统的设计流程5.2 嵌入式处理器选型与评估5.3 嵌入式系统硬件设计5.4 嵌入式系统软件设计第六章:嵌入式处理器架构与特性6.1 嵌入式处理器的基本架构6.2 嵌入式处理器的分类与特性6.3 嵌入式处理器的发展趋势6.4 嵌入式处理器选型considerations 第七章:数字逻辑设计基础7.1 数字逻辑电路的基本概念7.2 逻辑门与逻辑函数7.3 组合逻辑电路与触发器7.4 微处理器内部的数字逻辑设计第八章:微处理器系统设计与验证8.1 微处理器系统设计流程8.2 硬件描述语言(HDL)与数字逻辑设计8.3 微处理器系统仿真与验证8.4 设计实例与分析第九章:嵌入式系统软件开发9.1 嵌入式软件的基本概念9.2 嵌入式操作系统与中间件9.3 嵌入式软件开发工具与环境9.4 嵌入式软件编程实践第十章:嵌入式系统应用案例分析10.1 嵌入式系统在工业控制中的应用10.2 嵌入式系统在消费电子中的应用10.3 嵌入式系统在医疗设备中的应用10.4 嵌入式系统在其他领域的应用案例分析第十一章:嵌入式系统与物联网11.1 物联网基本概念与架构11.2 嵌入式系统在物联网中的应用11.3 物联网设备的硬件与软件设计11.4 物联网安全与隐私保护第十二章:实时操作系统(RTOS)12.1 实时操作系统的基本概念12.2 RTOS的核心组件与特性12.3 常见的实时操作系统及其比较12.4 实时操作系统在嵌入式系统中的应用第十三章:嵌入式系统功耗管理13.1 嵌入式系统功耗概述13.2 低功耗设计技术13.3 动态电压与频率调整(DVFS)13.4 嵌入式系统的电源管理方案第十四章:嵌入式系统可靠性设计14.1 嵌入式系统可靠性概述14.2 故障模型与故障分析14.3 冗余设计技术与容错策略14.4 嵌入式系统可靠性评估与测试第十五章:现代嵌入式系统设计实践15.1 现代嵌入式系统设计挑战15.2 多核处理器与并行处理15.3 系统级芯片(SoC)设计与集成15.4 嵌入式系统设计的未来趋势重点和难点解析第一章:微处理器概述重点:微处理器的定义、发展历程、组成、工作原理、性能指标。

楼第2章微处理器习题解答

楼第2章微处理器习题解答

习题解答:1、8086CPU从功能上看可分为哪两大部分?它们的主要作用是什么?答:8086CPU功能结构可分为两大部分,即总线接口单元BIU(BUS INTERFASE UNIT)和执行单元EU(Execution Unit)构成。

BIU负责与存储器和外设传递数据,具体地说,BIU从内存指定部分取出指令,送到指令队列排队;在执行指令时所需的操作数也是由BIU从内存的指定区域取出传送到EU去执行或者把EU的执行结果传送到指定的内存单元或外设中。

EU 负责指令的执行,它从指令队列中取出指令,译码并执行,完成指令所规定的操作后将指令执行的结果提供给BIU。

2、8086CPU中有哪些通用寄存器?各有什么用途?答:8086/8088CPU的通用寄存器包括4个数据寄存器AX、BX、CX、DX,2个地址指针寄存器SP和BP,2个变址寄存器SI和DI。

通用寄存器都能用来存放运算操作数和运算结果,这是它们的通用功能,除此之外在不同的场合它们还有各自的专门用途。

(1)数据寄存器数据寄存器包括4个寄存器AX、BX、CX、DX,用于暂时保存运算数据和运算结果,由于每个16位数据寄存器可分为2个8位数据寄存器,这4个数据寄存器既可以保存16位数据,也可保存8位数据。

AX(accumulator)称为累加器,常用于存放算术逻辑运算的操作数,所有输入输出指令也都通过AX与外设进行信息传输。

BX(base)称为基址寄存器,常用于存放访问内存时的基地址。

CX(count)称为计数器,在循环和串操作指令中用来存放计数值。

DX(data)称为数据寄存器,在双字长(32位)乘除运算中将DX与AX两个寄存器组合成一个双字长的数据,其中DX存放高16位数据,AX存放低16位数据,另外在间接寻址的输入输出指令中把要访问的输入输出端口地址存放在DX中。

(2)指针寄存器指针寄存器包括堆栈指针寄存器SP(stack pointer)和基址指针寄存器BP(base pointer)。

第2章 ARM微处理器概述

第2章 ARM微处理器概述


工业控制领域:
作为32位 的RISC 架构,基于ARM 核的微控制器芯片不
但占据了高端微控制器市场的大部分市场份额,同时也 逐渐向低端微控制器应用领域扩展,ARM 微控制器的低 功耗、高性价比,向传统的8 位/16 位微控制器提出了挑 战。

无线通讯领域:
目前已有超过85%的无线通讯设备采用了ARM 技术,
ARM体系结构的变种

(4)J变种(Java加速器Jazelle)
ARM的Jazelle技术将Java的优势和先进的32位RISC芯
片完美地结合在一起。Jazelle技术提供了Java加速功能, 可以得到比普通Java虚拟机高得多的性能。与普通的 Java虚拟机相比,Jazelle使Java代码运行速度提高了8 倍,而功耗降低了80%。 Jazelle技术使得程序员可以在一个独立的处理器上同时 运行Java应用程序、已经建立好的操作系统、中间件以 及其他的应用程序。与使用协处理器和双处理器相比, 使用单独的处理器可以在提供高性能的同时保证低功耗 和低成本。 J变种首先在ARM体系版本4TEJ中使用,用字母J表示。
使用电池供电的高性能的便携式设备。这些 设备一方面需要处理器提供高性能,另一方 面又需要功耗很低。SIMD功能扩展为包括音 频/视频处理在内的应用相同提供了优化功能。 它可以使音频/视频处理性能提高4倍。 Version 6首先在2002年春季发布的ARM11 处理器中使用。
2.2.3 ARM体系结构的变种及版本 命名格式
Version 4(v4)
该版本增加了下列指令:
半字加载和存储指令; 加载带符号的字节和半字数据的指令; 增加mb状态; 增加了处理器的特权模式。 该版本不再强制要求与以前的26位地址空间 兼容。

微机原理第二章8086微处理器

微机原理第二章8086微处理器
▪ 表面上看来,微处理器的外部就是数量有限的输入输出 引脚。但是,正是依靠这些引脚与其它逻辑部件相连接, 才能组成多种型号的微型计算机系统。
▪ 这些引脚就是微处理器级总线。微处理器通过微处理器 级总线沟通与外部部件和设备之间的联系。这些总线及 其信号必须完成以下功能:
▪ (1)和存储器之间交换信息; ▪ (2)和I/O设备之间交换信息; ▪ (3)为了系统工作而接收和输出必要的信号,如输入
▪ 时钟信号输入端。19 CLK(输入) ▪ 8086和8088为5MHz。 ▪ 8086/8088的CLK信号必须由8284A时钟发生器产生。 ▪ 微处理器是在统一的时钟信号CLK控制下,按节拍进行
工作的。
2021/6/12
16
8086/8088微处理器——微处理器的引脚功能
▪ 工作方式控制线 33
指令执行示例
2021/6/12
1
第二章:8086/8088微处理器
1. 微处理器ห้องสมุดไป่ตู้结构 2. 微处理器的内部寄存器 3. 微处理器的引脚功能 4. 微处理器的存储器组织 5. 最大模式和最小模式 6. 微处理器的时序
2021/6/12
2
2021/6/12
▪ 存储器分段
▪ 由于CPU内部的寄存器都是16位的,为了
2021/6/12
7
第二章:8086/8088微处理器
1. 微处理器的结构 2. 微处理器的内部寄存器 3. 微处理器的引脚功能 4. 微处理器的存储器组织 5. 最大模式和最小模式 6. 微处理器的时序
2021/6/12
8
8086/8088微处理器——微处理器的引脚功能
▪ 一、微处理器的外部结构
时钟脉冲、复位信号、电源和接地等。

第2章8086微处理器1-2

第2章8086微处理器1-2
来自忙碌忙碌忙碌
忙碌
1)CPU执行指令时总线处于空闲状态 ) 执行指令时总线处于空闲状态 2)CPU访问存储器 存取数据或指令 时要等待总线操作的完成 访问存储器(存取数据或指令 ) 访问存储器 存取数据或指令)时要等待总线操作的完成 缺点: 缺点:CPU无法全速运行 无法全速运行 解决:总线空闲时预取指令, 解决:总线空闲时预取指令,使CPU需要指令时能立刻得到 需要指令时能立刻得到
6
结论
指令预取队列的存在使EU和 指令预取队列的存在使 和BIU两个部 两个部 分可同时进行工作, 分可同时进行工作,从而 提高了CPU的效率; 降低了对存储器存取速度的要求
7
8088/8086 CPU的特点
采用并行流水线工作方式 对内存空间实行分段管理: 对内存空间实行分段管理:
每段大小为16B~ 每段大小为16B~64KB 16B 用段地址和段内偏移实现对1MB空间的寻址 用段地址和段内偏移实现对1MB空间的寻址 设置地址段寄存器指示段的首地址
支持多处理器系统; 支持多处理器系统; 片内没有浮点运算部件, 片内没有浮点运算部件,浮点运算由数学协处 理器8087支持(也可用软件模拟) 理器 支持(也可用软件模拟) 支持 注:80486DX以后的CPU均将数学协处理 器作为标准部件集成到CPU内部
8
二、8086CPU的内部结构
8086内部由两部分组成: 内部由两部分组成: 内部由两部分组成 执行单元(EU) 执行单元( ) 总线接口单元(BIU) 总线接口单元( )
2
指令预取队列(IPQ)
指令的一般执行过程: 指令的一般执行过程: 取指令 指令译码 读取操作数 执行指令 存放结果
3
串行工作方式:
8086以前的CPU采用串行工作方式: 8086以前的CPU采用串行工作方式: 以前的CPU采用串行工作方式

第2章 微型计算机和微处理器的结构

第2章  微型计算机和微处理器的结构

2.1.1 微处理器(微处理机)
微处理器:是微型计算机的中央处理部件,是由一片 或几片大规模集成电路组成的中央处理器,一般也称 CPU(Center Process Unit)。其内部通常包括算术逻辑 部件,累加器、通用寄存器组,程序计数器,时序和控制 逻辑部件,内部总线等等。 2.1.2 存储器
存储结果 1
取指令 4
……
EU
……
译码 1
执行 1
译码 2
执行 2
……
(b)流水处理
如图: 8086/8088 CPU 由于指令执行部件EU和总线接口 部件BIU相互独立,可并行操作,进行流水线处理。若一条指 令执行过程中不需要从存储器取操作数和向存储器存储结果, 即不占CPU总线时间,总线接口部件便可对下一条要执行的指 令预取。可见。采用流水线技术提高了指令执行速度。
2.2.3 8086/8088微处理器的功能结构 从功能上来看,8086/8088 CPU可分为两部分,即总线接 口部件BIU(Bus Interface Unit)和执行部件EU(Execution Unit)。
图2.3 8086/8088CPU内部功能结构图
(1) 执行部件(EU)
功能:负责指令的执行。(主要进行8位及16位的各种运算) 组成:①ALU(算术逻辑单元); ②通用寄存器组; ③标志寄存器( FLAGS )。 ①通用寄存器(AX、BX、CX、DX) 8086 有4个16位的通用寄存器(AX、BX、CX、DX), 可以存放16位的操作数,也可分为8个8位的寄存器(AL、AH; BL、BH;CL、CH;DL、DH)来使用。其中AX称为累加器, BX称为基址寄存器,CX称为计数寄存器,DX称为数据寄存 器。这些寄存器在具体使用上有一定的差别,如表2-1所示。

第二章80386DX微处理器的实地址模式软件结构

第二章80386DX微处理器的实地址模式软件结构
操作(如AL) 。 在实模式下通常按字或字节操作。 在保护模式下寄存器按32位操作,则在寄存器的名字
前加E,如EAX。
四.实模式下的寄存器模型
指针和变址寄存器
四个通用寄存器:
变址寄存器ESI和EDI、指针寄存器EBP和ESP。 在实模式下它们总是用于保存地址的16位偏移量,而被命名
为SI和DI、BP和SP,这时它们与8086下同名。
地址为SS:0002H。可见堆栈是向小地址生长的。 可以有多个栈,但同时只能有一个活动的。改变SS寄存器的内容,
就可以指向新的栈。
四.实模式下的寄存器模型
四.实模式下的寄存器模型
实模式输入/输出地址空间
存贮空间和I/O地址空间是分离的。 I/O地址空间用于寻址接口和I/O设备,其地址范
围是0000H~FFFFH,共64K字节。 I/O地址为8位(直接寻址)或16位,这与存贮器
通用存贮区的寻址范围是00400H~FFFFFH, 该区域可以存放程序和数据。
三.实模式下存贮器地址空间和数据组织
对齐
对准双字
80386DX可以访问双字数据,如果双字的地址(最小地 址)是4的倍数,它被称作对准双字。
对准字
80386DX也可以访问字数据,如果字的地址(较小地址) 是2的倍数,它被称作对准字。
总线单元是80386DX与存贮器和I/O的接口,总 线接口对外提供:
32位数据总线 32位地址总线 控制总线。
80386的地址总线和控制总线有各自专用的引脚,没 有采用总线复用技术,这减去了相应的控制信号。
总线单元负责完成所有外部总线操作,能够产生控制地址 锁存器和数据总线收发器工作的控制信号。
SI和DI分别是存放源操作数和目的操作数地址的偏移量; BP和SP存放的则是堆栈段寄存器SS的偏移量。

计算机原理_2 8086微处理器

计算机原理_2 8086微处理器

READY RDY1 AEN1 RDY2 AEN 2
3 复位信号产生 输入RES经过斯密特触发器分频以后,在时钟同频下产生RESET信号 送给CPU的RESET引脚,进行复位。 通常有以下两种情况会产生硬件复位信号: a 电源开关打开 b 按下机箱上的Reset按钮 电路如下所示:
例:CS的内容是89ABH,IP 的内容是0201H,则生成的地
址是89AB0H+0201H=89CB1H


20位的地址加法器 段地址左移4位+偏移量 → 20位的实际物理地址 段地址*16+偏移量 → 20位的实际物理地址 6个字节的指令队列

执行部件(EU)

16位的算术逻辑单元ALU 4个16位的通用寄存器 AX,BX,CX,DX,它们又可以分成8个8位的寄存器使用 AH,AL,BH,BL,CH,CL,DH,DL AL AH 4个16位的专用寄存器 SP——堆栈指针寄存器 BP——基址指针寄存器 SI ——源变址寄存器 DI ——目的变址寄存器
(二)时钟发生电路8284A 1 产生时钟信号 OSC 内部时钟同频信号 CLK 内部时钟三分频信号,占空比1/3 PCLK 内部时钟六分频信号,占空比1/2 CSYNC 外部时钟的同频信号 X1、X2 外接晶体,供内部振荡器产生震荡频率 EFI 外接时钟入端 F/C 时钟输入选择 PC机中14.31818MHz的外接晶体 CLK=4.77MHz 2 准备就绪信号 ASYNC为低电平时,表示READY输出时插入一个时钟周期延时。
三、常用的数据管理方式


LIFO FIFOቤተ መጻሕፍቲ ባይዱ
1
2
堆栈:按照后进先出(LIFO)的原则组织的存储器空间(栈)。

微机8088第二章

微机8088第二章

15
1 0 0 1 1
OF DF IF TF SF ZF
0 1 0 1
AF PF
0
CF
FR
实模式下标志寄存器有9个标志位:6个状态标志位,3个控制标志位 状态标志位反映算术或逻辑运算后结果的状态: CF——进/借位标志。D7/D15向高位有进/借位,CF为1,否则为0。 PF——奇偶标志,运算结果中1的个数为偶数置1 AF——辅助进/借位标志,低4位/ 8位向高位产生进/借位置1,用于十进 制数运算调整。 ZF — 零标志,结果为0置1 SF ——符号标志,与运算结果的最高位相同。 OF — 溢出标志。反映有符号数作加法或减法运算时,运算结果是否 出现溢出的状态。OF=1,溢出。 字节:+127~-128; 字:+32767~-32768
微处理器的集成度
•指微处理器芯片上集成的晶体管的密度。 •最早Intel 4004的集成度为2250个晶体管,Pentium III的集 成度已经达到750万个晶体管以上,集成度提高了3000多倍 。
微处理器的发展概况 1971年~1977年是微处理器发展的早期阶段:
1971年:Intel 4004,是世界上
第三代:80386(1985年-1988年)
•第一个实用的32位微处理器,采用了 1.5m工艺,集成了275,000个晶体管 ,工作频率达到16MHz。80386的内 部寄存器、数据总线和地址总线都是 32 位 的 。 通 过 32 位 的 地 址 总 线 , 80386的可寻址空间达到4GB。
•80386的其他一些版本:80386SX,包含16位数据总线 和24位地址总线,寻址空间为16MB;80386SL/ 80386SLC,包含 l6位数据总线和25位地址总线,寻址 空间为32MB。由于这些微处理器由于与I/O之间传输 为16位,故也称为准32位微处理器。

NEW02_第二章_微处理器_part2

NEW02_第二章_微处理器_part2

微机原理与接口
Pentium性能简介
Pentium通往外部存储器的数据总线为64位, CPU内部主要寄存器的宽度仍然为32位,那么 Pentium、Pentium(P54C)应该是32位微处理器 。外部64位数据总线(D63-D0)每次可同时传输8 字节的二进制信息,若选用主总线时钟频率66MHz 计算,即存储器总线的时钟频率也为66MHz,则 Pentium与主存储器交换数据的速率可为528MB/S 。
微机原理与接口
Pentium CPU原理结构图
微机原理与接口
2.6.1 Pentium的原理结构
二、原理结构 在Pentium CPU中,总线接口部件实现 CPU与系统总线之间的连接,其中包括64位 双向的数据线、32位地址线和所有的控制信 号线,具有锁存与缓冲等功能,总线接口部 件实现CPU与外设之间的信息交换,并产生 相应的各类总线周期。
··· ·· ··
微机原理与接口
从上述程序可以看出,许多分支转移指令 转向每个分支的机会不是均等的,而且大多数 分支转移指令排列在循环程序段中,除了一次 跳出循环体之外,其余转移的目标地址均在循 环体内。因此,分支转移指令的转移目标地址 是可以预测的,预测的依据就是前一次转移目 标地址的状况,即根据历史状态预测下一次转 移的目标地址。预测的准确率不可能为100%, 但是对于某些转移指令预测的准确率却非常高。

U、V流水线中整数指令流水线均由5段组成。分别 为预取指令(PF)、指令译码(D1)、地址生成( D2)、指令执行(EX)和结果写回(WB)。
由于采用了指令流水线作业,每条指令流水线可以 在1个时钟周期内执行一条指令。因此,最佳情况 下一个时钟周期内可以执行两条整数指令。
微机原理与接口

微机原理第二章习题及答案

微机原理第二章习题及答案

第二章8086/8088 微处理器一、填空题1、CPU内部有4个段寄存器它们分别是CS、DS、SS、ES 。

2、8086CPU复位时,CS的内容被置为FFFFH ,IP的内容被置为0000H 。

3、8086CPU内部结构按功能分为两部分,即BIU(总线接口部件)和EU(执行部件)。

8086的指令队列为 6 字节。

4、若(CS)=4200H时,物理转移地址为4A230H,当CS的内容被设定为7900H 时,则物理转移地址为81230H 。

题目解析:物理地址=段寄存器的内容*16+偏移地址,段寄存器的内容*16相当于段寄存器的内容左移四位(二进制后加4个0,十六进制后加1个0),得到的是段的首地址,如(CS)=4200H时,代码段的首地址则为42000H。

此题中,偏移地址=4A230H-42000H=8230H,因此,当CS的内容被设定为7900H时,则物理转移地址=79000H+8230H=81230H.5、微型计算机都采用总线结构,系统总线是用来传送信息的一组通信线,它包括数据总线,地址总线和控制总线。

6. 在数据段(段地址(DS)=3000H)中某一数据的偏移地址是1002H,则该数据的实际物理地址为31002H H。

7、8086CPU内部DB为16 位,AB为20 位。

可寻址的内存空间为1MB ,可寻址的I/O端口地址范围为0000H~FFFFH 。

8、8088CPU内部有16 条数据线,20 条地址线,可寻址内存空间为1M B。

题目解析:8086CPU和8088CPU内部的数据线都是16位,因此内部的寄存器都是16位的,但是对外数据总线的位数是不同的,8086CPU外部数据总线为16位D0-D15,8088CPU称为准16位机,外部数据总线为8位D0-D7。

8086CPU和8088CPU地址总线都是20位,寻址内存时20位的地址(A0-A19)都可用,所以可寻址的内存空间是1MB;寻址I/O端口时,最多只能使用16位地址(A0-A15),此时可寻址的I/O端口地址范围为0000H~FFFFH ,可寻址的I/O端口地址空间为64KB。

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

第二章微处理器一、教学内容:1.概述2.8088/8086微处理器3.80286微处理器4.80X86/Pentium微处理器二、要求熟练掌握8086微处理器的组成原理、各功能部件的作用。

三、重点掌握16位微处理器的体系结构、各种寄存器的用途。

四、难点在于对整个CPU的各功能部件的结构组成、工作原理、概念的论述等方面的理解。

五、本章分为4讲,每讲2学时。

第一讲8088/8086微处理器尽管微处理器已进入了Pentium时代,其内部结构和性能也发生了巨大的变化,但其基本结构仍然和早期的8086/8088 相似,可以说8086/8088 是80X86系列芯片的基础。

1.8086/8088 微处理器的内部结构8086/8088 是Intel系列的16位微处理器,它是采用HMOS工艺制造的,内部包含约29000个晶体管,用单一的+5V电源,时钟频率为 5MHz~10MHz。

8086有16根数据线和20根地址线,其寻址空间达1M字节;8088是一种准16位微处理器,它的内部寄存器、内部运算部件以及内部操作都是按16位设计的,但对外的数据总线只有8条。

8086/8088 芯片内设有硬件乘除指令部件和串处理指令部件,可对位、字节、字串、BCD码等多种数据类型进行处理。

1)总线接口单元BIU和执行单元EU①总线接口单元BIU➢BIU的功能是8086 CPU与存储器或I/O设备之间的接口部件,负责全部引脚的操作。

具体来说,BIU负责产生指令地址,根据指令地址从存储器取出指令,送到指令队列中排队或直接送给EU去执行。

➢BIU也负责从存储器的指定单元或外设端口中取出指令规定的操作数传送给EU,或者把EU的操作结果传送到指定的存储单元或外设端口中。

➢BIU内部设有4个16位的段寄存器:代码段寄存器CS (Code Segment)、数据段寄存器DS (Data Segment)、堆栈段寄存器SS (Stake Segment)、附加段寄存器ES (Extra Segment)。

➢一个16位的指令指针寄存器IP (Instruction Pointer)➢6字节指令队列缓冲器。

➢20位地址加法器和总线控制电路。

②执行单元EU➢执行单元EU的功能是从BIU的指令队列中取出指令代码,然后执行指令所规定的全部功能。

➢在执行指令的过程中,如果需要向存储器或I/O传送数据,则EU向BIU 发出访问存储器或I/O的命令,并提供访问的地址和数据。

➢16的算术逻辑单元ALU (Arithmetic and Logic Unit)➢16位的状态标志寄存器F (Flags)➢一组数据暂存寄存器➢一组指令指针和变址寄存器➢一个数据暂存器➢EU控制电路2)8086 CPU 内部寄存器Intel 8086/8088 CPU共有14个16位的寄存器。

①通用寄存器通用寄存器共有8个,按照使用情况分为数据寄存器(Data Register)、指针寄存器(Pointer Register)和变址寄存器(Index Register)。

②段寄存器8086 CPU的BIU中有4个16位的段寄存器,它们是用来存放段起始地址值(又叫段基址值),8086的指令能直接访问这4个段,它们(SL Code Segment)代码段寄存器、SS(Stack Segment)堆栈段寄存器、DS(Data Segment)数据段寄存器和ES(Extra Segment)附加段寄存器。

③状态寄存器Intel 8086/8088 CPU的处理器设置了一个16位的状态标志寄存器(Flags)。

其中安排了9位用作标志位,包括6个状态标志位(CF、PF、AF、ZF、SF、OF)和3个控制标志位(TF、IF、DF)。

④指令指针寄存器➢IP(Instruction Pointer)指令指针寄存器相当于程序计数器PC,用于控制程序中指令的执行顺序。

➢IP内容是下一条待取指令的偏移地址,每取一次指令,IP内容就自动加1,从而保证指令按顺序执行。

➢IP实际上是指令机器码存放单元的地址指针,IP的内容可以被转移指令强制改写。

但程序不能直接访问IP,即不能用指令去取出IP的值或给IP赋值。

2.8086/8088 的引脚和工作方式1)8086/8088 CPU引脚特性8086/8088 CPU采用双列直插式的封装形式,有40条引脚,如下图所示。

① 地址/数据总线AD15~AD0(Address Data Bus)➢ 这是分时复用的存储器或I/O 端口地址和数据总线,双向工作,三态。

➢ 在总线周期的T1状态作为地址线,输出要访问的存储器或I/O 端口的地址;➢ 在总线周期的T2~T3状态作为数据线传输数据。

② 地址/状态线A19/S6~A16/S3(Address Status)➢ 地址/状态复用引脚,输出,三态。

➢ 在总线周期的T1状态,用来输出地址的最高4位。

➢ 在总线周期的T2、T3、TW 和T4状态时,用来输出状态信息。

③ 控制总线➢ ➢ ➢ READY➢ ➢ INTR (Interrupt Request)➢ NMI (Non-Maskable Interrupt)➢ RESETBHE /S7RDTEST➢ CLK (Clock)➢ 2) 最小/最大工作方式① 8086最小工作方式时的引脚功能➢ 8086/8088 CPU 最小工作方式用于单片微处理器组成的小系统,在这种方式中,由8086/8088 CPU 直接产生小系统所需要的全部控制信号。

➢ 当 接 +5V 电压时,CPU 工作于最小方式,引脚24~31的控制功能有变化。

② 8086最小工作方式时的系统总线结构➢ 最小工作方式,就是系统中只有一个微处理器(如8086)。

在这种系统中,所有的总线控制信号都直接由8086产生,系统中总线控制逻辑电路减少到最少。

➢ 最小工作方式系统适合于较小规模的应用,其典型系统结构图如下图所示。

③ 8086最大工作方式时的引脚功能➢ 当8086的33脚接地时,系统工作于最大方式。

➢ 最大方式用在中规模或大规模的8086/8088系统中,包含有两个或多个微处理器,其中8086或8088是主处理器,其他的称为协处理器。

➢ 和8086匹配的协处理器有两个:一个是8087,专用于数值运算,能实现多种类型的数值操作;另一个是用于输入/输出处理的8089,它有专用的输入/输出指令系统,8086就不用再处理这类工作,从而提高主处理器的效率。

MN/MXMN /MX④8086最大工作方式时的系统总线结构➢系统中增加了总线控制器8288,使总线控制功能更加完善。

➢在最大方式下,许多总线控制信号都是通过总线控制器8288产生的,而不是8086直接产生,这样在8086 最小方式下提供的总线控制信号就可以重新定义,这些引脚大多用来支持多微处理器系统。

➢8086 CPU最大方式时的典型系统结构如下图所示。

第二讲8088/8086微处理器(续)3.8086/8088 的存储器组织1)存储器的标准结构➢8086 CPU有20根地址线,可寻址1MB存储空间。

➢存储器按字节编址,从00000H—FFFFFH,每个字节用惟一的地址表示。

➢存放的数是字节形式,存储器按顺序排列存放。

➢存放的数为一个字时,将字的高位字节放在高地址中,将低位字节放在低地址中,高低地址连续。

➢对于存放的字,其低位字节可以在奇数地址中(即从奇地址开始)存放,这种方式称为非规则存放,这样存放的字称为非规则字,CPU需要两次访问存储器才能存取该字。

➢也可以在偶数地址中(即从偶地址开始)存放,这是规则存放,这样存放的字称为规则字,CPU一次便可对该字所在的两个存储单元进行存取。

为加快程序的运行速度,编程时应注意用规则字。

➢8088系统外部数据总线只有8位,CPU每次访问存储器只读写一个字节,如果要读写一个字,CPU需要访问两次存储器。

2)存储器的分段➢8086的内部结构以及内部数据的直接处理能力和寄存器都只有16位,故只能直接提供16位地址,寻址64KB存储空间。

➢将1MB字节的存储器空间分成若干逻辑段,每个段最长为64KB,段内地址是连续的。

➢逻辑段之间可以是连续的,也可以是分开的或重叠的。

➢段的首地址必须能被16整除,即每段首地址的低4位必须为0,高16位就是段基地址值。

➢段内任一存储单元与它所在段的段基地址值之间的距离称为偏移量或偏移地址。

➢段基地址值存放在段寄存器CS、SS、DS、ES中,程序可以从4个段寄存器给出的逻辑段中存取代码和数据。

3)物理地址和逻辑地址➢物理地址(Physical Address)又叫实际地址,是CPU和存储器进行数据交换时使用的地址。

➢已知一个存储单元的段基地址值和它的偏移量,就可计算方其物理地址:值×10H+偏移地址➢逻辑地址由两部分组成:段基值和偏移量。

➢它们都是用无符号的16位二进制数或4位十六进制数表示。

➢逻辑地址的一般表示形式为:段基值:偏移量4)堆栈➢所谓堆栈(Stack)是为保护数据、调度数据而开辟的特殊数据区域。

➢堆栈的一端是固定的(栈底),另一端是浮动的(栈顶),正常的堆栈操作,其信息的存取在浮动的一端进行。

➢堆栈中的数据严格按照“先进后出(First In Last Out或FILO)”的原则进行存取操作,即数据是由栈顶压入和弹出的。

➢由堆栈段寄存器SS提供段基值,堆栈指针寄存器SP提供偏移地址,每当压入或弹出数据时,SP的内容会自动修改,它始终指向堆栈的顶部。

➢计算物理地址的公式是:物理地址(PA)= (SS)×10H +(SP)➢当需要对堆栈段中的某个单元的数据进行操作时,还可使用BP寄存器通过各种寻址方式得到有效地址EA作为偏移地址,这样其物理地址是:物理地址(PA)=(SS)×10H + EA4.8086 的工作时序1)系统的复位和启动操作➢8086/8088的复位和启动操作是通过RESET引脚触发执行的。

➢要求复位信号RESET至少维持4个时钟周期的高电平,当该信号一旦进入高电平,8086/8088 CPU就会结束现行操作,保持在复位状态,直到RESET变为低电平为止。

2)8086 CPU最小方式时总线时序8086/8088 CPU与存储器及I/O端口交换数据需要执行一个总线周期。

它可分为两部分,即读总线周期和写总线周期。

前者是CPU从存储器或I/O端口读取数据。

后者是CPU将数据写入存储器或I/O端口。

①读总线周期时序➢一个最基本的读总线周期包含4个状态,即T1、T2、T3、和T4。

➢在存储器和外设速度较慢时,要在T3之后插入一个或几个等待状态TW。

➢如下图所示为8086 CPU最小方式时读总线周期时序图。

➢图中画了4个T状态即一个总线周期,且每个T状态都是一个占空度约33%的时钟周期,全部时序图都以这个时钟作为基准。

相关文档
最新文档