当前位置:文档之家› 第二章 8086微处理器

第二章 8086微处理器

第二章 8086微处理器
第二章 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.试述最小模式下读/写总线周期的主要区别。

2.CPU响应中断时,为什么要执行两个连续的中断响应周期?

3.当8086微处理器响应总线请求发出HLDA信号后,有哪些引脚信号处于高

阻?

4.8086/8088微处理器响应总线请求发出HLDA信号后,执行部件EU会立即

停止操作吗?为什么?

5.在8086系统中,地址/数据复用信号是如何区分的?

6.总线周期的含义是什么? 8086/8088的基本总线周期由几个时钟组成?如

果一个CPU的时钟频率为4.77MHz,那么它的一个时钟周期为多少?一个基本总线周期为多少?若主频为l5MHz呢?

7.在最小模式总线写周期的T

1、T

2

、T

3

、T

4

状态,8086CPU分别执行什么动

作?

思考题

1.在8086系统的最大模式下为什么一定要用总线控制器?试述总线控制器

8288的主要功能,并说明它有哪些输入和输出信号?试述8086系统中时钟发生器8284A的主要作用以及可提供的几种时钟信号。

作业:

一、问答题:

1、8088微处理器的逻辑地址是由哪几部分组成的?怎样将逻辑地址转换为物理地址?

2、如何设置用户堆栈,在压栈和退栈操作时,堆栈指针SP的内容如何变化?

3、如果一个程序在执行前(CS)=0A7F0H,(IP)=2B40H,该程序的起始地址是多少?

4、如果一个堆栈是从地址1250:0100开始,(SP)=0052H,试回答以下问题:

(1)SS段的段地址是多少?

(2)栈顶的物理地址是多少?

(3)栈底的物理地址是多少?

存入字数据后,SP的内容是什么?

5、有两个16位字1234H和5678H分别存放在02000H为首地址的存储单元中,试用图表示存储数据的情况。

二、填空题

1、8088CPU内部结构按功能分为两部分,即和。

一、8086/8088CPU的结构

1. 8086/8088 CPU的内部结构

1)指令执行部件

指令执行部件EU主要由算术逻辑运算单元ALU、标志寄存器FR、通用寄存器组和EU 控制器等四个部件组成。其主要功能是执行命令。一般情况下指令顺序执行,EU可不断地从BIU指令队列缓冲器中取得执行的指令,连续执行指令,而省去了访问存储器取指令所需的时间。如果指令执行过程中需要访问存储器存取数据时,只需将要访问的地址送给BIU,等待操作数到来后再继续执行。遇到转移类指令时则将指令队列中的后续指令作废,等待BIU重新从存储器中取出新的指令代码进入指令队列缓冲器后,EU才能继续执行指令。这种情况下,EU和BIU的并行操作回受到一定的影响,但只要转移类指令出现的频率不是很

高,两者的并行操作仍然能取得较好的效果。

EU中的算术逻辑运算部件ALU可完成16位或8位二进制数的运算,运算结果一方面通过内部总线送到通用寄存器组或BIU的内部寄存器中以等待写到存储器;另一方面影响状态标志寄存器FR的状态标志位。16位暂存器用于暂时存放参加运算的操作数。

EU控制器则负责从BIU的指令队列缓冲器中取指令、分析指令(即对指令译码),然后根据译码结果向EU内部各部件发出控制命令以完成指令的功能。

2)总线接口部件BIU

总线接口部件BIU主要有地址加法器、专用寄存器组、指令队列缓冲器以及总线控制电路等四个部件组成。其主要功能是负责完成CPU与存储器或I/O设备之间的数据传送。BIU中地址加法器将来自于段寄存器的16位地址段首地址左移4位后与来自于IP寄存器或EU提供的16位偏移地址相加(通常将“段首地址:偏移地址”称为逻辑地址),形成一个20位的实际地址(又称为物理地址),以对1MB的存储空间进行寻址。具体讲:当CPU执行指令时,BIU根据指令的寻址方式通过地址加法器形成指令在存储器中的物理地址,然后访问该物理地址所对应的存储单元,从中取出指令代码送到指令队列缓冲器中等待执行。指令队列一共6个字节(8088的指令队列为4个字节),一旦指令队列中空出2个(8086中)或一个(8088中)字节,BIU将自动进入读指令操作以填满指令队列;遇到转移类指令时,BIU将指令队列中的已有指令作废,重新从新的目标地址中取指令送到指令队列中;当EU 需要读写数据时,BIU将根据EU送来的操作数地址形成操作数的物理地址,从中读取操作数或者将指令的执行结果传送到该物理地址所指定的内存单元或外设端口中。

BIU的总线控制电路将CPU的内部总线与外部总线相连,是CPU与外部交换数据的通路。对于8086而言,BIU的总线控制电路包括16条数据总线、20条地址总线和若干条控制总线;而8088的总线控制电路与外部交换数据的总线宽度是8位,总线控制电路与通用寄存器组之间的数据总线宽度也是8位,而EU内部总线仍是16位,这也是将8088称为准16位的微处理器的原因。

3)8086/8088 CPU寄存器阵列(寄存器组)

8086/8088 CPU中有14个16位的寄存器,按用途分为四类:

①通用寄存器:8个,分为两组:

数据寄存器:累加器AX、基址寄存器BX、计数寄存器CX、数据寄存器DX,每个数据寄存器可存放16位操作数,也可拆成两个8位寄存器,用来存放8位操作数,AX、BX、

CX、DX分别可拆成AH、AL、BH、BL、CH、CL、DH、DL,其中AH、BH、CH、DH 为高八位,AL、BL、CL、DL为低八位;

指针和变址寄存器:堆栈指针SP、基址指针BP、源变址寄存器SI、目的变址寄存器DI,可用来存放数据和地址,但只能按16位进行存取操作。

通用寄存器的特定用法见表2.1。

