现代微处理器技术概述li课件

上传人:人*** 文档编号:577020731 上传时间:2024-08-21 格式:PPT 页数:26 大小:4.84MB
返回 下载 相关 举报
现代微处理器技术概述li课件_第1页
第1页 / 共26页
现代微处理器技术概述li课件_第2页
第2页 / 共26页
现代微处理器技术概述li课件_第3页
第3页 / 共26页
现代微处理器技术概述li课件_第4页
第4页 / 共26页
现代微处理器技术概述li课件_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《现代微处理器技术概述li课件》由会员分享,可在线阅读,更多相关《现代微处理器技术概述li课件(26页珍藏版)》请在金锄头文库上搜索。

1、第第 2 2 章章 现代微处理器技术概述现代微处理器技术概述 2.1 8086/80882.1 8086/8088微处理器简介微处理器简介 2.2 8086/8088 CPU2.2 8086/8088 CPU的存储器的存储器1 1现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述li li2.1 8086/80882.1 8086/8088微处理器简介微处理器简介 80868086是是IntelIntel系列的系列的1616位微处理器,也是位微处理器,也是80x8680x86系列微处理系列微处理器的基础。它有器的基础。它有1616根数据线,可以处理根数据线,可以处

2、理8 8位或位或1616位数据;位数据;有有2020根地址线,可以寻址根地址线,可以寻址1MB1MB的存储单元和的存储单元和64KB64KB的的I IOO端端口。在推出口。在推出80868086之后不久,之后不久,IntelIntel公司还推出了准公司还推出了准1616位微处位微处理器理器80888088。80888088的内部寄存器、运算器以及内部数据总线的内部寄存器、运算器以及内部数据总线都是按都是按1616位设计的,只是其外部数据总线设计为位设计的,只是其外部数据总线设计为8 8位。这样位。这样设计的目的主要是为了与设计的目的主要是为了与IntelIntel原有的原有的8 8位外围接口芯

3、片直接位外围接口芯片直接兼容。兼容。 2.1.1 2.1.1 8086/8088 CPU8086/8088 CPU的内部组织结构的内部组织结构 2.1.2 2.1.2 8086/80888086/8088的寄存器结构的寄存器结构 2.1.3 2.1.3 总线周期的概念总线周期的概念2 2现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述li li2.1.1 2.1.1 8086/8088 CPU8086/8088 CPU的内部组织结构的内部组织结构 8086CPU8086CPU的内部组成结构从功能上可分为两个独立的部分:的内部组成结构从功能上可分为两个独立的部分:

4、总线接口单元总线接口单元BIU BIU 执行单元执行单元EUEU3 3现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述li li总线接口单元总线接口单元BIUBIU BIU (Bus Interface Unit):BIU (Bus Interface Unit):负责完成负责完成CPUCPU与存储器或与存储器或I IOO端端口之间的信息传送,即:负责从内存预取指令送到指令队口之间的信息传送,即:负责从内存预取指令送到指令队列缓冲器;在列缓冲器;在CPUCPU执行指令时,执行指令时,BIUBIU要配合执行单元要配合执行单元EUEU对对指定的内存单元或者指定的内存

5、单元或者I/OI/O端口存取数据。端口存取数据。 BIUBIU内有内有4 4个个1616位段地址寄存器位段地址寄存器CSCS、DSDS、SSSS和和ESES,1616位位指令指针指令指针IPIP和内部暂存器,还有和内部暂存器,还有6 6字节字节指令队列缓冲器指令队列缓冲器,2020位位地址加法器地址加法器以及总线控制电路。以及总线控制电路。 BIUBIU的指令队列缓冲器用于存放预取的指令。的指令队列缓冲器用于存放预取的指令。80868086的指令的指令队列为队列为6 6个字节,而个字节,而80888088的指令队列为的指令队列为4 4个字节。它们采个字节。它们采用用“ “先进先出先进先出” ”

6、的原则,按顺序存放,并按顺序取到的原则,按顺序存放,并按顺序取到EUEU中去执行。中去执行。 4 4现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述li li指令队列缓冲器指令队列缓冲器 BIUBIU的指令队列缓冲器用于存放预取的指令。的指令队列缓冲器用于存放预取的指令。 80868086的指令队列为的指令队列为6 6个字节,而个字节,而80888088的指令队列为的指令队列为4 4个字节。个字节。不管是不管是80868086还是还是80888088,都会在执行指令的同时,从内存中,都会在执行指令的同时,从内存中取下面取下面1 1条或几条指令,取来的指令就依次放

