ImageVerifierCode 换一换
格式:PPT , 页数:61 ,大小:2.59MB ,
文档编号:4537840      下载积分:28 文币
快捷下载
登录下载
邮箱/手机:
温馨提示:
系统将以此处填写的邮箱或者手机号生成账号和密码,方便再次下载。 如填写123,账号和密码都是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

优惠套餐
 

温馨提示:若手机下载失败,请复制以下地址【https://www.163wenku.com/d-4537840.html】到电脑浏览器->登陆(账号密码均为手机号或邮箱;不要扫码登陆)->重新下载(不再收费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  
下载须知

1: 试题类文档的标题没说有答案,则无答案;主观题也可能无答案。PPT的音视频可能无法播放。 请谨慎下单,一旦售出,概不退换。
2: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
3: 本文为用户(晟晟文业)主动上传,所有收益归该用户。163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

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

计算机组成原理课件第4章.ppt

1、主讲教师 庄春兴上午9时33分24.1指令系统的发展和性能要求指令系统的发展和性能要求4.2指令格式指令格式4.3指令和数据的寻址方式指令和数据的寻址方式4.4堆栈寻址方式堆栈寻址方式4.5典型指令典型指令上午9时33分3p机器指令(指令)机器指令(指令)n计算机能直接识别、执行的某种操作命令。n微指令:微程序级的命令,它属于硬件;n宏指令:由若干条机器指令组成的软件指令,它属于软件;n机器指令(指令):介于微指令与宏指令之间,每条指令可完成一个独立的算术运算或逻辑运算。p程序程序n是解决某一实际问题的指令序列p指令系统(指令集)指令系统(指令集)n 一台计算机中所有机器指令的集合。n机器硬件

2、设计的依据,也是软件设计的基础。n硬件和软件间的界面,直接影响计算机系统性能上午9时33分4p指基本指令系统相同、基本体系结构相同的一系列计算机。pIBM,PDP-11,VAX-11,ARM,Intel-x86,Pentiump系列计算机主要是解决软件兼容的问题。新计算机中必须包含老计算机的指令系统,保证软件向上兼容,保护用户投资。上午9时33分5pCISC(复杂指令系统计算机复杂指令系统计算机)nComplex Instruction System Computern指令数量多(多达几百条),指令功能,复杂的计算机。n难以保证正确性,不易调试维护,造成硬件资源浪费pRISC(精简指令系统计算

3、机精简指令系统计算机)nReduced Instruction System Computern指令数量少,指令功能单一的计算机。上午9时33分6p完备性:指令丰富,功能齐全,使用方便。p有效性:程序占空间小,执行速度快。p规整性:n对称性(所有寄存器、存储单元同等对待)、匀齐性(一种操作支持多种数据类型):n指令格式和数据格式的一 致性(指令长度和数据长度通常是字节的整数倍):p兼容性:系列机软件向上兼容上午9时33分7p高级语言(如高级语言(如C,FORTRAN等)等)n其语句和用法与具体机器的指令系统无关,易编程。n不能用于编写直接访问机器硬件资源的系统软件或设备控制软件不能用于编写直接

4、访问机器硬件资源的系统软件或设备控制软件p低级语言低级语言n机器语言(二进制语言)n汇编语言(符号语言)n面向机器的语言,和具体机器的指令系统密切相关。机器语言用指令代码编写程序,而符号语言用指令助记符来编写程序。p必须借助必须借助汇编程序汇编程序或或编译程序编译程序,把符号语言或高级语言翻译成二进制,把符号语言或高级语言翻译成二进制码组成的码组成的机器语言机器语言。上午9时33分8p表示一条指令的机器字,称为指令字指令字,简称指令。p指令格式:用二进制代码表示指令的结构形式。操作码字段地址码字段上午9时33分9p操作码字段表征指令的操作特性与功能p指令系统中每一条指令对应一个操作码p操作码字

5、段的位数取决于指令系统的规模nn=2L p定长指令、变长指令(固定位数和可变位数)操作码字段地址码字段上午9时33分10p地址码通常指定参与操作的地址码通常指定参与操作的操作数的地址操作数的地址或或操作数本身操作数本身p地址码包括地址码包括被操作数,操作数,操作结果被操作数,操作数,操作结果 操作码 1 2 3操作码 1 2操作码 1 操作码 二地址格式三地址格式一地址格式零地址格式上午9时33分11(1)零地址指令两种情况:n不需要操作数,如空操作指令NOP;n隐含一个操作数位于累加器AC中。如十进制修正指令DAA。(2)一地址指令有两种情况:n只需要一个操作数,如求反指令NOT;n需要两个