②段寄存器:4个

代码段寄存器CS:用于存放当前代码段的段地址;

数据段寄存器DS:用于存放当前数据段的段地址;

附加段寄存器ES:用于存放当前附加段的段地址;

堆栈段寄存器SS:用于存放当前堆栈段的段地址。

③专用寄存器:两个

标志寄存器FR:仅定义了9位,其中6位用作状态标志,3位用作控制标志。

a. 状态标志位用来反映EU执行算术或逻辑运算的结果特征,6个状态位如下:

进位标志CF:当加法运算有进位,减法运算有借位时,CF=1,否则CF=0;

辅助进位标志AF:在字节操作时,低4位向高4位有进位(加法)或有借位(减法);在字操作时,低字节向高字节有进位(加法)或有借位(减法)时,则AF=1,否则AF=0。

奇偶校验标志PF:当运算结果低8位“1”的个数为偶数时,PF=1,否则PF=0;

零标志ZF:当运算结果位0时,ZF=1,否则ZF=0;

溢出标志OF:在有符号数的算术运算时,当运算结果有溢出时,OF=1,否则OF=0;

符号标志SF:在有符号数的算术运算时,当运算结果为负时,SF=1,否则SF=0;

b. 控制标志位用来控制CPU的操作,3个标志位如下:

方向标志DF:当DF=0时,在串操作指令中,进行自动增址操作;当DF=1时,在串操作指令中,进行自动减址操作;

中断允许标志IF:当IF=0时,禁止CPU响应可屏蔽中断;当IF=1时,允许CPU响应可屏蔽中断;

单步陷阱标志TF:当IF=1时,表示CPU进入单步工作方式;当IF=0时,表示CPU正常执行程序。

8086/8088 CPU寄存器结构见图2.1。

指令指针IP:用来存放要取的下一条指令在当前代码段中的偏移地址,程序不能直接访问IP,在程序运行过程中,BIU可修改IP中内容。

二、8086/8088 CPU芯片的引脚及其功能

8086/8088 CPU具有40条引脚,双列直插式封装,采用分时复用地址数据总线,从而使8086/8088 CPU用40条引脚实现20位地址、16位数据、控制信号及状态信号的传输。

8086/8088 CPU芯片可以在两种模式下工作,即最大模式和最小模式。

最大模式:指系统中通常含有两个或多个微处理器(即多微处理器系统),其中一个主处理器就是8086/8088 CPU,另外的处理器可以是协处理器I/O处理器。

最小模式:在系统中只有8086/8088一个微处理器。

1. 两种模式公用的引脚的定义

AD0~AD15(Address/Data Bus):分时复用的地址数据线。双向。

在了解分时复用的概念之前必须先了解总线周期概念:

总线周期:CPU对存储单元或I/O端口每读/写一次数据(一个字节或一个字)所需的时间称为一个总线周期。通常情况下,一个总线周期分为4个时钟周期,即T1、T2、T3、T4。

下面讲解AD15~AD0的具体分时复用的问题:(8088只有AD7~AD0)

在T1期间作地址线A15~A0用,此时是输出的(是存储单元的低十六位地址或I/O端口的十六位地址);

在T2~T4期间作数据线D15~D0用,此时是双向的。

A19/S6~A16/S3:分时复用,输出引脚。

在T1期间,作地址线A19~A16用,对存储单元进行读写时,高四位地址线由A19~A16给出;

在T2~T4期间作为S6~S3状态线用。

状态线的特征如下:

S5:用来表示中断允许状态位IF的当前设置。

S6:恒为“0”,以表示CPU当前连在总线上。

/S7:三态输出,高8位数据总线有效/状态复用引脚。(8088是/S7)

在T1状态:作用,该引脚为0时,表示高8位数据线上的数据有效;

在T2~T4状态:输出状态信号S7,未定义。

GND :地线(两个),分别为引脚1和20;

:读,三态输出,当=0时,表示CPU当前正在读存储器或I/O接口。

READY:准备就绪,输入。当CPU要访问的存储器或I/O端口已准备好传送数据时,存储器或I/O端口置READY=1,否则置READY=0,CPU在T3状态采样READY,

若READY=0,则插入Tw,然后在插入Tw状态继续采样READY,直至READY=1为止,才进入T4。

:输入,测试信号。当CPU执行WAIT指令时,CPU每隔5个T对TEST进行

一次测试,当测试到=1,则CPU重复执行W AIT指令,即CPU处于空闲

等待状态,直到测试到=0时,等待状态结束,CPU继续执行后续指令。INTR:输入,可屏蔽中断请求,高电平有效,当外设向CPU提出中断请求时,置INTR=1,若此时IF=1,则CPU响应中断。

NMI:输入,非可屏蔽中断请求,上升沿有效。只要CPU采样到NMI由低电平到高电平的跳变,不管IF的状态如何,CPU都会响应。

RESET:输入,复位。该引脚保持4T状态以上时间高电平,则可复位,复位后,CPU 停止当前操作,且对F、IP、DS、SS、ES及指令队列缓冲器清零,而CS置为FFFFH。

复位后,CPU从FFFF0H开始执行程序。

CLK:输入,时钟,它提供了处理器和总线控制器的定时操作,典型值为8MHz。Vcc:电源,+5V。

2)最小模式控制信号引脚(当MN/MX接Vcc时)

系统控制线全部由8086CPU发出。

HOLD:输入,总线请求。用于其它主控器(其它处理器、DMA等)向本CPU 请求占用总线。

HLDA:总线请求响应,输出。CPU一旦检测到HOLD=1时,则在当前总线周期结束后,输出HLDA=1,表示响应总线请求,并让出总线使用权给其它主控器,直至其它主控器用完总线后,HOLD变为低电平,HLDA才输出为低,本CPU重新占用总线。在总线响应期间,凡是三态的总线均处于高阻状态。

