第3章.+80868088微处理器及其系统案例分析.ppt

第3章.+80868088微处理器及其系统案例分析.ppt

  1. 1、本文档共178页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第 3 章 8086/8088微处理器及其系统 以Intel8086/8088、Z8000和MC68000为代表的16位微处理器是第3代产品,以它们为核心部件组成的微机系统,其性能已达到中、高档小型计算机的水平。20多年来,Intel系列CPU一直占着主导地位。尽管8086/8088后续的80286、80386、80486以及Pentium系列CPU结构与功能已经发生很大变化,但从基本概念与结构以及指令格式上来讲,它们仍然是经典的8086/8088CPU的延续与提升。并且,其他系列流行的CPU(如AMD公司的6X86MX/MⅡ等)也与80x86CPU兼容。 3.1 8086/8088微处理器 8086是Intel系列的16位微处理器,是iAPX86/88系列微机的基础。它采用高速运算性能的HMOS工艺制造,芯片上集成有2.9万个晶体管,用单一的+5伏电源和40条引脚的双列直插式封装;时钟频率为5MHz~10MHz,最快的指令执行时间为0.4μs。 8086有16根数据线和20根地址线,可以处理8位或16位数据,寻址1MB的存储单元和64KB的I/O端口。它的主机设计较之8位机的性能大约提高了10倍。 在推出8086之后不久,Intel公司还推出了准16位微处理器8088。8088的内部寄存器、运算器以及内部数据总线都是按16位设计的,但外部数据总线只有8条。这样设计的目的主要是为了与Intel原有的8位外围接口芯片直接兼容。在本节中,我们对8088也将加以说明。 一、8086/8088CPU的内部结构 从功能上讲,8086可分为两个部分,即总线接口单元BIU(Bus Interface Unit)和执行单元EU(Execution Unit)。 8088的内部结构 (一)总线接口单元BIU 总线接口单元BIU的功能是负责完成CPU与存储器或I/O设备之间的数据传送。其具体任务是:BIU要从内存取指令送到指令队列缓冲器;CPU执行指令时,总线接口单元要配合执行单元从指定的内存单元或者外设端口中取数据,将数据传送给执行单元,或者把执行单元的操作结果传送到指定的内存单元或外设端口中。 BIU内有4个16位段地址寄存器CS(代码段寄存器)、DS(数据段寄存器)、SS(堆栈段寄存器)和ES(附加段寄存器),16位指令指针IP,6字节指令队列缓冲器,20位地址加法器和总线控制电路。 1.指令队列缓冲器: 8086的指令队列为6个字节,而8088的指令队列为4个字节。在执行指令的同时, 从内存中取下面1条或几条指令,取来的指令依次放在指令队列中。 “先进先出”的原则: (1) 取指时当指令队列缓冲器中存满1条指令后,EU执行。 (2) 指令队列缓冲器中只要空出2个(对8086)或空出1个(对8088)指令字节时,BIU自动执行取指操作,直到填满。 (3)在EU执行指令的过程中,指令需要对存储器或I/O设备存取数据时,BIU将在执行完现行取指的存储器周期后的下一个存储器周期,对指定的内存单元或I/O设备进行存取操作,交换的数据经BIU由EU进行处理。 (4)当EU执行完转移、调用和返回指令时,则要清除指令队列缓冲器,并要求BIU从新的地址重新开始取指令,新取的第1条指令将直接经指令队列送到EU去执行,随后取来的指令将填入指令队列缓冲器。 2.地址加法器和段寄存器: 8086有20根地址线,内部寄存器有16位,采用了16位的段寄存器与16位的偏移地址即“段加偏移”的技术。 利用各段寄存器分别来存放确定各段的起始地址的16位段地址信息,而由IP提供或由EU按寻址方式计算出寻址单元的16位偏移地址(又称为逻辑地址或简称为偏移量),然后,将它与左移4位后的段寄存器的内容同时送到地址加法器进行相加,最后形成一个20位的实际地址(又称为物理地址),以对存储单元寻址。 3.16位指令指针IP (Instruction Pointer) 其功能与8位CPU中的PC类似。正常运行时,IP中含有BIU要取的下1条指令(字节) 的偏移地址。IP在程序运行中能自动加1修正,使之指向要执行的下1条指令(字节) 。有些指令能使IP值改变或使IP值压进堆栈,或由堆栈弹出恢复原值。 实际地址和逻辑地址 实际地址(物理地址):CPU对存储器进行访问时实际寻址所使用的地址,对8086/8088来说是用20位二进制数或5位十六进制数表示的地址。 逻辑地址是指在程序和指令中表示的一种地址,它包括两部分:段地址和偏移地址。 对8086/8088来说,段地址是由16位段寄存器直接给出的16位地址;偏移地址是由指令寻址时的寄存器组合与位移量之和,它最终所给出的是一

文档评论(0)

5201394 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档