8086与8088的区别
第03-1章. 80868088微处理器及其系统

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)
8051与8086、8088的区别

8051与8086、8088的区别主要8051是8位,⽽8086和8088是16位,所以汇编时会在书写⽅⾯不⼀样,那就要注意算法了,但只要掌握好8051就很快可以过度到16位机以下是⼀些概括性的资料:(是复制粘贴的)8086是intel的CPU,地球上⽣产CPU的不只intel还有motorola.随着⼈类的进步cpu也不断发展。
8086发育得越来越丰满了,也就是以后的/80286/80386/80486/奔腾/p2/p3/p4.8051是单⽚机,是⼀种计算机了,实际上8051内除有CPU外,内部还包括RAM、ROM、定时器、等,只是她⽐PC机⼩得多,⽤处也不⼀样⽽已。
为什么说8051系列呢?8051是intel发明的技术,它有⾃⼰的这种技术的产品--MCS-51。
MCS-51系列单8086/8088微处理器8086是Inter系列的16位微处理器,芯⽚上有2.9万个晶体管,采⽤ HMOS⼯艺制造,⽤单⼀的+5V电源,为5MHz~10MHz。
8086有16根数据线和20根地址线,它既能处理16位数据,也能处理8位数据。
可寻址的内存空间为1MB.Inter公司在推出8086的同时,还推出了⼀种准16位微处理器8088,8088的内部寄存器,运算部件及内部数据总线都是按16位设计的,单外部数据总线只有8条。
推出8086的主要⽬的是为了与当时已有的⼀套Inter接⼝芯⽚直接兼容使⽤。
8086与8088在1.3.1 8086/8088的寄存器结构图1-3⽰出了8086/8088的寄存器结构1. 数据寄存器数据寄存器为图中最上边所⽰的4个寄存器AX,BX,CX,DX。
这些寄存器⽤以暂时保存计算过程中所得到的操作数及结果。
他能处理16位数,也能处理8位数,当处理8位数时,这4个16位寄存器作为8个8为寄存器AH,AL,BH,BL,CH,CL,DH,DL来使⽤。
这4个数据寄存器除了作为通⽤寄存器以外,还有各⾃的专门⽤途:AX(accumulator)做累加器⽤,是算术运算的主要寄存器。
微机原理与接口技术简答题

1、8086是几位的微处理器?8086与8088这两个微处理器在结构上有何相同点,有何主要区别?答:16位处理器。
共同点:(1)内部均由EU、BIU组成,结构基本相同。
(2)寄存器等功能部件均为16位。
(3)内部数据通路为16位。
(4)指令系统相同。
不同点:1对外数据总线8086为16位,8088为8位。
2指令队列8086为6级,8088为4级。
2、8086/8088微处理器内部有那些寄存器,它们的主要作用是什么?答:执行部件有8个16位寄存器,AX、BX、CX、DX、SP、BP、DI、SI。
AX、BX、CX、DX 一般作为通用数据寄存器。
SP为堆栈指针存器,BP、DI、SI在间接寻址时作为地址寄存器或变址寄存器。
总线接口部件设有段寄存器CS、DS、SS、ES和指令指针寄存器IP。
段寄存器存放段地址,与偏移地址共同形成存储器的物理地址。
IP的内容为下一条将要执行指令的偏移地址,与CS共同形成下一条指令的物理地址。
3、怎样确定8086的最大或最小工作模式?最大、最小模式产生控制信号的方法有何不同?答:引线MN/MX#的逻辑状态决定8086的工作模式,MN/MX#引线接高电平,8086被设定为最小模式,MN/MX#引线接低电平,8086被设定为最大模式。
最小模式下的控制信号由相关引线直接提供;最大模式下控制信号由8288专用芯片译码后提供,8288的输入为8086的S2#~S0#三条状态信号引线提供。
4、什么是总线请求?8086在最小工作模式下,有关总线请求的信号引脚是什么?答:系统中若存在多个可控制总线的主模块时,其中之一若要使用总线进行数据传输时,需向系统请求总线的控制权,这就是一个总线请求的过程。
8086在最小工作模式下有关总线请求的信号引脚是HOLD与HLDA。
5、什么是硬件中断和软件中断?在PC机中两者的处理过程有什么不同?答:硬件中断是通过中断请求线输入电信号来请求处理机进行中断服务;软件中断是处理机内部识别并进行处理的中断过程。
8086CPU与8088CPU的比较