6、操作数,但另一个操作数在累加寄存器AC中(AC)OP(A)-AC上午9时33分12(3)二地址指令(A1)OP(A2)-A1(4)三地址指令(A1)OP(A2)-A3nA1为被操作数地址,也称源操作数地址;nA2为操作数地址,也称终点操作数地址;nA3为存放结果的地址。nA1,A2,A3可以是内存中的单元地址,也可以是运算器中通用寄存器的地址。上午9时33分13 上午9时33分14p指令中包含二进制代码的位数p机器字长机器字长n计算机能直接处理的二进制数据的位数,它决定了计算机的运算精度p指令字长度指令字长度与机器字的长度有关:n 单字长,双字长,半字长。p等长指令:结构简单,控制线路简单。p

7、变长指令:结构灵活,充分利用指令长度,控制复杂上午9时33分15典典型型指指令令 指令助记符指令助记符 二进制操作码二进制操作码 加法加法 ADD 001减法减法 SUB 010传送传送 MOV 011跳转跳转 JMP 100转子转子 JSR 101存储存储 STR 110读数读数 LDA 111 为了为了书写和阅读程序,每条指令通常用书写和阅读程序,每条指令通常用3个或个或4个英文个英文缩写字母来表示。缩写字母来表示。表表4.2指令助记符指令助记符举例举例上午9时33分161.八位微型计算机的指令格式八位微型计算机的指令格式 8位微型机字长只有位微型机字长只有8位,指令结构是一种可变字长形式

8、,位,指令结构是一种可变字长形式,包含单字长、双字长、三字长指令等多种。包含单字长、双字长、三字长指令等多种。操作码 操作码 1 2操作码 1 单字长指令 双字长指令 三字长指令 上午9时33分172.PDP/11系列机指令格式系列机指令格式操作码字段是操作码字段是不固定不固定,长度不相同长度不相同。这样做可以扩展操作码以包含较多的指令。但。这样做可以扩展操作码以包含较多的指令。但是操作码字段不固定,对控制器的设计来说必将复杂化是操作码字段不固定,对控制器的设计来说必将复杂化上午9时33分184.ARM指令格式指令格式上午9时33分194.pentium指令格式指令格式pentium机的指令字

9、长度是可变的:从字节到机的指令字长度是可变的:从字节到12字节,还可以带字节,还可以带前缀,指令格式如下所示。前缀,指令格式如下所示。0或或1 0或或10或或10或或1(字节数字节数)指令前缀指令前缀段取代段取代操作数长度取代操作数长度取代地址长度取代地址长度取代1或或20或或1 0或或1 0,1,2,4 0,1,2,4(字节数字节数)操作操作码码ModReg或或操作码操作码R/M比例比例S变变址址I基址基址B位移量位移量立即数立即数2位位3位位 3位位 2位位 3位位3位位上午9时33分20例例1指令格式如下所示,其中指令格式如下所示,其中OP为操作码,试分析指令为操作码,试分析指令格式的特

10、点。格式的特点。15 9 8 7 4 3 0 op源寄存器源寄存器目标寄存器目标寄存器解:(1)单字长二地址指令。(2)操作码字段OP可以指定128条指令。(3)源寄存器和目标寄存器都是通用寄存器(可分别指定16个),所以是RR型指令,两个操作数均在寄存器中。(4)这种指令结构常用于算术逻辑运算类指令。上午9时33分21例例2 指令格式如下所示,指令格式如下所示,OP为操作码字段,试分析指令格式特点为操作码字段,试分析指令格式特点 解:(1)双字长二地址指令,用于访问存储器。(2)操作码字段OP为6位,可以指定64种操作。(3)一个操作数在源寄存器(共16个),另一个操作数在存储器中(由变址寄

11、存器和位移量决定)所以是RS型指令。op源寄存器源寄存器变址寄存器变址寄存器 位移量(位移量(16位)位)15 10 7 43 0 上午9时33分22p在存储器中,操作数或指令字写入或读出的方式,在存储器中,操作数或指令字写入或读出的方式,有有地址指定方式地址指定方式、相联存储方式相联存储方式和和堆栈存取方式。堆栈存取方式。p当采用地址指定方式时,寻找指令或操作数有效当采用地址指定方式时,寻找指令或操作数有效地址的方式地址的方式n指令寻址指令寻址F顺序寻址顺序寻址F跳跃寻址跳跃寻址n操作数寻址操作数寻址上午9时33分23p程序的指令序列在主存顺序存放。程序执行时从第一条指令开始,逐条取出并逐条