=0时,表示CPU当前正在写存储器或I/O端口。

:输出、三态,写。当

M/

器,当M/

DT/

:三态、输出,数据发送/接收控制信号。为提高CPU数据总线驱动能力,常常

控制数据收发器的数据传送方向。若DT/

=0时,表示CPU输入(接收)

数据。

:三态、输出,数据允许信号,DEN通常作为数据收发器的选通信号,仅当DEN=0

时,才允许收发器收发数据。

ALE:输出,地址锁存允许,在任一总线周期的T1期间输出一个正脉冲用于AD15~AD0输出的地址信息送外部地址锁存器锁存。

=0,表示响应中断。

:输出,中断响应。当CPU响应INTR时,置

3) 最大模式控制信号引脚(当MN/

、、:三态、输出,总线周期状态,用于和总线控制器8288的S2、

S1、S0相连接,使得8288对它们译码,以产生相应的控制信号,见表2.2。

:三态、输出,总线封锁。当=0时,表示本CPU不允许其它主控器占用总

线;当CPU执行加有LOCK前缀的指令期间,=0。

/

、/:双向,总线请求/总线请求允许,输入时作总线请求,输出时作

总线请求响应,均为低电平有效,三态,其中

状态含义。

4. 8086和8088CPU在外部引脚上的区别:

① 8086有16根数据线,与地址线A15~A0分时复用,而8088只有8根数据线,与地址线A7~A0分时复用。

② 8086有,一次可读8位或16位,而8088没有,有状态线输出。

三、 8086/8088存储器的结构

1. 存储器地址空间与数据存储格式

1)地址空间:1MB ,地址范围:00000H ~FFFFFH 2)数据存储格式:

每个存储单元存储一个字节的数据,存取一个字节的数据需一个总线周期。两个相邻的字节定义为一个字。每一个字的低字节存放在低地址中,高字节存放在高地址中,并以低字节的地址作为字地址。若字地址为偶地址,则称为对准字存放,存取一个字也只需要一个总线周期;若字地址为奇地址,则称为非对准字存放,存取一个非对准字需要两个总线周期。见表2.4。

表2. 4 BHE 和AD 0的不同组合状态

AD 0

2. 存储器的组成

1MB 存储空间分成两个512KB 存储器,即:

偶地址存储器:(A0=0),其数据线与8086CPU 系统的D7~D0相连,A0=0用于片选; 奇地址存储器:(A0=1),其数据线与8086CPU 系统的D15~D8相连, =0用于片

选;

3. 存储器分段

由于CPU 内部寄存器是16位,只能寻址64KB ,故把1MB 存储空间划分为四个逻辑段,逻辑段彼此独立,但可紧密相连,也可重叠,在整个1MB 存储空间浮动,仅需改变段寄存器内容。一般把存储器划分为:程序区、数据区和堆栈区。这样,就可以在 程序区中存储程序的指令代码,在数据区中存储原始数据、中间结果和最后结果,在堆栈区中存储压

入堆栈的数据或状态信息。8086/8088CPU通常按信息特征区分段寄存器的作用,如CS提供程序存储区的段地址,DS和ES提供存储源和目的数据区的段地址,SS提供堆栈区的段地址。

由于系统中只设有4个段寄存器,任何时候CPU只能识别当前可寻址的4个逻辑段。如果程序量或数据量很大,超过64K字节,那么可定义多个代码段、数据段、附加段和堆栈段,但4个段寄存器中必须是当前正在使用的逻辑段的基地址,需要时可修改这些段寄存器的内容,以扩大程序的规模。

段地址:每个逻辑段起始地址的高16位,即段寄存器的内容,无符号数;

段基地址:每个逻辑段起始地址;

逻辑地址:段地址:偏移地址,在程序中使用;

物理地址:存储单元的实际地址,物理地址=段地址*16+偏移地址;

偏移地址:相对段基地址的偏移量,无符号数,也称有效地址EA。

四、堆栈段

堆栈是以“后进先出”的原则暂存一批需要保护的数据或地址的一个特定存储区。

堆栈段段地址由SS提供,偏移地址由SP提供,SP始终指向栈顶。堆栈操作有压栈(PUSH)和出栈(POP)两种,均以字为单位。

压栈过程:例PUSH AX

①SP←SP-1

②(SP)←AH

③SP←SP-1

④(SP)←AL

出栈过程:例POP BX

①BL←(SP)

②SP←SP+1

③BH←(SP)

④SP←SP+1

四、总线结构和总线周期

1. 总线系统结构

1)最大/最小模式系统的形成

系统总线是指微机系统所采用的总线,一般是由CPU总线经过驱动器、总线控制器等芯片的变换而形成的,有了系统总线,CPU才能外接不同容量的存储器和不同容量的I/O端口,组成不同规模的微机系统。。

(1)最小模式系统总线的形成

接Vcc。见图2.3。

应用于单一的微机处理系统,CPU引脚MN/

图中,3片8282锁存20位地址信息和,之所以要锁存是鉴于AD15~AD0、A19~A16/S6~S3、/S7都是分时复用线,在T1状态ALE作用下将这些信息锁存以备用,

还可以提高地址总线驱动能力。2片8286作为16位数据收发器,由CPU的控制信号

和DT/ 分别控制8286工作和数据传送方向。

系统控制线由CPU直接提供。

(2)最大模式系统总线的形成

应用于多微机处理系统,通常以8086/8088CPU为中心,增设总线控制器8288,一个总线仲裁器8289,还包含其它微处理器(如8287数值协处理器和8289I/O处理机)CPU引脚

MN/ 接GND。见图2.4。

①与最小模式系统相同处:

3片8282锁存20位地址信息和,2片8286作为16位数据收发器。

②不同处:

用8288总线控制器,对CPU提供的状态信号、、译码,产生各种命令信号和