7、在指令队列中。条或几条指令,取来的指令就依次放在指令队列中。它们采用它们采用“ “先进先出先进先出” ”的原则,按顺序存放,并按顺序取的原则,按顺序存放,并按顺序取到到EUEU中去执行。中去执行。 由于有指令队列缓冲器,使由于有指令队列缓冲器,使BIUBIU与与EUEU可以分开并独立工作可以分开并独立工作 。1616位位CPUCPU这种指令预取与指令执行的并行重叠操作,提这种指令预取与指令执行的并行重叠操作,提高了总线的信息传输效率和整个系统的执行速度。高了总线的信息传输效率和整个系统的执行速度。 5 5现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述li li

8、地址加法器地址加法器 8086/80888086/8088的地址加法器用于产生的地址加法器用于产生2020位的物理地址。位的物理地址。 计算物理地址的具体做法:各段寄存器中分别用来存放计算物理地址的具体做法:各段寄存器中分别用来存放1616位段地址。当由指令指针位段地址。当由指令指针IPIP提供或由执行单元提供或由执行单元EUEU按寻址按寻址方式计算出寻址单元的方式计算出寻址单元的1616位偏移地址位偏移地址( (也称为偏移量也称为偏移量) )后,后,再与左移再与左移4 4位后的段寄存器的内容相加,则最终形成一个位后的段寄存器的内容相加,则最终形成一个2020位的物理地址位的物理地址( (即寻

9、址内存的实际地址即寻址内存的实际地址) )。 从从8086/80888086/8088微处理器开始,这种利用微处理器开始,这种利用段基地址加偏移地址来计算物理地址的段基地址加偏移地址来计算物理地址的方法,称为方法,称为“ “段加偏移段加偏移” ”的寻址机制。的寻址机制。 例如,例如,CPUCPU要形成某个指令代码的物理要形成某个指令代码的物理地址,就要将地址,就要将IPIP的值与代码段寄存器的值与代码段寄存器CSCS左移左移4 4位后的内容相加。假设位后的内容相加。假设CSCS2000H2000H,IPIP0618H0618H,此时指令的物理,此时指令的物理地址为地址为20618H20618H

10、。 6 6现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述li li7 7现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述li li执行单元执行单元EUEU 执行单元执行单元EUEU(Execution UnitExecution Unit)的功能只是负责执行指令;)的功能只是负责执行指令;执行的指令从执行的指令从BIUBIU的指令队列缓冲器中取得,执行指令的的指令队列缓冲器中取得,执行指令的结果或执行指令所需要的数据,都由结果或执行指令所需要的数据,都由EUEU向向BIUBIU发出请求,发出请求,再由再由BIUBIU对存储器或对

11、存储器或I/OI/O端口进行存取。端口进行存取。 EUEU由算术逻辑单元由算术逻辑单元ALUALU、数据暂存寄存器、通用寄存器、数据暂存寄存器、通用寄存器组、标志寄存器和组、标志寄存器和EUEU控制电路组成。控制电路组成。EUEU是控制、定时与是控制、定时与状态逻辑电路,它不断接收从状态逻辑电路,它不断接收从BIUBIU中指令队列取来的指令,中指令队列取来的指令,经过指令译码形成各种定时控制信号,对经过指令译码形成各种定时控制信号,对EUEU的各个部件的各个部件实现特定的定时操作。数据在实现特定的定时操作。数据在ALUALU中进行运算,运算结果中进行运算,运算结果的特征保留在标志寄存器的特征保

12、留在标志寄存器FLAGSFLAGS中。中。 EUEU中所有的寄存器和数据通道中所有的寄存器和数据通道( (除队列总线为除队列总线为8 8位外位外) )都是都是1616位的宽度。位的宽度。8 8现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述li li8088CPU8088CPU内部结构简介内部结构简介 8088CPU8088CPU内部结构与内部结构与80868086的基本相似,只是的基本相似,只是80888088的的BIUBIU中中指令队列长度为指令队列长度为4 4个字节;个字节; 80888088的的BIUBIU通过总线控制电路与外部交换数据的总线宽度通过总线