波形图
AB/DB
AB G
D
Q
DQ
L
L
Qn
G
L
H Qn
H
L
L
D
G
H
H
H
ALE
Q
最小工作模式下的硬件电路
8282 —— 8 位锁存器
最小工作模式下的硬件电路
缓冲器
基本电路 —— 三态门
逻辑图
真值表
IN /DEN
/DEN IN OUT
OUT
L LL
L HH
H LZ
H HZ
最小工作模式下的硬件电路
双向缓冲器
逻辑图
真值表
/DEN DT// G G2
R1
读
L L HL写
L H L H 高阻 H L L L 高阻
H H LL
注:/DEN —— 读写有效控制;
DT//R —— 读写方向控制
最小工作模式下的硬件电路
8286 —— 8 位双向缓冲器
最小工作模式下的硬件电路
锁存器芯片
专用 8 位锁存器芯片
T —— 数据方向控制
通用 8 位缓冲器芯片
74LS244 —— 单向缓冲器 74LS245 —— 双向缓冲器
最小工作模式下的硬件电路
逻辑图
8282
8286
8282、8286的应用
8286
Intel 8282 —— 输入/输出同相型 Intel 8283 —— 输入/输出反相型 注:/OE —— 片选有效控制;
STB —— 数据锁存控制
通用 8 位锁存器芯片
74LS373 —— 电平触发型 74LS377 —— 边沿触发型
最小工作模式下的硬件电路
8086与8088的区别

这两种CPU的主要区别,归纳起来有以下几方面:1.外部数据总线位数的差别:8086CPU的外部数据总线有16位,在一个总线周期内可输入/输出一个字(16位数据),使系统处理数据和对中断响应的速度得以加快;而8088 CPU的外部数据总线为8位,在一个总线周期内只能输入/输出一个字节(8位数据)。
也正因为如此,8088被称为准16位处理器。
2.指令队列容量的差别:8086CPU的指令队列可容纳6个字节,且在每个总线周期中从存储器中取出2个字节的指令代码填入指令队列,这可提高取指操作和其它操作的并行率,从而提高系统工作速度;而8088CPU的指令队列只能容纳4个字节,且在每个总线周期中只能取一个字节的指令代码,从而增长了总线取指令的时间,在一定条件下可能影响取指令操作和其它操作的并行率。
3.引脚特性的差别:两种CPU的引脚功能是相同的,但有以下几点不同:(1) AD15~AD0的定义不同:在8086中都定义为地址/数据复用总线;而在8088中,由于只需用8条数据总线,因此,对应予8086的AD15~AD8这8条引脚,只作地址线使用。
(2)34号引脚的定义不同:在8086中定义为BHE信号;而在8088中定义为SS0,它与DT/R,IO/M一起用作最小方式下的周期状态信号。
(3)28号引脚的相位不同:在8086中为M/IO;而在8088中被倒相,改为IO/M,以便与8080/8085系统的总线结构兼容。
复用引脚8086:AD15~AD0,分时用作地址和数据总线;8088:AD7~AD0,分时用作地址和数据总线;8086/8088:A19~A16/S6~S3,分时用作地址和状态总线。
8086的最小/最大工作方式通过CPU的第33条引脚MN/ 来控制。
1.最小工作模式(MN/MX=1):把8086CPU的33引脚接+5V时,系统处于最小工作模式。
最小模式系统适用于单微处理器组成的小系统,系统中通常只有一个微处理器,所有的总线控制信号都直接由8086CPU产生,系统中的总线控制逻辑电路被减到最少。
微机简答

第二章1、8086最大模式和最小模式的区别是什么?答:当8086MN/MX信号线接+5V是,系统处于最小工作模式,它适用于较小规模的应用。
当MN/MX线接地时,则系统工作于最大模式。
最大模式和最小模式的主要区别是外加有8288总线控制器。
最小模式下,控制总线直接从8086得到;最大模式下,通过8288对CPU 发出的控制信号进行变换和组合,以得到对存储器和I/O端口的读写信号和对锁存器8282及对数据总线收发器8286的控制信号,最大模式是多处理机模式,需要协调主处理器和协处理器的工作问题及对总线的共享控制问题。
最小模式是单处理机模式。
在最小模式下,控制信号是直接从第24~29脚送出的;最大模式下,状态信号S2、S1、S0隐含了一些控制信息,使用8288后,就可以从S2、S1、S0状态信息的组合中的到与这些控制信号相同的信息。
2、什么是总线周期、时钟周期、指令周期,总线周期和时钟周期的关系是什么?答:CPU要从存储器或输入/输出端口存取一个字节(或一个字)所需要的时间成为总线周期。
时钟周期是CPU的基本事件计量单位,它由计算机的主频决定。
从取指令到执行完毕指令所需要的时间成为指令周期。
一个基本的总线周期有4个时钟周期组成。
3、8086物理地址、偏移地址、段地址三者的关系是什么?答;物理地址等于段地址左移四位加上偏移地址。
4、8086总线接口单元有那些基本组成,执行单元有那些组成?答:总线接口由4个段地址寄存器、IP(16位的指令指针寄存器)、20位物理地址加法器和总线控制电路和6个字节的指令队列缓冲器组成。
执行单元由16位算术逻辑单元(ALU)、16位标志寄存器(FLAGS)、通用寄存器组、数据暂存寄存器和EU控制电路组成。
5、8086和8088的区别有哪些?引脚、数据线地址线、存储模式。
答:引脚:第28脚8088为IO/M,而8086为M/IO。
第34脚8088为SSO,而8086为BHE/S7。
8086与8088微处理器

