微机接口优秀_第1页
微机接口优秀_第2页
微机接口优秀_第3页
微机接口优秀_第4页
微机接口优秀_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

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

文档简介

1、第二章 微型计算机中的数制与编码(自学)作业1:1.11.52.22.42.61微机接口优秀微机接口优秀3.1 8086微处理器的结构3.2 8086的引脚信号及工作模式3.3 8088微处理器本章内容微机接口优秀 8086是Intel系列的16bit微处理器,属第三代。 8086有16bit数据总线和20bit地址线,可寻址1M空间。 8086采用+5V电源,时钟频率为510MHZ。二.总体功能结构三. 寄存器结构一.存储器管理3.1 8086微处理器的结构4微机接口优秀一. 8086存储器管理1.数据存放规律:如:2233H00012H“低对低,高对高”的存放规律如:-4 00014H机器

2、指令(机器码)按字节顺序存放。如:MOV BX,AX 89C3H00016H字符串:从低地址开始,以ASCII码值顺序存放,如:ABC00018H字节数据:一个数存放一个单元,如: 11H00011H字数据:用二个连续单元存放,字地址由2个单元中地址较小的一个确定。5微机接口优秀 8086采用分段管理的办法实现对1MB存储空间的管理(物理地址00000HFFFFFH),16bit的段寄存器存放了各段的段首址,那么它是怎样产生20bit的物理地址的呢?我们通常采用在地址编号能被16整除的地方开始分段,此时地址的低4bit均为0,这时段寄存器只用来存放高16bit即可,以下有几个概念。2.存储器的

3、分段与物理地址的形成:6微机接口优秀 段内偏移量EA (Effective Address):是指某存储单元离开该段段首址的字节数。 逻辑地址(Logical Address) :是一对地址,包含段寄存器的内容和段内偏移量,如某条指令的逻辑地址可表达为:CS : IP。 物理地址PA (Physical Address): 是指某个存储单元实际的20bit的地址,又称绝对地址。7微机接口优秀由上面的定义可知:物理地址PA=对应段寄存器10H十段内偏移量EA。物理地址的形成如下图所示。物理地址的形成 段寄存器值 000020位物理地址19 015 015 0偏移地址加法器16 位 4位 8微机接

4、口优秀例如:若CS=FFFFH,IP=0000H,则指令所在存储单元的物理地址为:PA= (CS) 10H + IP = FFFF0H 当取指令时,自动选择的段寄存器是CS,再加上IP所决定的16位偏移量,得到要取出指令具体的物理地址: 当涉及到取一个堆栈操作数时,自动选择的段寄存器是SS,再加上SP所决定的16位偏移量,得到堆栈操作所需要的20位物理地址。9微机接口优秀 当涉及到取一个操作数时,自动选择DS数据段寄存器或ES附加段寄存器,再加上16位偏移量,得到操作数的20位物理地址。16位偏移量取决于指令的寻址方式。如下图所示:IPCSSI,DI或BXDS或ESSP或BPSS代码段数据段堆

5、栈段10微机接口优秀20位AH ALBH BLCH CLDH DLSPBPDISIALU暂存寄存器标志执行部件控制电路16位CS DS SS ESIP 内部暂存器8位1 2 3 4 5 6执行部件 (EU) 总线控制逻辑16位 外部总线 指令队列缓冲器总线接口部件(BIU)通用寄存器地址加法器二. 总体功能结构8086CPU的结构框图11微机接口优秀8086从功能结构来讲,分为两大部分,即总线接口部件BIU(Bus Interface Unit )和执行部件EU(Execution Unit)。1. BIU部件由段寄存器、指令指针、地址加法器、指令队列缓冲器和控制电路等部分组成。12微机接口优

