第2章80x86计算机组织_第1页
第2章80x86计算机组织_第2页
第2章80x86计算机组织_第3页
第2章80x86计算机组织_第4页
第2章80x86计算机组织_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

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

文档简介

第2章80x86计算机组织第一页,共34页。2.1计算机系统硬件:中央处理机

CPU总线控制逻辑接口接口存储器大容量存储器I/O设备I/O子系统系统总线......软件:系统软件用户软件第二页,共34页。*微型计算机系统的三个层次微处理器严格讲,微处理器≠CPUCPU指的是计算机中执行运算和控制功能的区域,由算术逻辑部件(ALU)和控制部件两大主要部分组成把CPU和一组称为寄存器(Registers)的特殊存储器集成在一片大规模集成电路或超大规模集成电路封装之中,这个器件才被称为微处理器第三页,共34页。微型计算机系统的三个层次微型计算机以微处理器为核心,配上由大规模集成电路制作的只读存储器(ROM)、读写存储器(RAM)、输入/输出接口电路及系统总线等所组成的计算机,称为微型计算机。将这些组成部分集成在一片超大规模集成电路芯片上,称为单片微型计算机,简称单片机。第四页,共34页。微型计算机系统的三个层次微型计算机系统以微型计算机为中心,配以相应的外围设备以及控制微型计算机工作的软件,就构成了完整的微型计算机系统。微型计算机如果不配有软件,通常称为裸机软件分为系统软件和应用软件两大类。微型计算机系统的三个层次:微处理器 微型计算机 微型计算机系统第五页,共34页。2.1.1计算机硬件基本结构目前计算机硬件体系结构基本上还是经典的冯·诺依曼结构,由运算器、控制器、存储器、输入设备和输出设备等五个基本部分组成。第六页,共34页。*计算机的性能指标1.字长:字长是CPU交换、加工和存放信息时其信息位的最基本长度,它通常与寄存器、运算器、传输线的宽度相一致。2.存储容量:存储器(通常指内存储器)是计算机存放二进制信息的“仓库”,由若干存储单元组成。存储单元的编号称做存储单元地址(是二进制的数字码)。存储容量与CPU构成的系统能够访问的存储单元数有关。存储单元的数目是由传送地址信息的传输线的条数决定的。3.指令系统:一台计算机所固有的基本操作指令的集合,称为该计算机的指令系统。4.运算速度:计算机完成一个具体任务所花费的时间就是完成该任务的时间指标,时间越短,表明计算机的速度越高。但是计算机各种指令执行时间是不一样的。以每秒执行基本指令的条数来大致地反映计算机的运算速度。单位为百万条指令。5.系统配置:包括软件及外设配置第七页,共34页。*2.2.4微型计算机的结构1.微型计算机的结构采用的是总线结构第八页,共34页。*2.总线结构的概念总线是传输信号的一组导线,作为微机各部件之间信息传输的公共通道。微处理器通过系统总线实现和其他组成部分的联系。微机的系统总线按功能分成三组:数据总线DB:是传输数据或代码的一组通信线,其宽度(总线的根数)一般与微处理器的字长相等。地址总线AB:是传输地址信息的一组通信线,是微处理器访问外界用于寻址的总线。AB总线是单向的,其根数决定了可以直接寻址的范围。控制总线CB:是传送各种控制信号的一组通信线。控制信号是微处理器和其他芯片间相互联络或控制用的。第九页,共34页。2.28086微处理器8086是Intel系列的16位微处理器,有16根数据线和20根地址线。因为可用20位地址,所以可寻址的地址空间达220即1M字节单元。几乎在推出8086微处理器的同时,Intel公司还推出了一种准16位的微处理器8088,8088的内部寄存器、内部运算部件以及内部操作都是按16位设计的,但对外的数据总线只有8条。第十页,共34页。2.3.18086的编程结构第十一页,共34页。80x86编程结构内部暂存器

IP

ES

SS

DS

CS输入/输出控制电路外部总线执行部分控制电路123456∑ALU标志寄存器

AHAL

BHBLCHCL

DHDL

SP

BP

SI

DI通用寄存器地址加法器指令队列缓冲器执行部件(EU)总线接口部件(BIU)16位20位16位8位第十二页,共34页。1.总线接口部件(BIU)、执行部件(EU)总线接口部件:负责与存储器、I/O输入/输出端口传送数据。包括取指令操作以及对存储器读写数据操作和对I/O接口的读写操作。执行部件功能:负责指令的执行。

第十三页,共34页。总线接口部件(BIU)组成:

(1)4个16位段地址寄存器:CS,DS,ES,SS(2)1个16位的指令指针寄存器IP(instructionPointer)(3)20位地址加法器。用来产生20位地址(4)6字节的指令队列缓冲器(8088为4字节):

CS:16位代码段寄存器(CodeSegmentRegister)

DS:16位数据段寄存器(DataSegmentRegister)

SS:16位堆栈段寄存器(StackSegmentRegister)

ES:16位附加段寄存器(ExtraSegmentRegister)第十四页,共34页。20位地址加法器