2.1 8086/8088微处理器的结构 2.2 8086/8088的引脚信号及工作模式
2.3 8086的程序访问结构
2.1 8086/8088微处理器的结构
8086:16位微处理器 ,16根数据线、20根地址线,可
寻址1M字节;
8088:准16位微处理器 ,其内部寄存器、内部运算部 件以及内部操作均按 16位设计,但对外的数据总线只有 8条。 80 86 功 能 结 构 总线接口部件BIU
控 制 寄 存 器 组
指令指针IP
标志寄存器FR
2.1 8086/8088微处理器的结构
(2)标志寄存器 16位,只用了其中9位,唯一能按位操作的寄存器。 用于反映指令执行结果或控制指令执行形式。
D15 ..D12 D11 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 D0
OF DF IF TF SF SF、ZF、CF PF 、CF/、 AF :进位 借位标志
PF:奇偶标志 作用:反映指令对数据作用之后,结果的状态,控制后续指令的执行。 CF=1:最高位需要向前产生进位/ AF:辅助进位标志 ZF:全零标志 PF=1: 结果的低8位中有偶数个1。 3位控制标志:DF、IF、 TF :数据的第 借位。 AF=1 3。不包括进 位(半个字节) ZF=1:运算结果为全 0 PF=0: 结果的低 8位中有奇数个1。 CF=0:最高位不会向前产生进位 / 作用:值不由数据运算结果决定,由指令直接赋值,决定后续指令执 需要向前产生进位 /借位。 位的情况 影响全部状态标志 :加法、减法运算。 借位。 行情况。 AF=0 :数据的第 3。 位(半个字节) ZF=0 :运算结果不为 0 影响部分状态标志 :移位操作。 不会向前产生进位 /借位。 不影响任何状态标志 :数据传送指令。
8086微处理器

Page 7
8086引脚介绍
VCC、GND:电源、接地 引脚(3个),5V
两种模式下,名称和功能相同的32个引脚
AD15—AD0(Address Data Bus):地址/数据复用信 号输入/输出引脚(16个),分时 输出 。 A19/s6—A15/s3(Address Status Bus): 地址/状态复用 信号输出引脚(4个),分时输出。
Page 18
8086引脚介绍
最大模式
Lock(Lock):总线封锁,输出引脚,低电平有效, 当该引脚输出低电平时,系统中其它总线部件就不 能占用系统总线。 RQ/GT0、RQ/GT1 (Request/Grant):总线请求 信号输入/总线允许信号,输出引脚。这两个信号端 可同时接CPU以外的两个协处理器,用来发出使用 总线的请求信号和接收CPU对总线请求信号的应答。 这两个引脚都是双向的,请求与应答信号在同一引 脚上分时传输,方向相反。其中 RQ/GT0比 RQ/GT1 的优先级高。
最小模式
Here comes your footer
Page 13
8086引脚介绍
最小模式
INTA(Interrupt Acknowledge):中断响应信号,输出引脚,低电 平有效。该引脚是CPU响应中断请求后,向中断源发出的认可信号。
ALE(Address Lock Enable):地址锁存允许,输出引脚,高电 平有效。CPU通过该引脚向地址锁存器8282/ 8283发出地址锁存允 许信号,把当前地址/数据复用总线上输出的地址信息,锁存到地址 锁存器8282/8283中去。
Here comes your footer
Page 10
8086引脚介绍
TEST(Test):测试信号,输入引脚,低电平有 效,TEST信号与WAIT指令结合起来使用,CPU执行 WAIT指令后,处于等待状态,当TEST引脚输入低电 平时,系统脱离等待状态,继续执行被暂停执行的指 令。
第二章 8086 8088微处理器