6、秀BIU负责与存储器、I/O接口电路传送信息。 BIU负责从指定内存单元取出指令,送到指令队列缓冲器中排队。 指令队列缓冲器是一个6个字节的RAM存储器(8088为4个字节),队列中最多可同时存放6个字节的指令,取来的指令是按字节顺序存放的。 当队列中有两个以上的指令字节空的时候,BIU会自动取指令到指令队列。13微机接口优秀 若执行的是一条转移指令,则存放在指令队列缓冲器中的指令就没有用了,应到新的地址单元去取出。BIU新取出的第一条指令将直接送到EU中去执行,随后重新填充指令队列缓冲器。 当指令要求将数据写到存储器和I/O电路,或需从存储器和I/O电路中读取数据时,EU向BIU发出请求,B

7、IU自动完成这些操作。2. EU部件 由ALU、通用寄存器、标志寄存器和控制电路组成,负责指令的执行。ALU、寄存器和数据传输通路均是16bit的。14微机接口优秀3. 8086与传统微处理器指令执行过程比较 传统微处理器的执行方式传统微处理器取指与执行串行进行,CPU的工作效率低。15微机接口优秀8086CPU取指与执行并行进行,大大减少了等待取指令所需时间,提高了CPU的工作效率。 8086微处理器的执行方式16微机接口优秀三. 寄存器结构8086CPU 内部寄存器DLDHCLCHBLBHALAH通用寄存器AXBXCXDXSPBP SI DI数据寄存器CSDSSSESIPFLAG变址寄存器

8、指针寄存器堆栈指针基址指针源变址目的变址指令指针状态标志代码段数据段堆栈段附加段段寄存器控制寄存器微机接口优秀(1) 通用寄存器8个16bit通用寄存器。 SP堆栈指针,存放堆栈栈顶的现行地址,与SS堆栈段寄存器一起方可确定堆栈的实际地址。 BP基址指针 SI源变址寄存器 AX,BX,CX,DX 4个16bit的通用数据寄存器,它们的高8bit AH,BH,CH,DH与低8bit AL,BL,CL,DL又可分别看成8个8bit的寄存器。 DI目的变址寄存器18微机接口优秀(2) 控制寄存器 IP (Instruction Pointer) 指令指针a. IP是指向当前将要执行的指令的16位偏移

9、地址,在8086中IP要与CS代码段寄存器的内容一起,才能得到指令的实际地址 。b. CPU从代码段中偏移地址为IP的内存单元中取出指令代码的一个字节后,IP自动加1修正,指向指令下一个单元。用户不能直接访问IP。c. 遇到转移、中断、调用等跳转指令时,IP中的内容将自动修改。19微机接口优秀TFSFZFAFPFOFDFIFCF15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 标志寄存器格式a. 6个状态标志位,即CF、PF、AF、ZF、SF和 OF,可作为控制转移的条件。 进位标志CF(Carry Flag): FLAG(标志寄存器)为16bit,其中9位有定义 当

10、结果的最高位(字节D7,字D15)产生进位(加法运算)或借位(减法运算)时,CF=1;否则,CF=0,移位和循环指令也影响CF。如:3FH+0B4H 0BFH+0B4HCF=0CF=120微机接口优秀 奇偶标志位PF(Parity Flag): 若结果中的低8位含有“1” 的个数为偶数,则PF=1;否则,PF=0。 辅助进位标志AF(Auxitiary Carry Flag): 在运算过程中若D3位有进位或借位时AF=1;否则,AF=0。该标志用于BCD运算中的十进制调整。如:38H+49H AF=1 ,若为BCD运算,则应调整。21微机接口优秀 零标志ZF(Zero Flag): 当运算结果

11、为0时ZF=1;否则,ZF=0。 符号标志SF(Sign Flag): SF等于最高位,对于带符号数,最高位为符号位,SF=1运算结果为负,SF=0为正。如:3FH+0B4H=0F3H SF=1 ,结果为负。22微机接口优秀溢出标志OF(Overflow Flag): 带符号数运算结果超出其表达范围时(字节数:-128+127,字类型数:-32768+32767), OF=1;否则, OF=0。用表达式给出(字节运算)(字运算)例: 2345H+3219H 6400H+7A3CHOF=0 未溢出OF=1 溢出23微机接口优秀 b. 3个控制标志位 追踪标志TF(Trace Flag): TF=