12、执行,这种程序的顺序执行过程,称为顺序寻址方式。p为了达到顺序寻址的目的,CPU中必须有一个程序计数器(PC)对指令的顺序号进行计数。PC中开始时存放程序的首地址,每执行一条指令,PC 加1,以指出下条指令的地址,直到程序结束。pPC存放下一条指令的地址上午9时33分24p当程序中出现分支或循环时,就会改变程序的执行顺序。此时对指令寻址就要采取跳跃寻址方式。p所谓跳跃,就是指下条指令的地址不是通过程序计数器PC当前值获得的,而是由指令本身给出。p跳跃的处理方式是重新修改PC的内容。然后进入取指令阶段。上午9时33分25IR100JMP 103MOV AX,BXJMP 103MOV AX,BX1

13、03上午9时33分26p形成操作数有效地址的方法。n例如,一种单地址指令的结构如下所示,其中用X,I,D各字段组成该指令的操作数地址。n寻址过程就是把操作数的形式地址,变换为操作数的有效地址的过程。n实际有效地址为E,实际操作数Sn S=(E)OPXID上午9时33分27p在在指令中不明显的给出而是隐含着操作数的地址指令中不明显的给出而是隐含着操作数的地址p例如,单地址的指令格式,没有在地址字段中指例如,单地址的指令格式,没有在地址字段中指明第二操作数地址,而是规定累加寄存器明第二操作数地址,而是规定累加寄存器AC作为作为第二操作数地址,第二操作数地址,AC对单地址指令格式来说是隐对单地址指令

14、格式来说是隐含地址。含地址。上午9时33分28p指令的地址字段指出的不是操作数的地址,而是操作数本身指令的地址字段指出的不是操作数的地址,而是操作数本身p这种方式的特点是指令执行时间很短,不需要访问内存取数这种方式的特点是指令执行时间很短,不需要访问内存取数例如:单地址的移位指令格式为例如:单地址的移位指令格式为OP(移位移位)FD这里这里D不是地址,而是一个操作数。不是地址,而是一个操作数。F为标志为标志位,当位,当F1,操作数进行右移;当,操作数进行右移;当F0时,操作时,操作数进行左移。数进行左移。上午9时33分29直接寻址特点是:直接寻址特点是:在指令格式的地址字段中直接指出操作数在内

15、在指令格式的地址字段中直接指出操作数在内存的地址存的地址D。采用直接寻址方式时,指令字中的形式地址采用直接寻址方式时,指令字中的形式地址D就是操作数的就是操作数的有效地址有效地址E,既,既ED。因此通常把形式地址。因此通常把形式地址D又称为直接地址。又称为直接地址。此时,由寻址模式给予指示。此时,由寻址模式给予指示。如果用如果用S表示操作数,那么直接寻表示操作数,那么直接寻址的逻辑表达式为址的逻辑表达式为 S(E)()(D)上午9时33分30间接寻址的情况下,间接寻址的情况下,指令地址字段中的形式地址指令地址字段中的形式地址D不是操作数的真正不是操作数的真正地址,而是操作数地址的指示器,地址,

16、而是操作数地址的指示器,D单元的内容才是操作数的有效地址单元的内容才是操作数的有效地址 如果把直接寻址和间接寻址结合起来,指令有如下形式:如果把直接寻址和间接寻址结合起来,指令有如下形式:操作码操作码ID 寻址特征位寻址特征位I0,表示直接寻址,这时有效地址,表示直接寻址,这时有效地址ED;I1,表示间接寻址,这时有效地址,表示间接寻址,这时有效地址E(D)。上午9时33分31p寄存器寻址n操作数在CPU的内部寄存器中.p寄存器间接寻址n指令格式中的寄存器内容不是操作数,而是操作数的地址,该地址指明的操作数在内存中上午9时33分32相对寻址是相对寻址是把程序计数器把程序计数器PC的内容加上指令

