ImageVerifierCode 换一换
格式:PPTX , 页数:47 ,大小:390.75KB ,
资源ID:4153191      下载积分:4 金币
验证码下载
登录下载
邮箱/手机:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/4153191.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  
声明  |  会员权益     获赠5币     写作写作

1、填表:    下载求助     索取发票    退款申请
2、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
3、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
4、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
5、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精****】。
6、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
7、本文档遇到问题,请及时私信或留言给本站上传会员【精****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。

注意事项

本文(《汇编语言程序设计》第2章市公开课一等奖百校联赛获奖课件.pptx)为本站上传会员【精****】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4008-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

《汇编语言程序设计》第2章市公开课一等奖百校联赛获奖课件.pptx

1、汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 第第2章章 IBM_PC计算机系统结构计算机系统结构 Inter8086Inter8086微处理器功效结构微处理器功效结构 存放器存放器 堆栈堆栈(Stack)Stack)Inter80486Inter80486和和PentiumPentium微处理器微处理器 结构及存放管理结构及存放管理第1页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程2.1 2.1 Inter8086Inter8086微处理器功效结构微处理器功效结构 一个经典微处理器基本结构,普通由算术逻辑单元、存放器组和指令处理单元等部分组成。1 1算术逻辑部件算术逻

2、辑部件算术逻辑部件(ALU)由全加器组成。它主要任务是执行算术运算、逻辑运算及移位等操作。ALU有两个输入端,和两个输出端。其连接形式请见下列图。2 2存放器阵列存放器阵列存放器阵列是微处理器主要组成部分,能够存放数据和地址。存放器位数普通与微处理器片内总线宽度是一致,但也有些存放器是片内总线宽度两倍。存放器广泛 依据操作数个数划分,80X86CPU指令系统中指令格式最惯用有:双操作数指令、单操作数指令和无操作数指令。第2页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 返回返回第3页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 2存放器阵列 存放器阵列是微处理器主要组成

3、部分,能够存放数据和地址。存放器位数普通与微处理器片内总线宽度是一致,但也有些存放器是片内总线宽度两倍。微处理器内部存放器数量与类型视详细微处理器而定。普通包含通用存放器、累加器、标志存放器和专用存放器(如:程序计数器PC、堆栈指示器SP、变址存放器、地址存放器)返回返回第4页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程(1)通用存放器组 通用存放器能够存放数据和地址。这类存放器作用并不做预先要求,故称之为通用存放器组。(2)累加器 它也是数据存放器。累加器往往与ALU单元一起完成各种算术或逻辑运算。运算前,作为运算器一个输入,运算后它惯用来保留运算结果。(3)标志存放器 进行算术

4、运算或逻辑运算时,可能会发生进位、溢出、全零、符号及奇偶性等状态改变,运算后又往往需要保留这些状态改变。为此,在微处理器中设置了标志存放器。惯用状态标志有:进位标志位C、零标志位Z、符号标志位S、奇偶位P、溢出位O和辅助进位位A(或称半进位)等。第5页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程(4)专用存放器 程序计数器PC PC它是指令地址存放器。它内容指出了现行指令在存放器中存放地址,当按此地址从存放器中取出现行指令时,PC内容自动修改为下一条指令地址。堆栈指示器SP 用于确定在堆栈操作时,堆栈在内存中详细位置。变址存放器 用于变址寻址方式,也可做通用存放器使用。另外,在微处

5、理器内部还有一些程序员不能访问内部工作存放器,如指令存放器、暂存器、地址缓冲器和数据缓冲器等。第6页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 3 3指令处理单元指令处理单元 指令处理单元即计算机控制器,负责对指令进行译码和处理。它普通包含:(1)指令存放器用来暂存即将被译码处理指令。(2)指令译码器负责对指令进行译码,经过译码获知该指令属于什么功效指令。(3)时序和控制逻辑依据指令要求,按一定时序发出并接收各种信号。4 4指令执行过程指令执行过程(1)取指令(2)指令译码(3)取操作数(4)执行指令(5)存放运算结果 返回返回第7页汇编语言汇编语言淮南师范学院重点课程淮南师范学