1、指令队列缓冲器 2、地址加法器和段寄存器
3、 16位的指令指针寄存器IP
IP中存放的是BIU要取的下一条指令(字 节)的偏移地址,BIU取过后,IP自动加1。 与IP相配的段寄存器是代码段寄存器CS。
扬州大学信息工程学院
第一节 8086/8088 微处理器的结构 一、8086/8088的内部结构
扬州大学信息工程学院
(一)最小工作模式
在最小工作模式,8086/8088 第24~31引脚的含义: 5、M/IO存储器/输入,输出控 制信号,输出。 为1时与存储器数椐传送; 为0时输入,输出接口进 行数据传送。T1~T4有效
6、WR写信号,输出。 在总线周期的T2~T4状态 输出低电平。 7、HOLD总线保持请求信号, 输入。其它主模块要求占用总线 时通过HOLD向CPU发高电平请 求。若“允许”,CPU在T4状态 从HLDA发出高电平后,就得到 总线控制权。
扬州大学信息工程学院
第二章 8086/8088微处理器
第一节 8086/8088 微处理器的结构 一、8086/8088的内部结构
从功能上,8086分为两部分:
1、 总线接口单元BIU (Bus Interface Unit)。 2、执行单元EU (Execution Unit)。 说明:这两个单元在CPU内部担负着不同的任务。 两个单元并行地工作,能使大部分取指令操作与执 行指令操作重叠的进行 (即所谓“流水线”结构)。
扬州大学信息工程学院
第一节8086/8088的微处理器结构
三、8086/8088的引脚信号和功能 (一)地址/数椐总线
AD15~AD0(复用的)
总线周期的状态 T1:输出地址; T2:浮置成高阻; T3:输入/输出数椐;
8086cpu

8086cpu1、 8086CPU和8088CPU内部结构基本相同,不同之处在于8088有8条外部数据总线,因此为准16位。
8086有16条外部数据总线。
两个CPU的软件完全兼容,程序的编制也完全相同。
2、 8086CPU从功能上分为两⼤部分:⼀是执⾏部件(EU),⼆是总线接⼝部件(BIU)。
执⾏部件是由以下虽部分组成:(1)四个通⽤寄存器:AX BX CX DX(2)四个专⽤寄存器:基数指针寄存器BP,堆栈指针寄存器SP,源变址寄存器SI,⽬的变址寄存器DI(3)标志寄存器FR=flag(4)算术逻辑部件ALU功能是负责执⾏所有的指令,向总线接⼝部件提供指令执⾏的结果数据和地址,并对通⽤寄存器和标志寄存器进⾏管理。
总线接⼝部件由以下部件组成:(1)四个段寄存器:代码段寄存器,数据段寄存器,附加段寄存器,堆栈段寄存器。
(2)指令指针寄存器(3)地址加法器(4)指令队列功能:执⾏外部总线周期,负责存储器与外部端⼝I|O传送数据。
也就是负责CPU与存储器和外设之间的信息交换。
3、共有14个寄存器,分成3个部分:(!)通⽤寄存器8个:AX, BX , CX, DX , SP , BP ,SI ,DI.AX , BX ,CX , DX为数据寄存器,⽤来保存运算中的中间结果和有效地址。
4个寄存器既可以做16位寄存器,也可以做8位寄存器 AL, AH, BL, BH, CL, CH, DL, DH.。
在程序设计中,⼀般把AX⽤作累加器。
BX ⽤作基址寄存器,CX⽤作计数器,DX⽤作数据寄存器。
SP:堆栈指针寄存器;装栈顶指针偏移量。
BP:基址指针寄存器:装栈段中⼀个数据区的基址偏移量。
SI:源变址寄存器;装源操作数地址的偏移量。
DI:⽬的变址寄存器;装⽬的操作数地址偏移量。
(2)段寄存器4个CS;代码段寄存器;装代码段的起始地址;DS;数据段寄存器;装数据段的起始地址;SS; 堆栈段寄存器;装堆栈段的起始地址;ES: 附加段寄存器;装附加段的起始地址。
微型计算机原理(第三章课后答案)