12、1,处理器进入单步方式,以便调试,CPU每执行一条指令自动产生一个内部中断以利于检查指令的执行情况;TF=0为连续工作方式。中断允许标志IF(Interrupt-enable Flag):IF=1,允许CPU响应外部的可屏蔽中断请求;IF=0则禁止响应。IF对外部非屏蔽中断及内部中断不起作用。 方向标志DF(Direction Flag): 在串操作指令中,DF=0时,变址指针自动增量;DF=1时,则自动减量。24微机接口优秀(3) 段寄存器CS代码段寄存器,用于定义代码段基地址,该段用于存放指令代码。DS数据段寄存器,用于定义数据段基地址,该段用于存放数据。有4个16bit的段寄存器25微机

13、接口优秀SS堆栈段寄存器,用于定义堆栈段基地址,该段作堆栈区使用。ES附加数据段,用于定义附加段基地址,与DS类似。 上述4个段在8086寻址的1MB空间内,其位置不受限制,可连续排列、分隔排列、部分重叠甚致全部重叠。26微机接口优秀8088的指令执行过程27微机接口优秀3.2 8086的引脚信号及工作模式 最小模式:即由8086组成的单处理器系统,所有的控制信号都由8086的CPU直接产生,系统中的总线控制逻辑电路被减到最少。 最大模式:即由8086组成的中等规模或者大型的系统。包含两个或多个微处理器,8086为主处理器,其它的为协处理器。一、8086的两种工作模式模式控制管脚MN/MX:+

14、5V 工作于最小模式 接地 工作于最大模式28微机接口优秀 8086采用双列直插式封装,有40个引脚(如右图所示),但总线信号数量却大于40,故8086采用了分时复用技术,部分引脚传送两种总线信号。二、8086引脚图12345678910111213141516171819204039383736353433323130292827262524232221GNDAD14AD13AD12AD11AD10AD9AD8AD7AD6AD5AD4AD3AD2AD1AD0NMIINTRCLKGNDVCCAD15A16/ S3A17/ S4A18/ S5A19/ S6BHE/ S7MN/MXRDHOLD (

15、RQ/GT0)HLDA (RQ/GT1)WR (LOCK)M/IO (S2)DT/R (S1)DEN (S0)ALE (QS0)INTA (QS1)TESTREADYRESET8086CPU8086的引脚信号注:括号内为该引脚在最大模式下的名称29微机接口优秀1. 最小模式下引脚信号及功能:(2) 地址/数据总线AD15AD0(双向、三态) 在一个总线周期的第一个时钟周期用于传送低16bit地址信息,并用地址锁存器锁存以免丢失, 其它时钟周期可用于传送数据信息,分时传送。当8086执行中断响应周期、保持响应周期时,这些引脚处于高阻状态。(1) GND,VCC(输入):电源管脚30微机接口优秀(

16、3) 地址/状态信号线A19/S6A16/S3(输出、三态) 在总线周期的第一个时钟周期(T1)用于输出地址信号的最高4bit并锁存。 其它时钟周期中用来输出状态信号S6S3,其中:S6低电平,表示8086当前与总线相连。S5表示标志寄存器中“中断允许位”的状态(IF)。S4, S3的组合指出了分段情况。如下表所示。31微机接口优秀 S4和S3的组合提供的分段信息表S4S3意 义00110101当前正在使用ES附加段当前正在使用SS堆栈段当前正在使用CS或者未使用任何段寄存器当前正在使用DS数据段 当CPU处于“保持响应”状态时,A19/S6A16/S3置为高阻状态。 若执行I/O指令,则由于