17、格式中的形式地的内容加上指令格式中的形式地址址D而形成操作数的有效地址而形成操作数的有效地址。采用相对寻址方式的好处是程序员无须用指令的绝对地址编程采用相对寻址方式的好处是程序员无须用指令的绝对地址编程,所编程序可以放在内存任何地方。,所编程序可以放在内存任何地方。此时形式地址此时形式地址D通常称为通常称为偏移量偏移量,其值,其值可正可负可正可负,相对于当前,相对于当前指令地址进行浮动。指令地址进行浮动。上午9时33分33 基址寻址方式是基址寻址方式是将将CPU中基址寄存器的内容加上指令格中基址寄存器的内容加上指令格式中的形式地址而形成操作数的有效地址式中的形式地址而形成操作数的有效地址。优点

18、是可以扩大寻址能力。优点是可以扩大寻址能力。上午9时33分34变址寻址方式变址寻址方式变址寻址方式与基址寻址方式计算有效地址的方法很相似,它变址寻址方式与基址寻址方式计算有效地址的方法很相似,它把把CPU中某个中某个变址寄存器的内容与偏移量变址寄存器的内容与偏移量D相加相加来形成操作数有效来形成操作数有效地址。地址。但使用变址寻址方式的但使用变址寻址方式的目的不在于扩大寻址空间目的不在于扩大寻址空间,而在于实而在于实现程序块的现程序块的规律性变化规律性变化。块寻址方式块寻址方式 块寻址方式经常用在输入输出指令中,以实现外存储器或外围块寻址方式经常用在输入输出指令中,以实现外存储器或外围设备同内

19、存之间的数据块传送。块寻址方式在内存中还可用于数据设备同内存之间的数据块传送。块寻址方式在内存中还可用于数据块搬家。块搬家。块寻址时,通常在指令中指出数据块的起始地址(首地址块寻址时,通常在指令中指出数据块的起始地址(首地址)和数据块的长度(字数或字节数)。)和数据块的长度(字数或字节数)。如果数据块是变长的,可用三种方法指出它的长度:如果数据块是变长的,可用三种方法指出它的长度:(1)指令中划出字段指出长度;指令中划出字段指出长度;(2)指令格式中指出数据块的首地址与末地址;指令格式中指出数据块的首地址与末地址;(3)由块结束字符指出数据块长度。由块结束字符指出数据块长度。操作码操作码首地址

20、首地址标志位标志位末地址末地址上午9时33分35pIntel 8086/8088微机中,ALU16位运算,但其寻址范围可到1M,即地址有20位。p实质是基值寻址。4位16位逻辑地址16位段寄存器20位物理地址ALU上午9时33分36例例3一种二地址一种二地址RS型指令的结构如下所示:型指令的结构如下所示:6位位 4位位 1位位 2位位16位位其中其中I为间接寻址标志位,为间接寻址标志位,X为寻址模式字段,为寻址模式字段,D位偏移量字段。通过位偏移量字段。通过I,X,D的的组合,可构成下表所示的寻址方式。组合,可构成下表所示的寻址方式。请写出六种寻址方式的名称。请写出六种寻址方式的名称。解解:直

21、接寻址直接寻址 相对寻址相对寻址 变址寻址变址寻址 寄存器间接寻址寄存器间接寻址 间接寻址间接寻址 基址寻址基址寻址 OPIX偏移量偏移量D上午9时33分37例:某例:某1616位机器所使用的指令格式和寻址方式如下所示,该机有两个位机器所使用的指令格式和寻址方式如下所示,该机有两个2020位位基址寄存器,四个基址寄存器,四个1616位变址寄存器,十六个位变址寄存器,十六个1616位通用寄存器,指令汇编格位通用寄存器,指令汇编格式中的式中的S S和和D D都是指通用寄存器,都是指通用寄存器,M M指主存中的一个单元。三种指令的操作码指主存中的一个单元。三种指令的操作码分别是分别是MOVMOV为为

22、0AH 0AH,STASTA为为1BH 1BH,LDALDA为为3CH3CH。(1)分析三种指令的指令格式与寻址方式特点)分析三种指令的指令格式与寻址方式特点。(2 2)CPUCPU完成哪一种操作所花时间最短?哪一种操作所花时间最长?第二完成哪一种操作所花时间最短?哪一种操作所花时间最长?第二种指令的执行时间有时会等于第三种指令的执行时间吗?种指令的执行时间有时会等于第三种指令的执行时间吗?(3 3)下列情况下每个十六进制指令字分别代表什么操作?其中如果有编码)下列情况下每个十六进制指令字分别代表什么操作?其中如果有编码不正确,如何改正才能成为合法指令?不正确,如何改正才能成为合法指令?LDA