6、院重点课程 2.1.1 执行部件与总线接口部件 2.1.2 Inter8086CPU存放器结构 2.1.3 标志存放器(FR)及其用途 返回返回第8页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 1Intel8086微处理器主要特征 数据线16位。地址线20位,其中低16位与数据总线复用。内存空间20位地址线可直接寻址1MB存放空间。寻址方式7种寻址方式提供了灵活操作数存取方法。指令系统99条基本指令,能完成数据传送、算术运算、逻辑运算、控制转移和处理器控制功效等。时钟频率8086标准主频为5MHz,8086-2主频为8MHz。中止功效可处理内部软件中止和外部硬件中止,中止源多达2

7、56个。工作模式支持单处理器、多处理器系统工作。兼容性与8080、8085在源程序一级兼容。第9页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程2Intel8086总线接口部件BIU和总线执行部件EU 8086CPU内部从功效上讲由两部份组成:总线接口部件BIU(Bus Interface Unit)和 指 令 执 行 部 件EU(Execution Unit)。(1)总线接口部件BIU 总线接口部件BIU详细任务是:负责从内存单元中预取指令,并将它们送到指令队列缓冲器暂存。总线接口单元BIU由20位地址加法器、段存放器、16位指令指针、指令队列缓冲器和总线控制电路等组成。地址加法器

8、和段存放器 地址加法器用来产生20位地址,可直接寻址1MB存放物理空间。不过CPU内部存放器都是16位,所以需要由地址加法器来依据16段存放器提供内容(段起始地址)左移4位后,与16位偏移地址相加,形成一个20位物理地址,以对存放单元进行寻址。第10页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 比如,一条指令物理地址就是依据代码段存放器CS和指令指针存放器IP内容得到。假设CS=FE00H,IP=0200H,此时指令物理地址为FE200H。16位指令指针IP 8086CPU中,IP(1nstructionPoimer)用来存放将要取出指令在现行代码段中偏移地址。它只有与CS相结合

9、,才能形成指向指令存放单元物理地址。指令队列缓冲器 8086 CPU指令队列为6个字节,在EU执行指令同时,从内存中取下面一条或几条指令,将取来指令依次存放在指令队列中。它们按“先进先出”标准存放,并按次序取出到EU中执行。总线控制电路 总线控制电路将8086CPU内部总线和外部总线相连。第11页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程(2)总线执行部件EU EU主要任务是完成指令译码和执行指令操作。EU由算术逻辑运算单元、标志存放器,数据暂存存放器、通用存放器组和EU控制电路等组成。算术逻辑运算单元 算术逻辑运算单元(ALU)是一个16位运算器,用于二进制算术和逻辑运算,也可

10、计算寻址存放器所需16位偏移量。标志存放器 是一个16位存放器,用于反应CPU运算状态特征和存放一些控制标志。数据暂存存放器 它帮助ALU完成运算,暂存参加运算数据。通用存放器组 它包含4个16位数据存放器AX、BX、CX、DX,2个16位指针存放器SP、BP和2个16位变址存放器SI、DI。第12页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 EUEU控制电路控制电路 它负责从BIU指令队列缓冲器中取指令,并对指令译码。依据指令要求向EU内部各部件发出控制命令,以完成各条指令要求功效。EU详细工作过程是:从BIU指令队列缓冲器中取出指令操作码,经过译码电路分析,发出对应控制命令,

11、控制ALU数据总线中数据流向。假如是运算操作,操作数经过暂存器送入ALU,运算结果经过ALU数据总线送到对应存放器。同时,标志存放器FR依据运算结果改变状态。当指令要求访问存放器或l/O设备时,EU向BIU发出请求,由BIU经过8086系统总线访问存放器或IO设备。因为EU中全部存放器和数据通道(除队列总线为8位外)均为16位宽度,能够实现数据快速传送。8086CPU内部结构图以下:第13页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程第14页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 (3)BIUBIU和和EUEU并行工作并行工作 8086 CPU中,因为BIU和EU

12、是分开并独立工作,在EU执行指令同时,BIU可预取下面一条或几条指令。所以,CPU执行完一条指令后,就能够马上执行存放指令队列中下一条指令,而不需要像以往8位CPU那样,重复地进行先取指令、后执行指令串行操作。这种并行重合操作特点提升了总线信息传输效率和整个系统执行速度。返回返回第15页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 2.1.2 2.1.2 Inter8086CPUInter8086CPU存放器结构存放器结构 8086微微处处理理器器内内部部共共有有14个个16位位存存放放器器,包包含含:通通用用存存放器、地址存放器、段存放器、指令指针和标志存放器。放器、地址存放器、