控制信号,而不是由CPU提供控制信号,包括ALE、DT/ 和DEN均由8288提供。(1)8288总线控制器

状态信号与总线命令信号的对应关系见表2.2。

命令信号:

:读存储器命令,此命令有效时,把被选中的存储单元之中的数据读到DB上。

:读I/O端口命令,此命令有效时,把被选中的I/O端口之中的数据输入到DB上。

:写存储器命令,此命令有效时,把DB上的数据写到所选中的存储单元中。

:写I/O端口命令,此命令有效时,把DB上的数据写到所选中的I/O端口中。

:超前写存储器命令,功能与相同,只是提前一个T状态出现。

:超前写I/O端口命令,功能与相同,只是提前一个T状态出现。

:中断响应信号,与最小模式CPU提供的相同。

控制信号ALE、DT/ 、DEN:与最小模式中CPU发出的相同,仅DEN极性相反。

2. 总线周期时序

时钟信号CLK:时钟信号的周期也称为状态周期T,它是微处理器的最小动作单位时间;

指令周期:执行一条指令所需时间,有若干总线周期组成;

总线周期:CPU访问存储器或I/O端口一次所需时间,至少4个T状态。

以最小模式系统中CPU读总线周期为例:见图2.5。

T1状态:CPU发存储单元20位或I/O端口16/8位地址信息和信号,并发地址锁存允

许ALE,将地址信息和信号锁存到外部8282中。CPU通过发M/ 信号确定是读存储器还是读I/O端口。

T2状态:AD15~AD0高阻,S7~S3状态信息输出,同时发=0,启动所选中的存储

单元或I/O端口。

T3状态前沿(下降沿):CPU采样READY,若所选中的存储单元或I/O端口能在T3期间准备好数据,则READY=1;否则置READY=0,T3过后插入Tw,CPU再在插入Tw下降沿采样READY,直至READY=1为止。选中的存储单元或I/O端口把数据送到DB上。

T3状态后沿或插入Tw后沿(上升沿):CPU在发DT/ =0和=0的情况下,读数据总线。

T4状态:结束总线周期。

五、微处理器的发展

随着VLSI大规模集成电路和计算机技术的飞速发展,微处理器的面貌日新月异,从单片集成上升到系统集成,性能价格比不断提高,微处理器字长从4位→8位→16位→32位→64位,工作频率从不到1MHz到目前的1.3GHz,发展之快,匪夷所思。

1.80286微处理器

80286芯片内含13.5万个晶体管,集成了存储管理和存储保护机构,80286将8086中BIU的EU两个处理单元进一步分离成四个处理单元,它们分别是总线单元BU、地址单元AU、指令单元IU和执行单元EU。BU和AU的操作基本上和8086的BIU一样,AU专门用来计算物理地址,BU根据AU算出的物理地址预取指令(可多达6个字节)和读写操作数。

80286内部有15个16位寄存器,其中14个与8086寄存器的名称和功能完全相同。不同之处有二:其一标志寄存器增设了2个新标志,一个为I/O特权层标志IOPL(I/O Privilege),占D13D12两位,有00、01、10、11四级特权层:其二增加了一个16位的机器状态字(MSW)寄存器,但只用了低4位,D3为任务转换位TS,D2为协处理器仿真位EM,D1为监督协处理器位MP,D0为保护允许位PE;其余位都空着未用。

80286有24根地址线,16根数据线,16根控制线(其中输出的状态线8根,输入的控制线8根),地址线和数据线、状态线不再分时复用。80286封装在68条引脚的正方形管壳中,管壳四面引脚。68根引脚中有5条引脚未编码(NC),Vcc有2条,Vss有3条,各引脚的符号和名称如表2.5所示。

表2.5 80286引脚符号和名称

O 总线高字节有效O 协处理器操作数响应

O 总线周期状态I 协处理器忙

I 协处理器出错

:O 总线封锁

I 总线准备就绪

80286对8086基本指令集进行了扩展。

2.80386微处理