微型计算机原理(第三章课后答案).第三章80X86微处理器1.简述8086/8088CPU中BIU和EU的作用,并说明其并行工作过程。
答:(1)BIU的作用:计算20位的物理地址,并负责完成CPU与存储器或I/O端口之间的数据传送。
(2)EU的作用:执行指令,并为BIU提供所需的有效地址。
(3)并行工作过程:当EU从指令队列中取出指令执行时,BIU将从内存中取出指令补充到指令队列中。
这样就实现了取指和执行指令的并行工作。
2.8086/8088CPU内部有哪些寄存器?其主要作用是什么?答:8086/8088CPU内部共有14个寄存器,可分为4类:数据寄存器4个,地址寄存器4个,段寄存器4个和控制寄存器2个。
其主要作用是: (1) 数据寄存器:一般用来存放数据,但它们各自都有自己的特定用途。
AX(Accumulator)称为累加器。
用该寄存器存放运算结果可使指令简化,提高指令的执行速度。
此外,所有的I/O指令都使用该寄存器与外设端口交换信息。
BX(Base)称为基址寄存器。
用来存放操作数在内存中数据段内的偏移地址CX(Counter)称为计数器。
在设计循环程序时使用该寄存器存放循环次数,可使程序指令简化有利于提高程序的运行速度。
DX(Data)称为数据寄存器。
在寄存器间接寻址的I/O指令中存放I/O端口地址;在做双字长乘除法运算时,DX与AX一起存放一个双字长操作数,其中DX存放高16位数。
(2)地址寄存器:一般用来存放段内的偏移地址。
SP(Stack Pointer)称为堆栈指针寄存器。
在使用堆栈操作指令(PUSH或POP)对堆栈进行操作时每执行一次进栈或出栈操作,系统会自动将SP的内容减2或加2,以使其始终指向栈顶。
BP(Base Pointer)称为基址寄存器。
作为通用寄存器,它可以用来存放数据,但更经常更重要的用途是存放操作数在堆栈段内的偏移地址。
SI(Source Inde某)称为源变址寄存器。
第2章 80888086系统硬件结构

OF DF IF TF SF ZF
AF
PF
CF
条件码标志:
OF SF ZF CF AF PF
控制标志:
方向标志
系统标志位:
IF 中断标志 TF 陷阱标志
溢出标志 DF 符号标志 零标志 进位标志 辅助进位标志 奇偶标志
第2章 8088/8086系统硬件结构
程 序 状 态 字 ( ) PSW
第2章 8088/8086系统硬件结构
第2章 8088/8086系统硬件结构
1、存储器地址的分段
•每个段的最大长度可达
64KB,段内地址是连续的、 线性增长的,允许单个逻辑 段在整个1MB存储空间内浮 动。
•可以有相连的段(如:C和D
段)、不相连的段(如:A和B 段)以及相互重叠的段(如:B 和C段)
第2章 8088/8086系统硬件结构
第2章 8088/8086系统硬件结构
2、段寄存器(CS、 DS、 SS、 ES、 FS、GS)
存放段地址,确定一个段的的起始地址. 用途各不相同:
代码段(CS):存放当前正在运行的程序 数据段(DS):存放当前运行程序所用的数据 ,或串处理指令
中的源操作数
堆栈段(SS):定义堆栈(后进先出)的所在区域 附加段(ES):附加的数据区,或串处理指令中的目的操作数
-)
79000H
2450H
即SP值为2450H.
第2章 8088/8086系统硬件结构
2.1.2 8088CPU的两大功能结构
8088CPU的两大功能结构为总线接口单元 BIU(BusInterfaceUnit)和指令执行单元 EU(ExecutionUnit),如图2.4所示。 U单元负责指令的执行,由算术逻辑单元ALU、标 志寄存器F、通用寄存器及EU控制器等组成,主要进 行16位的各种运算及有效地址的计算。EU不与计算机 系统总线(外部总线)相关,而从BIU中的指令队列取得
《计算机原理与接口技术》课后题答案

第2章微型计算机基础2.8 在执行指令期间,BIU能直接访问存储器吗?为什么?解:可以.因为EU和BIU可以并行工作,EU需要的指令可以从指令队列中获得,这时BIU预先从存储器中取出并放入指令队列的。
在EU执行指令的同时,BIU 可以访问存储器取下一条指令或指令执行时需要的数据。
2.9 8086与8088CPU的主要区别有哪些?解:主要区别有以下几点:①8086的外部数据总线有16位,而8088的外部数据总线只有8位。
②8086指令队列深度为6个字节,而8088的指令队列深度为4个字节.③因为8086的外部数据总线有16位,故8086每个总线周期可以存取两个字节.而8088的外部数据总线因为只有8位,所以每个总线周期只能存取1个字节.④个别引脚信号的含义稍有不同.2.10 解:(1)要利用信号线包括WR#、RD#、IO/M#、ALE 以及AD0~AD7、A8~A19。
(2)同(1)。
(3)所有三态输出的地址信号、数据信号和控制信号均置为高阻态。
2.11解:在每个总线周期的T3的开始处若READY 为低电平,则CPU在T3后插入一个等待周期TW。
在TW的开始时刻,CPU还要检查READY状态,若仍为低电平,则再插入一个TW 。
此过程一直进行到某个TW开始时,READY已经变为高电平,这时下一个时钟周期才转入T4。
可以看出,插入TW周期的个数取决于READY电平维持的时间。
2.14 解:通用寄存器包含以下8个寄存器:AX、BX、CX和DX寄存器一般用于存放参与运算的数据或运算的结果。
除此之外:AX:主要存放算术逻辑运算中的操作数,以及存放I/O操作的数据。
BX:存放访问内存时的基地址。
CX:在循环和串操作指令中用作计数器。
DX:在寄存器间接寻址的I/O指令中存放I/O地址。
在做双字长乘除法运算时,DX与AX合起来存放一个双字长数。
SP:存放栈顶偏移地址。
BP:存放访问内存时的基地址。
SP和BP也可以存放数据,但它们的默认段寄存器都是SS。
微机原理与接口技术:8088与8086的功能结构