13、控制电路与外部交换数据的总线宽度是是8 8位,总线控制电路与专用寄存器组之间的数据总线宽位,总线控制电路与专用寄存器组之间的数据总线宽度也是度也是8 8位。位。 80888088与与80868086在操作原理上是相同的。在操作原理上是相同的。 9 9现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述li li2.1.2 2.1.2 8086/80888086/8088的寄存器结构的寄存器结构 8086808680888088的内部共有的内部共有1414个个1616位寄存器。寄存器按功能位寄存器。寄存器按功能可分为可分为3 3类:类:通用寄存器通用寄存器、段寄存器段

14、寄存器和和标志寄存器标志寄存器。 1010现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述li li通用寄存器通用寄存器 8086808680888088的通用寄存器分为两组:的通用寄存器分为两组: 数据寄存器数据寄存器 指针寄存器和变址寄存器指针寄存器和变址寄存器 1111现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述li li数据寄存器数据寄存器 执行单元执行单元EUEU中有中有4 4个个1616位数据寄存器位数据寄存器AXAX、BXBX、CXCX和和DXDX。 每个数据寄存器分为高字节每个数据寄存器分为高字节H H和低字节

15、和低字节L L,它们均可作为,它们均可作为8 8位数据寄存器独立寻址,独立使用。位数据寄存器独立寻址,独立使用。 在多数情况下,这些数据寄存器是用在算术运算或逻辑运在多数情况下,这些数据寄存器是用在算术运算或逻辑运算指令中,用来进行算术逻辑运算。算指令中,用来进行算术逻辑运算。1212现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述li li指针寄存器和变址寄存器指针寄存器和变址寄存器 指针寄存器是指堆栈指针寄存器指针寄存器是指堆栈指针寄存器SPSP和堆栈基址指针寄存器和堆栈基址指针寄存器BPBP,简称为,简称为P P组。组。 指针寄存器指针寄存器SPSP和和B

16、PBP都用来指示存取位于当前堆栈段中的数都用来指示存取位于当前堆栈段中的数据所在的地址。据所在的地址。 堆栈指针堆栈指针 SPSP给出入栈给出入栈(PUSH)(PUSH)和出栈和出栈(POP)(POP)指令的栈顶指令的栈顶偏移地址;偏移地址; 基址指针基址指针BPBP是存放位于堆栈段中一个数据区基地址的偏是存放位于堆栈段中一个数据区基地址的偏移地址。移地址。 变址寄存器是指源变址寄存器变址寄存器是指源变址寄存器SISI和目的变址寄存器和目的变址寄存器DIDI,简称,简称为为I I组。它们都是组。它们都是1616位寄存器,一般用来存放地址的偏移量位寄存器,一般用来存放地址的偏移量( (简称为偏置

17、简称为偏置) )。 变址寄存器变址寄存器SISI和和DIDI用于存放当前数据串的偏移地址。其中,用于存放当前数据串的偏移地址。其中,SISI存放源数据串的偏移地址;而存放源数据串的偏移地址;而DIDI存放目的数据串的偏移地存放目的数据串的偏移地址。址。 1313现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述li li段寄存器 段寄存器是为实现段寄存器是为实现“ “段加偏移段加偏移” ”寻址机制而设置的寻址机制而设置的 。 808680868088 CPU8088 CPU内设置了内设置了4 4个个1616位段寄存器,用这些段位段寄存器,用这些段寄存器的内容作为寄

18、存器的内容作为1616位的段地址,再由段寄存器左移位的段地址,再由段寄存器左移4 4位位形成形成2020位的段起始地址,这样就有可能寻址位的段起始地址,这样就有可能寻址1MB1MB存储空间存储空间并将其分成为若干个逻辑段,使每个逻辑段的长度为并将其分成为若干个逻辑段,使每个逻辑段的长度为64KB64KB(它由(它由1616位的偏移地址限定)。位的偏移地址限定)。 8086808680888088的指令能直接访问的指令能直接访问4 4个段寄存器:代码段寄存个段寄存器:代码段寄存器器CSCS用来存放程序当前使用的代码段的段地址;堆栈段用来存放程序当前使用的代码段的段地址;堆栈段寄存器寄存器SSSS