80386CPU内部结构由6个逻辑单元组成,它们分别是:总线接口部件BIU(Bus Interface Unit)、指令预取部件IPU(Instruction Prefetch Unit)、指令译码部件IDU(Instruction

表2.6 80386引脚名称和功能

第二课 Intel 8086微处理器简介

微型计算机主要是由微处理器(CPU)、主存储器、外部设备及互联部件组成,总线(数据总线、地址总线、控制总线)在部件之间提供通信。 Intel 8086微处理器按功能可分为两大部分:执行部件和总线接口部件 执行部件 主要由寄存器组、算逻部件、标志寄存器组成 含有8个16位的标志寄存器,这些标志寄存器属于CPU的专用存储器, 按其用途可分为两组:数据寄存器组和指示器变址寄存器组 数据寄存器组(AX、BX、CX、DX) 数据寄存器主要用来保存操作数和运算结果等信息。 AX:累加器,其作用为乘除运算,字的输入输出,中间结果的缓存 BX:基址寄存器,其作用为存储器的指针使用 CX:计数寄存器,其作用为串操作和循环控制 DX:数据寄存器,其作用为字的乘除运算,间接的输入输出,也可以用作存放I/O的端口地址 高8位H组:AH、BH、CH、DH 低8位L组:AL、BL、CL、DL 指示器变址寄存器(SI、DI、SP、BP) 它们一般存放操作数的偏移地址,用作指示器或者变址寄存器。 SP:堆栈指示器,其作用为存取堆栈的指针 DI:存储器指针,其作用为串指令目的操作数指针(目的变址寄存器) BP:堆栈操作数的基址寄存器 SI:源变址寄存器。 当SI、DI和BP不用做指示器和变址寄存器时,也可以将他们当作数据寄存器使用,用来保存操作数和运算结果,但是这时只能呢个用来做16位寄存器而不能是8位的。 由于SP是专用的堆栈指示器,所以他不能做数据寄存器使用。 总线接口部件 由于执行部件所提供的存储器地址是16位的,而8086访问1M空间却需要20位的地址,为了形成这20位地址,在总线接口部件中设立了4个段寄存器(CS、DS、ES和SS) CS:代码段寄存器,指示当前代码段,即它规定了现行程序所在的存储区首址 DS:数据段寄存器 ES:附加数据段寄存器 SS:堆栈段寄存器, 每个段可达64K字节。 在总线接口部件中,还有一个很重要的寄存器——指令指示器(IP),他总是保存着下一次将要从主存中取出的指令的偏移地址,其值为该指令到所在段段首址的字节距离。

大工计算机原理-第3章 8086微处理器的指令系统(1)

第3章8086微处理器的指令系统(1) 3.1 指令系统概述 ●指令系统是一台计算机所能(识别和执行)的全部指令的集合。它与(微处理器)有着密切的关系,不同的 微处理器有不同的指令系统。8086CPU包含133条指令 ●指令是使计算机执行某种(特定操作)的二进制编码。 指令一般包括两个部分:(操作码域)和(地址域)。填空 操作码域:存放指令的操作码,即指明该指令应由计算机完成何种操作。 地址域:确定操作数的值或地址、操作结果的地址,有的指令的地址域还指出下一条指令的地址。 ●机器指令:计算机能(直接识别)的二进制代码。 ●汇编语言:汇编语言是一种符号语言,用助记符表示操作码,用符号或符号地址表示操作数或操作数地址, 它与机器指令是一一对应的 ●汇编程序:将汇编语言源程序翻译成机器语言(就是一条一条的机器指令),即目标程序。 3.2寻址方式 ●根据(指令内容)确定(操作数地址)的过程,称为寻址。 ●根据寻址方式计算所得到的地址叫做(有效地址EA),也就是(段内偏移地址)。有效地址还需要与相应的(段 基地址)组合才是20位的(物理地址PA) ,该工作由微处理器来完成。 牢记什么是EA?什么是PA?怎么计算? 后面有关于EA和PA的解释及计算方法! ●寻址方式在两种方式下被涉及:(操作数)的寻址方式和(指令)的寻址方式。 如果没有特别说明,寻址方式是指源操作数的寻址方式。 1、隐含寻址(隐含了规定的操作数) 例:DAA指令 ,只有操作码,无操作数。规定对AL中的内容进行压缩BCD码转换。 2、立即寻址(操作数(立即数)直接放在指令中,不需访问存储器) 例:MOV AX ,1234H (若CS=1000H ,IP=100H) 3、寄存器寻址(操作数就放在内部寄存器中, 例:INC CX ;(CX)←(CX)+1 MOV AX ,BX ;执行后BX 4、直接寻址(指令中直接给出操作数的存放地址) 例1:MOV AX ,[4000H] (DS=3000H) ?操作数寻址

8086微处理器引脚

8086微处理器引脚(线)说明 ﹡8086/8088微处理器采用40条引线双列直插(DIP)封装。﹡ 8086/8088微处理器引线是对外前端总线及专用信号引线。 ﹡ 8086/8088微处理器引线,在逻辑上可分为3类:地址总线信号、数据总线信号、控制总线信号。还有一些专用信号:电源、地、时钟。 ﹡ 8086/8088采用引线分时复用技术,一条引线不同时间代表不同信号,解决引线不够问题。基本引脚信号 ﹡AD15~AD0(I/O,三态):地址/数据复用引脚。 ﹡A19/S6 ~ A16/S3(O,三态):地址/状态复用引脚。﹡BHE# /S7 (O,三态):高字节允许/状态复用引脚。﹡NMI(In):非屏蔽中断请求线,上升边触发。﹡INTR (In) :可屏蔽中断请求线,高电平有效。﹡RD# (O,三态) :读选通信号,低电平有效。﹡CLK (In) : 时钟信号,处理器基本定时脉冲。﹡RESET (In) :复位信号,高电平有效。 * WR# (O,三态):写选通信号,低电平有效。﹡READY (In):准备好信号,高电平有效。处理器与存储器及I/O接口速度同步的控制信号。﹡TEST# (In): 测试信号,低电平有效。处理器执行W AIT指令的控制信号。﹡MN/MX# (In):最大/最小工作模式选择信号。硬件设计者用来决定8086工作模式,MN/MX# =1 8086为最小模式, MN/MX# =0 8086为最大模式。﹡Vcc (In): 处理器的电源引脚,接 +5V电源。﹡GND :处理器的地线引脚,接系统地线 2)最小模式下的有关控制信号 ﹡INTA# (O) :最小模式下的中断响应信号。﹡ALE (O) :地址锁存允许信号。 ﹡DEN# (O,三态) :数据总线缓冲器允许信号。 ﹡DT/R# (O,三态) :数据总线缓冲器方向控制信号。﹡M/IO# (O,三态) :存储器或I/O接口选择信号。﹡WR# (O,三态) :写命令信号。﹡HOLD (In) : 总线请求信号。﹡HLDA (O) :总线请求响应信号。(3)最大模式下的有关控制信号 ﹡QS1、QS0 (O) :指令队列状态信号。表明8086当前指令队列的状态。﹡S2# ,S1# ,S0# (O,三态) :最大模式总线周期状态信号。作为总线控制器8288的输入信号,8288输出各种控制信号。 ﹡LOCK# (O,三态) :总线封锁信号。信号有效时不允许其他主控部件占用总线。 ﹡RQ#/GT#0, RQ#/GT#1 (I/O) :最大模式总线请求/总线响应信号,每条引线作为输入时是总线请求RQ信号,每条引线作为输出时是总线请求响应GT信号

第二章微处理器和指令系统习题选解

2.9如果GDT寄存器值为0013000000FFH,装人LDTR的选择符为0040H,试问装人描述符高速缓存的LDT描述符的起始地址是多少? 解:GDT寄存器的高32位和低16位分别为GDT的基址和段限,所以:GDT的基址=00130000H LDTR选择符的高13位D15~D3=000000001000B是该LDT描述符在GDT中的序号,所以: LDT描述符的起始地址= GDT的基址 十LDT描述符相对于GDT基址的偏移值 =00130000H+8×8=00130040H 2.10假定80486工作在实模式下,(DS)=1000H, (SS)=2000H, ( SI ) = El07FH, ( BX )=0040H, (BP) = 0016H,变量TABLE的偏移地址为0100H。请间下列指令的源操作数字段是什么寻址方式?它的有效地址(EA)和物理地址(PA)分别是多少? (1)MOV AX,[1234H ] (2) MOV AX, TABLE (3) MOV AX,[BX+100H] (4) MOV AX,TABLE[BPI[SI] 解:(1)直接寻址,EA=1234H , PA =(DS)×16+EA=11234H。 (2)直接寻址,EA= O100H,PA= (DS)×16+EA=10100H。 (3)基址寻址,EA=( EBX)+100H =0140H,PA= (DS) × 16+EA=10140H。 (4)带位移的荃址加变址寻址。(EA)= (BP)+[SI]十TABLE的偏移地址=0195H PA=(SS)×16+EA=20195H} 2.11下列指令的源操作数字段是什么寻址方式? (1)MOV EAX , EBX (2)MOV EAX,[ ECX] [EBX ] (3) MOV EAX,[ESI][EDX * 2] (4)MOV EAx,[ ESI*8] 解:(1)寄存器寻址。 (2)基址加变址寻址。 (3)基址加比例变址寻址。 (4)比例变址寻址。 2.12分别指出下列指令中源操作和目的操作数的寻址方式。 式表示出EA和PA。 (1)MOV SI,2100H (2)MOV CX, DISP[BX] (3) MOV [SI] ,AX (4)ADC AX,[BX][SI] (5)AND AX,DX (6) MOV AX,[BX+10H] (7) MOV AX,ES:[BX] (8) MOV Ax, [BX+SI+20H] (9) MOV [BP ].CX (10) PUSH DS 解:(1) 源操作数是立即数寻址;目的操作数是寄存器寻址。 (2)源操作数是基址寻址,EA=(BX)+DISP,PA=(DS)×16+(BX)+DISP 目的操作数是寄存器寻址。 (3)源操作数是寄存器寻址; 目的操作数是寄存器间接寻址,EA=(SI).PA=(DS) × 16十(SI)。 (4)操作数是基址加变址寻址,EA= (BX)+(SI).PA= (DS) × 16十(BX)+(SI) 目的操作数是寄存器寻址。 (5)源操作数和目的操作数均为寄存器寻址。 (6)源操作数是基址寻址,EA=(BX)+10H.PA= (DS) × 16十(BX)+10H 目的操作数是寄存器寻址。 (7)源操作数是寄存器间接寻.EA= (Bx).PA= (ES) × 16+(BX)

第二章 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.试述最小模式下读/写总线周期的主要区别。 2.CPU响应中断时,为什么要执行两个连续的中断响应周期? 3.当8086微处理器响应总线请求发出HLDA信号后,有哪些引脚信号处于高 阻? 4.8086/8088微处理器响应总线请求发出HLDA信号后,执行部件EU会立即 停止操作吗?为什么? 5.在8086系统中,地址/数据复用信号是如何区分的? 6.总线周期的含义是什么? 8086/8088的基本总线周期由几个时钟组成?如 果一个CPU的时钟频率为4.77MHz,那么它的一个时钟周期为多少?一个基本总线周期为多少?若主频为l5MHz呢? 7.在最小模式总线写周期的T 1、T 2 、T 3 、T 4 状态,8086CPU分别执行什么动 作? 思考题 1.在8086系统的最大模式下为什么一定要用总线控制器?试述总线控制器 8288的主要功能,并说明它有哪些输入和输出信号?试述8086系统中时钟发生器8284A的主要作用以及可提供的几种时钟信号。

第二章 微处理器

第二章微处理器 一、教学内容: 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)

第二章 8086微处理器

考点一:掌握8086/8088CPU的功能构成及流水线技术,理解流水线管理规则。 考点二:掌握8086/8088CPU寄存器的组成及其应用。 考点三:理解8086/8088CPU的内存分配,掌握实地址模式下的存储器地址变换方法。考点四:掌握8086/8088CPU的引脚构成,理解其引脚复用的特性。 2.18086/8088CPU的功能构成 1、8086/8088是Inter公司的第三代位处理器芯片。 其特点: (1)具有20条地址总线,直接寻址能力为1MB。 (2)8086有16条数据总线,为16位微处理器;8088有8条数据总线,为准16位微处理器。 (3)片内总线和ALU均为16位,可进行8位和16位操作。 (4)8086/8088片内均由两个独立的裸机单元组成,即总线接口单元(BIU)和执行单元(EU)

2、总线接口单元BIU (1)组成部件 14个16位段寄存器(CS、DS、SS、ES); 216位指令偏移地址寄存器(IP); 3指令队列寄存器(8086CPU:6字节;8088CPU:4字节); 4形成20位物理地址的加法器 5与EU通讯的内部寄存器; 6总线控制逻辑; (2)功能:实现CPU与存储器或I/O口之间的数据传送 1自动按CS值和IP值组成20位实际地址的存储器中去取指令,一次取两个字节指令存放到指令队列中。 2由EU从指令队列中取指令,并根据EU请求,BIU将20位操作地址传送给存储器; 3取来操作数经总线控制逻辑传送到内部EU数据总线,由EU完成内部操作; 4操作结果:若EU提出请求,则由BIU负责产生20位实际目的地址,将结果存入存储器里; 3、执行单元EU (1)组成部分: 116位算术逻辑单元(ALU); 216位状态标志寄存器FLAG; 38个16位通用寄存器组(AX,BX,CX,DX,SP,BP,SI,DI); 416位数据暂存器;

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 、T 2 、T 3 和T 4 。 (二)80286\80386\80486微处理器 1.80286微处理器 (1)80286的特征 80286是一种高性能的16位微处理器,向上兼容8086/8088,可以有效地利用8086系列软件。80286引入虚拟地址空间的概念,具有存储器管理功能,能为每一个任务分配多达1G字节的虚拟地址空间并映射到16M字节的物理地址中去。80286具有保护功能,可对段的边界、属性和访问权等进行自动检查,通过四级环结构和任务之间相互隔离,可建立可靠性高的系统软件。80286具有高效率的任务转换功能,适用于多用户、多任务系统。80286工作时钟为8~12MHz,工作时钟多样化,便于组成高性能价格比的系统。 (2)80286的结构 80286内部结构中,除了EU执行单元外,总线接口部件BIU又细分成地址部件AU、指令部件IU和总线部件BU。(3)80286的工作方式 80286微处理器有两种工作方式:实地址方式和保护虚拟地址方式。 2.80386微处理器 (1)80386的特征 80386是一种灵活的32位微处理器,可以处理8位、16位、32位等多种类型的数据,有8个32位通用寄存器。80386可直接输出32位的物理地址,最大可支持4GB字节的物理内存空间。 (2)80386微处理器内部结构

大工计算机原理第3章8086微处理器的指令系统(1)资料

第3章 8086微处理器的指令系统(1) 3.1 指令系统概述 ● 指令系统是一台计算机所能(识别和执行)的全部指令的集合。它与(微处理器)有着密切的关系,不同的微处理器有不同的指令系统。8086CPU 包含133条指令 ● 指令是使计算机执行某种(特定操作)的二进制编码。 指令一般包括两个部分:(操作码域)和(地址域)。填空 操作码域:存放指令的操作码,即指明该指令应由计算机完成何种操作。 地址域:确定操作数的值或地址、操作结果的地址,有的指令的地址域还指出下一条指令的地址。 ● 机器指令:计算机能(直接识别)的二进制代码。 ● 汇编语言:汇编语言是一种符号语言,用助记符表示操作码,用符号或符号地址表示操作数或操作数地址,它与 机器指令是一一对应的 ● 汇编程序:将汇编语言源程序翻译成 机器语言(就是一条一条的机器指令),即目标程序。 3.2寻址方式 ● 根据(指令内容)确定(操作数地址)的过程,称为寻址。 ● 根据寻址方式计算所得到的地址叫做(有效地址EA ),也就是(段内偏移地址)。有效地址还需要与相应的(段基地址)组合才是20位的(物理地址PA) ,该工作由微处理器来完成。 牢记什么是EA ?什么是PA ?怎么计算? 后面有关于EA 和PA 的解释及计算方法! ● 寻址方式在两种方式下被涉及:(操作数)的寻址方式和(指令)的寻址方式。 如果没有特别说明,寻址方式是指源操作数的寻址方式。 1、隐含寻址(隐含了规定的操作数) 例:DAA 指令,只有操作码,无操作数。规定对AL 中的内容进行压缩BCD 码转换。 2、立即寻址(操作数(立即数)直接放在指令中,不需访问存储器) 例:MOV AX ,1234H (若CS=1000H ,IP=100H ) 3、寄存器寻址(操作数就放在内部寄存器中,不需访问存储器) 例:INC CX ;(CX)←(CX)+1 MOV AX ,BX ;执行后BX 内容不变 4、直接寻址(指令中直接给出操作数的存放地址) 例1:MOV AX ,[4000H] (DS =3000H ) ?操作数寻址 可以进行寄存器寻址的寄存器: (16位)AX 、BX 、CX 、DX 、SI 、DI 、SP 、BP (8位) AH 、AL 、BH 、BL 、CH 、CL 、DH 、DL

8086微处理器指令系统习题集1

8086微处理器指令系统习题集1 第三章 8086微处理器指令系统习题集 一.单项选择题 1. 逻辑地址1000:2000对应的物理地址为()。 A. 1200H B. 12000H C. 2100H D. 21000H 2. 下面哪个寄存器使用时的默认段寄存器为SS()。 A. AX B. BX C. SP D. SI 3. 当使用BP寄存器作基址寻址时,若无指定段替换,则内定在 ()段内寻址。 A.程序 B.堆栈 C.数据 D.附加 4. 在下面四组寄存器中,第()组都可用于对存储器间接 寻址方式的寄存器。 A. AX,BX,CX,IP; B. BX,SP,DX,SI C. IP,SP,BP,AX D. BP,BX, SI,DI 5. 含有立即数的指令中,该立即数被存放在()。

A. 累加器中 B. 指令操作码后的内 存单元中 C. 指令操作码前的内存单元中 D. 由该立 即数所指定的内存单元中 6. 用段基值及偏移量来指明内存单元地址的方式称为 ()。 A. 有效地址 B. 物理地址 C. 逻辑地址 D. 相对地址 7. 已知物理地址为0FFFF0H,且段内偏移量为0B800H,若对应 的段基地址放在DS中,则DS=(()。 A. 0FFFFH B. 0F47FH C. 2032H D. 0F000H 8. 现行数据段位于存储器BOOOOH到BOFFFH字节单元,则段寄 存器DS的内容及该段长度 (字节数)分别为: () A. BOOOH,1000H B. O0OOH,OFFFH C. BOOOH,OFFFH D. BOOOH,OOFFH 9.寄存器间接寻址方式中,操作数在()中。 A. 通用寄存器 B. 堆栈 C. 存储单元 D. 段寄存器 10. 下列指令中,有语法错误的指令是 ()。

【微机原理与接口课程设计】基于8086微处理器和8255A芯片的汽车信号灯微机控制系统的设计与实现

浙江理工大学课程设计 题目汽车信号灯 学院计算机科学与技术学院 专业软件工程专业 班级软件0803 班 姓名林瑞 指导教师****** 2011 年 1 月 6 日

目录 一、设计目的 (2) 二、系统硬件设计 (3) 三、系统软件设计 (9) 四、系统调试及结果 (15) 五、总结和体会 (16) 六、参考文献 (16)

一、设计目的 通过所学知识和现代计算机技术来模拟模拟汽车信号灯控制系统,把所学的理论的知识用到现实实践中去,加强了对理论知识的理解和记忆。展示了计算机技术在汽车行业的应用。 设计出汽车信号灯微机控制系统。汽车信号灯的作用是大家所熟知的,汽车通过显示不同的信号灯来告诉前后左右的行车者本汽车正在进行的操作,本控制系统采用8086微处理器作为处理器和可编程的8255A芯片来模拟汽车信号灯控制系统。通过在实验箱上分别按K1,K2,K3和K4键来显示汽车左转、右转,前进和后退等状态。左/右转弯开关K1,K2闭合时,对应的仪表板左/右转弯指示灯、左/右转弯头灯和左/右转弯尾灯闪烁;紧急开关闭合时,所有仪表板左右转弯灯、左右转弯头灯和左右转弯尾灯闪烁;当用户按K3时,也即踩刹车时,刹车开关闭合,刹车灯(左右红色尾灯)亮;停靠时(合上停靠开关),即按K4键时,所有的灯闪烁。所需执行的操作由相应的开关状态反映,

所需控制的信号灯有仪表板左/右转弯灯、暂停灯、照明远灯和照明近灯共五类类灯. 二、系统硬件设计 1.硬件连接图:利用8088驱动8255 8253来连接外 部电路。 2.器件选择: CPU(8088) 1个发光二极管 5个 74ALS373 2个电阻 5个 74ALS245 1个 74LS00 5个 8255 1个控制开关 5个 8253 1个 3、8088,8255,8253功能及说明 8088的引脚包括20根地址线,16根数据线及控制线,状态线,时钟,电源和地线等,大致可分五大类. 第一类只传送一种信息,第二类每个引脚电平的高低代表不同信息,第三类代表不同的工作方式,第四类每个引脚可以传送两种信息,第五类引脚在输入和输出时分别传送不同的信息.同时还要地址锁存器及数

8086微处理器

8086/8088微处理器 8086是全16位微处理器,内、外数据总线都是16位。8088是准16位微处理器,内数据总线是16位,外数据总线是8位。二者除外数据总线位数及与此相关的部分逻辑稍有差别外,内部结构和基本性能相同,指令系统完全兼容。 1. 内部结构 8086/8088微处理器从功能上可分为两个独立的处理单元:执行单元EU(Execution Unit)和总线接口单元BIU(Bus Interface Unit)。其内部结构如图2.1所示。 执行单元EU由8个16位的通用寄存器、1个16位的标志寄存器、1个16位的暂存寄存器、1个16位的算术逻辑单元ALU及EU控制电路组成。 8个通用寄存器中,AX、BX、CX、DX为数据寄存器,用于存放参与运算的数据或运算的结果,它们中的每一个既可以作为一个16位寄存器使用,又可以将高、低8位分别作为两个独立的8位寄存器使用。作为8位寄存器时,它们的名称分别为AL、AH、BL、BH、CL、CH、DL、DH。这些寄存器除了用作通用寄存器外,通常还有各自特殊的用法: AX作累加器,所有的I/O指令及一部分串操作必须使用AX或AL来执行,另外还有一些指令使用AX及由AX 分出的AL、AH作为缺省的操作数,如乘、除法指令;BX作基址寄存器,在计算内存地址时,常用于存放基址;CX作计数寄存器,可以在循环、重复的串操作及移位操作中被作为计数器来使用;DX作数据寄存器,在一些I/O指令中用来保存端口地址。指针寄存器SP和BP分别为堆栈指针寄存器和基址指针寄存器,作为通用寄存器的一种,它们可以存放数据,但实际上,它们更经常、更重要的用途是存放内存单元的偏移地址。而变址寄存器DI和SI则主要用于变址寻址方式的目的变址和源变址。

第三章8086微处理器指令系统习题答案

第三章8086微处理器指令系统习题答案 一、单项选择题 1.B 2.C 3.B 4.D 5.A 6.C 7.B 8.C 9.C10. D 11.D12.C13.C14.A15.C16.B17.C18.B19.D20. D 21.B22.D23.A24.D25.A26.A27.A28.D29.C30. A 31.D32.C33.B34.D35.D36.D37.A38.B39.B40. B 41.B42.A43.D44.D45.A46.C47.D48. C 二、多项选择题 1.ABC 2.ABCD 3.ABF 4.BF 5.BCD 6.CD 7.ABCDE 8.BD 三、填空题 1.操作码,操作数 2段地址,10H,偏移地址,02051H 3.AA92AH 4.立即,基址变址 5.5425H 6.D36AH 7.源操作数为8位,目的操作数为16位,不匹配;源操作数和目的操作数不能同时为存储器;INC指令操作数不能为立即数;目的操作数的的地址大于字节。 8.6310H 9.0132H,0112H 10.0000H,1,1,0,0 11.1202H,1200H,2000H 12.除4 13.7230H 14.12AAH,0BBCCH 15.6804H 16.3,0 17.4154H,6F30H 18.0,00FFH,0 四、判断题 ×V ××V ××V ×V ××××V ×V ××× 五、读程序,指出结果 1.11H 2.5678H,1234H 3.80H,0 4.1,1 5. 1 6.0132H,0112H 7.01H,00H,08H 8.0,0 9.79H,6H,7FH 10.60H,35H

相关主题
文本预览
相关文档 最新文档