23、 D LDA D,M M上午9时33分38例:某例:某1616位机器所使用的指令格式和寻址方式如下所示,该机有两个位机器所使用的指令格式和寻址方式如下所示,该机有两个2020位位基址寄存器,四个基址寄存器,四个1616位变址寄存器,十六个位变址寄存器,十六个1616位通用寄存器,指令汇编格位通用寄存器,指令汇编格式中的式中的S S和和D D都是指通用寄存器,都是指通用寄存器,M M指主存中的一个单元。三种指令的操作码指主存中的一个单元。三种指令的操作码分别是分别是MOVMOV为为0AH 0AH,STASTA为为1BH 1BH,LDALDA为为3CH3CH。说明:说明:MOVMOV是传送指令,是

24、传送指令,STASTA为写数指令,为写数指令,LDALDA为读数指令。为读数指令。(1)分析三种指令的指令格式与寻址方式特点)分析三种指令的指令格式与寻址方式特点。该指令是单字长二地址指令,是该指令是单字长二地址指令,是RRRR型,源寄存器型,源寄存器S S由由0 03 3位指定,目标寄存位指定,目标寄存器器D D由由4 47 7位指定位指定。该指令是双字长二地址指令,是该指令是双字长二地址指令,是RSRS型,源寄存器型,源寄存器S S由由4 47 7位指定位指定,存储器存储器M M由采用由采用0 03 3位指定的变址寄存器加位移量的位指定的变址寄存器加位移量的变址方式变址方式得到或者由得到或

25、者由89位指位指定的基址寄存器加位移量的定的基址寄存器加位移量的基址寻址基址寻址得到。得到。上午9时33分39LDA DLDA D,M M该指令是双字长二地址指令,该指令是双字长二地址指令,RS型,其中目标寄存器型,其中目标寄存器D D由由4 47 7位指定,存储位指定,存储器由指令中给出的器由指令中给出的2020位地址由直接内存寻址决定位地址由直接内存寻址决定。(2 2)CPUCPU完成哪一种操作所花时间最短?哪一种操作所花时间最长?第二完成哪一种操作所花时间最短?哪一种操作所花时间最长?第二种指令的执行时间有时会等于第三种指令的执行时间吗?种指令的执行时间有时会等于第三种指令的执行时间吗?

26、nCPUCPU完成第一种指令所花时间最短,因为是完成第一种指令所花时间最短,因为是RRRR型指令,不需要访问存储器型指令,不需要访问存储器nCPUCPU完成第二种指令所花时间最长,因为是完成第二种指令所花时间最长,因为是RSRS型指令需要访问存储器,同型指令需要访问存储器,同时要进行寻址方式的变换运算,基址寄存器的内容加位移量或变址寄存器时要进行寻址方式的变换运算,基址寄存器的内容加位移量或变址寄存器内容加位移量,这也需要时间。内容加位移量,这也需要时间。n 第二种指令的执行时间不会等于第三种指令,因为第三种指令也访问存第二种指令的执行时间不会等于第三种指令,因为第三种指令也访问存储器,但节省

27、了求有效地址运算的时间开销。储器,但节省了求有效地址运算的时间开销。上午9时33分40(3 3)下列情况下每个十六进制指令字分别代表什么操作?其中如果有编码)下列情况下每个十六进制指令字分别代表什么操作?其中如果有编码不正确,如何改正才能成为合法指令?不正确,如何改正才能成为合法指令?F0F13CD2H F0F13CD2H根据已知条件:根据已知条件:MOVMOV(OPOP)0AH0AH00 101000 1010 STA STA(OPOP)1BH1BH01 101101 1011 LDA LDA(OPOP)3CH3CH11 110011 11001111 0000 1111 0001 0011

28、 1100 1101 00101111 0000 1111 0001 0011 1100 1101 0010111100 111100 0000 11111111 0001 0011 1100 1101 00100001 0011 1100 1101 00102856H2856H0010 1000 0101 01100010 1000 0101 0110编码正确,其含义是把主存编码正确,其含义是把主存(13CD2)H地址单元的内容取至地址单元的内容取至15号寄存器号寄存器。001010001010 0000 0101 0101 01100110编码正确,含义是把编码正确,含义是把6号源寄存器的