8086可用20位地址寻址1MB的内存空间,但8086内部所有的寄存器都是16位的,所以20位地址加法器可根据16位寄存器提供的信息计算出20位的物理地址。例:一条指令物理地址是根据CS和IP的内容得到的。具体计算时,将段地址寄存器的内容左移4位后加上IP的内容。设CS=2000H,IP=0200H,此时,指令的物理地址为20200H。第十五页,共34页。16位指令指针寄存器IPIP总是保存着EU要执行的下一条指令的偏移地址,而不是物理地址。程序不能直接对指令指针寄存器进行存取,但能在程序运行中自动修正,使之指向要执行的下条指令,有些指令(如转移,调用,中断,返回)能使IP的值改变,或使IP的值存进堆栈,或由堆栈恢复原有的值。第十六页,共34页。执行部件(EU)组成:(1)4个通用寄存器:AX、BX、CX、DX(2)4个专用寄存器: BP(basepointer)基数指针 SP(stackpointer)堆栈指针 SI(sourceindex)源变址 DI(dextinationindex)目的变址(3)F

16位标志寄存器(4)ALU算术逻辑部件(arithemticlogicunit)第十七页,共34页。通用寄存器AX、BX、CX、DXEU中有4个16位的寄存器AX、BX、CX和DX,可作为8位的寄存器使用,即AH、AL、BH、BL、CH、CL、DH、DL,用以存放8位数据,它们均可独立使用。AX寄存器也称为累加器,8086有许多指令都是利用累加器来执行的,如乘法、除法指令,I/O指令等BX作基址(Base)寄存器,如在查表指令XLAT中存放表的起始地址;CX作计数(Count)寄存器,如在数据串操作指令的REP中用CX存放数据单元的个数作为循环操作的次数;DX作数据(Data)寄存器,如在字的除法运算指令DIV中,存放余数。

第十八页,共34页。专用寄存器SP、BP、SI、DI指针寄存器SP和BP用来存取位于当前堆栈段中的数据,但SP和BP在使用上有区别。入栈(PUSH)和出栈(POP)指令是由SP给出栈顶的偏移地址,故称为堆栈指针寄存器。BP则是用来存放位于堆栈段中的一个数据区基址的偏移地址的,故称作基址指针寄存器。变址寄存器SI和DI是用来存放当前数据段的偏移地址的。在字符串操作中,源操作数地址的偏置放于SI中,所以SI称为源变址寄存器;目的操作数地址的偏置放于DI中,所以DI称为目的变址寄存器。第十九页,共34页。状态标志寄存器F

8086CPU的状态标志寄存器是一个16位的寄存器,9个位用作标志位,其中状态标志位有6个,控制标志有3个。状态标志用来反映EU执行算术或逻辑运算以后的结果特征。这六位都是逻辑值,判断结果为逻辑真(true)时其值为1;判断结果为逻辑假(false)时,其值为0。第二十页,共34页。PF(Parity)奇偶标志:运算结果的低8位中所含1的个数为偶数PF=1举例:2345H+3219H=555EH(0101010101011110)第二十一页,共34页。控制标志DF(方向):控制串操作指令用的控制标志,DF=0,增值;DF=1,减值IF(中断允许):控制可屏蔽中断的标志。IF=1,CPU可响应可屏蔽中断;TF(跟踪,又称为单步):TF=1,则CPU按跟踪方式执行指令。第二十二页,共34页。80x86的寄存器结构80x86的程序可见寄存器组通用寄存器专用寄存器段寄存器

AHAXALBHBXBLCHCXCLDHDXDLSPBP

SIDI

IPFLAGSCSDSSSES8086/8088/80286寄存器EAXEBXECXEDXESPEBPESIEDIEIPEFLAGS

FSGS311615870第二十三页,共34页。支持多任务处理功能支持虚拟存储器特性

保护模式下的80x86保护模式下的存储器寻址所选存储单元描述符64描述符表所选段存储器段基地址32选择器16偏移地址32逻辑地址第二十四页,共34页。2.38086的存储器组织

8086有20根地址线,具有220=1M字节的存储器地址空间。内存单元按照00000H~FFFFFH来编址。第二十五页,共34页。存储器的分段8086存储器操作采用了典型的存储器分段技术,对存储器的寻址操作不是直接用20位的物理地址,而是采用段地址加段内偏移地址的二级寻址方式。物理地址=段基址×10H+偏移地址=(段基址左移4位+偏移地址)第二十六页,共34页。存储器的逻辑分段第二十七页,共34页。什么是段基址和偏移地址?段基址(又称段地址):段首地址的高16位偏移地址:相对于段首地址的偏移量。最大寻址范围216=64KB(0000H~FFFFH)第二十八页,共34页。存储器逻辑段分布举例已知代码段、数据段、附加段和堆栈段的段基址分别为:(CS)=1055H(DS)=250AH、(ES)=8FFBH(SS)=EFF0H,它们在存储器中的分布情况如图:第二十九页,共34页。逻辑段分配第三十页,共34页。什么是物理地址和逻辑地址?表示一个存储单元的地址有两种形式:(1)物理地址(PA):就是实际地址,具有20位地址值,它是唯一标识1M字节存储空间的某一个字节的地址。寻址范围220=1MB(00000H~FFFFFH)(2)逻辑地址(EA):由段基址和偏移地址组成(均为16位)。举例:代码段逻辑地址可表成CS:IP又如逻辑地址为2000H:2000H对应的物理地址22000H物理地址与逻辑地址关系就是公式:物理地址=段基址×10H+偏移地址

第三十一页,共34页。地址运算

逻辑地址由段基址和偏移地址组成。程序以逻辑地址编址,而不是用物理地址。当CPU需要访问存储器时,由地址加法器完成下面物理地址运算:物理地址=段基址×10H+偏移地址第三十二页,共34页。PC机中存储器分布情况1)00000~003FFH

温馨提示

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

评论

0/150

提交评论