13、段存放器、指令指针和标志存放器。1 1数据存放器数据存放器 包包含含AXAX、BXBX、CXCX、DXDX四四个个通通用用存存放放器器,它它们们都都能能够够以以字字(16(16位位)形形式式访访问问,也也能能够够以以字字节节(8(8位位)形形式式访访问问。比如对AX能够分别访问高位字节AH或低位字节AL。这四个存放器都是通用存放器,但它们又能够用于各自专用目标。AX:作为累加器用,它是算术运算主要存放器。BX:作通用存放器使用,它还经惯用作基址存放器。CX:作通用存放器使用,另外在循环(LOOP)和串处理指令中用作隐含计数器。DX:作通用存放器使用。还有一些特殊用途。第16页汇编语言汇编语言淮

14、南师范学院重点课程淮南师范学院重点课程 2指针及变址存放器 包包含含SP、BP、SI、DI四个16位存放器。它们能够像数据存放器一样在运算过程中存放操作数,但它们只能以字(16位)为单位使用。另外,在段内寻址时用它们来提供偏移地址。SP:称为堆栈指针存放器。用来指示栈顶偏移地址,BP:称为基址指针存放器。用作堆栈区中一个基地址方便访问堆栈中其它信息。SI:源变址存放器。当与DS联用时,用来确定数据段中某一存放单元地址,在串处理指令中,SI作为隐含源变址存放器,与DS联用到达在数据段寻址目标。DI:目标变址存放器。在串处理指令中,DI作为隐含目标变址存放器并ES联用在附加段中寻址,其它功效和使用

15、方法与SI基本相同。第17页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 3 3段存放器段存放器 80868086有四个段存放器。为了寻址1MB内存,将内存分成若干个逻辑段。每个段长64KB。使用四个段存放器存放各段基当地址。BIU中四个段存放器分别称为代码段CS(Code Segment)存放器、数据段DS(Data Segment)存放器、堆栈段SS(Stack Segment)存放器和附加段ES(Extra Segment)存放器。CS段存放器给出当前代码段基址。DS段存放器给出当前数据段基址。SS段存放器给出当前堆栈段基址。ES段存放器给出当前使用附加段基址。4 4控制存放

16、器控制存放器 包含IP和FR两个16位存放器。IP为指令指针存放器,用来存放代码段中偏移地址。它与CS存放器联用确定下一条指令物理地址。FR存放器,下一小节将详细介绍。返回返回第18页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 2.1.3 2.1.3 标志存放器标志存放器(FR)FR)及其用途及其用途 80868086CPUCPU中有一个16位标志存放器,由6位条件码标志(flag)和3位控制标志组成,以下所表示:15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0其中,条件码标志用来统计程序中运行结果状态信息,控制标志用来控制CPU工作状态。1 1条件标志

17、条件标志(1)OF(OverflowFlag)溢出标志,溢出时OF=1,不然OF=0。(2)SF(SignFlag)符号标志,结果为负时SF=1,不然SF=0。(3)ZF(ZeroFlag)零标志,结果为0时ZF=1,不然ZF=0。(4)CF(CarryFlag)进位标志,统计运算时从最高有效位产生 进位或借位值。当最高有效位有进位或借位时CF=1,不然置CF=0。OFDFIFTFSFZFAFPFCF第19页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程注:请读者区分好溢出标志OF和进位标志CF,当溢出时,表明运算结果出现了错误。(5)AF(AuxiliarycarryFlag)辅助

18、进位标志,统计运算时第3位(字节运算)或第7位(字运算)产生进位或借位值。比如,执行加法指令时第3位有进位时AF=1,不然AF=0。(6)PF(ParityFlag)奇偶标志,用来检验机器传送信息时可能产生代码犯错情况。当结果操作数中1个数为偶数时PF=l,不然PF=0。2控制标志控制标志(1)DF(DirectionFlag)方向标志,当DF位为1时,每次操作后使变址存放器SI和DI减量.当DF为0时,则使SI和DI增量.(2)IF(InterruptFlag)中止标志,IF为l时,开中止,不然关中止。(3)TF(TrapFlag)陷阱标志,TF=1时,每条指令执行完后产生陷井,TF=0时,

19、CPU正常工作不产生陷开。其中控制标志是系统程序或用户程序依据需要用指令设置。而状态信息是由中央处理机依据计算结果自动设置。第20页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 3标志位举例标志位举例【例2.1】执行以下两数加法操作,判断各标志位状态。0010 0011 0100 0101+0011 0010 0001 1001 0101 0101 0101 1110执行以上操作后,各状态标志位状态应为:CF=0 PF=0 AF=0 ZF=0 ZF=0 OF=0第21页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 【例2.2】执行加法操作。101010110000000

20、0+11111111111111111010101011111111执行操作后,各状态标志位状态应为:CF1PF1AF0ZF=0SF=1OF=0【例2.3】执行加法操作。0110010000000000+01100100000000001100100000000000执行以上加法操作后,各状态标志位状态应为:CF=0PF=0AF=0ZF0SF=1OF=1返回返回第22页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 2.2 存放器2.2.1 2.2.1 主存放器组成主存放器组成2.2.2 2.2.2 80868086存放器组织存放器组织返回返回第23页汇编语言汇编语言淮南师范学院重点

21、课程淮南师范学院重点课程 存放器分类:按所存放位置分:分为主存放器和辅助存放器。主存放器存放当前正在执行程序和使用数据。辅助存放器用来长久保留大量程序和数据。按读写方式分:分为随机存取存放器RAM和只读存放器ROM。RAM存放器在断电后不能保留信息。ROM存放器在断电后仍能保留信息。存放器组成:存放器由存放单元组成,每个存放单元有一个惟一存放器地址。每个存放单元存放1个字节数据,1个字节包含了8个二进制位。存放容量是指存放器所含有存放单元个数,基本单位是字节B。为了表示更大容量,惯用单位是KB(千字节),MB(兆字节),GB(吉字节),甚至TB(太字节)。换算:1KB=2l10字节=1024字

22、节,1MB=220字节,1GB=230字节,1TB=240字节。返回返回第24页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 2.2.2 80862.2.2 8086存放器组织存放器组织1存放器单元地址和内容 地址:每个存放单元要求编号是地址,存放单 元地址从0开始顺次加1。存放单元地址 是无符数。n位二进制数共能表示2n个存放 单元地址,为了书写方 便,存放单元地 址常采取十六进制数表示。内容:一个存放单元中存放信息称为该存放单元内容。地址与内容关系:见下列图第25页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 第26页汇编语言汇编语言淮南师范学院重点课程淮南师范学院

23、重点课程 字地址:一个字存放到存放器要占用连续两个字节单元。低字节存放在地址低字节单元中,高字节存放在地址高字节单元中,字单元地址用低地址表示。比如:34560H字单元内容是1234H,而地址为78780H时字单元内容是3332H。双字:4个连续字节单元就组成了一个双字单元。比如:地址为34560H双字单元中存放内容是78561234H。2物理地址形成 物理空间:8086CPU地址线是20位,最大可寻空间是220=1MB,其物理寻址范围是00000HFFFFFH。逻辑段:把1M字节地址空间划成若干逻辑段。每个逻辑段必须满足两个条件:一是逻辑段起始地址(简称段首址)必须是16倍数;二是逻辑段最大

24、长度为64K。按照这两个条件,1M字节地址空间最多可划分成64K个逻辑段,最少也要划分成16个逻辑段。逻辑段与逻辑段能够相连,也能够不连,还能够重合。段首址:是指逻辑段在主存中起始位置。段内偏移地址:是指主存单元距离段首址偏移量,简称偏移地址,用EA来表示,因为限定每段不超出64KB,所以偏移地址能够用16位数据表示。第27页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 物理地址形成:物理地址用PA表示,8086内部和用户编程时所采取“段首址:段内偏移地址”形式,称为逻辑地址。将逻辑地址中段首址左移4位,加上偏移地址就得到20位物理地址。比如逻辑地址“3850H:200H”表示物理

25、地址38700H。同一个物理地址能够有多个逻辑地址形式。3存放器各段分配举例 【例2.4】各独立段分配情况示例。设CS=B000H、DS=1CDEH、SS=4200H、ES=0150H,它们分别为代码段、数据段、堆栈段和附加段段首址。自每个段首址开始,各段均占64KB范围,各段之间互不重合。如图2.7所表示。第28页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程第29页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 【例2.5】各段相互重合情况示例。设CS=0200H、DS=0400H、SS=0480H,这么代码段、数据段和堆栈段物理首地址分别为0H、04000H和0480

26、0H。其中代码段占8KB地址空间,数据段占2KB,堆栈段占256B,SP=0100H。因为该程序没有使用附加段,所以没有设置ES值。从该例能够看出,每个段大小应依据实际需要分配,能够重合。有时,甚至能够将全部4种段都集中在一个逻辑段内,形成一个短小紧凑程序,其大小不超出64KB。假设使CS=DS=SS=0200H,则代码段将占据该逻辑段为偏移地址0000H一1FFFH8KB,数据段在偏移地址H-27FFH位置,堆栈段指针SP=2900H。如图2.8所表示。第30页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程图2.8各段重合存放单元分配图返回返回第31页汇编语言汇编语言淮南师范学院重

27、点课程淮南师范学院重点课程 2.3.1 堆栈结构 2.3.2 2.3.2 80868086堆栈组织堆栈组织 2.3.3 2.3.3 堆栈操作堆栈操作返回返回第32页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 2.3 2.3 堆栈堆栈(Stack)Stack)2.3.1 2.3.1 堆栈结构堆栈结构1 1什么是堆栈什么是堆栈 堆堆栈栈有有两两种种形形式式:一一个个是是硬硬堆堆栈栈,即即用用存存放放器器组组来来实实现现。另另一一个个是是软软堆堆栈栈,即即用用主主存存一一部部分分空空间间作作堆堆栈栈。堆堆栈栈运运行行方方式式为为先先进进后后出出或或先先进进先先出出两两种种,先先进进后后

