欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    IBMPC微机组成原理与基本结构.ppt

    • 资源ID:2867726       资源大小:218KB        全文页数:48页
    • 资源格式: PPT        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    IBMPC微机组成原理与基本结构.ppt

    1,IBM-PC微机组成原理,IBM-PC微机基本结构,一、微机的一般构成,运算器、控制器、存储器、输入设备和输出设备。,一般计算机应包括五大部件:,由于微机的主要特点是其体积很小,因此在系统设计上就有一些特殊考虑,它将运算器和控制器两大部件集成在一个集成电路芯片上,称为微处理器,也叫中央处理器,简称CPU,2,微处理器CPU,主存储器,I/O接口,I/O设备,I/O接口,I/O设备,地址总线,数据总线,控制总线,系统总线,微机硬件系统基本组成框图,3,1、中央处理器CPU,微型计算机中的中央处理器也叫微处理器。它包括运算器和控制器。,功能:,从主存储器中逐条取出构成程序的指令序列,分析各指令的功能,控制计算机各部件完成指定功能的各项操作。,2、主存储器,主存储器是用于存放程序和数据的部件。它由若干个存储单元构成。存储单元的多少表示存储器的容量。每个存储单元使用一个唯一的编号来标识,称为存储单元的地址。对每个存储单元内容的存和取是按照地址进行访问的。,4,计算机存储信息的基本单位是一个二进制位,一位可存储一个二进制数0或1。每8位组成一个字节(BYTE)。,7 6 5 4 3 2 1 0,在大多数计算机中,存储器的组织都是以字节为基本单位。每一个基本单位称为一个存储单元。,一个存储器是由许多的存储单元构成的,如某存储器的容量为32KB,1MB,128MB等等。为了区分这些不同的存储单元,一般使用单元地址来指示各个存储单元。如一个10位二进制数表示的地址,可以用来区分21010241K个单元。,存储器,地址,0000000000,0000000001,0000000010,1111111111,5,习惯上将CPU与主存储器合称为主机,在计算机中,除了主存储器之外,一般还配置有辅助存储器,简称辅存。由于它的位置是在主机之外,因此也叫做外存。,3、输入输出设备及接口,输入设备将外部信息(程序、数据和命令)送入计算机。包括键盘、鼠标等。,输出设备将计算机处理后的结果转换为人或其它系统能识别的信息形式向外输出。如显示器、打印机等。,有的设备既具有输入功能又具有输出功能。如磁盘、磁带、触摸显示屏等。,6,由于I/O设备的工作速度、工作原理以及所处理的信息格式等与主机相差很大,因此I/O设备要通过I/O接口才能与系统总线连接。,I/O接口是主机与I/O设备之间设置的逻辑控制部件。通过它实现主机与I/O设备间的信息传送。,4、系统总线,系统总线将CPU、存储器和I/O设备连接起来,用于传送各大部件之间的信息。,系统总线包括地址总线、数据总线和控制总线三组。它们分别用于传送不同的信息。,7,二、Intel8086/8088 CPU的功能结构,指令是构成汇编语言程序的最基本单位。就象高级语言中的一个语句。,程序是由一系列的指令指令序列构成。,CPU执行指令序列就是重复执行以下两个步骤:,从存储器中取指令,执行指令所规定的功能,8,这两个步骤的执行又可以分为两种情况:,1.串行方式,取指 执行 存数 取指 执行 取指 取数 执行,忙 闲 忙 忙 闲 忙 忙 闲,CPU,外部总线,特点:,(1)当CPU在执行指令时,不需要占用外部总线,但此时总线也不能作它用,因此外部总线的空闲时间比较多。,(2)在从存储器取指令或数据时,总线处于忙状态,其所占用的时间也较长。但CPU却只需要使用很短的时间去处理。因此大部分时间都是处于闲置状态。,采用串行工作方式的计算机其运行速度较慢,时间,9,2.指令流水线结构,AH,AL,BH,BL,CH,CL,DI,SP,BP,SI,地址加法器,IP,CS,DS,SS,ES,总线控制逻辑,暂存器,标志寄存器,ALU,EU控制器,1 2 3 4 5 6,控制信号,16位数据总线,段寄存器,通用寄存器组,外部总线,16位CPU内总线,AX,BX,CX,20位地址总线,指令队列,执行单元(EU),总线接口单元(BIU),10,(1)执行单元EU,EU的主要任务是分析与执行指令,它包括:,A、从指令队列中取出指令代码,由控制器译码后产生相应的控制信号,控制各部件完成指令规定的操作。,B、对操作数执行各种指定的算术或逻辑运算,C、向BIU发送访问主存或I/0的命令,并提供相应的地址和传送的数据,11,(2)总线接口单元BIU,BIU负责CPU与存储器、I/0的信息传送。具体功能包括:,A、取指令根据CS寄存器和指令指针IP形成20位的物理地址,从该地址指定的存储器单元中取出指令,并暂存到指令队列中,等待EU取走并执行。,B、存取数据在EU执行指令的过程中,如果需要与存储器或I/O端口传送数据时,根据EU提供的数据和地址,并结合相应的段寄存器(DS、ES或SS)的内容,进入外部总线周期,与存储器或I/0进行数据的存取。,EU和BIU是既分工又合作的两个独立部分。它们的操作在一定程序上是并行工作的,分别完成不同的任务,因而大大加快了指令执行速度。,12,Intel 8086/8088 运行时执行过程大致如下图所示。,执行,执行,执行,执行,忙,存数,取数,取指,取指,取指,取指,忙,忙,忙,忙,忙,EU,BIU,外部总线,时间,.,.,.,等待,13,2.2 Intel 8086/8088CPU寄存器结构及其用途,一、通用寄存器,AH,AL,BH,BL,CH,CL,DH,DL,AX,BX,CX,DX,SP,BP,SI,DI,IP,FLAGS,DS,ES,SS,CS,累加器,基址寄存器,计数寄存器,数据寄存器,堆栈寄存器,基址寄存器,源变址寄存器,目的变址寄存器,指令指针,标志寄存器,堆栈段寄存器,代码段寄存器,数据段寄存器,附加段寄存器,通用寄存器8个,控制寄存器2个,段寄存器4个,14,Intel 8086/8088有8个16位通用寄存器,它们一般不只用作某个特定的功能,而是具有良好的通用性,可以由程序设计人员进行编程访问。,1.数据寄存器,它包括AX、BX、CX和DX四个寄存器。它们中的每一个既可以是16位寄存器,也可以分成两个8位寄存器使用。即可以当作8个独立的8位寄存器使用。,数据寄存器既可以用来存放参加运算的操作数,也可以存放运算的结果。在多数情况下,使用这些寄存器时必须在指令中指明。,例:MOV AX,BX;将BX的内容送到AX中 ADD CH,DH;将DH和CH的内容相加,结果送到CH,15,在有些指令中,不需要明确指出使用的寄存器名,即隐念使用了某寄存器,称为隐含使用。,例如,在循环指令 LOOP中,CX被隐含指定作循环次数计数用。,另外,个别指令对寄存器有特定的使用,并且又必须在指令中指明它的名字,这类寄存器的使用称为特定使用。,例如,在移位指令(SHL AX,CL)中,CL被固定用作移位次数。,2.指针寄存器,指针寄存器有堆栈指针SP和基址指针BP,它们一般被用作16位地址指针,在形成20位的物理地址时常被作为偏移量使用。,16,SP指针在进行堆栈操作时,被隐含使用,指向堆栈顶部单元。,BP指针被用来指向堆栈段内某一存储单元。BP除用作地址指针外也可以象数据寄存器一 样,存放参加运算的操作数和运算的结果。,3.变址寄存器,有两个16位的变址寄存器SI和DI,一般被用来作地址指针。,SI源变址寄存器,DI目的变址寄存器,同BP寄存器一样,SI和DI也可以用作通用数据寄存器存放操作数和运算结果。,17,二、段寄存器,8086/8088CPU在使用存储器时,将它划分成若干个段。每个段用来存放不同目的内容,如程序代码、数据等等。每个存储段用一个段寄存器来指明该段的起始位置(也叫段基址)。,代码段,数据段,堆栈段,附加段,ES,CS,DS,SS,段寄存器,段基址,段基址,段基址,段基址,18,CPU在访问存储器时必须指明两个内容:,(1)所访问的存储单元属于哪个段,即指明使用的段寄存器。,(2)该存储单元与段起始地址(段基址)的偏移大小,即偏移量。,在程序设计中,一个程序将存储器划分成多少个存储段是任意的。但在程序运行的任何时刻最多只能有用CS、DS、ES和SS分别指定的4个当前段。,19,三、指令指针IP,CPU在运行程序时,以IP的内容作为将要执行指令在内存中的存放地址的偏移量,以段寄存器CS作为代码段的基址指针,即以CS和IP的内容共同构成了一条指令的存放地址。,CPU根据CS和IP寄存器的内容到内存中去取指令,当取出一条指令后,IP内容自动修改为指向下一条指令。,.,.,.,CS,IP,偏移量,代码段基址,CPU,下一条指令,正在执行的指令,20,子程序调用指令CALL,将IP原有内容自动压入堆栈,而将子程序的入口地址偏移量自动送入IP,而返回指令RET,又自动从堆栈中弹回原有IP的内容。,转移指令将指令中的目的地址的偏移量送入IP,例如,下面两种指令就可以自动改变IP寄存器的内容。,注意:IP的内容不能被直接进行访问,即不能用指令去读IP的值,也不能用指令给它赋值。但是可以通过某些指令的执行而自动修改IP的内容。,21,四、标志寄存器,标志寄存器是用来反映CPU在程序运行时的某些状态,如是否有进位、奇偶性、结果的符号、结果是否为零等等。,8086/8088CPU中标志寄存器的长度为16位,但其中只有9位才有意义。,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0,OF,DF,IF,TF,SF,ZF,AF,PF,CF,进位位,奇偶位,零值位,辅助进位位,单步标志位,符号位,中断允许位,方向位,溢出位,22,1.进位位CF,在进行算术运算时,若最高位(对字操作是第15位,字节操作是第7位)产生进位或借位时CF被自动置“1”,否则置“0”。,在移位类指令中,CF也被用来存放从最高位(左移时)或最低位(右移时)移出的数值(0或1)。,2.奇偶位PF,当指令操作结果的低8位中含有1的个数为偶数时,则PF被置1,否则PF被置0。,注意:PF只反映操作结果的低8位的奇偶性,与指令操作数的长度无关。,23,3.辅助进位位AF,在进行算术运算时,若低字节的低四位向高4位产生进位或借位,即第3位产生进位或借位时,AF位被置1,否则置0。AF标志位用于十进制运算的调整。,注意:AF只反映运算结果低八位,与操作数长度无关。,4.零值位ZF,若运算结果各位全为0,则ZF被置1,否则置0。,5.符号位SF,将运算结果视为带符号数,当运算结果为负数时SF被置1,为正数时,则置0。,24,由于第7位是字节操作数的符号位,而第15位是字操作数的符号位,因此,SF位与运算结果的最高位(第7位或第15位)相一致。,6.溢出位OF,当运算结果超过机器用补码所能表示数的范围时,则OF置1,否则置0.,字节数据,机器用补码所能表示的数范围为-128+127。字数据的表示范围为:-32768+32767,注意:溢出与进位是两个完全不同的概念,不能相互混淆。,25,例如:计算-85D+(-1D)=-86D,10101011 B,+)11111111 B,10101010 B,1,-86D,计算 100 D+100 D=200 D,01100100 B,+)01100100 B,11001000 B-56 D,CF=0,OF=1,结果发生溢出,即结果出错。,进位被丢弃,CF=1,OF=0,结果正确。,26,计算-85 D+-117 D=-202 D,10101011 B,+)10001011 B,00110110 B 54 D,1,CF=1,OF=1,结果发生溢出,即结果出错。,7.单步标志位TF(Trace Flag),单步标志也叫跟踪位,该标志为控制标志位,当TF位被设置为1时,每执行一条指令后,CPU暂停运行,即产生单步中断。单步标志位供调试程序使用。,27,8.中断允许位IF,该标志位为控制标志位。当IF被设置为1时,CPU可以响应可屏蔽中断,否则不允许响应可屏蔽中断。,9.方向位DF,DF也是控制标志位。它被用来规定串操作指令的增减方向。当DF=0时,串操作指令自动使变址寄存器(SI和DI)的内容递增。当DF=1时,串操作指令自动使变址寄存器的内容递减。,28,2.3 存储器,一、存储器的组成,1.存储器是由若干个存储单元构成,存储单元的多少就表示了存储器的容量。,2.每个存储单元存放相同长度的二进制数,一个存储单元的长度一般为8位二进制数,称为一个字节(BYTE)。,3.每个存储单元有一个唯一的地址编码地址,8086/8088CPU具有20根地址线,即它可以产生20位的地址码,它的存储器寻址能力为220,即1兆字节空间。,29,这一兆字节存储单元的地址范围为:00.011.1。如图所示。,20位,20位,.,0,7,存储单元(字节),二进制数地址,00000000000000000000,00000000000000000001,00000000000000000010,.,11111111111111111110,11111111111111111111,十六进制数地址,00000H,00001H,00002H,FFFFEH,FFFFFH,.,为了方便书写,在源程序中常用5位十六进制数或一个符号来表示一个存储单元的地址。,30,4.任何两个相邻字节单元就构成一个字单元,一个字存储单元(WORD)的长度为16位二进制数,即两个字节。字单元的地址为两个字节单元中较小地址字节单元的地址。,16位长数据的存放规则是低8位放在较低地址字节单元中,高8位放在较高地址字节单元中。,例如,将数据3456H放在地址为09235H的存储单元中的存储分配如图所示。,.,.,地址,存储单元,09235H,09236H,56,34,31,5、在定义一个地址时必须指出是字节或字类型属性,由于存储单元可分为字单元和字节单元,因此8086/8088CPU访问内存的指令中,分为字节访问和字访问两种指令。,二、存储器的段结构,8086/8088系统的存储器段结构具有以下几个特点:,1.8086/8088CPU将1MB的存储空间划分成若干个段,每个段最大长度为64K(65536)个字节单元组成。,在8086/8088的汇编程序中,用户可以根据自己需要来设定段的个数、各个段长度和每个段的用途。并且代码或数据可以存放在段内任意单元中。,32,2.每个段的基址必须是一个小节的首址。,段基址一个段的起始地址。,在存储器中规定从0地址开始,每16个字节单元称为一个小节(Paragraph)。因此,1MB内存就可划分为64K个小节。,第 1 小节:00000H,00001H,00002H0000FH第 2 小节:00010H,00011H,00012H0011FH第65535小节:FFFE0H FFFE1H FFFE2HFFFEFH第65536小节:FFFF0H FFFF1H FFFF2HFFFFFH,.,.,.,.,.,可以看出,每个小节的首地址最低位必为0(16进制数表示)。因此段基址只能是上述64K个小节首址之一。,33,3.逻辑段在物理存储器中可以是邻接的、间隔的、部分重叠的和完全重叠的等4种情况。,逻辑段是指在汇编语言源程序中设置的段。,内存中的一个物理存储单元可以映象到一个或多个逻辑段中。,物理存储器,00000H,10000H,DA_BYTE,段1,段2,段3,段4,段5,邻接,部分重叠,完全重叠,间隔,逻辑段,0FFFFFH,DA_BYTE物理单元可以映象到逻辑段2、段3和段4中。,34,4、在任一时刻,一个程序只能访问4个段中的内容。,4个段分别是代码段、数据段、堆栈段和附加段,称为当前段。4个段寄存器CS、DS、SS和ES分别保存了它们段基址的高16位地址,称为段基值。段基址的最低4位为0。(小节首址的低4位为全0)。,三、逻辑地址与物理地址及相互关系,1.物理地址,在1MB的存储空间中,每个存储单元的物理地址是唯一的,它就是该存储单元的20位地址。,8086/8088的物理地址范围:00000H0FFFFFH,35,CPU与存储器之间的任何信息交换都使用物理地址。,2.逻辑地址,在程序设计中,为了便于程序的开发和对存储器进行动态管理,使用了逻辑地址。,一个逻辑地址包括两个部分:段基值和偏移量(OFFSET),段基值:存放在某一个段寄存器中,是一个逻辑段的起始单元地址(段基址)的高16位。,偏移量:表示某个存储单元与它所在段的段基址之间的字节距离。,当偏移量为0时,就是这个段的起始单元,而偏移量为0FFFFFH时,就是这个段的最后一个字节单元。,36,逻辑地址的表示方法是 段基值:偏移量,例:3267H:00A0H,它表示该逻辑单元位于段起始地址为32670H,段内偏移量为00A0H个字节。,3.逻辑地址转换为物理地址,当CPU要访问存储器时,需要由总线接口单元BIU将逻辑地址转换成物理地址。,转换方法:将逻辑地址的段基值左移4位,形成20位的段基址(低位为0)然后与16位的偏移量相加,结果即为20位的物理地址。其转换示例如图所示。,37,段1:2B0H,段2:2C0H,002D3H,偏移量23H,偏移量13H,0915H,003AH,0915 0 H,003 AH,+),0918 AH,偏移量,段基值,逻辑地址,物理地址,右图表示同一个物理地址002D3H被被两个逻辑段中的逻辑地址映射。,002B0H+00023H=002D3H,002C0H+00013H=002D3H,38,4.逻辑地址的来源,在程序的执行过程中,CPU根据不同操作类型访问存储器,其逻辑地址中段基值和偏移量的来源是不一样的。下表是各种操作类型所对应的逻辑地址的来源。,逻辑地址,隐含来源,允许替代来源,偏移量(OFFSET),操作类型,序号,1,2,3,4,5,6,取指令,堆栈操作,取源串,存目的串,以BP作基址,存取一般变量,DI,CS,SS,DS,ES,SS,DS,IP,SP,SI,有效地址EA,有效地址EA,无,无,CS,SS,ES,无,CS,DS,ES,CS,SS,ES,段基值,39,说明:,(1)允许替代来源也叫做段超越,它表示了段基值除使用隐含的段寄存器外是否可以指定其它段寄存器来提供。,(2)有效地址EA,它表示根据指令所采用的寻址方式(下一章介绍)计算出来的段内偏移量。,40,2.4 堆栈及其操作方法,堆栈是一个特定的存储区,访问该存储区必须按照指定的规则进行操作。,堆栈一般分为:,和,专用堆栈存储器,软件堆栈,按堆栈的工作方式专门设计的存储器,专用堆栈存储器,软件堆栈,由程序设计人员用软件在内存储器中划出的一块存储区作为堆栈来使用。8086/8088就是这种方式。,堆栈的用途:主要用于暂存数据以及在过程调用或处理中断时保存断点信息。,一、堆栈的构造,41,堆栈,已存放数据,TOP,Bottom,.,.,主存,00000H,堆栈的一端是固定的,称为栈底。栈底是堆栈存储区的最大地址单元。,另一端是浮动的,称为栈顶。在任何时刻,栈顶是最后存入信息的存储单元。栈顶是随着堆栈中存放信息的多少而改变。,为了指示现在堆栈中存放数据位置,通常设置一个寄存器来指示栈顶位置。其内容就象一个指针一样,因此被称为堆栈指针SP(Stack Pointer)。,SP的内容始终指向栈顶单元,堆栈中数据进出都由SP来控制,42,在堆栈中存取数据的规则是:“先进后出FILO”(First-In Lost-Out)。即最先送入堆栈的数据要到最后才能取出,而最后送入堆栈的数据,最先取出。,二、8086/8088堆栈的组织,在8086/8088微机中堆栈是由堆栈段寄存器SS指定的一段存储区。,SS,SP,堆栈,Bottom,Top,XX,XX,XX,XX,XX,XX,堆栈初始化时的SP,43,堆栈顶部由椎栈指针SP指示。SP中内容始终表示堆栈段基址与栈顶之间的距离(字节数)。当SP内容为最大值时,表示堆栈为空。而当(SP)=0时,表示堆栈全满。,当SP被初始化时,指向栈底+2单元,其值就是个堆栈的长度。由于SP是16位寄存器,因此堆栈最大64K字节,数据在堆栈中的存放格式是:以字为单位存放,数据的低8位放在较低地址单元,高8位放在较高地址单元。,当用户程序中要求的堆栈长度超过一个堆栈段的最大长度64KB时,可以设置几个堆栈段。通过改变堆栈段寄存器SS的内容,即可改变到另一个堆栈段,当改变了堆栈段寄存器SS的内容后,必须紧接着赋与SP新值。,44,三、堆栈操作,1.设置堆栈,设置堆栈主要是对堆栈段寄存器SS和堆栈指针SP赋值。,例如:STACK1 SEGMEMT PARA STACK DB 100 DUP(0)STACK1 ENDS,第一行中的PARA STACK就是用来说明本段为堆栈段。,当程序经过汇编、连接并装入内存时,系统将自动为其分配一个存储区作为堆栈段,将这个段的段基址的高16位送入SS中,而将程序指定的字节单元数100(64H)赋值给SP,这样堆栈就被设置好了。,45,2.进栈PUSH,进栈就是把数据存入堆栈。由指令PUSH或者由机器自动实现,可以将通用寄存器、段寄存器或字存储单元的内容压入堆栈顶部。,例:PUSH AX;将寄存器AX的内容压入堆栈 PUSH DS;将段寄存器DS的内容压入堆栈 PUSH DATA-WORD;将字存储单元DADA-WORD压入;堆栈 PUSHF;将标志寄存器内容压入堆栈。,进栈的执行过程:,(1)首先将堆栈指针SP减2,即指向一个空的堆栈字单元 SP=(SP)2,46,(2)将要储存的内容(寄存器或存储单元的内容)送入SP指向的字单元中。(SP)=数据,例如,指令PUSH AX的执行过程如下图所示:,SS,AL,AH,(AH),(AL),现(SP),原(SP),.,.,.,SP,(SP)-2,(1),(2),00000H,47,3.出栈POP,出栈操作由POP指令实现,它从堆栈顶部弹出一个字到通用寄存器、段寄存器或字存储单元。,例如:POP AX;将栈顶字单元内容弹出到AX POP DS;将栈顶字单元内容弹出到DS POP DATA-WORD;将栈顶字单元内容弹出到;DATA-WORD存储。POPF;将栈顶字单元内容送回标志寄存器F。,出栈的操作过程:,(1)将SP指向的字单元(即栈顶字单元)内容送往指定的寄存器或存储器。即寄存器/存储器=(CSP),48,(2)堆栈指针SP内容加2,即SP=(SP)+2,例如,指令POP AX的操作过程如下图所示。,SP,(SP)+2,SS,AL,AH,XX,XX,现(SP),原(SP),.,.,.,XX,XX,00000H,(2),(1),

    注意事项

    本文(IBMPC微机组成原理与基本结构.ppt)为本站会员(laozhun)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开