1.8088与8086的主要区别8088与8086同属于第三代16位的微处理器。
这两款CPU的硬件结构没有太大的区别,二者的主要区别是在数据总线宽度,8086的数据总线宽度为16位,而8088的数据总线宽度为8位。
在内部结构上,两款微处理器都有指令队列,8086的指令队列长度为6字节,而8088的指令队列长度为4字节。
2.8088的功能结构8088微处理器包含两大功能部件,即执行单元(Execution Unit,EU)和总线接口单元(Bus Interface Unit,BIU)。
执行单元的主要功能是译码分析指令,执行指令,暂存中间运算结果并保留结果特征。
执行单元包括EU控制器、算术逻辑运算单元ALU、通用寄存器组AX、BX、CX、DX、SP、BP、DI、SI,专用寄存器、状态标志寄存器等部件,这些部件的宽度都是16位。
执行单元通过EU控制电路从指令队列中取出指令代码,并对指令进行译码形成各种操作控制信号,控制ALU完成算术或逻辑运算,并将运算结果的特征保存在标志寄存器FLAGS中;控制其它各部件完成指令所规定的操作。
如果指令队列为空,EU就等待。
总线接口单元包括指令队列、地址加法器、段寄存器、指令指针寄存器和总线控制逻辑。
总线接口单元负责CPU与内存或输入/输出接口的信息传送,包括取指令、取操作数、保存运算结果。
当EU 从指令队列中取走指令,指令队列出现两个或两个以上的字节空间,且EU未向BIU申请读/写存储器操作数时,BIU就顺序地预取后续指令的代码,并填入指令队列中。
在EU执行指令过程中,BIU 负责从指定的内存单元或外设读取EU需要的数据,并负责将EU运算结果存储到存储器。
当EU执行跳转指令时,BIU就使指令队列复位,并立即从新地址取出指令传送给EU去执行,然后再读取后续的指令序列填满指令队列。
3.指令流水线在8086/8088CPU中,EU和BIU两部分按流水线方式工作。
EU从BIU的指令队列中取指令并执行指令。
8086_8088处理器

8086/8088处理器1、引言8086/8088微处理器是Intel公司推出的第三代CPU芯片,它们的内部结构基本相同,都采用16位结构进行操作及存储器寻址,但外部性能有所差异,两种芯片都封装在相同的40脚双列直插组件(DIP)中。
2、8086微处理器的一般特点A、16位内部结构,16位双向数据信号线;B、20位地址信号线,可寻址1M字节存储单元;C、较强的指令系统;D、利用第十六位的地址总线来进行I/O端口寻址,可寻址64K个I/O端口;E、中断功能强,可处理内部软件中断和外部中断,中断源可达256个;D、单一的+5V电源,单相时钟5MHz另外,Intel公司同期推出的Intel 8088微处理器是一种准16位微处理器,其内部寄存器、内部操作等均按16位处理器设计,与Intel 8086微处理器基本相同,不同的是其对外的数据线只有8位,目的是为了更方便地与八位I/O接口芯片相兼容。
8088内部结构图3、8086/8088 CPU内部寄存器8086/8088 CPU内部寄存器可分为通用寄存器和专用寄存器两大类,专用寄存器包括指针寄存器、变址寄存器等。
①通用寄存器8086/8088有4个16位的通用寄存器(AX、BX、CX、DX),可以存放16位的操作数,也可分为8个8位的寄存器(AL、AH;BL、BH;CL、CH;DL、DH)来使用。
其中AX称为累加器,BX称为基址寄存器,CX称为计数寄存器,DX称为数据寄存器。
②指针寄存器系统中有两个16位的指针寄存器SP和BP,其中SP是堆栈指针寄存器,由它和堆栈段寄存器SS一起来确定堆栈在内存中的位置; BP是基数指针寄存器,通常用于存放基地址。
③变址寄存器系统中有两个16位的变址寄存器SI和DI,其中SI是源变址寄存器,DI是目的变址寄存器,都用于指令的变址寻址方式。
AH&AL=AX:累加寄存器,常用于运算;BH&BL=BX:基址寄存器,常用于地址索引;CH&CL=CX:计数寄存器,常用于计数;DH&DL=DX:数据寄存器,常用于数据传递。
80888086的功能结构