28、出出型型堆堆栈栈操操作作数数只只能能从从一一个个口口进进行行读读或或写写。堆堆栈栈主主要要用用于于暂暂存存数数据据以以及及在在“过过程程”调调用用或或处理中止时暂存断点信息。处理中止时暂存断点信息。2 2堆栈结构堆栈结构 现现在在通通常常采采取取软软堆堆栈栈,由由程程序序设设计计人人员员用用程程序序在在存存放放器器中中划划出出一一块块存存放放区区作作为为堆堆栈栈。这这个个存存放放区区最最大大地地址址字字存存放放单单元元为为堆堆栈栈底底部部,叫叫栈栈底底(Bottom)Bottom)。在在堆堆栈栈中中存存放放数数据据或或断断点点信信息息从从这这里里开开始始,逐逐步步向向地地址址小小方方向向“堆堆

29、积积”。在在任任何何时时刻刻,存存放放最最终终一一个个信信息息存存放放单单元元(即即已已存存放放信信息息最最小小地地址址单单元元)为为堆堆栈栈顶顶部部,叫栈顶叫栈顶(TOP)TOP)。栈顶是伴随存放信息多少而变栈顶是伴随存放信息多少而变 因因为为堆堆栈栈顶顶部部是是浮浮动动,为为了了指指示示现现在在堆堆栈栈中中存存放放数数据据位位置置,通通常常设设置置一一个个指指针针堆堆栈栈指指针针SP(Stack SP(Stack Pointer)Pointer),它它一一直直指指向堆栈顶部。向堆栈顶部。第33页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 2.3.2 80862.3.2 808

