微机原理第2章课件.ppt

上传人(卖家):晟晟文业 文档编号:4538613 上传时间:2022-12-17 格式:PPT 页数:73 大小:871KB
下载 相关 举报
微机原理第2章课件.ppt_第1页
第1页 / 共73页
微机原理第2章课件.ppt_第2页
第2页 / 共73页
微机原理第2章课件.ppt_第3页
第3页 / 共73页
微机原理第2章课件.ppt_第4页
第4页 / 共73页
微机原理第2章课件.ppt_第5页
第5页 / 共73页
点击查看更多>>
资源描述

1、2.1 微处理器的外部结构微处理器的外部结构8086 CPU8086 CPU片有片有4040个管脚,微处理器通过这些引脚个管脚,微处理器通过这些引脚与外部的逻辑部件连接,完成信息的交换。与外部的逻辑部件连接,完成信息的交换。CPUCPU的的这些引脚信号称为微处理器级的总线,它应该能这些引脚信号称为微处理器级的总线,它应该能够完成下列功能:够完成下列功能:(1)(1)与存储器之间交换信息与存储器之间交换信息(指令及数据指令及数据);(2)(2)与与I/OI/O设备之间交换信息;设备之间交换信息;(3)(3)能输入和输出必要的信号。能输入和输出必要的信号。CPU接口地址存储器中的字节0001101

2、1.数据线控制线地址线高位决定模块I/O端口I/O端口高位决定端口,2或3个低位选择端口.I/O设备存储器模块图图 2.1 微处理器的外部结构微处理器的外部结构2.1 微处理器的外部结构微处理器的外部结构按功能分,这些总线可以分为三种:按功能分,这些总线可以分为三种:(1 1)传送信息(指令或数据)的)传送信息(指令或数据)的数据总线(数据总线(DBDB)(2 2)传送地址码的)传送地址码的地址总线(地址总线(ABAB)(3 3)传送控制信号的)传送控制信号的控制总线(控制总线(CBCB)2.1 微处理器的外部结构微处理器的外部结构n n位地址总线可有位地址总线可有 个地址(个地址(0 -10

3、 -1)。)。CPUCPU通过地址总线输出地址码来选择某一存通过地址总线输出地址码来选择某一存储单元或某一称为储单元或某一称为I/OI/O端口的寄存器,端口的寄存器,是单向的是单向的。一、地址总线:一、地址总线:n2n2地址码的位数决定了地址空间的大小。地址码的位数决定了地址空间的大小。1616位地址总线位地址总线 6553665536(64KB64KB)2020位地址总线位地址总线 1MB1MB3232位地址总线位地址总线 4GB4GB2.1 微处理器的外部结构微处理器的外部结构8086/80888086/8088地址总线:地址总线:2020位位存储器地址总线存储器地址总线2020位,位,地

4、址空间地址空间 1MB1MBI/OI/O地址总线地址总线1616位位(低低1616位)位)地址空间地址空间 64KB64KB2.1 微处理器的外部结构微处理器的外部结构二、数据总线二、数据总线 用于用于CPUCPU和存储器或和存储器或I/OI/O接口之间传送数据,接口之间传送数据,是是双向的双向的。8086 CPU8086 CPU的数据总线是的数据总线是1616条,我们就说条,我们就说8086 8086 CPUCPU是是1616位微处理器。位微处理器。微处理器数据总线的条数决定微处理器数据总线的条数决定CPUCPU和存储器或和存储器或I/OI/O设备一次能交换数据的位数,是区分微处理器设备一次

5、能交换数据的位数,是区分微处理器是多少位的依据。是多少位的依据。2.1 微处理器的外部结构微处理器的外部结构三、控制总线三、控制总线 管理总线上的活动,用来传送自管理总线上的活动,用来传送自CPUCPU发出的发出的控制信息或外设送到控制信息或外设送到CPUCPU的状态信息,的状态信息,大部分大部分是是单向的,也有一些是双向的单向的,也有一些是双向的。2.1 微处理器的外部结构微处理器的外部结构2.2 微处理器的内部结构微处理器的内部结构微处理器是组成计算机系统的核心部件,它具有运算微处理器是组成计算机系统的核心部件,它具有运算和控制的功能。具体地讲,和控制的功能。具体地讲,CPU CPU 应具