19、用来存放程序当前所使用的堆栈段的段地址;用来存放程序当前所使用的堆栈段的段地址;数据段寄存器数据段寄存器DSDS用来存放程序当前使用的数据段的段地用来存放程序当前使用的数据段的段地址;附加段寄存器址;附加段寄存器ESES用来存放程序当前使用的附加段的用来存放程序当前使用的附加段的段地址段地址 。1414现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述li li标志寄存器标志寄存器 8086808680888088的的1616位标志寄存器位标志寄存器FLAGSFLAGS只用了其中的只用了其中的9 9位位作标志位,即作标志位,即6 6个状态标志位,个状态标志位,3

20、3个控制标志位。个控制标志位。 6 6个状态标志位用来反映算术或逻辑运算后结果的状态,个状态标志位用来反映算术或逻辑运算后结果的状态,以记录以记录CPUCPU的状态特征。的状态特征。 CFCF进位标志进位标志 PFPF奇偶性标志奇偶性标志 AFAF辅助进位标志辅助进位标志 ZFZF零标志零标志 SFSF符号标志符号标志 OFOF溢出标志溢出标志3 3个控制标志用来控制个控制标志用来控制CPUCPU的操作,由程序设置或清除。的操作,由程序设置或清除。 DFDF方向标志方向标志 IFIF中断允许标志中断允许标志 TFTF跟踪(陷阱)标志跟踪(陷阱)标志 1515现代微处理器技术概述现代微处理器技术

21、概述现代微处理器技术概述现代微处理器技术概述li li2.1.3 2.1.3 总线周期的概念总线周期的概念 对任何一个微处理器来说,为了从存储器中取得指令或者对任何一个微处理器来说,为了从存储器中取得指令或者与之传送数据,都需要它的总线接口单元执行一个总线周与之传送数据,都需要它的总线接口单元执行一个总线周期,以便在总线周期规定的时间内完成给定的操作。同时,期,以便在总线周期规定的时间内完成给定的操作。同时,在微机系统中,当选择一个存储器或在微机系统中,当选择一个存储器或I/OI/O设备与微处理器接设备与微处理器接口之前,也必须了解系统总线的所谓时序,而这些时序也口之前,也必须了解系统总线的所

22、谓时序,而这些时序也是以总线周期为基准来描述的。是以总线周期为基准来描述的。 一个最基本的总线周期由一个最基本的总线周期由4 4个时钟周期个时钟周期T T1 1、T T2 2、T T3 3与与T T4 4组成。组成。 在在T T1 1状态状态 在在T T2 2状态状态 在在T T3 3状态状态 T TWW状态状态 在在T T4 4状态状态 1616现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述li liCPUCPU在在4 4个状态中的基本作用个状态中的基本作用 在在T T1 1状态,状态,CPUCPU往多路复用总线上发送地址信息,以选中往多路复用总线上发送地址

23、信息,以选中所要寻址的存储单元或外设端口的地址。所要寻址的存储单元或外设端口的地址。 在在T T2 2状态,状态,CPUCPU从总线上撤消地址,为传送数据做准备。从总线上撤消地址,为传送数据做准备。 在在T T3 3状态,多路总线的高状态,多路总线的高4 4位继续提供状态信息,而其低位继续提供状态信息,而其低1616位(对位(对8088CPU8088CPU则为低则为低8 8位)上将出现由位)上将出现由CPUCPU写出的数据或者写出的数据或者CPUCPU从存储器或端口读入的数据。从存储器或端口读入的数据。 在有些情况下,由于外设或存储器的速度较慢,不能及时地在有些情况下,由于外设或存储器的速度较

24、慢,不能及时地配合配合CPUCPU传送数据。这时,外设或存储器就会通过传送数据。这时,外设或存储器就会通过 “ “READY”READY”的信号线在的信号线在T T3 3状态启动之前向状态启动之前向CPUCPU发一个发一个“ “数据未准备好信号数据未准备好信号” ”,CPUCPU会在会在T T3 3之后自动插入之后自动插入1 1个或多个附加的时钟周期个或多个附加的时钟周期T TWW,它表示此时它表示此时CPUCPU在总线上的信息情况和在总线上的信息情况和T T3 3状态时的信息情况一状态时的信息情况一样。只有在指定的存储器或外设已经完成数据传送时,它们又样。只有在指定的存储器或外设已经完成数据