30、6堆栈组织堆栈组织 栈底为堆栈空间高地址单元,栈顶为低地址单元。数据进栈后,栈顶向低地址方向浮动;数据出栈后,栈顶向高地址方向调整。一个16位数据进栈规律是:高位字节存入高地址单元,低位字节存入低地址单元。一个16位数据出栈规律是:低位字节弹到目标操作数低位,高位字节弹到目标操作数据高位。为了指示栈顶当前位置,用SP存放栈顶有效地址。堆栈是按字组织,即每次在堆栈中存取数据均是两个字节,数据在堆栈中存放格式是:第34页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 2.3.3 2.3.3 堆栈操作堆栈操作 1 1设置堆栈设置堆栈堆栈设置主要是对堆栈段存放器SS和堆栈指针SP赋值。在用户

31、源程序中通常安排一个段为堆栈段。如:SEGMENT PARA STACK ;说明本段为堆栈段 DW 100 DUP(0)ENDS2 2进栈进栈 进栈(PUSH)就是把数据压人堆栈。压入堆栈数据能够是段存放器内容,也能够是通用存放器或内存操作数等。进栈操作以下程序段所表示。比如:PUSH AX PUSH DS PUSH DATA_WORD PUSHF ;把标志存放器内容压人堆栈 第35页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 3 3出栈出栈 出栈(POP)就是从堆栈顶部弹出一个字送回通用存放器、段存放器或者字存放单元,以下程序段所表示。比如:POP AX POP DX POP