6、有下述基本功能应具有下述基本功能:进行算术和逻辑运算;进行算术和逻辑运算;具有接收存储器和具有接收存储器和I/OI/O接口来的数据和发送数据接口来的数据和发送数据给存储器和给存储器和I/OI/O接口的能力;接口的能力;可以暂存少量数据;可以暂存少量数据;能对指令进行寄存、译码并执行指令所规定的能对指令进行寄存、译码并执行指令所规定的操作;操作;能提供整个系统所需的定时和控制信号;能提供整个系统所需的定时和控制信号;可响应可响应I/OI/O设备发出的中断请求。设备发出的中断请求。一、一、CPUCPU内部结构及各部分功能简介内部结构及各部分功能简介 典型的典型的 CPU CPU 内部结构如图内部结

7、构如图2.22.2所示。所示。2.2 微处理器的内部结构微处理器的内部结构I/O控制逻辑控制逻辑ALUALU控制器控制器工作寄存器工作寄存器CPUCPU程序计数器(程序计数器(PC)指令寄存器(指令寄存器(IR)指令译码器(指令译码器(ID)控控 制制 逻逻 辑辑 部部 件件堆栈指示器(堆栈指示器(SP)状态寄存器(状态寄存器(PSW)地址寄存器地址寄存器数据寄存器数据寄存器图图2.22.2微处理器的内部结构微处理器的内部结构CPUCPU包括包括算术算术/逻辑运算单元逻辑运算单元(ALU)(ALU)控制器控制器工作寄存器工作寄存器I/O I/O 控制逻辑控制逻辑地址寄存器地址寄存器数据寄存器数

8、据寄存器2.2 微处理器的内部结构微处理器的内部结构1 1、算术逻辑运算单元算术逻辑运算单元ALUALU(Arithmetic/Logic Unit(Arithmetic/Logic Unit)它是运算器的它是运算器的核心核心,几乎所有的算术运算,逻,几乎所有的算术运算,逻辑运算和移位操作都是由辑运算和移位操作都是由 ALU ALU 完成的。完成的。2.2 微处理器的内部结构微处理器的内部结构2 2、工作寄存器工作寄存器 暂存用于寻址和计算过程的信息。工作寄存暂存用于寻址和计算过程的信息。工作寄存器分为两组:器分为两组:数据寄存器和地址寄存器数据寄存器和地址寄存器。3 3、控制器控制器 它是它

9、是CPUCPU的的“指挥中心指挥中心”,完成指令的读入,完成指令的读入,寄存,译码和执行。从图寄存,译码和执行。从图2.22.2中可以看出,一般微中可以看出,一般微处理器中的控制器由处理器中的控制器由6 6部分组成:部分组成:程序计数器程序计数器(PC:(PC:Program Counter Program Counter)指令寄存器指令寄存器(IR(IR:Instruction Register:Instruction Register)指令译码器指令译码器(ID(ID:Instruction Decoder Instruction Decoder)控制逻辑部件:产生控制信号控制逻辑部件:产

10、生控制信号 处理机状态字处理机状态字PSWPSW(Processor State Word Processor State Word)堆栈指针堆栈指针(SP)(SP)Stack Pointer Stack Pointer 2.2 微处理器的内部结构微处理器的内部结构 用于保存下一条要执行的指令的地址用于保存下一条要执行的指令的地址,即由,即由它提供一个存储器地址,按此地址从对应存储器它提供一个存储器地址,按此地址从对应存储器单元取出的内容,就是要执行的指令。单元取出的内容,就是要执行的指令。(1 1)程序计数器()程序计数器(PCPC)2.2 微处理器的内部结构微处理器的内部结构 保存从存储器

11、中读入的当前要执行的指令。保存从存储器中读入的当前要执行的指令。(2)2)指令寄存器(指令寄存器(IRIR)(3)(3)指令译码器(指令译码器(IDID)对指令寄存器中保存的指令进行译码分析。对指令寄存器中保存的指令进行译码分析。(4)(4)控制逻辑部件控制逻辑部件 根据根据IDID对指令译码的分析,发出相应的一系对指令译码的分析,发出相应的一系列的节拍脉冲和电位(控制信号),去完成指令列的节拍脉冲和电位(控制信号),去完成指令的所有操作。的所有操作。2.2 微处理器的内部结构微处理器的内部结构(5 5)处理器状态字()处理器状态字(PSWPSW)暂存处理器当前的状态暂存处理器当前的状态。PS

12、WPSW中的各位用来指中的各位用来指示诸如算术运算结果的正示诸如算术运算结果的正/负,是否为零,是否有负,是否为零,是否有进位或借位,是否溢出等标志。进位或借位,是否溢出等标志。(6 6)堆栈指针()堆栈指针(SPSP)是在对是在对按后进先出原则组织的称为堆栈的专用按后进先出原则组织的称为堆栈的专用存储区进行操作时提供地址存储区进行操作时提供地址的。的。包括包括 CPU CPU 中与输入中与输入/输出操作有关的逻辑。输出操作有关的逻辑。其作用是处理输入其作用是处理输入/输出操作。输出操作。4 4、I/OI/O控制逻辑控制逻辑2.2 微处理器的内部结构微处理器的内部结构 8086/8088808

13、6/8088是是IntelIntel公司生产的第三代微处理公司生产的第三代微处理器芯片。其特点如下:器芯片。其特点如下:具有具有2020条地址线条地址线,直接寻址能力达,直接寻址能力达1MB1MB。80868086有有1616条数据线,为条数据线,为1616位微处理器位微处理器。80888088有有8 8条数据线,为准条数据线,为准1616位微处理器。位微处理器。片内总线和片内总线和ALUALU均为均为1616位,可进行位,可进行8 8位和位和1616位位操作。操作。2.3 2.3 微处理器的功能结构微处理器的功能结构8086/80888086/8088均采用全新结构,片内均由两个独均采用全新

14、结构,片内均由两个独立的逻辑单元组成:立的逻辑单元组成:8086/8088CPU8086/8088CPU内部结构如图内部结构如图2.32.3所示所示执行单元执行单元(EU)(EU)总线接口单元总线接口单元(BIU)(BIU)2.3 2.3 微处理器的功能结构微处理器的功能结构总线总线控制控制电路电路EU控制器控制器标标 志志暂存器暂存器ALUALU数据总线数据总线地址总线地址总线数据总线数据总线执行单元(执行单元(EUEU)总线接口单元(总线接口单元(BIUBIU)(16位)位)(20位)位)(8 位)位)(16位)位)16位位ALUS SD SE SI PC S内部寄存器内部寄存器B HB

15、LA HA LD HD LS PB PC LC HD IS I8 80 08 86 6总总线线物理物理地址地址形成形成逻辑逻辑21364 5AXBXDXCX指令队列寄存器指令队列寄存器图图 2.3 微处理器的功能结构微处理器的功能结构通通用用寄寄存存器器段寄存器(段寄存器(CSCS,DSDS,ESES,SSSS)一、总线接口单元(一、总线接口单元(BIUBIU)总线控制逻辑总线控制逻辑 地址形成逻辑地址形成逻辑8088CPU8088CPU:4 4字节字节8086CPU8086CPU:6 6字节字节指令队列寄存器:指令队列寄存器:指令指针寄存器(指令指针寄存器(IPIP)(先进先出先进先出)2.

16、3 2.3 微处理器的功能结构微处理器的功能结构 BIUBIU主要负责从存贮器指定区域取出指主要负责从存贮器指定区域取出指令并将取出的指令送指令队列寄存器中排令并将取出的指令送指令队列寄存器中排队队,当,当EUEU执行的指令需要和外部存贮器或执行的指令需要和外部存贮器或者者I/OI/O端口之间进行数据传送时,端口之间进行数据传送时,BIUBIU就停就停止取指令,为止取指令,为EUEU服务,完成这次总线操作;服务,完成这次总线操作;或者当指令队列满时,或者当指令队列满时,BIUBIU也停止取指令的也停止取指令的操作。操作。2.3 2.3 微处理器的功能结构微处理器的功能结构二、执行单元(二、执行

17、单元(EUEU)通用寄存器(通用寄存器(8 8个)个)EUEU控制器控制器算术算术/逻辑运算单元(逻辑运算单元(ALUALU)标志寄存器(标志寄存器(FLAGFLAG)(即即PSW)PSW)由由组成。组成。EUEU主要负责从指令队列寄存器中获取指令,主要负责从指令队列寄存器中获取指令,并对指令加以执行,完成指令所规定的操作并对指令加以执行,完成指令所规定的操作。同。同时也负责算术时也负责算术/逻辑运算以及进行内存有效地址的逻辑运算以及进行内存有效地址的计算等。计算等。2.3 2.3 微处理器的功能结构微处理器的功能结构CPUCPU程序执行过程:程序执行过程:t 忙忙 忙忙 忙忙 忙忙 忙忙取指

18、令取指令1 取指令取指令2 取指令取指令3 取指令取指令4 取指令取指令5 执行执行1 执行执行2 执行执行3 执行执行4 执行执行5tt图图2.4 8086/8088CPU2.4 8086/8088CPU执行程序的过程执行程序的过程2.3 2.3 微处理器的功能结构微处理器的功能结构 8086/8088 CPU8086/8088 CPU内部共有内部共有1414个个1616位寄存器,用位寄存器,用于提供运算,控制指令执行和对指令及操作数寻于提供运算,控制指令执行和对指令及操作数寻址。址。1414个寄存器按其用途可分为三大类:个寄存器按其用途可分为三大类:通用寄存器通用寄存器(8 8个)个)段寄

19、存器段寄存器 (4 4个)个)控制寄存器控制寄存器(2 2个)个)2.4 2.4 微处理器的寄存器组织微处理器的寄存器组织一、一、通用寄存器(通用寄存器(8 8个)个)8 8个个1616位通用寄存器分为两组:位通用寄存器分为两组:地址指针和变址寄存器(个)地址指针和变址寄存器(个)数据寄存器(数据寄存器(4 4个)个)2.4 2.4 微处理器的寄存器组织微处理器的寄存器组织存放数据存放数据1616位位8 8位位DXDXDLDLDHDHCXCXCLCLCHCHBXBXBLBLBHBHAXAXALALAHAH累加器累加器(AccumulatorAccumulator)基址寄存器(基址寄存器(经常作

20、地址寄经常作地址寄存器使用存器使用)(Base RegisterBase Register)计数寄存器计数寄存器(Count RegisterCount Register)数据寄存器数据寄存器(Data RegisterData Register)1 1、数据寄存器(数据寄存器(4 4个)个)2.4 2.4 微处理器的寄存器组织微处理器的寄存器组织2 2、地址指针和变址寄存器(个)地址指针和变址寄存器(个)均为均为1616位地址寄存器,也能存放位地址寄存器,也能存放数据数据DIDISISIBPBPSPSP堆栈指针寄存器堆栈指针寄存器(Stack PointerStack Pointer)基址指

21、针寄存器基址指针寄存器(Base PointerBase Pointer)源变址寄存器源变址寄存器(Source IndexSource Index)目的变址寄存器目的变址寄存器(Destination IndexDestination Index)2.4 2.4 微处理器的寄存器组织微处理器的寄存器组织二、段寄存器二、段寄存器堆栈信息堆栈信息数据(数值、字符等)数据(数值、字符等)代码(指令码)代码(指令码)在微机系统的内存中通常存放着三类信息在微机系统的内存中通常存放着三类信息:指示指示CPUCPU执行何种操作。执行何种操作。程序处理的对象或结果。程序处理的对象或结果。被保存的返回地址和中

22、间结果等。被保存的返回地址和中间结果等。代码段代码段 数据段数据段 堆栈段堆栈段2.4 2.4 微处理器的寄存器组织微处理器的寄存器组织8086/8088CPU8086/8088CPU有个段寄存器有个段寄存器,分别是:分别是:SSSSESESDSDSCSCS代码段寄存器。指向当前的代码段,代码段寄存器。指向当前的代码段,指令由此段取出。指令由此段取出。Code Segment Code Segment 数据段寄存器。指向当前的数据段。数据段寄存器。指向当前的数据段。Data Segment Data Segment 附加数据段寄存器。指向当前的附加附加数据段寄存器。指向当前的附加数据段。数据段

23、。Extra Segment Extra Segment 堆栈段寄存器。指向当前的堆栈段。堆栈段寄存器。指向当前的堆栈段。Stack Segment Stack Segment 1616位位2.4 2.4 微处理器的寄存器组织微处理器的寄存器组织 它始终指向它始终指向CPUCPU下一条要取指令所在存贮器单下一条要取指令所在存贮器单元的偏移地址元的偏移地址(段地址由段地址由CSCS提供提供)。用户不能更改用户不能更改IPIP的值的值,一般指令不能修改一般指令不能修改IPIP值,值,但某些指令可以改变但某些指令可以改变IPIP的值如的值如转移指令转移指令、子程序子程序调用指令调用指令、子程序返回指

24、令以及中断处理指令子程序返回指令以及中断处理指令。指令指针寄存器相当于一般微处理器中的程指令指针寄存器相当于一般微处理器中的程序计数器序计数器PCPC。三、控制寄存器(三、控制寄存器(2 2个)个)1 1、指令指针寄存器、指令指针寄存器(IP:(IP:Instruction Pointer)(16)(16位位)2.4 2.4 微处理器的寄存器组织微处理器的寄存器组织 标志寄存器相当于一般微处理器中的程序状态标志寄存器相当于一般微处理器中的程序状态字寄存器字寄存器(PSW)(PSW)。1616位位,但有用的只有但有用的只有9 9位位,其中其中:2 2、标志寄存器、标志寄存器(FLAG)(FLAG

25、)状态标志状态标志:CF,PF,AF,ZF,SF,OF,:CF,PF,AF,ZF,SF,OF,共共6 6位位控制标志控制标志:TF,IF,DF,:TF,IF,DF,共共3 3位位如下图所示如下图所示:OFOF DFDF IFIF TFTF SFSF ZFZF AF AF PF PF CFCF1515 1414 1313 1212 1111 1010 9 9 8 8 7 7 6 6 5 5 4 4 3 3 2 2 1 01 0图图 2.5 PSW中的标志位中的标志位2.4 2.4 微处理器的寄存器组织微处理器的寄存器组织 CF(Carry Flag)CF(Carry Flag)进位标志。进位标志

26、。如果加法时最高如果加法时最高位位(对字节操作是对字节操作是D7D7位,对字操作是位,对字操作是D15D15位位)产生进产生进位或减法时最高位产生借位则位或减法时最高位产生借位则CF=1CF=1,否则,否则CF=0CF=0。(1 1)状态标志)状态标志 反映的是反映的是ALUALU运算后结果的状态运算后结果的状态 AF(Auxiliary Carry Flag)AF(Auxiliary Carry Flag)辅助进位标志。辅助进位标志。如果在加法时如果在加法时D3D3位有进位或减法时位有进位或减法时D3D3位有借位位有借位,则则AF=1AF=1,否则,否则AF=0AF=0。2.4 2.4 微处

27、理器的寄存器组织微处理器的寄存器组织 ZF(Zero Flag)ZF(Zero Flag)零标志位。零标志位。如果运算结果各位都为零,则如果运算结果各位都为零,则ZF=1ZF=1,否则,否则ZF=0ZF=0。SF(Sign Flag)SF(Sign Flag)符号标志。符号标志。它总是和结果的最高位它总是和结果的最高位(字节操作时是字节操作时是D7D7,字操作时是字操作时是D15)D15)相同,因为在补码运算时最高位相同,因为在补码运算时最高位是符号位,所以运算结果为负时,是符号位,所以运算结果为负时,SF=1SF=1,否则,否则SF=0.SF=0.2.4 2.4 微处理器的寄存器组织微处理器

28、的寄存器组织 OF(Overflow Flag)OF(Overflow Flag)溢出标志。溢出标志。在加或减运算中结果超出在加或减运算中结果超出8 8位或者位或者1616位有符号位有符号数所能表示的数值范围数所能表示的数值范围(-128 +127(-128 +127或或-32768 -32768 +32767)+32767)时,产生溢出,时,产生溢出,OF=1OF=1,否则,否则OF=0OF=0。PF(Parity Flag)PF(Parity Flag)奇偶标志奇偶标志。如果操作结果的。如果操作结果的低低8 8位中含有偶数个位中含有偶数个1 1,PF=1PF=1,否则,否则PF=0PF=0

29、。2.4 2.4 微处理器的寄存器组织微处理器的寄存器组织例例1:1:若若CPUCPU执行执行5439H+476AH5439H+476AH加法运算指令加法运算指令:那么那么,指令执行后有指令执行后有:SF=1SF=1,ZF=0ZF=0,PF=1PF=1,AF=1AF=1,CF=0CF=0,OF=1OF=10101 0100 0011 1001B0101 0100 0011 1001B0100 0111 0110 1010B0100 0111 0110 1010B1001 1011 1010 0011B1001 1011 1010 0011B+2.4 2.4 微处理器的寄存器组织微处理器的寄存器

30、组织例例2:2:若若CPUCPU执行执行543AH-FE00H543AH-FE00H减法运算指令减法运算指令;那么那么,指令执行后有指令执行后有:SF=0SF=0,ZF=0ZF=0,PF=1PF=1,AF=0AF=0,CF=1CF=1,OF=0OF=00101 0100 0011 1010B0101 0100 0011 1010B1111 1110 0000 0000B1111 1110 0000 0000B0101 0110 0011 1010B0101 0110 0011 1010B-2.4 2.4 微处理器的寄存器组织微处理器的寄存器组织(2 2)控制标志)控制标志 用来控制用来控制CP

31、UCPU的操作特征的操作特征 DF(Direction Flag)DF(Direction Flag)方向控制标志。方向控制标志。可由指令置可由指令置1/1/清清0 0CLDCLD;DF=0DF=0 在进行字符串操作时在进行字符串操作时,CPU,CPU每执行一条串操每执行一条串操作指令作指令,对源或对源或(与与)目的操作数的地址会自动进目的操作数的地址会自动进行一次调整行一次调整,其调整准则为其调整准则为:STDSTD;DF=1DF=10 0,自动递增。,自动递增。DF=DF=1 1,自动递减。,自动递减。2.4 2.4 微处理器的寄存器组织微处理器的寄存器组织IF(Interrupt Ena

32、ble Flag):IF(Interrupt Enable Flag):CLICLI;IF=0IF=0,CPUCPU处于关中断状态处于关中断状态。1 1时时,CPU,CPU能响应外部可屏蔽中断请求能响应外部可屏蔽中断请求;当当IF=IF=IFIF对外部非可屏蔽中断请求以及对外部非可屏蔽中断请求以及CPUCPU内部的中内部的中断不起作用。断不起作用。可由指令置可由指令置1/1/清清0:0:外部可屏蔽中断允许标志。外部可屏蔽中断允许标志。STISTI;IF=1IF=1,CPUCPU处于开中断状态处于开中断状态。0 0时时,CPU,CPU不能响应外部可屏蔽中断请求。不能响应外部可屏蔽中断请求。2.4

33、 2.4 微处理器的寄存器组织微处理器的寄存器组织TF(Trap Flag)TF(Trap Flag)陷阱标志。陷阱标志。没有专门的置没有专门的置1/1/清清0 0指令。指令。当当TFTF=1 1时,时,CPUCPU每执行完一条指令便自动产每执行完一条指令便自动产生一个内部中断生一个内部中断(类型为类型为1)1),转去执行一个中断,转去执行一个中断服务程序,用户可以借助中断服务程序来检查每服务程序,用户可以借助中断服务程序来检查每条指令执行的情况,称为条指令执行的情况,称为单步工作方式单步工作方式,常用于,常用于程序的调试。程序的调试。2.4 2.4 微处理器的寄存器组织微处理器的寄存器组织w

34、8086/80888086/8088的存储器都是以字节的存储器都是以字节(8 8位)为单位位)为单位组织的。组织的。一、存储器地址空间和数据存储格式一、存储器地址空间和数据存储格式2022022.5 2.5 微处理器的存储器和微处理器的存储器和I/OI/O组织组织w有有2020条地址总线,条地址总线,字节(字节(1 1B B)。)。w每个字节对应一个唯一的地址。每个字节对应一个唯一的地址。w地址范围为地址范围为 -1-1(用(用1616进制表示为进制表示为0000000000FFFFFHFFFFFH),如下图所示。),如下图所示。存储器存储器二二 进进 制制 地地 址址十六进制地址十六进制地址

35、00000000000000 0000 0000 0000 00000000 0000 0000 0000 00000000100001000020000200003000030000 0000 0000 0000 00010000 0000 0000 0000 00010000 0000 0000 0000 00110000 0000 0000 0000 00110000 0000 0000 0000 00100000 0000 0000 0000 0010FFFFEFFFFEFFFFFFFFFF1111 1111 1111 1111 11111111 1111 1111 1111 1111

36、1111 1111 1111 1111 11101111 1111 1111 1111 1110图图 2.6 存储器编址存储器编址2.5 2.5 微处理器的存储器和微处理器的存储器和I/OI/O组织组织 存储器内两个连续的字节,定义为一个存储器内两个连续的字节,定义为一个字字,低低字节字节(低(低8 8位)存放在位)存放在低地址低地址中,中,高字节高字节(高(高8 8位)位)存放在存放在高地址高地址中。中。这些约定如图这些约定如图2.72.7所示。所示。各位的编号方法是最低位(各位的编号方法是最低位(least Significant least Significant Bit-LSBBit-

37、LSB)为位)为位0 0,一个字节中,最高位(,一个字节中,最高位(Most Most Significant Bit-MSBSignificant Bit-MSB)编号为位)编号为位7 7;一个字中最高;一个字中最高位的编号为位位的编号为位1515。2.5 2.5 微处理器的存储器和微处理器的存储器和I/OI/O组织组织1515 1414 1313 1212 1111 1010 9 9 8 8 7 7 6 6 5 5 4 4 3 3 2 2 1 1 0 0 7 7 6 6 5 5 4 4 3 3 2 2 1 01 0 7 7 6 6 5 45 4 3 3 2 2 1 1 0 0(高字节)(高

38、字节)(低字节)(低字节)地址地址=N+1=N+1字地址字地址地址地址=N=N图图 2.7 字和字节的编号方式字和字节的编号方式2.5 2.5 微处理器的存储器和微处理器的存储器和I/OI/O组织组织字数据在存储器中存放的格式如图所示字数据在存储器中存放的格式如图所示字单元的地址字单元的地址一个字单元一个字单元一个字节单元一个字节单元 高字节高字节 低字节低字节D15 D15 D8D8D7 D7 D0D0图图 2.8 字数据在存储器中存放格式示意图字数据在存储器中存放格式示意图2.5 2.5 微处理器的存储器和微处理器的存储器和I/OI/O组织组织 8086/80888086/8088允许字从

39、任何地址开始。字的地址允许字从任何地址开始。字的地址是偶地址时,称是偶地址时,称字的存储是对准的字的存储是对准的,若字的地址,若字的地址是奇地址时,则称是奇地址时,则称字的存储是未对准的字的存储是未对准的。8086 CPU8086 CPU数据总线数据总线1616位,对于访问(读或写)位,对于访问(读或写)字节的指令,需要一个总线周期。字节的指令,需要一个总线周期。对于访问一个偶地址的字的指令,也只需要对于访问一个偶地址的字的指令,也只需要一个总线周期。一个总线周期。而对于访问一个奇地址的字的指令,则需要而对于访问一个奇地址的字的指令,则需要两个总线周期(两个总线周期(CPUCPU自动完成)。自

40、动完成)。2.5 2.5 微处理器的存储器和微处理器的存储器和I/OI/O组织组织 8088 CPU8088 CPU数据总线数据总线8 8位,位,无论是字,还是字节无论是字,还是字节数据存取操作,也无论是偶地址的字,还是奇地数据存取操作,也无论是偶地址的字,还是奇地址的字,每一个总线周期只能完成一个字节的数址的字,每一个总线周期只能完成一个字节的数据存取操作。对字数据所组成的连续两个总线周据存取操作。对字数据所组成的连续两个总线周期是由期是由CPU CPU 自动完成的。自动完成的。2.5 2.5 微处理器的存储器和微处理器的存储器和I/OI/O组织组织 从前面的介绍可知从前面的介绍可知:二、存

41、储器的分段和物理地址的形式二、存储器的分段和物理地址的形式1 1、为什么要分段、为什么要分段 8086/8088CPU8086/8088CPU有有2020条地址线(条地址线(A A1919A A0 0),能寻),能寻址外部存贮空间为址外部存贮空间为2 22020=1MB=1MB,而在,而在8088/8086CPU8088/8086CPU内内部能向存贮器提供地址码的地址寄存器有部能向存贮器提供地址码的地址寄存器有6 6个,均个,均为为1616位,所以用这位,所以用这6 6个个1616位地址寄存器任意一个给位地址寄存器任意一个给外部存贮器提供地址,只能提供外部存贮器提供地址,只能提供2 21616

42、=64KB=64KB个地址,个地址,所以,对所以,对1MB1MB地址寻址不完。这地址寻址不完。这6 6个个1616位地址寄存位地址寄存器分别为:器分别为:2.5 2.5 微处理器的存储器和微处理器的存储器和I/OI/O组织组织 为了使为了使8088/8086CPU8088/8086CPU能寻址到外部存贮器能寻址到外部存贮器1MB1MB空空间中任何一个单元,间中任何一个单元,8088/80868088/8086巧妙地采用了地址巧妙地采用了地址分段方法(将分段方法(将1MB1MB空间分成若干个逻辑段),从而空间分成若干个逻辑段),从而将寻址范围扩大到了将寻址范围扩大到了1MB1MB。基址寄存器基址

43、寄存器DIDISISIBPBPBXBX基址指针寄存器基址指针寄存器源变址寄存器源变址寄存器堆栈指针寄存器堆栈指针寄存器目的变址寄存器目的变址寄存器指令指针寄存器指令指针寄存器SPSPIPIP2.5 2.5 微处理器的存储器和微处理器的存储器和I/OI/O组织组织1MB1MB的存贮空间中的存贮空间中,每个存贮单元的实际地址编每个存贮单元的实际地址编码码称为该单元的称为该单元的物理地址物理地址(用用PAPA表示表示)。2 2、怎么分段、怎么分段?各逻辑段的起始地址必须能被各逻辑段的起始地址必须能被1616整除整除,即一个即一个段的起始地址段的起始地址(20(20位物理地址位物理地址)的低的低4 4

44、位二进制位二进制码必须是码必须是0 0。把把1MB1MB的存贮空间划分成若干个逻辑段的存贮空间划分成若干个逻辑段,每段最每段最多多64KB64KB。2.5 2.5 微处理器的存储器和微处理器的存储器和I/OI/O组织组织一个段的起始地址的高一个段的起始地址的高1616位自然数为该段的段位自然数为该段的段地址。显然地址。显然,在在1MB1MB的存贮空间中的存贮空间中,可以有可以有2 21616 个段地址。每个相邻的两个段地址之间相隔个段地址。每个相邻的两个段地址之间相隔1616个存贮单元。个存贮单元。在在一个段内的每个存贮单元一个段内的每个存贮单元,可以用相对于本可以用相对于本段的起始地址的偏移

45、量来表示段的起始地址的偏移量来表示,这个偏移量称这个偏移量称为偏移地址为偏移地址,也称为也称为有效地址有效地址(EA)(EA)。偏移地址也用偏移地址也用1616位二进制编码表示。所以位二进制编码表示。所以,在一在一个段内有个段内有2 21616=64K=64K个偏移地址个偏移地址(即一个段最大为即一个段最大为64KB)64KB)。2.5 2.5 微处理器的存储器和微处理器的存储器和I/OI/O组织组织在一个在一个64KB64KB的段内,每个偏移地址单元的段地址的段内,每个偏移地址单元的段地址是相同的。所以段地址也称为是相同的。所以段地址也称为段基址段基址。由于相邻两个段地址只相隔由于相邻两个段

46、地址只相隔1616个单元,所以段与个单元,所以段与段之间大部分空间互相覆盖段之间大部分空间互相覆盖(重叠重叠)。存贮器段的划分与段的覆盖示意图如下图所示。存贮器段的划分与段的覆盖示意图如下图所示。2.5 2.5 微处理器的存储器和微处理器的存储器和I/OI/O组织组织图图 2.9 存贮器段的划分与段的覆盖示意图存贮器段的划分与段的覆盖示意图段段0 0段段1 1段段2 2100201002010010100101000010000000200002000010000100000000000段地址段地址2.5 2.5 微处理器的存储器和微处理器的存储器和I/OI/O组织组织段地址和偏移地址都是无符

47、号的段地址和偏移地址都是无符号的1616位二进制数,位二进制数,常用常用4 4位十六进制数表示位十六进制数表示。这种方法表示的存贮器这种方法表示的存贮器单元的地址称为逻辑地址。单元的地址称为逻辑地址。3 3、物理地址、物理地址(PA)(PA)的形成的形成逻辑地址的表示格式为逻辑地址的表示格式为:段地址段地址:偏移地址偏移地址2.5 2.5 微处理器的存储器和微处理器的存储器和I/OI/O组织组织XXXXXXXXXXH HXXXXXXXXH:H:XXXXXXXXH H段地址:偏移地址段地址:偏移地址逻辑地址逻辑地址2020位位物物理理地地址址图图 2.10 逻辑地址的表示形式逻辑地址的表示形式2

48、.5 2.5 微处理器的存储器和微处理器的存储器和I/OI/O组织组织(1 1)段地址由以下段寄存器提供)段地址由以下段寄存器提供 一个存储单元用逻辑地址表示后,一个存储单元用逻辑地址表示后,CPU CPU 对该对该单元的寻址就应提供两部分地址:单元的寻址就应提供两部分地址:段地址段地址和和有效有效地址。地址。CS CS 提供当前代码(程序)段的段地址提供当前代码(程序)段的段地址DS DS 提供当前数据(程序)段的段地址提供当前数据(程序)段的段地址ES ES 提供当前附加数据段的段地址提供当前附加数据段的段地址SS SS 提供当前堆栈段的段地址提供当前堆栈段的段地址2.5 2.5 微处理器

49、的存储器和微处理器的存储器和I/OI/O组织组织(2 2)偏移地址由下列地址寄存器提供)偏移地址由下列地址寄存器提供BXBXBPBPSISIDIDICPU CPU 对存储器进行数据读对存储器进行数据读/写操作时,写操作时,由这些寄存器以某种寻址方式向存储由这些寄存器以某种寻址方式向存储器提供偏移地址。器提供偏移地址。CPU CPU 取指令时,由取指令时,由IPIP提供所取指令代码所提供所取指令代码所在单元的偏移地址。在单元的偏移地址。IPIP SPSP 堆栈操作时,提供堆栈段的偏移地址堆栈操作时,提供堆栈段的偏移地址2.5 2.5 微处理器的存储器和微处理器的存储器和I/OI/O组织组织 已知

50、某已知某存储单元的逻辑地址存储单元的逻辑地址,怎样求该单元的怎样求该单元的物理地址物理地址PA:PA:8086/8088 CPU8086/8088 CPU中的中的BIUBIU单元用来完成物理地单元用来完成物理地址的计算,其计算方法如图所示。址的计算,其计算方法如图所示。物理地址物理地址=段地址段地址 10H10H+偏移地址偏移地址2.5 2.5 微处理器的存储器和微处理器的存储器和I/OI/O组织组织图图 2.11 物理地址的形成物理地址的形成19 0 19 0 1616位段基址位段基址1616位偏移地址位偏移地址1616位段基址位段基址 0 0 0 00 0 0 02020位物理地址位物理地

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(微机原理第2章课件.ppt)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|