ch02-8086微处理器[内部结构]_第1页
ch02-8086微处理器[内部结构]_第2页
ch02-8086微处理器[内部结构]_第3页
ch02-8086微处理器[内部结构]_第4页
ch02-8086微处理器[内部结构]_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、内部暂存器内部暂存器 IP ES SS DS CS输入输入/ /输出输出控制电路控制电路执行部分执行部分控制电路控制电路1 2 3 4 5 6ALU 标志寄存器标志寄存器F F AH AL BH BLCH CL DH DL SP BP SI DI通通用用寄寄存存器器地址地址加法加法器器指令队列缓冲器指令队列缓冲器执行部件执行部件(EU) (EU) 总线接口部件(总线接口部件(BIU)BIU)16位位20位位16位位8位位外外 部部 总总 线线暂存寄存器暂存寄存器ABDBALU数据总路线数据总路线数据寄数据寄存器存器指针指针& &变址寄变址寄存器存器AXBXCXDXCPUCPU指

2、令队列缓冲器指令队列缓冲器地址加法器地址加法器段寄存器段寄存器(CS DS SS ES)(CS DS SS ES)指令指针指令指针(IP)(IP)1616位算术逻辑单元位算术逻辑单元(ALU)(ALU)1616位标志寄存器位标志寄存器(F)(F)通用寄存器组通用寄存器组数据寄存器数据寄存器(AX BX CX DX)(AX BX CX DX)指针指针& &变址寄存器变址寄存器(SP BP SI DI)(SP BP SI DI)EUEU控制电路控制电路输入输入/ /输出控制电路输出控制电路n状态标志寄存器状态标志寄存器 进位标志进位标志C(Carry Flag)当结果的最高位产生一

3、个进位或借位,则当结果的最高位产生一个进位或借位,则C=1,否则,否则C=0。 溢出标志溢出标志O(Overflow Flag)在算术运算中,带符号数的运算结果超出了在算术运算中,带符号数的运算结果超出了8位或位或16位位 带符号数能表达的范围,则带符号数能表达的范围,则O=1,否则,否则O=0。 8位(字节)运算位(字节)运算 -128 +127 16位(字)位(字) 运算运算 -32768 +32767 符号标志符号标志S(Sign Flag) 结果的最高位(结果的最高位(D15或或D7)为)为1,则,则S=1,否则,否则 S=0。 零标志零标志Z(Zero Flag) 若运算的结果为若运