32、DATA_WORD POPF ;从堆栈弹出内容送回标志存放器 返回返回第36页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 2.4 2.4 Inter80486Inter80486和和PentiumPentium微处理器微处理器 结构及存放管理结构及存放管理 2.4.1 2.4.1 8048680486和和PentiumPentium微处理器结构微处理器结构 2.4.2 2.4.2 8048680486和和PentiumPentium微处理器存放器结构微处理器存放器结构 2.4.3 2.4.3 8048680486和和PentiumPentium存放管理存放管理 返回返回第37页汇

33、编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 2.4.1 804862.4.1 80486和和PentiumPentium微处理器结构微处理器结构 1 18048680486微处理器微处理器 80486 80486由由7 7大部分组成,它们是总线接口部分、指令预取大部分组成,它们是总线接口部分、指令预取部分、译码部分、控制部分、运算部分、存放管理部分部分、译码部分、控制部分、运算部分、存放管理部分和高速缓冲存放器,和高速缓冲存放器,8048680486存存放放空空间间高高达达246246字字节节,并并含含有有各各种种存存放放器器和和丰丰富富数数据类型。据类型。运运算算部部分分:包包含

34、含定定点点运运算算部部件件和和浮浮点点运运算算部部件件。进进行行定定点点运运算算时时需需要要算算术术逻逻辑辑运运算算单单元元(ALU)ALU)、移移位位器器和和存存放放器器组组;进进行行浮浮点点运运算算时时需需要要浮浮点点运运算算单单元元(FPU)FPU)和和浮浮点点存存放放器组器组。存存放放管管理理部部分分:是是为为实实现现虚虚拟拟存存放放器器而而设设置置,它它由由分分段段部部件件和和分分页页部部件件两两部部分分组组成成。分分段段部部件件管管理理逻逻辑辑地地址址空空间间,并并把把逻逻辑辑地地址址转转换换为为线线性性地地址址;分分页页部部件件把把线线性性地地址转换为物理地址。址转换为物理地址。

35、第38页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程图2.11 80486微处理品基本结构示意图 第39页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 高速缓冲存放器:为了提升计算机运算速度,高速缓冲存放器:为了提升计算机运算速度,8048680486在内部还集成在内部还集成了一个了一个8 8K K字节高速缓冲存放器字节高速缓冲存放器(cache)cache),cachecache用来存放最近运行程用来存放最近运行程序所需要指令代码和数据。指令预取部件中包含了两个序所需要指令代码和数据。指令预取部件中包含了两个1616字节队列字节队列存放器。存放器。控控制制部部分分:由

36、由控控制制与与保保护护部部件件和和控控制制ROMROM组组成成。控控制制部部分分依依据据指指令令译译码码器器送送来来信信息息产产生生微微指指令令,并并经经过过微微指指令令对对运运算算部部分分、存存放放管管理理部分及指令译码器发出控制信号。部分及指令译码器发出控制信号。总总线线接接口口部部分分:功功效效是是产产生生访访问问微微处处理理器器以以外外存存放放器器和和输输入入输输出出接口所需要地址、数据和命令接口所需要地址、数据和命令。微微处处理理器器与与外外部部信信息息交交换换是是经经过过总总线线接接口口部部分分数数据据总总线线收收发发器器进进行行。在在微微处处理理器器内内部部有有两两组组方方向向不