17、8086只访问64K个端口,在T1周期这4个引脚为低电平。微机接口优秀(4) BHE/S7高8位数据总线允许/状态线(输出, 三态) 在T1状态,该引脚输出BHE信号,表示高8位数据总线AD15AD8上的数据是否有效,与地址线A0一起表示当前总线使用情况。 在其它时钟周期,输出为状态信号S7。但8086芯片, S7未定义。BHEAD0总线使用情况0016位数据总线上进行字传送01高8位数据总线上进行字节传送10低8位数据总线上进行字节传送11无效33微机接口优秀(5) NMI非屏蔽中断请求信号 (输入)边沿触发,该线上的中断请求信号不能用软件屏蔽,电平由低到高,便在当前指令结束后引起中断。(6

18、) INTR可屏蔽中断请求信号 (输入)高电平有效,8086在每一个指令周期的最后一个T状态采样这条线,若为有效,且IF=1,则8086在执行完当前指令即转入中断响应周期。34微机接口优秀(7) CLK系统时钟输入信号 时钟信号为CPU和总线控制逻辑电路提供定时脉冲。常用INTEL8284A时钟发生器提供CLK信号。(8) RD读信号 (输出,三态)低电平有效。表示将对内存或I/O端口读操作。由M/IO信号决定是对存储器读还是对I/O端口读。35微机接口优秀(9) RESET系统复位信号 (输入)高电平有效,高电平维持4个时钟周期以上时,8086立即结束现行操作,进入内部复位状态,CPU各内部

19、寄存器被设置为初值:CS=0FFFFH,FR、IP、DS、ES、SS及其它寄存器均初始化为0000H。(10) READY准备就绪信号 (输入)高电平有效,是从所寻址的存储器或I/O电路来的响应信号,用于解决CPU与慢速存储器或I/O电路的同步问题。36微机接口优秀(12) MN/MX最小/最大模式控制信息低电平 8086处于最大模式。高电平 8086处于最小模式。 低电平有效。与WAIT等待指令结合使用,当CPU执行WAIT指令时,CPU处于空转状态进行等待直到检测到TEST信号有效时结束,CPU继续往下执行指令。(11) TEST测试信号 (输入)37微机接口优秀(13) M/IO,存储器

20、/输入输出操作选择信号 (输出,三态)区分CPU进行的是存储器还是I/O访问,见下表。RDM/IO操 作1000读存储器数据读I / O端口数据 RD与 M/IO的组合及对应的操作表38微机接口优秀(14) DEN数据允许信号(输出,三态)外接数据总线收发器8286/8287的选通信号,低电平有效。(15) DT/ R数据收发控制信号 (输出、三态)DT/R即为8086输出给数据总线收发器的控制信号。 DT/R高电平,8086发送数据; DT/R低电平,8086接收数据。39微机接口优秀(16) WR写信号 (输出,三态)1000CPU对存储器进行写操作CPU对I/O端口进行写操作 WR与 M

21、/IO 的组合及对应的操作表操 作WRM/IO低电平有效。WR与M/IO的组合对应的操作如下表所示。40微机接口优秀(17) INTA中断响应信号 (输出,三态)低电平有效,CPU响应外部可屏蔽中断请求以后,便发出中断响应信号,作为对中断请求的回答。(18) ALE地址锁存允许信号 (输出)高电平有效,此信号在T1状态有效,为地址码锁存的选通信号,送地址锁存器。41微机接口优秀 高电平有效。系统中其他的总线主设备要获得对总线的控制权时,向8086发出高电平的HOLD信号。(19) HOLD保持请求信号 (输入)(20) HLDA保持响应信号 (输出) 高电平有效。当CPU响应保持请求HOLD时

22、,便发出HLDA高电平的应答信号,从而将总线控制权让给发出保持请求的设备。42微机接口优秀8086最小模式系统43微机接口优秀1片时钟发生器8284A8086最小模式系统硬件组成: 8284A为系统提供符合要求的CLK时钟信号和准备好信号READY和复位信号RESET。8284A和振荡源之间有以下两种不同的连接方式:脉冲发生器做振荡源晶体振荡器做振荡源 无论采用哪种方法,8284A输出的时钟频率均为振荡源频率的1/3。44微机接口优秀3片地址锁存器8282(8283)或74LS373 8282是带有三态缓冲器的8位通用数据锁存器,功能是锁存CPU发出的动态地址。为何需要3片地址锁存器?思考:4