4、算的结果为0,则,则Z=1,否则,否则Z=1。 奇偶标志奇偶标志P(Parity Flag) 若结果中若结果中1的个数为偶数,则的个数为偶数,则P=1,否则,否则,P=0。 辅助进位标志辅助进位标志A(Auxitiary Flag) 在字节操作时,由低半字节在字节操作时,由低半字节(第第3位位)向高半字节,向高半字节, 字操作时低字节向高字节有进位或借位,则字操作时低字节向高字节有进位或借位,则A=1,否则,否则A=0. 方向方向 标志(标志(Direction Flag) D=1 ,串操作时地址自动减量,串操作时地址自动减量, D=0,串操作时地址自动增量。,串操作时地址自动增量。 中断允许

5、标志(中断允许标志(Interruptenable Flag) I=1,则允许,则允许CPU接收外部的中断请求,接收外部的中断请求, I=0,则屏蔽外部中断请求。,则屏蔽外部中断请求。 追踪标志(追踪标志(Trace Flag) T=1,使处理进入单步方式,以便于调试。,使处理进入单步方式,以便于调试。状状 态态 标标 志志控控 制制 标标 志志ODITSZAPC逻辑地址逻辑地址150段寄存器段寄存器0000150物理地址物理地址190n算术逻辑单元算术逻辑单元ALUALU:负责各种算术和逻辑运算。负责各种算术和逻辑运算。n指令队列:指令队列:指令队列中包含若干个(指令队列中包含若干个(808

6、680866 6个,个,808880884 4个)个)8 8 位寄存器,用于顺序存放从存储器中取出的指令,供执行单元执位寄存器,用于顺序存放从存储器中取出的指令,供执行单元执行。行。 n输入输入/ /输出控制电路输出控制电路:提供系统总线的控制信号,实现数据、地:提供系统总线的控制信号,实现数据、地址和状态信息的分时传送。址和状态信息的分时传送。 n执行单元控制电路:执行单元控制电路:是控制、定时与状态逻辑电路。用于控制执是控制、定时与状态逻辑电路。用于控制执行单元中各部件按制定的要求协调工作。行单元中各部件按制定的要求协调工作。 n8086/80888086/8088寄存器结构寄存器结构 A

7、H AL BH BL CH CL DH DL AX BX CX DX SP BP SI DI IP FLAG CS DS SS ES累加器累加器 基址基址 计数计数 数据数据堆栈指针堆栈指针 基址指针基址指针 源变址源变址 目的变址目的变址(PC)(PC)指令指针指令指针 (PSW)(PSW)状态标志状态标志代码段代码段 数据段数据段 堆栈段堆栈段 附加段附加段通用通用RcRc控制控制R 段段Rs8位寄存器位寄存器16位寄存器位寄存器C CP PU U寄寄存存器器按按功功能能分分三三类类数据数据R R指针指针& &变址变址R R 8088 8088从功能上来说分成两大部分,总线

8、接口单元从功能上来说分成两大部分,总线接口单元 BIUBIU(Bus Interface Bus Interface Unit) Unit) 和执行单元和执行单元 EUEU(Execution Unit). Execution Unit). BIU: BIU:负责与存储器接口负责与存储器接口, ,即即80888088与存储器之间的信息传送与存储器之间的信息传送, ,都是由都是由BIUBIU负责进负责进行的行的, , 即:即: (1) BIU(1) BIU从内存的指定部分取出指令,送至指令队列排队。从内存的指定部分取出指令,送至指令队列排队。 (2) (2) 从内存的指定部分取出执行指令时所需的

9、操作数,送至从内存的指定部分取出执行指令时所需的操作数,送至EUEU部分部分。 EU: EU: 负责指令的执行。负责指令的执行。 特点:特点: 将将CPUCPU分为两个单元,可以使取指令和执行指令同时进行,减少了分为两个单元,可以使取指令和执行指令同时进行,减少了 CPUCPU为取指令而等待的时间,从而提高了为取指令而等待的时间,从而提高了CPUCPU的利用率,提高了系统的利用率,提高了系统 的运行速度。的运行速度。 8088 8088有有2020条地址线,它的直接寻址能力为条地址线,它的直接寻址能力为 2 22020=1M=1M,所以在一个,所以在一个80888088组成的组成的 系统中,可

10、以有多达系统中,可以有多达1M1M字节的存储器,这字节的存储器,这1M1M字节在逻辑上可以组成一个线性矩字节在逻辑上可以组成一个线性矩 阵,地址从阵,地址从0000000000到到FFFFFFFFFF。给定一个。给定一个2020位的地址,就可以从中取出所需的指令位的地址,就可以从中取出所需的指令 和数据。和数据。 在在80888088内部,内部,ALU ALU 能进行能进行1616位的运算,有关地址寄存器如:位的运算,有关地址寄存器如:IPIP、SPSP、BXBX、 BPBP、SISI、DIDI等都是等都是1616位的,因而对地址的运算也只能是位的,因而对地址的运算也只能是1616位。其寻址的

11、范围最位。其寻址的范围最 多是多是2 21616=64K=64K。 在在80888088中怎样形成这中怎样形成这2020位的地址呢?位的地址呢?分段!分段! 将内存的将内存的1M1M字节以字节以64K64K为范围,分成若干段;在为范围,分成若干段;在80888088中设置中设置4 4个段寄存器个段寄存器CSCS、 DSDS、SSSS、ESES,在寻址一个具体的内存单元(物理地址)时,由一个段寄存器中,在寻址一个具体的内存单元(物理地址)时,由一个段寄存器中 保存的保存的1616位基地址,加上由位基地址,加上由IPIP(或(或SPSP,或,或BPBP,或,或BXBX,或,或SISI,或,或DID

12、I)中保存的、)中保存的、 可由可由CPUCPU处理的处理的1616位偏移量,来形成位偏移量,来形成2020位的物理地址。位的物理地址。 在形成物理地址时,地址加法器将段寄存器中的在形成物理地址时,地址加法器将段寄存器中的1616位数左移位数左移4 4位,然后与位,然后与16 16 位偏移地址相加,形成位偏移地址相加,形成2020位的物理地址。位的物理地址。20220=FFFFF h+1FFFFF h FFFFE h FFFFD h FFFFC h00001 h 00000 h0FFFF h16216=FFFF h+10FFFF h 0FFFE h 0FFFD h 00001 h 00000

13、h段段& &内存内存操作操作 : 将内存中将内存中2000h单元内容加单元内容加2,结果在,结果在AL中中. CS=1000h, DS=3000h.指令:指令: MOV AL, 2000 ; 把内存把内存32000h的数据取出,送到的数据取出,送到AL。 ADD AL, 02 ; 把把AL加加2。 HLT机器指令:机器指令:1010 0000 A0h 0000 0000 00h 0010 0000 20h 0000 0100 04h 0000 1010 02h 1111 0100 F4hMOV AL, 2000ADD AL, 02 HLTCPUCPU运行运行A0h 00h 20

14、h MOV AL,200004h 02h ADD AL,02 F4h HLT 指令周期指令周期 执行一条指令所需的时间称为指令周期。执行一条指令所需的时间称为指令周期。 在在8088/80868088/8086中,由于它的并行处理的特点,一条指令的执行时间为:中,由于它的并行处理的特点,一条指令的执行时间为: 取操作数取操作数+ +执行指令执行指令+ +传送结果传送结果 进一步说:进一步说: 基本时间基本时间+ +计算有效地址的时间计算有效地址的时间+ +为了读取操作数和存放操作结果而访问为了读取操作数和存放操作结果而访问内存的时间内存的时间 (但是,在(但是,在8086/80888086/8088中不同的指令的指令周期是不同的,因此我们再中不同的指令的指令周期是不同的,因此我们再将其细划,把一个指令周期划分为一个个总线周期。)将其细划,把一个指令周期划分为一个个总线周期。) 总线周期总线周期CPUCPU从存储器或输入输出端口,存(或取)一个字节所需的从存储器或输入输出端口,存(或取)一个字节所需的 时间,即为总线周期。时间,即为

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论