37、不一一样样3232位位数数据据线线,当当外外部部信信息息输输入入时时,可可经经过过一一组组数数据据线线把把信信息息送送往往cachecache和和指指令令预预取取队队列列;当当向向外外送送出出信信息息时时,是是经经过过数数据据收收发发器器中中写写缓缓冲冲器器进进行行。这这么么可可缓缓解解高高速速运运行行CPUCPU与与以以较较低低速速度度运运行行存存放放器器、输输入入输输出出接接口口之之间间矛矛盾盾,且可实现并行处理。且可实现并行处理。第40页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 2 2PentiumPentium微处理器微处理器(1)Pentium采取先进技术 CISC技

38、术和RISC技术 复杂指令集计算机技术(CISC)和简化指令集计算机技术(RISC)是两种不一样CPU设计技术,Intel企业在Pentium之前CPU均属于CISC体系,从Pentium开始,将CISC和RISC结合,取二者之长,实现更高性能。采取CISC技术CPU有以下特点:(a)指令系统中包含很多指令。(b)访问内存时采取各种寻址方式。(c)采取微程序机制,使微处理器控制ROM中存放了众多微程序。采取RISC技术CPU有以下特点:(a)指令系统只含简单而惯用指令,指令长度较短,而且长度相同。(b)采取流水线机制来执行指令,该机制是一个指令级并行处理方式,在一样时间段中比非流水线机制下执行

39、更多指令。(c)大多数指令利用内部存放器来执行,从而使内存管理简化。Pentium大多数指令是简化指令,但依然保留了一部分复杂指令,而对这部分指令采取硬件来实现。所以,Pentium吸收了二者之长。第41页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 超标量流水线技术 所谓超标量,就是一个处理器中有多条指令流水线。在Pentium中,采取U和V两条流水线,每条流水线均含有独立ALU地址生成电路和连接数据Cache接口。超标量流水线机制使Pentium能够在一个时钟周期执行两条整数运算指令,比相同频率前一代CPU实际速度提升一倍。超标量流水线技术是和RISC技术密不可分。Pentiu

40、m内部还含有一个增强型浮点运算器floating processor unit,FPU),在FPU中,采取快速硬件来实现浮点加、乘、除运算,使其浮点运算速度比前一代CPU快三倍以上。分支预测技术 在转移指令执行前,能够预测转移是否发生,从而确定今后执行哪一段程序。Pentium用分支目标缓冲器(branch target buffer,BTB)来执行预测功效,它含有一个1KB容量Cache,其中能够容纳256条转移指令目标地址和历史状态。第42页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 在程序运行中,在程序运行中,BTBBTB采取动态预测方法,当一条指令造成份支采取动态预测方法

41、,当一条指令造成份支时,时,BTBBTB检测这条指令以前执行状态,并用此状态信息预测当前分检测这条指令以前执行状态,并用此状态信息预测当前分支目标地址,然后,预取此处指令。当支目标地址,然后,预取此处指令。当BTBBTB判断正确时,分支程序判断正确时,分支程序会如同分支未发生一样,维持流水线照常运行,当会如同分支未发生一样,维持流水线照常运行,当BTBBTB判断错误时,判断错误时,则修改历史统计并重新取指令、译码则修改历史统计并重新取指令、译码即重新建立流水线。但即重新建立流水线。但总说,有了总说,有了BTBBTB依然显著提升了效率。依然显著提升了效率。(2 2)PentiumPentium微

42、处理器结构微处理器结构 Pentium Pentium微处理器主要由微处理器主要由1010大部分组成,它们是:总线接口部大部分组成,它们是:总线接口部件、件、U U流水线和流水线和V V流水线、指令流水线、指令CacheCache、数据数据CacheCache、指令预取部件、指令预取部件、指令译码器、浮点处理部件指令译码器、浮点处理部件FPUFPU、分支目标缓冲器分支目标缓冲器BTBBTB、控制控制ROMROM、存放器组。存放器组。总总线线接接口口部部件件:实实现现CPUCPU与与系系统统总总线线连连接接,其其中中包包含含6464位位数数据据线线、3232位地址线和众多控制信号线。位地址线和众