23、5微机接口优秀2片总线收发器8286/8287 当系统中所连存储器和外设较多时,需要通过总线收发器增强数据总线的驱动能力。为何需要2片总线收发器?思考:46微机接口优秀2. 最大模式下引脚信号及功能 若将8086的MN/MX引脚接地便工作在最大模式。此时仅2431引脚信号与最小模式不同,如下表所示。引脚编号最小模式最大模式2425262728293031QS1QS0S0S1S2LOCKRQ/GT1RQ/GT0INTAALEDENDT/RM/IOWRHLDAHOLD 两种模式下8086的2431引脚信号表微机接口优秀在最大模式下,这三个信号组合起来指出当前总线周期所进行的操作类型,见下表。 2,

24、 1和 0编码与总线周期表发中断响应信号读I/O端口写I/O端口暂停取指令读存储器写存储器 无源状态010101010000111100110011S总线周期2S10S(21) S2,S1,S0总线周期状态信号 (输出、三态)48微机接口优秀(22) RQ/GT1和RQ/GT0总线请求/允许信号 (双向)在最大模式下,用于8086CPU与其它协处理器之间交换总线使用权,和最小模式下的HOLD及HLDA类同。RQ/GT1和RQ/GT0是两个同类型的信号,表示可以同时连接两个协处理器,其中RQ/GT0优先级较高。49微机接口优秀(23) LOCK总线封锁信号 (输出,三态)此信号有效时,系统中其他

25、总线主部件不能占有总线。这个信号由软件设置,当在指令前加上LOCK前缀时,则在执行这条指令期间,LOCK保持低电平,该条指令执行完毕后LOCK引脚变为高电平。另外8086在两个中断响应周期之间,LOCK信号也自动变为有效电平,以防一个完整的中断响应被其它部件占有总线而间断。50微机接口优秀(24) QS1和QS0指令队列状态信号 (输出)QS1和QS0编码与队列状态表QS1QS0 队列状态00110101空操作取走指令的第一个字节队列空从队列里取出的字节是指令的后续字节51微机接口优秀8086在最大模式下的典型配置8086CPU时钟发生器(8284A)8288CLKDENALEMN / MXS

26、TBOEOETIORCIOWC数据总线MRDCMWTCBHE8282382862CLKREADYRESETBHES0S1S2S0S1S2DT/RA19A0D15D0INTAA19A16AD15AD0 1READYRESET总线控制器地址总线微机接口优秀1片总线控制器82888086最大模式系统硬件组成:局部总线方式(IOB高电平)系统总线方式(IOB低电平)8288有两种工作方式,由IOB引脚选择: 8086CPU工作于最大模式时,不直接产生总线控制信号,而是在每个总线周期开始之前输出状态信息S2、S1和S0,用于指示该总线周期的操作类型。8288用来对S2、S1和S0译码,产生相应的总线命令

27、和控制信号。53微机接口优秀三、8086系统中的堆栈1. 堆栈的定义堆栈是存储器中的一个特殊数据区,其功能是按“后进先出”的原则存放需要暂时保存的数据。存放信息的最后一个单元叫做栈顶,用堆栈指针SP(Stack Pointer)指示。54微机接口优秀堆栈段起始地址栈底及初始栈顶 地址 存储单元10200H10202H10204H10206H10208H1020AH1020CH10230H 00 11 SS 10 20SP初值 00 30堆栈的初始化55微机接口优秀入栈操作栈顶PUSH AX 12 34PUSH BX 1A B110200H10202H10204H10206H10208H1022CH1022EH10230H 00 11 SS 10 20 SP 00 30栈底00 2E00 30堆栈段的起始地址34 12B1 1A00 2E00 2C56微机接口优秀出栈操作栈顶POP AXPOP BX10200H10202H10204H10206H10208H1022CH B1 1A1022EH 34 1210230H 00 11 SS 10 20 SP 00 2C(栈底)堆栈段起始地址00 2E00 30 1A B1 12 3457微机接口优秀2. 堆栈操作无

温馨提示

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

评论

0/150

提交评论