计算机组成原理课件第4章.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《计算机组成原理课件第4章.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 组成 原理 课件
- 资源描述:
-
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的的组合,可构成下表所示的寻址方式。组合,可构成下表所示的寻址方式。请写出六种寻址方式的名称。请写出六种寻址方式的名称。解解:直
展开阅读全文