43、多控制信号线。U U流流水水线线和和V V流流水水线线:二二者者独独立立运运行行,这这两两条条流流水水线线中中都都有有独独立立ALUALU,U U流流水水线线可可执执行行全全部部整整数数运运算算指指令令,V V流流水水线线只只能能执执行行简简单单整整数数运算指令和数据交换指令。运算指令和数据交换指令。第43页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 指令Cache、数据Cache:二者分开,从而降低了指令预取和数据操作之间可能发生冲突,并可提升命中率。两个Cache分别配置了专用转换检测缓冲器,用来将线性地址转换为Cache物理地址。指令预取部件:指令预取部件每次取两条指令,假

44、如是简单指令,而且后一条指令不依赖于前一条指令执行结果,那么,指令预取部件便将两条指令分别送到U流水线和V流水线独立执行。指令译码器:指令Cache、指令预取部件将原始指令送到指令译码器,分支目标缓冲器则在碰到分支转移指令时用来预测转移是否发生。浮点处理部件FPU主要用于浮点运算,内含专用加法器、乘法器和除法器。控制ROM中,含有Pentium微代码,控制部件则直接控制流水线。返回返回第44页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 2.4.2 804862.4.2 80486和和PentiumPentium微处理器存放器结构微处理器存放器结构 80486 80486和和Pen

45、tiumPentium微处理器中存放器能够分为微处理器中存放器能够分为4 4类,它们是基类,它们是基本结构存放器、系统级存放器、浮点存放器和调试测试存放器。本结构存放器、系统级存放器、浮点存放器和调试测试存放器。应用程序只能访问基本结构存放器和浮点存放器;而系统程序应用程序只能访问基本结构存放器和浮点存放器;而系统程序可访问全部存放器。可访问全部存放器。1 1基本结构存放器基本结构存放器 (1 1)通用存放器)通用存放器 8 8个个3232位位通通用用存存放放器器,这这些些存存放放器器都都能能够够存存放放数数据据或或地地址址,并并能进行能进行3232位、位、1616位、位、8 8位和位和1 1

46、位运算。位运算。(2 2)段存放器)段存放器 微微处处理理器器内内部部有有6 6个个1616位位段段存存放放器器,它它们们直直接接或或间间接接地地指指出出指指令令代代码码和和数数据据所所用用地地址址空空间间。这这6 6个个段段存存放放器器是是代代码码段段存存放放器器CSCS、堆栈段存放器堆栈段存放器SSSS,数据段存放器数据段存放器DSDS,ESES,FSFS和和GSGS。(3 3)指令指针)指令指针 它它是是3232位位存存放放器器,称称作作EIPEIP。EIPEIP中中存存放放相相对对于于代代码码段段存存放放器器基值偏移量。基值偏移量。第45页汇编语言汇编语言淮南师范学院重点课程淮南师范学

47、院重点课程 (4)标志存放器 它是32位存放器,称作EFLAGS。EFLAGS中位可分为标志位和控制位两类,标志位指明程序运行时微处理器实时状态;控制位由程序设计者设置,以控制80486和Pentium进行某种操作。2系统级存放器 包含4个控制存放器和4个系统地址存放器,它们控制着80486和Pentium微处理器片内cache、运算部分浮点部件以及存放管理部分。这些存放器只在系统程序中才能使用。3调试与测试存放器 80486微处理器有8个调试存放器,这就对程序调试提供了硬件上支持。80486微处理器还包含5个测试存放器,用于测试本身片内cache和转换用旁视缓冲区TLB,但Pentium取消

48、了测试存放器,用一组模式专用存放器来实现更多功效。返回返回第46页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 2.4.3 80486和Pentium存放管理 1存放地址空间 80486微处理器有3个明确存放地址空间,它们是虚拟空间、线性空间和物理空间。虚拟空间又称为逻辑空间,是应用程序员编写程序空间 物理空间也称为主存空间,是计算机中主存放器实际空间,对应地址称作物理地址或主存地址。80486微处理器经过分段部件把虚拟空间变换为32位线性空间。假如分页部件未被选取,线性地址就是物理地址2输入输出(IO)地址空间486有两个独立物理空间,一个是存放空间,另一个是IO空间。80486微处理器IO空间由216(64K)个地址组成。它与存放地址不重合,这是因为80486微处理器芯片MIO引脚把它们从逻辑上给区分开来了。返回返回第47页

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服