2.2.4 8088/8086的功能结构一、8088/8086的结构8086与8088在结构上都是由执行单元EU和总线接口单元BIU两大部分构成。
以下是8088/8086的内部结构框图。
●执行单元EU负责执行指令。
EU在工作时不断地从指令队列取出指令代码,并完成指令所要求的操作。
它由算术逻辑单元ALU、通用寄存器REGs、标志寄存器FLAGS和EU控制部件组成。
各部件的功能如下:ALU:即运算器,进行算术、逻辑、移位、偏移地址计算等各种运算。
FLAGS:存放运算结果的特征,如进借位、是否为零、奇偶性、溢出等。
REGs:临时存放操作数、运算结果以及操作数地址等。
EU控制部件:接收指令队列中的指令,进行指令译码、分析,形成各种控制信号,实现EU 各个部件完成规定动作的控制。
●总线接口单元BIU负责CPU与存储器、I/O接口之间的信息(包括数据、地址、控制命令等)传送。
包括生成访问存储器所需的20位的物理地址、不断从内存中取指令并送到指令队列、以及配合EU对指定的内存单元或者外设端口进行数据存取操作。
BIU由段寄存器、指令指针寄存器IP、指令队列、地址加法器以及总线控制逻辑组成。
各部件的功能如下:总线控制逻辑:CPU与外总线之间的接口,实现指令、数据以及其他外部信息的存取。
段寄存器:存放存储器段的段基地址。
指令指针寄存器:存放当前要读取的指令的地址。
它相当于前面介绍过的指令计数器PC。
指令队列:8088和8086的指令队列长度分别为4字节和6字节,为FIFO(先进先出)结构。
当EU从指令队列中取走指令,指令队列出现空字节时,BIU就自动执行一次取指令周期,从内存中取出后续的指令代码放入队列中。
当EU需要数据时,BIU根据EU给出的地址,从指定的内存单元或外设中取出数据供EU使用。
当运算结束时,BIU将运算结果送入指定的内存单元或外设。
当指令队列空时,EU就等待,直到有指令为止。
若BIU正在取指令,EU发出访问总线的请求,则必须等BIU取指令完毕后,该请求才能得到响应。
80888086的功能结构

