最新微机原理与接口技术第2章-1PPT课件.ppt
《最新微机原理与接口技术第2章-1PPT课件.ppt》由会员分享,可在线阅读,更多相关《最新微机原理与接口技术第2章-1PPT课件.ppt(43页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、微机原理与接口技术第微机原理与接口技术第2 2章章-1-1本章主要内容l8086微处理器l80286、80386lPentium2总线接口部件(BIU)的组成l4个16位段地址寄存器 CS 16位的代码段寄存器 DS 16位的数据段寄存器 ES 16位的附加段寄存器 SS 16位的堆栈段寄存器l16位的指令指针寄存器IP(Instruction Pointer)l20位的地址加法器 利用16位的段寄存器和另一个16位地址寄存器值,形成20位的物理地址,送20位地址总线。l6字节的指令队列缓冲器l总线控制电路CPU与外界总线联系的转接电路包括三组总线:20位地址总线,16位双向数据总线和一组控制
2、总线91)存储器的分段10代码段寄存器代码段寄存器代码段寄存器代码段寄存器CSCS存储程序当前使用的代码段的段地址。代码段用来存放程序的指令代码。下一条要读取指令在代码段中的偏移地址由指令指针寄存器IP提供;数据段寄存器数据段寄存器数据段寄存器数据段寄存器DSDS用来存放程序当前使用的数据段的段地址。一般来说,程序中所用到的原始数据、中间结果以及最终结果都存放在数据段中;堆栈段寄存器堆栈段寄存器堆栈段寄存器堆栈段寄存器SSSS用来存放程序当前所使用的堆栈段的段地址。堆栈是在存储器中开辟的一个特定区域;附加数据段寄存器附加数据段寄存器附加数据段寄存器附加数据段寄存器ESES用来存放程序当前使用的
3、附加数据段的段地址。附加数据段通常用于存放字符串操作时的目的字符串。程序员在编写汇编语言源程序时,应该按照上述规定将程序的程序员在编写汇编语言源程序时,应该按照上述规定将程序的各个部分放在规定的段内。各个部分放在规定的段内。每个源程序必须至少有一个代码段每个源程序必须至少有一个代码段,而,而数据段、堆栈段和附加数据段则根据程序的需要决定是否设置。数据段、堆栈段和附加数据段则根据程序的需要决定是否设置。1122)指令指针寄存器)指令指针寄存器)指令指针寄存器)指令指针寄存器指令指针寄存器指令指针寄存器指令指针寄存器指令指针寄存器IPIP用来存放下一条要读取的指令在代码段中的偏移地址。IP在程序运
4、行中能自动加1修正,从而使其始终存放的是下一条要读取的指令在代码段的偏移地址。由于由于CS和和IP的内容决定了程序的执行顺序,因此程序员不能直接用赋值的内容决定了程序的执行顺序,因此程序员不能直接用赋值指令对其内容进行修改。指令对其内容进行修改。有些指令能使IP和CS的值改变(如跳转指令)或使其值压入堆栈或从堆栈中弹出恢复原值(如子程序调用指令和返回指令)。12 3)20位地址加法器位地址加法器8086/8088CPU在对存储单元进行访问以读取指令或读/写操作数时,必须在地址总线上提供20位的地址信息,以便选中对应的存储单元。那么,CPU是如何产生20位地址的呢?CPU提供的用来对存储单元进行
5、访问的20位地址是由BIU中的地址加法器产生的。13存储器中每个存储单元的地址可有以下两种表示方式:逻辑地址:逻辑地址:逻辑地址:逻辑地址:其表达形式为“段地址:段内偏移地址段地址:段内偏移地址段地址:段内偏移地址段地址:段内偏移地址”。段内偏移地址又称为“有效地址EA(EffectiveAddress)。在读指令时,在读指令时,在读指令时,在读指令时,段地址由代码段寄存器段地址由代码段寄存器段地址由代码段寄存器段地址由代码段寄存器CSCS提供,当前要读取指令在代码段中的提供,当前要读取指令在代码段中的提供,当前要读取指令在代码段中的提供,当前要读取指令在代码段中的偏移地址由指令指针寄存器偏移
6、地址由指令指针寄存器偏移地址由指令指针寄存器偏移地址由指令指针寄存器IPIP提供;在读取或存储操作数时,提供;在读取或存储操作数时,提供;在读取或存储操作数时,提供;在读取或存储操作数时,根据具体操作,段地址由根据具体操作,段地址由根据具体操作,段地址由根据具体操作,段地址由DSDS、ESES或或或或SSSS提供,段内偏移地址由提供,段内偏移地址由提供,段内偏移地址由提供,段内偏移地址由指令给出。指令给出。指令给出。指令给出。14物物理理地地址址:CPU与存储器进行数据交换时在地址总线上提供的20位地址信息称为物理地址。物理地址的形成过程如图所示。由IP提供或由EU根据指令所提供寻址方式计算出
7、寻址单元的16位段内偏移地址后,把该偏移地址和段寄存器内容左移四位后(相当于乘以10H)得到的段基址(段内第一个存储单元的物理地址)同时送到BIU中的地址加法器,形成一个20位的物理地址,从而实现对存储单元的访问。由逻辑地址求物理地址的公式为:物理地址物理地址物理地址物理地址=段地址段地址段地址段地址 10H+10H+段内偏移地址段内偏移地址段内偏移地址段内偏移地址如假设当前(CS)=20A8H,(IP)=2008H,那么,下一条从内存中读取的指令所在存储单元的物理地址为:20A8H10H+2008H=22A88H。15物理地址的形成16 4)4)指令队列缓冲器指令队列缓冲器指令队列缓冲器指令
8、队列缓冲器8086的的指指令令队队列列有有6个个字字节节,当当指指令令队队列列出出现现空空字字节节时时,BIU就就自自动动执执行行一一次次取取指指令令周周期期,将将下下一一条条要要执执行行的的指指令令从从内内存存单单元元读读入入指指令令队队列列。它它们们采采用用“先先进进先先出出”原原则则,按按顺顺序序存存放放,并并按按顺顺序取到序取到EU中去执行。中去执行。指令队列的引入使得指令队列的引入使得指令队列的引入使得指令队列的引入使得EUEU和和和和BIUBIU可并行工作,即可并行工作,即可并行工作,即可并行工作,即BIUBIU在读指令在读指令在读指令在读指令时,并不影响时,并不影响时,并不影响时
9、,并不影响EUEU单元执行指令,单元执行指令,单元执行指令,单元执行指令,EUEU单元可以连续不断地直接从单元可以连续不断地直接从单元可以连续不断地直接从单元可以连续不断地直接从指令队列中取到要执行的指令代码,从而减少了指令队列中取到要执行的指令代码,从而减少了指令队列中取到要执行的指令代码,从而减少了指令队列中取到要执行的指令代码,从而减少了CPUCPU为取指令而为取指令而为取指令而为取指令而等待的时间,提高了等待的时间,提高了等待的时间,提高了等待的时间,提高了CPUCPU的利用率,加快了整机的运行速度。的利用率,加快了整机的运行速度。的利用率,加快了整机的运行速度。的利用率,加快了整机的
10、运行速度。17182 2执行单元执行单元执行单元执行单元EUEU执执行行单单元元EU不不与与系系统统外外部部直直接接相相连连,它它的的功功能能只只是是负负责责执执行行指指令令。执执行行的的指指令令从从BIU的的指指令令队队列列缓缓冲冲器器中中直直接接得得到到,执执行行指指令令时时若若需需要要从从存存储储器器或或I/O端端口口读读写写操操作作数数时时,由由EU向向BIU发发出出请请求求,再再由由BIU对对存储器或存储器或I/O端口进行访问。端口进行访问。19执行部件EU的组成EU控制电路:指令译码,产生定时和控制信号16位算术逻辑单元ALU:进行算术逻辑运算8个16位通用寄存器AX、BX、CX、
11、DX、SP、BP、SI、DI16位标志寄存器FLAGS:存放运算结果的状态和控制标志数据暂存寄存器:暂存参加运算的数据EU控制电路:它是控制、定时与状态逻辑电路,接收从BIU中指令队列取来的指令,经过指令译码形成各种定时控制信号,对EU的各个部件实现特定的定时操作。202.2 8086/8088寄存器结构寄存器结构l内部有14个16位寄存器,按功能可分为四大类8个通用寄存器:AX、BX、CX、DX、SP、BP、SI、DI4个段寄存器:CS、DS、SS、ES1个控制寄存器:IP1个标志寄存器:FLAGS 212.2.1 通用寄存器lAX、BX、CX、DX一般用于存放参与运算的操作数或运算结果每个
12、数据寄存器都是16位的,但又可将高、低8位分别作为两个独立的8位寄存器来用。高8位分别记作AH、BH、CH、DH,低8位分别记作AL,BL,CL,DL。注注意意,8086/8088 CPU的的14个个寄寄存存器器除除了了这这4个个16位位寄寄存存器器能能分分别别当当作作两两个个8位位寄寄存存器器来来用用之之外外,其它寄存器都不能如此使用。其它寄存器都不能如此使用。22AX(Accumulator)称称为为累累加加器器。用该寄存器存放运算结果可使指令简化,提高指令的执行速度。此外,所有的I/O指令都使用该寄存器与外设端口交换信息。BX(Base)称称为为基基址址寄寄存存器器。8086/8088C
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 最新 微机 原理 接口 技术 PPT 课件
限制150内