29、内容传送至号源寄存器的内容传送至5号目标寄存器。号目标寄存器。6FD6H 6FD6H0110 1111 1101 01100110 1111 1101 0110011011011011 1111 1101 1101 01100110编码错误,可改正为编码错误,可改正为28D6H28D6H上午9时33分4120050011002001005008001002002100OPXD=100PC=1000R基基=2000 寻址方式寻址方式X操作数操作数立即立即0100直接直接1200间接间接2500相对相对3100变址变址4200变址间址变址间址5500有效地址有效地址ES=DE=D=100E=(D)

30、=200E=PC+D=1100E=(R)+D=2100E=(R)+D)=200例:例:设某机的指令格式、有关寄存器和主存内容如下,设某机的指令格式、有关寄存器和主存内容如下,X为寻址方式,为寻址方式,D为形式地址,请在下表中填入有效地址为形式地址,请在下表中填入有效地址E及操作数的值及操作数的值。?上午9时33分42p堆栈堆栈-一组能存取数据的暂时存储单元。一组能存取数据的暂时存储单元。n存储器一般采用存储器一般采用随机存储方法随机存储方法,而堆栈采用,而堆栈采用先进后出先进后出的存储方法的存储方法p串联堆栈串联堆栈n一组专门的寄存器,一个一组专门的寄存器,一个R保存一个数据。保存一个数据。n

31、数据的传送在栈顶和通用寄存器之间进行。数据的传送在栈顶和通用寄存器之间进行。n快速:在快速:在CPU内部实现内部实现n串行:进栈和出栈涉及到栈内所有其它数据的移动;串行:进栈和出栈涉及到栈内所有其它数据的移动;n破坏性读出:读数据的同时也离开了堆栈;破坏性读出:读数据的同时也离开了堆栈;n栈容量有限:取决于栈容量有限:取决于CPU内堆栈专用寄存器的数量;内堆栈专用寄存器的数量;n栈顶不动,数据移动。栈顶不动,数据移动。上午9时33分43AA ABB BA ACC CB BA ACB BA A堆栈顶堆栈顶 PUSH A PUSH A PUSH B PUSH B PUSH C PUSH C POP

32、 C POP C通用寄存器通用寄存器上午9时33分44p用一部分主存空间作堆栈称为用一部分主存空间作堆栈称为存储器堆栈存储器堆栈n堆栈的数目、长度可随意指定堆栈的数目、长度可随意指定nSP-堆栈指示器堆栈指示器(栈指针栈指针),CPU中一个专门寄存中一个专门寄存器,器,SP内容是栈顶单元地址。改变内容是栈顶单元地址。改变SP内容即可移内容即可移动栈顶的位置。动栈顶的位置。n堆栈操作期间,堆栈中数据不动,栈顶移动堆栈操作期间,堆栈中数据不动,栈顶移动n非破坏性读出非破坏性读出上午9时33分45p进栈-累加器中的数送堆栈保存.p(AC)堆栈MSP 堆栈指针(sp)1 spaPUSH aPUSH a

33、PUSH bPUSH b100999897SPabb上午9时33分46p 出栈-将堆栈中的数取出送累加器p 堆栈指针(sp)1 sp (堆栈MSP)AC100999897SPabba上午9时33分471)存储器堆栈是一个由高地址向低地址延伸的空间。)存储器堆栈是一个由高地址向低地址延伸的空间。2)存储器堆栈的栈顶由堆栈指针存储器堆栈的栈顶由堆栈指针SPSP指示,如果用指示,如果用AA表示通用表示通用寄存器寄存器A A的内容,的内容,SPSP表示堆栈指示器,表示堆栈指示器,MspMsp表示堆栈指示的存储表示堆栈指示的存储器栈顶单元器栈顶单元,入栈操作和出栈操作可以表示为:入栈操作和出栈操作可以表

34、示为:入栈:入栈:AMsp AMsp,SPSP1SP1SP 出栈:出栈:SPSP1SP1SP,MspA MspA 存储器堆栈的优点:存储器堆栈的优点:1 1)堆栈能够具有程序员要求的任意长度;)堆栈能够具有程序员要求的任意长度;2 2)存储器堆栈的数目由程序员自己决定;)存储器堆栈的数目由程序员自己决定;3 3)可以用对存储器寻址的任何一条指令来对堆栈中的数据进)可以用对存储器寻址的任何一条指令来对堆栈中的数据进行寻址。行寻址。上午9时33分48p数据传送指令数据传送指令n取数指令取数指令n存数指令存数指令n传送指令传送指令p算术运算指令算术运算指令n定点,定点,n浮点,浮点,n求反,求补,比