8088/8086的功能结构一、8088/8086的结构8086与8088在结构上都是由和两大部份组成。
以下是8088/8086的内部结构框图。
执行单元EU负责执行指令。
EU在工作时不断地从指令队列掏出指令代码,并完成指令所要求的操作。
它由算术逻辑单元ALU、通用寄放器REGs、标志寄放器FLAGS和EU操纵部件组成。
各部件的功能如下:ALU:即运算器,进行算术、逻辑、移位、偏移地址计算等各类运算。
FLAGS:寄存运算结果的特点,如进借位、是不是为零、奇偶性、溢出等。
REGs:临时寄存操作数、运算结果和操作数地址等。
EU操纵部件:接收指令队列中的指令,进行指令译码、分析,形成各类操纵信号,实现EU 各个部件完成规定动作的操纵。
总线接口单元BIU负责CPU与存储器、I/O接口之间的信息(包括数据、地址、操纵命令等)传送。
包括生成访问存储器所需的20位的物理地址、不断从内存中取指令并送到指令队列、和配合EU对指定的内存单元或外设端口进行数据存取操作。
BIU由段寄放器、指令指针寄放器IP、指令队列、地址加法器和总线操纵逻辑组成。
各部件的功能如下:总线操纵逻辑:CPU与外总线之间的接口,实现指令、数据和其他外部信息的存取。
段寄放器:寄存存储器段的段基地址。
指令指针寄放器:寄存当前要读取的指令的地址。
它相当于前面介绍过的。
指令队列:8088和8086的指令队列长度别离为4字节和6字节,为FIFO(先进先出)结构。
当EU从指令队列中取走指令,指令队列显现空字节时,BIU就自动执行一次取指令周期,从内存中掏出后续的指令代码放入队列中。
当EU需要数据时,BIU依照EU给出的地址,从指定的内存单元或外设中掏出数据供EU利用。
当运算终止时,BIU将运算结果送入指定的内存单元或外设。
当指令队列空时,EU就等待,直到有指令为止。
假设BIU正在取指令,EU发出访问总线的请求,那么必需等BIU取指令完毕后,该请求才能取得响应。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
这两种CPU的主要区别,归纳起来有以下几方面:
1.外部数据总线位数的差别:8086CPU的外部数据总线有16位,在一个总线周期内可输入/输出一个字(16位数据),使系统处理数据和对中断响应的速度得以加快;而8088 CPU的外部数据总线为8位,在一个总线周期内只能输入/输出一个字节(8位数据)。
也正因为如此,8088被称为准16位处理器。
2.指令队列容量的差别:8086CPU的指令队列可容纳6个字节,且在每个总线周期中从存储器中取出2个字节的指令代码填入指令队列,这可提高取指操作和其它操作的并行率,从而提高系统工作速度;而8088CPU的指令队列只能容纳4个字节,且在每个总线周期中只能取一个字节的指令代码,从而增长了总线取指令的时间,在一定条件下可能影响取指令操作和其它操作的并行率。
3.引脚特性的差别:两种CPU的引脚功能是相同的,但有以下几点不同:(1) AD15~AD0的定义不同:在8086中都定义为地址/数据复用总线;而在8088中,由于只需用8条数据总线,因此,对应予8086的AD15~AD8这8条引脚,只作地址线使用。
(2)34号引脚的定义不同:在8086中定义为BHE信号;而在8088中定义为SS0,它与DT/R,IO/M一起用作最小方式下的周期状态信号。
(3)28号引脚的相位不同:在8086中为M/IO;而在8088中被倒相,改为IO/M,以便与8080/8085系统的总线结构兼容。
复用引脚
8086:AD15~AD0,分时用作地址和数据总线;
8088:AD7~AD0,分时用作地址和数据总线;
8086/8088:A19~A16/S6~S3,分时用作地址和状态总线。
8086的最小/最大工作方式
通过CPU的第33条引脚MN/ 来控制。
1.最小工作模式(MN/MX=1):把8086CPU的33引脚接+5V时,系统处于
最小工作模式。
最小模式系统适用于单微处理器组成的小系统,系统中通常只有一个微处理器,所有的总线控制信号都直接由8086CPU产生,系统中的总线控制逻辑电路被减到最少。
2.最大工作模式(MN/MX=0):当把8086的33引脚接地时,系统处于最大工
作模式。
此时,系统中存在两个或两个以上的微处理器,其中有一个主处理器8086,其他处理器称为协处理器。
8086/8088的存储器系统
1.有关存储器的基本概念
(1)字节与字
字节(Byte)是指一组相邻的8位二进制数码
字(Word)是指两个相邻的字节(16位二进制数码)。
[注]8086/8088系统对存储器的访问都是以字节作为基本单位来进行读/写操作的。
(2)存储单元
8086/8088指令系统对存储单元的操作有如下3种类型:
字节单元存储8位二进制代码。
字单元存储16位二进制代码(相邻二个字节单元)。
双字单元存储32位二进制代码(相邻四个字节单元)。
(3)存储单元的地址和内容
存储单元的地址是指为每个存储单元指定的编号。
存储单元的内容一个存储单元中存放的信息(二进制代码)。
[注]
单元的地址与单元的内容之间的关系:一般单元的地址都是用十六进制数表示的,设某个存储单元的地址为X,内容为Y,则有(X)=Y。
二字节单元(字单元)和四字节单元(双字单元)的地址均以第一个字节单元地址作为该单元的地址。
数据在存储单元中的存放形式:对于一个16位或多字节的数据要占用二个或二个以上的字节单元,数据的低位存放在低地址字节单元,数据的高位存放在高地址字节单元。
简述8086和8088CPU的异同点
一8086:是完全16位机,外部总线和内部总线都是16位。
8088:内部总线是16位,外部总线是8位的。
二(1)8086 有6字节的指令队列只要有2字节的空闲便会自动取下条指令。
8088 有4字节的指令队列只要有1字节的空闲便会自动取下条指令。
(2)8088 BIU总线控制电路与外部交换数据总线宽度位8位
(3)总线控制电路与专用寄存器数据总线宽度为8位
(4)EU为16位需要2个读/写周期。
[PS.8086有BHE引脚可以在一个总线周期内从偶地址开始读/写一个字而8088不行需要2个读/写周期完成一个字的读/写]
三8088外部DB是8位AD8--AD0。
__
四8086 使用M/IO引脚。
_
8088 使用IO/M引脚。
___ ___
五1)8088无需BHE改为SSo(SS后是小标数字0)
_ _
2)DT/R和IO/M决定最小模式总线周期操作。