8086系统结构与8086CPU
8086结构
8086微处理器结构 2.1 8086微处理器结构 8086CPU的引脚 的引脚、 2.2 8086CPU的引脚、系统配置及时序 2.3 8086存储器组织 8086存储器组织
例3:判断下列两数相加后标志寄存器中各相关位的值。 :判断下列两数相加后标志寄存器中各相关位的值。
0 1 0 1 1 0 1 0 0 0 0 1 1 1 0 0 0 1 0 0 0 0 1 1 1 1 0 0 0 1 1
+
0
1
0
0
1
0
1
0
1
0
1
1
0
0
1
1
0
最高位没有进位 ∴ CF=0; ; 位中1的个数为偶数个 低8位中 的个数为偶数个 ∴ PF=1; 位中 ; 第三位向第四位有进位 ∴ AF=1; ; 运算结果本身≠0 ∴ ZF=0; ; 运算结果本身 运算结果最高位为1 运算结果最高位为 ∴SF=1; ;
16位段地址寄存器: 16位段地址寄存器: 位段地址寄存器 CS-----------代码段寄存器 CS------代码段寄存器 DS-----------数据段寄存器 DS------数据段寄存器 ES-----------附加段寄存器 ES------附加段寄存器 SS-----------堆栈段寄存器 SS------堆栈段寄存器 16位指令指针寄存器IP:存放下一条要执行指令的偏移 16位指令指针寄存器IP:存放下一条要执行指令的偏移 位指令指针寄存器IP: 地址。 地址。 20位物理地址加法器:将16位逻辑地址变换成存储器 20位物理地址加法器 位物理地址加法器: 16位逻辑地址变换成存储器 写所需要的20位物理地址, 20位物理地址 读/写所需要的20位物理地址,实际上完成地址加法操 作。
微机原理与接口技术(第三版)课本习题答案
第二章 8086体系结构与80x86CPU1.8086CPU由哪两部分构成?它们的主要功能是什么?答:8086CPU由两部分组成:指令执行部件(EU,Execution Unit)和总线接口部件(BIU,Bus Interface Unit)。
指令执行部件(EU)主要由算术逻辑运算单元(ALU)、标志寄存器FR、通用寄存器组和EU控制器等4个部件组成,其主要功能是执行指令。
总线接口部件(BIU)主要由地址加法器、专用寄存器组、指令队列和总线控制电路等4个部件组成,其主要功能是形成访问存储器的物理地址、访问存储器并取指令暂存到指令队列中等待执行,访问存储器或I/O端口读取操作数参加EU运算或存放运算结果等。
2.8086CPU预取指令队列有什么好处?8086CPU内部的并行操作体现在哪里?答:8086CPU的预取指令队列由6个字节组成,按照8086CPU的设计要求,指令执行部件(EU)在执行指令时,不是直接通过访问存储器取指令,而是从指令队列中取得指令代码,并分析执行它。
从速度上看,该指令队列是在CPU内部,EU从指令队列中获得指令的速度会远远超过直接从内存中读取指令。
8086CPU内部的并行操作体现在指令执行的同时,待执行的指令也同时从内存中读取,并送到指令队列。
5.简述8086系统中物理地址的形成过程。
8086系统中的物理地址最多有多少个?逻辑地址呢?答:8086系统中的物理地址是由20根地址总线形成的。
8086系统采用分段并附以地址偏移量办法形成20位的物理地址。
采用分段结构的存储器中,任何一个逻辑地址都由段基址和偏移地址两部分构成,都是16位二进制数。
通过一个20位的地址加法器将这两个地址相加形成物理地址。
具体做法是16位的段基址左移4位(相当于在段基址最低位后添4个“0”),然后与偏移地址相加获得物理地址。
由于8086CPU的地址线是20根,所以可寻址的存储空间为1M字节,即8086系统的物理地址空间是1MB。
第二章 8086体系结构
8086微处理器概览
标志位寄存器(FR) • 16位标志位寄存器FR,共有9个
标志位。其中6个是状态标志位, 3个是控制标志位,用于反映 CPU运行过程中的某些状态特征。
标志位寄存器
3、标志寄存器FR
标志寄存器FR中共有9个标志位,可分成两类: ➢状态标志 表示运算结果的特征,它们是 CF、PF、AF、 ZF、SF和OF ➢控制标志 控制CPU的操作,它们是IF、DF和TF。
IP :BIU要取指令的地址。
IP
三、8086CPU的管脚及功能
8086是16位CPU。它采用高性能的N— 沟道,耗尽型负载的硅栅工艺(HMOS)制 造。由于受当时制造工艺的限制,部分管 脚采用了分时复用的方式,构成了40条管 脚的双列直插式封装
1、 8086的两种工作方式
最小模式:系统中只有8086一个处理器,所有的控制信号都 是由8086CPU产生(MN/MX=1)。
最大模式:系统中可包含一个以上的处理器,比如包含协处 理器8087。在系统规模比较大的情况下,系统控 制信号不是由8086直接产生,而是通过与8086配 套的总线控制器等形成(MN/MX=0)。
三总线结构 数据线DB 地址线AB 控制线CB
微机的三总线结构
➢ 最小模式下的引脚说明
( 1 ) AD15 ~ AD0 (Address Data Bus):
堆栈指针用于存放栈顶的逻辑偏移地 址,隐含的逻辑段地址在SS寄存器中。
寄存器的特殊用途和隐含性质
在指令中没有明显的标出,而这些寄存器参 加操作,称之为“隐含寻址”。
具体的:在某类指令中,某些通用寄存器有指 定的特殊用法,编程时需遵循这些规定,将某些 特殊数据放在特定的寄存器中,这样才能正确的 执行这些指令。采用“隐含”的方式,能有效地 缩短指令代码的长度。
8086CPU系统、总线操作和时序
8086CPU系统、总线操作和时序8086CPU系统、总线操作和时序第⼀节 8086的引脚信号与功能回顾:8086/8088微型计算机的组成、结构及微机系统的⼯作过程,微机系统的存储器组织及相关概念。
本讲重点:8086/8088CPU的两种⼯作模式,8086/8088CPU的外部结构,即引脚信号及其功能。
讲授内容:⼀、 8086/8088微处理器⼯作模式及外部结构1.8086/8088CPU的两种⼯作模式为了适应各种使⽤场合,在设计8088/8086CPU芯⽚时,就考虑了其应能够使它⼯作在两种模式下,即最⼩模式与最⼤模式。
所谓最⼩模式,就是系统中只有⼀个8088/8086微处理器,在这种情况下,所有的总线控制信号,都是直接由8088/8086CPU 产⽣的,系统中的总线控制逻辑电路被减到最少,该模式适⽤于规模较⼩的微机应⽤系统。
最⼤模式是相对于最⼩模式⽽⾔的,最⼤模式⽤在中、⼤规模的微机应⽤系统中,在最⼤模式下,系统中⾄少包含两个微处理器,其中⼀个为主处理器,即8086/8086CPU,其它的微处理器称之为协处理器,它们是协助主处理器⼯作的。
与8088/8086CPU配合⼯作的协处理器有两类,⼀类是数值协处理器8087 另⼀类是输⼊/输出协处理器8089。
8087是⼀种专⽤于数值运算的协处理器,它能实现多种类型的数值运算,如⾼精度的整型和浮点型数值运算,超越函数(三⾓函数、对数函数)的计算等,这些运算若⽤软件的⽅法来实现,将耗费⼤量的机器时间。
换句话说,引⼊了8087协处理器,就是把软件功能硬件化,可以⼤⼤提⾼主处理器的运⾏速度。
8089协处理器,在原理上有点像带有两个DMA通道的处理器,它有⼀套专门⽤于输⼊/输出操作的指令系统,但是8089⼜和DMA控制器不同,它可以直接为输⼊/输出设备服务,使主处理器不再承担这类⼯作。
所以,在系统中增加8089协处理器之后,会明显提⾼主处理器的效率,尤其是在输⼊/输出操作⽐较频繁的系统中。
微机原理课件第二章 8086系统结构
但指令周期不一定都大于总线周期,如MOV AX,BX
操作都在CPU内部的寄存器,只要内部总线即可完成,不 需要通过系统总线访问存储器和I/O接口。
2021/8/17
17
• 8086CPU的典型总线时序,充分体现了总 线是严格地按分时复用的原则进行工作的。 即:在一个总线周期内,首先利用总线传 送地址信息,然后再利用同一总线传送数 据信息。这样减少了CPU芯片的引脚和外 部总线的数目。
• 执行部件(EU)
• 功能:负责译码和执行指令。
2021/8/17
5
• 联系BIU和EU的纽带为流水指令队列
• 队列是一种数据结构,工作方式为先进先出。写入的指令 只能存放在队列尾,读出的指令是队列头存放的指令。
2021/8/17
6
•BIU和EU的动作协调原则 BIU和EU按以下流水线技术原则协调工作,共同完成所 要求的任务: ①每当8086的指令队列中有空字节,BIU就会自动把下 一条指令取到指令队列中。 ②每当EU准备执行一条指令时,它会从BIU部件的指令 队列前部取出指令的代码,然后译码、执行指令。在执 行指令的过程中,如果必须访问存储器或者I/O端口, 那么EU就会请求BIU,完成访问内存或者I/O端口的操 作; ③当指令队列已满,且EU又没有总线访问请求时,BIU 便进入空闲状态。(BIU等待,总线空操作) ④开机或重启时,指令队列被清空;或在执行转移指令、 调用指令和返回指令时,由于待执行指令的顺序发生了 变化,则指令队列中已经装入的字节被自动消除,BIU会 接着往指令队列装入转向的另一程序段中的指令代码。 (EU等待)
•CF(Carry Flag)—进位标志位,做加法时最高位出现进位或 做减法时最高位出现借位,该位置1,反之为0。
第二章 8086微处理器
第二章8086/8088微处理器及其系统结构内容提要:1.8086微处理器结构:CPU内部结构:总线接口部件BIU,执行部件EU;CPU寄存器结构:通用寄存器,段寄存器,标志寄存器,指令指针寄存器;CPU引脚及其功能:公用引脚,最小模式控制信号引脚,最大模式控制信号引脚。
2.8086微机系统存储器结构:存储器地址空间与数据存储格式;存储器组成;存储器分段。
3.8086微机系统I/O结构4.8086最小/最大模式系统总线的形成5.8086CPU时序6.最小模式系统中8086CPU的读/写总线周期7.微处理器的发展学习目标1.掌握CPU寄存器结构、作用、CPU引脚功能、存储器分段与物理地址形成、最小/最大模式的概念和系统组建、系统总线形成;2.理解存储器读/写时序;3.了解微处理器的发展。
难点:1.引脚功能,最小/最大模式系统形成;2.存储器读/写时序。
学时:8问题:为什么选择8088/8086?•简单、容易理解掌握•与目前流行的P3、P4向下兼容,形成x86体系•16位CPU目前仍在大量应用思考题1、比较8086CPU与8086CPU的异同之处。
2、8086CPU从功能上分为几部分?各部分由什么组成?各部分的功能是什么?3、CPU的运算功能是由ALU实现的,8086CPU中有几个ALU?是多少位的ALU?起什么作用?4、8086CPU有哪些寄存器?各有什么用途?标志寄存器的各标志位在什么情况下置位?5、8086CPU内哪些寄存器可以和I/O端口打交道,它们各有什么作用?6、8086系统中的物理地址是如何得到的?假如CS=2400H,IP=2l00H,其物理地址是多少?思考题1.从时序的观点分析8088完成一次存储器读操作的过程?2.什么是8088的最大、最小模式?3.在最小模式中,8088如何产生其三总线?4.在最大模式中,为什么要使用总线控制器?思考题1.试述最小模式下读/写总线周期的主要区别。
8086微处理器的功能与结构
8086微处理器的功能与结构四、80x86微处理器的结构和功能(一)80x86微处理器1.8086/8088主要特征(1)16位数据总线(8088外部数据总线为8位)。
(2)20位地址总线,其中低16位与数据总线复用。
可直接寻址1MB存储器空间。
(3)24位操作数寻址方式。
(4)16位端口地址线可寻址64K个I/O端口。
(5)7种基本寻址方式。
有99条基本指令。
具有对字节、字和字块进行操作的能力。
(6)可处理内部软件和外部硬件中断。
中断源多达256个。
(7)支持单处理器、多处理器系统工作。
2.8086微处理器内部结构8086微处理器的内部结构由两大部分组成,即执行部件EU(Execution Unit)和总线接口部件BIU(Bus Interface Unit)。
和一般的计算机中央处理器相比较,8086的EU相当于运算器,而BIU则类拟于控制器。
3.8086最小模式与最大模式及其系统配置最小模式在结构上的特点表现为:系统中的全部控制信号直接来自8086CPU。
与最小模式相比,最明显的不同是系统中的全部控制信息号不再由8086直接提供,而是由一个专用的总线控制器8288输出的。
4.8087与8089处理机简述(1)8087协处理机8087协处理机与8086组合在一起工作,以弥补8086在数值运算能力方面的不足,所以它又称为协处理机。
(2)8089I/O处理机8089是一个带智能的I/O接口电路,相当于大型机中的通道,它将CPU的处理能力与DMA控制器结合在一起。
它具有52条基本指令,1MB的寻址能力,包含两个DMA通道。
8089也可以与8086联合在一起工作,执行自己的指令,进行I/O 操作,只在必需时才与8086进行联系。
在8089的控制下,可以进行外设与存储器之间、存储器与存储器之间以及外设与外设之间的数据传输。
同时,8089还可以设定多种终止数据传输的方式。
5.总线时序一个基本的总线周期包括4个时钟周期,即4个时钟状态T 1 、T2 、T3 和T4 。
第二章 8086系统
8086/8088微处理器的结构及指令执行的操作 过程 8086/8088微处理器的寄存器组织、存储器组 织、I/O组织、堆栈 8086/8088在最小模式下引脚功能 8086/8088微处理器在最小模式下的典型配置 8086的操作时序
第二章
8086/8088系统结构
2、物理地址和逻辑地址 8086系统中的每个存储单元在1M内存空间中的位 置可以用2个形式的地址来表示。 物理地址(实际地址、绝对地址)和逻辑地址。
物理地址:是用唯一的20位二进制数所表示的地 址,规定了1M字节存储体中某个具体单元的地址 。 CPU与存储器之间进行信息交换都需要提供的地 址,范围00000H—FFFFFH。
BP作基址寻址 SS 一般数据存取 源字符串 目的字符串 DS DS ES
5、8086存储器的分体结构 由于访问存储器的操作类型不同,BIU所使用的逻辑 地址来源也不同。 (1)存储体
15 00001 00003 00005 512KB× 8(位) 奇地址存储体 (A0=1) 512KB× 8(位) 偶地址存储体 (A0=0) 8 7 0 00000 00002 00004
数据DS、ES:存放数据和运算结果; 堆栈段SS:用来传递参数,保存数据和状态信息。
CS IP
0000
代码段
DS或ES
0000
数据段
SI、DI或BX
SS
0000 SP或BP
堆栈段 存储器
段寄存器和偏移地址寄存器组合关系
存储器分段的好处 (1)使指令系统中的大部分指令仅涉及16位偏移 地址,减少了指令长度,提高了程序的执行速度。 (2)为程序在内存中的浮动分配创造了条件。由 于程序可以浮动地装配在内存任何一个区域。这 使得多道程序和多任务程序能充分使用现有的存 储器容量。
8086系统结构与8086CPU详解
8086系统结构与8086CPU详解8086是Intel公司于1978年推出的16位微处理器,是第一个被广泛应用于个人电脑的微处理器。
指令执行单元是8086的核心部分,它包括指令队列和执行单元。
指令队列用于存储将要执行的指令,执行单元根据指令队列中的指令来执行相应的操作。
8086采用流水线执行模式,使指令的执行更高效。
8086有14个寄存器,其中有4个通用寄存器AX、BX、CX和DX,其分别可以作为数据寄存器、地址寄存器、指针寄存器和变址寄存器使用。
AX寄存器可以拆分为两个独立的8位寄存器AH和AL,分别用于存储高8位和低8位数据。
除了通用寄存器外,8086还有4个段寄存器CS、DS、ES和SS,用于存储程序的代码段、数据段和堆栈段的物理地址。
内存管理单元用于实现8086的内存管理功能。
8086采用分段分页的内存管理模式,通过段寄存器和偏移地址来访问内存。
段寄存器存储段的起始地址,偏移地址表示从段起始地址开始的偏移量。
通过这种方式,8086可以寻址1MB的内存空间。
8086使用外部总线与其他设备进行通信。
它包括地址总线、数据总线和控制总线。
地址总线用于传输地址信息,数据总线用于传输数据,控制总线用于传输控制信号。
8086的地址总线宽度为20位,可以寻址1MB的内存空间。
除了系统结构,了解8086的CPU结构也是很重要的。
8086包括指令流水线、ALU、寄存器组、时钟和控制单元等部分。
指令流水线用于提高指令执行的效率,将指令的执行过程分为取指令、译码、执行和写回四个阶段,并行地执行不同的指令。
ALU(算术逻辑单元)用于进行算术和逻辑运算。
寄存器组包括通用寄存器和段寄存器,用于存储数据和地址信息。
8086的时钟是由外部提供的,它通过时钟和控制单元来对指令的执行进行控制。
总的来说,8086的系统结构和CPU结构共同组成了一个完整的微处理器系统。
通过了解其结构,可以更好地理解8086的工作原理和性能特点,为编程和系统设计提供指导。
8086cpu的结构和功能
8086cpu的结构和功能8086CPU是由英特尔公司开发的一款经典的16位微处理器。
它是在20世纪80年代初面世的,也是当时最新一代的微处理器。
8086CPU具有复杂的结构和强大的功能,为计算机技术的发展做出了重要贡献。
本文将从多个方面介绍8086CPU的结构和功能。
首先,我们来了解8086CPU的整体结构。
8086CPU包括两个主要部件:执行部件和总线控制部件。
执行部件由数据总线单元(DBU)、算术逻辑单元(ALU)和寄存器组成,负责实际进行数据的处理和运算。
总线控制部件包括指令队列、指令译码器和时序控制器,负责控制数据和指令的传输以及处理器的时序控制。
这种分离的结构使得8086CPU 具有高效的指令执行能力。
其次,我们来探讨8086CPU的功能特点。
8086CPU具有许多强大的功能,包括多种数据类型支持、分段式寻址、以及可扩展的指令集等。
首先是多种数据类型支持。
8086CPU支持多种数据类型,包括字节、字和双字等。
这使得它能够处理各种不同类型的数据,适应了不同应用场景的需求。
其次是分段式寻址。
8086CPU采用分段式寻址的方式,将内存划分为多个段,每个段具有独立的段地址。
这种寻址方式可以灵活地管理内存,提高内存的利用率,并且方便编程。
最后是可扩展的指令集。
8086CPU的指令集非常丰富,包括各种数据处理、逻辑控制、输入输出、以及字符串操作等指令。
同时,8086CPU还支持通过软件扩展指令集,满足用户的个性化需求。
总之,8086CPU作为一款经典的微处理器,具有复杂的结构和强大的功能。
它为计算机技术的发展做出了重要贡献,为后续的微处理器设计奠定了基础。
通过多种数据类型支持、分段式寻址和可扩展的指令集等特点,8086CPU实现了高效的数据处理和灵活的内存管理,为用户的应用提供了广泛的功能支持。
参考文献:1. Patterson, D.A., & Hennessy, J.L. (2017). Computer Organization and Design: The Hardware/Software Interface. Morgan Kaufmann.2. Kip Irvine. (2016). Assembly Language for x86 Processors. Pearson.。
8086-8088CPU系统结构
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的内部结构
AX BX CX DX
SI
DI BP SP
其中前4个数据寄存器都还可以分成高8位和低8位两 个独立的寄存器。对其中某8位的操作,并不影响 另外对应8位的数据。
8086的8位通用寄存器是:
AHBH CH DH
AL BL CL DL
EU--数据寄存器
• 数据寄存器用来存放计算的结果和操作数 • 每个寄存器又有它们各自的专用目的:
FLAG--中断允许标志IF(Interrupt-
enable Flag)
• 用于控制外部可屏蔽中断是否可以被处 理器响应:
设置IF=1,则允许中断; 设置IF=0,则禁止中断。
• CLI指令复位中断标志:IF=0
• STI指令置位中断标志:IF=1
FLAG--单步执行标志TF(Trap Flag)
EU--指针寄存器
• 指针寄存器用于寻址内存堆栈内的数据 • SP为堆栈指针寄存器,指示栈顶的偏移地址 • SP不能再用于其他目的,具有专用目的 • BP为基址指针寄存器,表示数据在堆栈段中的
基地址 • SP和BP寄存器与SS段寄存器联合使用以确定
堆栈段中的存储单元地址
详见堆栈操作指令
EU--标志寄存器(FLAG)
8086的寄存器组
8086的寄存器(如图)都为16位,分为:
EU:8个通用寄存器 CU:1个指令指针寄存器 EU:1个标志寄存器 BIU:4个段寄存器
掌握通用寄存器的作用 熟悉各个标志的含义 切实理解存储器组织和存储空间分段的概念
8086的寄存器组
EU--通用寄存器
8086的16位通用寄存器是:
注意:gn Flag)
• 运算结果最高位为1,则SF = 1;否则SF = 0。 例如:
微机原理与接口技术(第三版)课本习题答案
第二章 8086体系结构与80x86CPU1.8086CPU由哪两部分构成它们的主要功能是什么答:8086CPU由两部分组成:指令执行部件(EU,Execution Unit)和总线接口部件(BIU,Bus Interface Unit)。
指令执行部件(EU)主要由算术逻辑运算单元(ALU)、标志寄存器FR、通用寄存器组和EU控制器等4个部件组成,其主要功能是执行指令。
总线接口部件(BIU)主要由地址加法器、专用寄存器组、指令队列和总线控制电路等4个部件组成,其主要功能是形成访问存储器的物理地址、访问存储器并取指令暂存到指令队列中等待执行,访问存储器或I/O端口读取操作数参加EU运算或存放运算结果等。
2.8086CPU预取指令队列有什么好处8086CPU内部的并行操作体现在哪里答:8086CPU的预取指令队列由6个字节组成,按照8086CPU的设计要求,指令执行部件(EU)在执行指令时,不是直接通过访问存储器取指令,而是从指令队列中取得指令代码,并分析执行它。
从速度上看,该指令队列是在CPU内部,EU从指令队列中获得指令的速度会远远超过直接从内存中读取指令。
8086CPU内部的并行操作体现在指令执行的同时,待执行的指令也同时从内存中读取,并送到指令队列。
5.简述8086系统中物理地址的形成过程。
8086系统中的物理地址最多有多少个逻辑地址呢答:8086系统中的物理地址是由20根地址总线形成的。
8086系统采用分段并附以地址偏移量办法形成20位的物理地址。
采用分段结构的存储器中,任何一个逻辑地址都由段基址和偏移地址两部分构成,都是16位二进制数。
通过一个20位的地址加法器将这两个地址相加形成物理地址。
具体做法是16位的段基址左移4位(相当于在段基址最低位后添4个“0”),然后与偏移地址相加获得物理地址。
由于8086CPU的地址线是20根,所以可寻址的存储空间为1M字节,即8086系统的物理地址空间是1MB。
微机原理与接口技术第三版课本习题答案
第二章8086体系结构与80x86CPU1.8086CPU由哪两部分构成?它们的主要功能是什么?答:8086CPU由两部分组成:指令执行部件①小Execution Unit)和总线接口部件①卬,Bus Interface Unit)。
指令执行部件^^主要由算术逻辑运算单元(ALU)、标志寄存器FR、通用寄存器组和EU控制器等4个部件组成,其主要功能是执行指令。
总线接口部件(8口)主要由地址加法器、专用寄存器组、指令队列和总线控制电路等4个部件组成,其主要功能是形成访问存储器的物理地址、访问存储器并取指令暂存到指令队列中等待执行,访问存储器或1/0端口读取操作数参加EU运算或存放运算结果等。
2.8086CPU预取指令队列有什么好处?8086CPU内部的并行操作体现在哪里?答:8086CPU的预取指令队列由6个字节组成,按照8086CPU的设计要求,指令执行部件^^在执行指令时,不是直接通过访问存储器取指令,而是从指令队列中取得指令代码,并分析执行它。
从速度上看,该指令队列是在CPU 内部,EU从指令队列中获得指令的速度会远远超过直接从内存中读取指令。
8086CPU内部的并行操作体现在指令执行的同时,待执行的指令也同时从内存中读取,并送到指令队列。
5.简述8086系统中物理地址的形成过程。
8086系统中的物理地址最多有多少个?逻辑地址呢?答:8086系统中的物理地址是由20根地址总线形成的。
8086系统采用分段并附以地址偏移量办法形成20位的物理地址。
采用分段结构的存储器中,任何一个逻辑地址都由段基址和偏移地址两部分构成,都是16位二进制数。
通过一个20位的地址加法器将这两个地址相加形成物理地址。
具体做法是16位的段基址左移4位(相当于在段基址最低位后添4个“0”),然后与偏移地址相加获得物理地址。
由于8086CPU的地址线是20根,所以可寻址的存储空间为1M字节,即8086系统的物理地址空间是1MB。
微机原理ch2
第二章第二章 8086 8086系统结构系统结构主要内容:§2-1 8086CPU 系统结构§2-2 8086CPU 的引脚功能和系统配置 §2-3 8086存储器组织 §2-4 8086CPU 时序 §2-1 1 8086CPU 8086CPU 系统结构系统结构 一、引言1、8086:Intel 系列的16位微处理器,16条数据线、20条地址线,可寻址地址范围220=1MB,8086工作时,只要一个5V 电源和一个时钟,时钟频率分别有5MHz,8MHz 和10MHz。
2、8088:内部与8086兼容,也是一个16位微处理器,只是外部数据总线为8位,所以称为准16位微处理器。
8088有20条地址线,所以可寻址的地址空间达220即1M 字节。
图2-1 8086CPU 内部结构框图(★)二、8086CPU 的内部结构1、总线接口部件BIU(Bus Interface Unit)它是8086CPU 与外部(存储器和I/O 端口)数据交换的接口。
它提供了16位双向数据总线和20位地址总线,通过它们完成所有外部总线操作。
图2-2 总线接口部件(★)(1)总线接口部件的功能地址形成、取指令、指令排队、读/写操作数和总线控制。
(2)组成部分① 四个段地址寄存器(主要用于存放各段的首地址) CS:16位代码段寄存器; DS:16位数据段寄存器; ES:16位附加段寄存器; SS:16位堆栈段寄存器。
② 16位指令指针寄存器IP(PC)。
存放下一条要执行指令的偏移地址。
③ 20位的地址加法器。
将16位的逻辑地址转换成访问存储器的20位的物理地址。
④ 六字节的指令队列缓冲器。
功能:可存储6字节指令代码,在执行指令的同时,将取下一条指令,当指令队列有2个或2个以上的字节空余时,BIU自动将指令取到指令队列中。
CPU执行完一条指令后,可以指向下一条指令(流水线技术)。
第三章 8086微处理器(结构)
CLK S2-S0 A19-16 S3-S7 BHE AD15-0 ALE MRDC (IORC) DT/R DEN
最大方式写时序
地址 CS 数据 T1 T2 S2-S0 A19-16 A15-0 BHE 数据输出 T3 S2-S0 无效 S3-S7 D15-D0 T4
CLK S2-S0 A19-16 S3-S7 BHE AD15-0 ALE AMWC (AIOWC) MWIC(IOWC) DEN
INTEL 8086
8086引脚信号
8088引脚信号
INTEL 8088
8086最小方式系统结构
8284 CLK READY RESET
等待状态发生器
M/IO INTR INTA WR RD STB BHE
ALE BHE AD19-16 AD15-0
8082x3
地址总线 A19-0
数据总线 DEN DT/R MN/MX 8086 CPU 8286x2 OE RAM HOLD HLDA OE WR OE
IOB BHEຫໍສະໝຸດ 8286X2 OE RD MN/MX 8086 CPU T OE RAM
数据总线 (D15-0)
RD
ROM
I/O
WR RD
S2-S0代码组合和操作
S2 S1 S0 代码组合和对应操作 S1 S0 对 应 操 作 0 0 发中断响应信号 0 1 读 I/O 端口 1 0 写 I/O 端口 1 1 暂停 0 0 取指令 0 1 读内存 1 0 写内存 1 1 无源状态(CPU无作用) QS1 QS0 代码组合和对应操作 对应操作 无操作 从指令队列的第1个字节中取走代码 队列为空 除第1字节外,还取走了后续字节中的代码
低为IO读,
8086cpu知识点总结
8086cpu知识点总结8086 CPU 是 Intel 公司于 1978 年推出的第一款 16 位微处理器,它奠定了后来计算机发展的基础,为后续的计算机体系结构设计奠定了基础,其后续版本的处理器也是以其为基础进行设计。
这篇文章将对 8086 CPU 的架构、指令系统、寻址方式、操作模式、管脚、寄存器组、数据通路和控制信号等知识点进行详细的总结,以便更好地理解和掌握该处理器的相关知识。
一、8086 CPU 架构8086 CPU 是一种 16 位微处理器,其架构主要包括三部分:执行单元 (EU)、总线接口单元(BIU) 和通用寄存器组成。
EU 负责执行指令、算术运算和逻辑运算,同时与 BIU 进行数据交换;BIU 负责处理数据传输、地址生成和取指令等操作;通用寄存器组包括 4 个 16 位通用寄存器 AX、BX、CX 和DX,其中 AX 寄存器作为中央处理器 (CPU) 的数据寄存器,用于存放运算结果。
8086 CPU 内部结构由许多部件组成,包括寄存器、运算器、时钟、分频器、全速脉冲发生器、指令译码器、片选逻辑、地址生成器、数据总线缓冲器、地址总线驱动器、总线控制器、中断控制器、中断识别器、数据缓冲器等。
这些部件共同组成了 8086 CPU 的内部结构,为其正常工作提供了支持。
二、8086 CPU 指令系统8086 CPU 的指令系统包括数据传输指令、算术运算指令、逻辑运算指令、串处理指令、控制转移指令、程序调用和返回指令、中断指令等。
这些指令可以根据其功能和操作数的不同进行分类。
数据传输指令包括将数据从一个位置传送到另一个位置的指令,其中包括 MOV、XCHG、LEA 等指令;算术运算指令包括实现加法、减法、乘法、除法等运算的指令,其中包括ADD、SUB、MUL、DIV 等指令;逻辑运算指令包括实现与、或、非、异或等逻辑运算的指令,其中包括 AND、OR、NOT、XOR 等指令;串处理指令包括在存储器中进行字符串操作的指令,其中包括 MOVSB、MOVSW、CMPSB、SCASB 等指令;控制转移指令包括跳转、调用、返回等指令,其中包括 JMP、CALL、RET 等指令;程序调用和返回指令包括实现过程调用和返回的指令,其中包括 INT、IRET 等指令;中断指令包括控制中断处理的相关指令,其中包括 INT、IRET 等指令。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ZF=1,表示本次运算结果为零, ZF=0,运算结果非零。
23
SF(Sign Flag):符号标志 SF=1,表示本次运算结果的最高位(第7位或第15位) 为“l”,否则SF=0。 OF(Overflow F1ag):溢出标志(有符号数有意义) IF(Interrupt Flag):中断标志位 IF=1,表示允许CPU响应可屏蔽中断。IF标志可通过 STI指令置位,也可通过CLI指令复位。 DF(Direction Flag):方向标志位 在串操作指令中,若DF=0,表示串操作指令地址指针 自动增量;DF=1,表示地址指针自动减量。DF标志 位可通过STD指令置位,也可通过CLD指令复位。 TF(Trap Flag):单步标志位,调试程序时用。
2.1 8086CPU结构
执行部件(EU) 组成:①ALU(算术逻辑单元); ②通用寄存器(AX、BX、CX、DX); ③专用寄存器(BP、SP、SI、DI); ④标志寄存器(FLAGS); ⑤EU控制系统。 功能:负责分析指令和执行指令。
8
8086编程结构
通用 寄存器 AH BH CH DH SP BP DI SI 16 位
译码 运算结果
的特征保存在标志寄存器FLAG中。
10
总线接口单元BIU
主要功能:访问存储器物理地址,访问存储
器并取指令到指令队列中等待。
1、总线接口部件要从内存 取指令送到指令队列;
2、CPU执行指令时,要配合执行部件从指定的内存单元或者外 设端口中取数据,将数据传送给执行部件;或把执行部件的操 作结果传送给指定的M或I/O口。
器、接口、工作模式) 8086CPU的内部时序(最大、最小模式下的 读写时序)
3
8086/8088微处理器——微处理器的结构
•
8086/8088微处理器 8086/8088微处理器是Intel公司推出的第三代CPU 芯片,它们的内部结构基本相同,都采用16位结构 进行操作及存储器寻址,但外部性能有所差异,两 种处理器都封装在相同的40脚双列直插组件中。
时可操作的位数。
6
Intel-80x86系列微处理器概述
型号 发布 年份 字 长 晶体管数 (万) 主频 (MHz) 数据总 线 外部总 线 地址总 线 寻址空 间 高速缓 存
8086 8088
80286 80386 80486 Pentium (586) Pentium Pro(P6) Pentium II
DH DL SP BP DI SI 16 位
运算寄存器 执行部分
20 位 地址加法 16 位 CS DS SS ES IP
内部暂存器
控制 寄存器
--指令指针 IP F(FLAG) --标志寄存器
输入/输出 控制电路
外部 总线
ALU
标志
控制电路
8位
1 2 3 4 5 6 指令队列 缓冲器
执行部件(EU)
4
2.1 8086CPU结构
微处理器CPU基本功能 算术运算,逻辑运算 指令译码、寄存、执行操作 与存储器、I/O接口通信 数据暂存 提供定时控制信号 响应中断请求
5
CPU性能表征:
内部寄存器位数及内部数据总线位数 4位机、8位、16位、32位、64位表示CPU同
输入/输出 控制电路
外部 总线
ALU
标志
控制电路
8位
1 2 3 4 5 6 指令队列 缓冲器
执行部件(EU)
总线接口部件(BIU)
15
通用 寄存器 8086 寄 存 器
段 寄存器
AX --累加器 BX --基址寄存器 数据寄存器 CX --计数寄存器 DX --数据寄存器 AH, AL, BH, BL, CH, CL, DH, DL —8位 变址寄存器 SI --源变址寄存器 DI --目的变址寄存器 指针寄存器 SP --堆栈指针 BP --基址指针 CS --代码段 DS --数据段 SS --堆栈段 AH AL 通用 BH BL ES --附加数据段 寄存器 CH CL
串操作,移位操作中,作计数用,循环次数
变量移位,循环控制 字节乘,字节除,间接I/O
17
8086/8088微处理器——微处理器的内部寄存器
2)指针及变址寄存器
• • • • • SP:堆栈指针寄存器(Stack Pointer),用来指示栈顶的偏移地址。 BP:基址指针寄存器(Base Pointer),指示堆栈区中的一个基地址。
隐含寻址:某些指令中制定某些通用寄存器作为特殊用法。 采用隐含方式能够有效的缩短指令代码长度
18
寄存器名
特殊用途 在输入输出指令中作数据寄存器用 AX, AL 在乘法指令中存放被乘数或乘积,在除法指令中存放被除数或商 AH 在LAHF指令中,作目标寄存器用 在十进制运算指令中作累加器用 AL 在XLAT指令中作累加器用 在间接寻址中作基址寄存器用 BX 在XLAT指令中作基址寄存器用 CX 在串操作指令和LOOP指令中作计数器用 CL 在移位/循环移位指令中作移位次数计数器用 在字乘法/除法指令中存放乘积高位或被除数高位或余数 DX 在间接寻址的输入输出指令中作地址寄存器用 在字符串运算指令中作源变址寄存器用 SI 在间接寻址中作变址寄存器用 在字符串运算指令中作目标变址寄存器用 DI 在间接寻址中作变址寄存器用 BP 在间接寻址中作基址指针用 SP 在堆栈操作中作堆栈指针用
4)控制寄存器
IP:指令指针 FR:标志寄存器
IP:指令指针(Instruction Pointer)寄存器;程序运行时,它始 终指向EU要执行的下一条指令所在单元。当EU执行本条指令时, IP中的内容自动增量,能自动加1,生成代码段中下一条将要取 的指令的偏移地址。 注意:程序不能直接访问IP,但可通过某些指令修改IP内容: 转移指令,子程序调用和返回指令,中断处理指令等
指令指示器 标志寄存器 进位标志位 奇偶标志位 半进位标志 零标志 符号标志
溢出标志 方向标志 中断标志 单步标志
22
CF(Carry Flag):进位标志位
CF=l,表示本次运算中最高位(D15或D7)有进位(加法运算 时)或有借位(减法运算时)。CF标志可通过STC指令置位,通 过CLC指令复位(清除进位标志),还可通过CMC指令将当前CF 标志取反。
20 位 地址加法 通用 寄存器 AH BH CH DH SP BP DI SI 16 位
运算寄存器 执行部分
AL BL CL DL
16 位 CS DS SS ES IP
内部暂存器
输入/输出 控制电路
外部 总线
ALU
标志
控制电路
8位
1 2 3 4 5 6 指令队列 缓冲器
20
执行部件(EU)
总线接口部件(BIU)
14
2.1.2 8086的内部寄存器
含14个16位寄存器,
20 位 地址加法 通用 寄存器 AH BH CH DH SP BP DI SI 16 位
运算寄存器 执行部分
按功能可分为三类 8个通用寄存器 4个段寄存器 2个控制寄存器
AL BL CL DL
16 位 CS DS SS ES IP
内部暂存器
12
8086/8088微处理器: 并行工作方式:
BIU和EU取指部分与执行部分分开,取指和执行可以重迭
取指 取指 取指 取指 得到数据
等待
执行
执行
执行
执行
在一条指令的执行过程中可以取出下一条(或多条)指令,指令在 指令队列中排队; 在一条指令执行完成后,就可以立即执行下一条指令,减少CPU为取 指令而等待的时间,提高CPU的利用率和整个运行速度。
重叠操作技术: 遇到转移指令怎么办? 大大减少了等待取指所需时间,提高CPU利用率。 提高了整个执行速率, 降低了与之相配的存储器的存取速度的要求。 13
地址加法器:用来完成由逻辑地址变成物理地 址功能,通过一次地址加法,将16位逻辑地 址变成20位物理地址,可寻址存储空间达到 1MB。 标志寄存器:存储ALU运算结果特征。
PF(Parity Flag):奇偶校验标志位
PF=1,表示本次运算结果中有偶数个“l”,PF=0,表示 本次运算结果中有奇数个“1”。
AF(Auxiliary Carry Flag):辅助进位标志位 AF=l,表示运算结果的8位数据中,低4位向高4位 有进位(加法运算时)或有借位(减法运算时),这个 标志位只在十进制运算中有用(BCD码)。 ZF(Zero Flag):零标志位
16 32 32 64 64 64
20 20
24 32 32 32 36 36
1M 1M
16M 4G 4G 4G 64G 64G
No No
No Yes 8K 8K 8K 8K 8K 32K 512K
7
150-200 64 233-350 64
8086/8088微处理器的组成 总线接口部件(BIU) 组成:①段寄存器(DS、CS、ES、SS); ②16位指令指针寄存器IP(指向下一条要取出的指令代码); ③20位地址加法器(用来产生20位地址); ④6字节(8088为4字节)指令队列缓冲器; ⑤总线控制逻辑。 功能:负责从内存中取指令,送入指令队列,实现CPU与存储器和I/O接 口之间的数据传送。
SP、BP两者隐含的逻辑段地址都在SS寄存器。
SI:源变址寄存器(Source Index):存放内存逻辑偏移地址 DI:目的变址寄存器(Destination Index) 说明:这4个寄存器也可以作为通用寄存器使用。
BX与BP在应用上的区别: 作为通用寄存器,二者均可用于存放数据; 作为基址寄存器,用BX表示所寻找的数据在数据 段DS;用BP则表示数据在堆栈段SS。 SI 、DI变址寄存器常用于指令的间接寻址或变 址寻址。