35、较等求反,求补,比较等n 成组传送指令成组传送指令n 字节交换指令字节交换指令n 清累加器指令清累加器指令n 堆栈操作指令堆栈操作指令上午9时33分49p逻辑运算指令逻辑运算指令nNOT,AND,OR,XOR,TESTp程序控制指令程序控制指令n无条件转移 条件转移(C,Z,N,P,V)n转子程序 子程序返回 RET 中断返回 IRETp输入输出指令输入输出指令nIN AX,n OUT n,A上午9时33分50p字符串处理字符串处理n字符串传送、转换、比较、查找字符串传送、转换、比较、查找p特权指令特权指令:系统资源的分配和管理系统资源的分配和管理p其他类其他类n状态寄存器置位、复位指令状态寄

36、存器置位、复位指令(如如CLC,STC,CLI,STI)n测试指令、暂停指令,空操作指令测试指令、暂停指令,空操作指令上午9时33分51pCISC-CISC-复杂指令系统计算机复杂指令系统计算机 nComplex Instruction System ComputerComplex Instruction System Computern指令数量多,指令功能,复杂的计算机。指令数量多,指令功能,复杂的计算机。p RISC-RISC-精简指令系统计算机精简指令系统计算机nReduced Instruction System ComputerReduced Instruction System C

37、omputern指令数量少,指令功能单一的计算机。指令数量少,指令功能单一的计算机。上午9时33分52p选取使用频率最高的一些简单指令选取使用频率最高的一些简单指令,指令条数少指令条数少;p寻址方式简单寻址方式简单p指令长度固定指令长度固定,指令格式简单指令格式简单pCPU设置大量寄存器设置大量寄存器p只有存只有存/取数指令才能访问存储器取数指令才能访问存储器,p其余指令的操作都在寄存器之间进行其余指令的操作都在寄存器之间进行.p每一个机器周期完成一条机器指令。每一个机器周期完成一条机器指令。上午9时33分53特特 征征CISCRISCIBM370/168VAX11/780Intel80486

38、SPARCMIPSR4000开发年份开发年份19731978198919871991指令数量指令数量/条条2083032356994指令长度指令长度/B262511144寻址方式寻址方式4221122通用寄存器数通用寄存器数/个个161684052032控制存储器大小控制存储器大小/Kb420480246Cache大小大小/KB6464832128上午9时33分54机器型号指令数寻址方式指令格式通用寄存器数RISC-I312278RISC-II3922138MIPS553416SPARC7543120-136MIPSR3000913332i860653432上午9时33分55p汇编语言是计算机

39、机器语言(二进制指令代码)进行符号化的一种表示方法,每一个基本汇编语句对应一条机器指令。表4.11列出了嵌入式处理机ARM的汇编语言。其中操作数使用16个寄存器(r0,r1r12,sp,Ir,pc),230个存储字(字节编址,连续的字的地址间相差4)。上午9时33分56上午9时33分57上午9时33分58设r3寄存器中保存数组A的基址,h放在寄存器r2中。C语言程序语句A30=h+A30 可编译成如下3条汇编语言指令:LDR r5,r3,#120;寄存器r5中获得A30ADD r5,r2,r5;寄存器r5中获得h+A30STR r5,r3,#120;将h+A30存入到A30请问这3条汇编语言指

40、令的机器语言是什么?上午9时33分59解解LDR r5,r3,#120;寄存器r5中获得A30ADD r5,r2,r5,;寄存器r5中获得h+A30STR r5,r3,#120;将h+A30存入到A30上午9时33分60p在进行汇编语言程序设计时,可直接使用英文单词或其缩写表示指令,使用标识表示数据或地址,从而有效地避免了记忆二进制的指令代码。不用由程序设计人员对指令和数据分配内存地址,直接调用操作系统的某些程序段完成输入输出。用编辑程序建立好的汇编语言源程序,需要经过系统软件中的“汇编器”翻译为机器语言程序之后,才能交付给计算机硬件系统去执行。上午9时33分61p指令系统基本概念p指令基本格式p指令系统寻址方式

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

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


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