25、传送时,它们又通过通过“ “READY”READY”的信号线向的信号线向CPUCPU发出一个发出一个“ “准备好准备好” ”信号,之信号,之后后CPUCPU才会自动脱离才会自动脱离T TWW状态而进入状态而进入T T4 4状态。状态。 在在T T4 4状态,状态,CPUCPU采样数据总线,总线周期结束。采样数据总线,总线周期结束。 1717现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述li li2.2 8086/8088 CPU2.2 8086/8088 CPU的存储器的存储器 2.2.1 2.2.1 存储器的组织存储器的组织 2.2.2 2.2.2 存储器的

26、分类存储器的分类 2.2.3 2.2.3 物理地址和逻辑地址物理地址和逻辑地址 2.2.4 2.2.4 堆栈堆栈返回返回1818现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述li li2.2.1 2.2.1 存储器的组织存储器的组织 8086808680888088有有2020条地址线,可寻条地址线,可寻址址1MB1MB的存储空间。存储器仍按的存储空间。存储器仍按字节组织,每个字节只有惟一的字节组织,每个字节只有惟一的一个地址。一个地址。若存放的信息是若存放的信息是8 8位位的字的字节节,将按,将按顺顺序存放;若存放序存放;若存放的数的数为为1 1个字个字时时

27、,则则将字的低位将字的低位字字节节放在低地址中;当存放的是放在低地址中;当存放的是双字形式双字形式( (这这种数一般作种数一般作为为指指针针) ),其低位字是被,其低位字是被寻寻址地址的偏移址地址的偏移量;高位字是被量;高位字是被寻寻址地址所在的址地址所在的段地址。段地址。1919现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述li li2.2.2 2.2.2 存储器的分段存储器的分段 存储器的分段是一个重要的新概念。为什么要采用存储器存储器的分段是一个重要的新概念。为什么要采用存储器分段管理呢?分段管理呢?这是由于这是由于808680868088 CPU808

28、8 CPU的指令指针的指令指针IPIP和堆栈指针和堆栈指针SPSP以以及其他能提供偏移地址的寄存器都是及其他能提供偏移地址的寄存器都是1616位,它们所能直接位,它们所能直接寻址的最大空间仅为寻址的最大空间仅为64KB64KB,而,而8086808680888088有有2020根地址线,根地址线,它允许寻址它允许寻址1MB1MB大小的存储空间。显然,用大小的存储空间。显然,用1616位寄存器是位寄存器是不能实现对不能实现对2020位地址线的存储空间进行寻址的。因此,为位地址线的存储空间进行寻址的。因此,为了能寻址了能寻址1MB1MB存储空间,就要对存储器实行分段管理,将存储空间,就要对存储器实

29、行分段管理,将1MB1MB存储空间分为存储空间分为1616段,每一段最大存储空间为段,每一段最大存储空间为64KB64KB。2020现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述li li 在在8086/80888086/8088系统中,系统中,1MB1MB存储器存储器空间被分为若干逻辑段。空间被分为若干逻辑段。 每段的大小,可以从每段的大小,可以从1 1个字节开始个字节开始任意递增,直至最多可包含任意递增,直至最多可包含64KB64KB长的连续存储单元。长的连续存储单元。2020位起始地位起始地址(即段基址)是一个能被址(即段基址)是一个能被1616整整除的

30、数,除的数,即最后即最后4 4位为位为0 0。段和。段和段之间可以是连续的、分开的、段之间可以是连续的、分开的、部分重叠的、或完全重叠的。部分重叠的、或完全重叠的。1 1个程序所用的存储空间可以个程序所用的存储空间可以为为1 1 个逻辑段,也可以为多个个逻辑段,也可以为多个逻辑段。逻辑段。 存储器的分段(续存储器的分段(续1 1)2121现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述li li存储器的分段(续存储器的分段(续2 2) 如何实现程序跨段存取信息?由于段地址存放在段寄存器如何实现程序跨段存取信息?由于段地址存放在段寄存器CSCS、DSDS、SSSS

31、和和ESES中,所以,程序可以从中,所以,程序可以从4 4个段寄存器给个段寄存器给出的逻辑段中存取代码和数据。如果要从存储器另外的段出的逻辑段中存取代码和数据。如果要从存储器另外的段而不是当前可寻址的段中存取信息,则程序必须首先改变而不是当前可寻址的段中存取信息,则程序必须首先改变相应的段寄存器的内容,将其设置成所要存取新段的段地相应的段寄存器的内容,将其设置成所要存取新段的段地址,然后才可以从当前的可寻址的段转到新段中去继续寻址,然后才可以从当前的可寻址的段转到新段中去继续寻址。址。 例:当前例:当前CPUCPU在在20000H2FFFFH20000H2FFFFH段内执行程序,若要跨段内执行

32、程序,若要跨越到越到40000H4FFFFH40000H4FFFFH段中运行,则程序必须先将段中运行,则程序必须先将CSCS的值的值由由2000H2000H改变为改变为4000H4000H。 注意:段区的分配工作是由操作系统完成的,但是,系统注意:段区的分配工作是由操作系统完成的,但是,系统允许程序员在必要时指定所需占用的内存区。允许程序员在必要时指定所需占用的内存区。2222现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述li li2.2.3 2.2.3 物理地址和逻辑地址物理地址和逻辑地址 物理地址是指物理地址是指CPUCPU在对内存进行访问在对内存进行访问

33、而实际寻址时所能而实际寻址时所能直接使用的地址,直接使用的地址,对对8086808680888088来来说是用说是用2020位二进制位二进制数或数或5 5位十六进制位十六进制数表示的地址。数表示的地址。 逻辑地址是两部分:逻辑地址是两部分:段地址和偏移地址。段地址和偏移地址。段地址和偏移地址段地址和偏移地址都用无符号的都用无符号的1616位位二进制数或二进制数或4 4位十位十六进制数来表示的。六进制数来表示的。 一个物理地址可对一个物理地址可对应多个逻辑地址。应多个逻辑地址。 2323现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述li li2.2.4 2.2.

34、4 堆栈堆栈 8086808680888088系统中的堆栈是用段定义语句在存储器中定义系统中的堆栈是用段定义语句在存储器中定义的一个堆栈段,和其他逻辑段一样,它可在的一个堆栈段,和其他逻辑段一样,它可在1MB1MB的存储空的存储空间中浮动。系统中具有的堆栈数目不受限制,一个栈的深间中浮动。系统中具有的堆栈数目不受限制,一个栈的深度最大为度最大为64KB64KB。 堆栈由堆栈由SSSS和和SPSP来寻址。来寻址。SSSS给定堆栈段的段地址,而给定堆栈段的段地址,而SPSP给给定当前栈顶,即指出从堆栈的段基址到栈顶的偏移量。定当前栈顶,即指出从堆栈的段基址到栈顶的偏移量。 为了加快堆栈操作的速度,

35、堆栈操作均以字为单位进行操为了加快堆栈操作的速度,堆栈操作均以字为单位进行操作。作。 2424现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述li li80868086系统的堆栈及其入栈、出栈操作系统的堆栈及其入栈、出栈操作 SSSS1050H1050H,SPSP0008H0008H,AXAX1234H1234H。 执行执行PUSH AXPUSH AX时,将时,将AXAX中的数据中的数据1234H1234H压入堆栈,该数据所压入堆栈,该数据所存入的地址单元将由原栈顶地址存入的地址单元将由原栈顶地址10508H10508H减减2 2后的栈顶地址后的栈顶地址1050

36、6H10506H给定。给定。 当执行当执行POP BXPOP BX指令时,指令时,将把当前堆栈中的数据将把当前堆栈中的数据1234H1234H弹出并送到弹出并送到BXBX,栈顶地址由栈顶地址由10506H10506H加加2 2变为变为10508H10508H;在执行;在执行POP AXPOP AX时,将把当前时,将把当前堆栈中的数据堆栈中的数据BBAAHBBAAH送送到到BXBX,则栈顶地址由,则栈顶地址由10508H10508H加加2 2变为变为1050AH1050AH。2525现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述li liSSSS1050H1050H,SPSP0008H0008H,AXAX1234H1234H2626现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述现代微处理器技术概述li li

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号