计算机原理与操作系统第四章指令系统课件



《计算机原理与操作系统第四章指令系统课件》由会员分享,可在线阅读,更多相关《计算机原理与操作系统第四章指令系统课件(48页珍藏版)》请在装配图网上搜索。
1、,,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,,,*,计算机组成原理,湘南学院,首页,上页,下页,退出,,,,,,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,,,*,,,计算机组成原理,湘南学院,首页,上页,下页,退出,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,,,*,,,计算机组成原理,湘南学院,首页,上页,下页,退出,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,,,*,,,计算机组成原理,湘南学院,首页,上页,下页,退出,单击此
2、处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,,,*,,,计算机组成原理,湘南学院,首页,上页,下页,退出,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,,,*,,,计算机组成原理,湘南学院,首页,上页,下页,退出,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,,,*,,,计算机组成原理,湘南学院,首页,上页,下页,退出,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,,,*,,,计算机组成原理,湘南学院,首页,上页,下页,退出,单击此处编辑母版标题样
3、式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,,,*,,,计算机组成原理,湘南学院,首页,上页,下页,退出,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,,,*,,,计算机组成原理,湘南学院,首页,上页,下页,退出,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,,,*,,,计算机组成原理,湘南学院,首页,上页,下页,退出,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,,,*,,,计算机组成原理,湘南学院,首页,上页,下页,退出,单击此处编辑母版标题样式,单击此处编辑
4、母版文本样式,第二级,第三级,第四级,第五级,,,*,*,*,,,,,,,,,,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,4.1,指令系统的发展与性能要求,4.2,指令格式,4.3,指令和数据的寻址方式,4.4,典型指令,第四章 指令系统,4.1 指令系统的发展与性能要求第四章 指令系统,1,2,4.1,指令系统的发展与性能要求,1,、指令在计算机系统中的地位,(,1,)是软件和硬件分界面的一个主要标志,硬件设计人员采用各种手段实现它;,软件设计人员则利用它编制各种各样的系统软件和应用软件,(,2,)是硬件设计人员和软件设计人员之间的分界面,
5、也是他们之间沟通的桥梁。,,24.1 指令系统的发展与性能要求1、指令在计算机系统中的地,2,3,4.1,指令系统的发展与性能要求,2,、指令系统基本概念,指令:就是要计算机执行某种操作的命令。从计算机组成的层次结构来说,计算机的指令有微指令、机器指令和宏指令之分。微指令是微程序级的命令,它属于硬件;,宏指令:由若干条机器指令组成的软件指令,它属于软件;,机器指令:介于微指令与宏指令之间,通常简称为指令,每一条指令可完成一个独立的算术运算或逻辑运算操作。,本章所讨论的指令,是机器指令。,34.1 指令系统的发展与性能要求2、指令系统基本概念,3,一台计算机中所有机器指令的集合,称为这台计算机的
6、指令系统。,指令系统是表征一台计算机性能的重要因素,它的格式与功能不仅直接影响到机器的硬件结构,而且也直接影响到系统软件,影响到机器的适用范围,,一台计算机中所有机器指令的集合,称为这台计算机的指令系统。,4,5,4.1,指令系统的发展与性能要求,3,、发展情况,复杂指令系统计算机,简称,CISC,。但是如此庞大的指令系统不但使计算机的研制周期变长,难以保证正确性,不易调试维护,而且由于采用了大量使用频率很低的复杂指令而造成硬件资源浪费。,精简指令系统计算机:简称,RISC,,人们又提出了便于,VLSI,技术实现的精简指令系统计算机。,,54.1 指令系统的发展与性能要求3、发展情况,5,6
7、,4.1,指令系统的发展与性能要求,4,、低级语言与高级语言关系,,,,比较内容,,高级语言,,低级语言,,,1,,,对程序员的训练要求,(1),通用算法,(2),语言规则,(3),硬件知识,,,,有,较少,不要,,,,有,较多,要,,,2,,,对机器独立的程度,,独立,,不独立,,,3,,,编制程序的难易程度,,易,,难,,,4,,,编制程序所需时间,,短,,较长,,,5,,,程序执行时间,,较长,,短,,,6,,,编译过程中对计算机资源的要求,,多,,少,,,64.1 指令系统的发展与性能要求4、低级语言与高级语言关,6,7,4.2,指令格式,影响计算机指令格式的因素,机器的字长,存储器
8、的容量,指令的功能,指令能反映以下信息,做什么操作,如果需要操作数,从哪里取,结果送哪里,下一条指令从哪里取,所以指令格式包括两个方面:,,,,操作码字段,地址码字段,74.2 指令格式影响计算机指令格式的因素操作码字段地址码字,7,8,4.2,指令格式,,一,、操作码,设计计算机时,对指令系统的每一条指令都要规定一个操作码。指令的操作码,OP,表示该指令应进行什么性质的操作,如进行加法、减法、乘法、除法、取数、存数等等。不同的指令用操作码字段的不同编码来表示,每一种编码代表一种指令。,组成操作码字段的位数一般取决于计算机指令系统的规模。较大的指令系统就需要更多的位数来表示每条特定的指令。,等
9、长(指令规整,译码简单),例如,IBM 370,机,该机字长,32,位,,16,个通用寄存器,R0,~,R15,,共有,183,条指令;指令的长度可以分为,16,位、,32,位和,48,位等几种,所有指令的操作码都是,8,位固定长度。,固定长度编码的主要缺点是:信息的冗余极大,使程序的总长度增加。,84.2 指令格式 一、操作码,8,二、地址码,根据一条指令中有几个操作数地址,可将该指令称为几操作数指令或几地址指令。,三地址指令,二地址指令,单地址指令,零地址指令,操作码(,4,位),A1(6,位),A2(6,位),A3(6,位),操作码(,4,位),A1(6,位),A2(6,位),,操作码(
10、,4,位),A1(6,位),,,操作码,,,,二、地址码根据一条指令中有几个操作数地址,可将该指令称为几操,9,10,二、地址码,三地址指令,指令格式如下:,,,操作码,θ,第一操作数,A1,第二操作数,A2,结果,A3,功能描述:,(A1),θ,(A2)→A3,(PC) +1→PC,θ,A1,A2,A3,10二、地址码三地址指令θA1A2A3,10,11,二、地址码,二地址指令,其格式如下:,,操作码,θ,第一操作数,A1,第二操作数,A2,,功能描述:,(A1)θ(A2)→A1,(PC)+1→PC,二地址指令在计算机中得到了广泛的应用,但是在使用时有一点必须注意:指令执行之后,,A1,中原
11、存的内容已经被新的运算结果替换了。,θ,A1,A2,11二、地址码二地址指令θA1A2,11,12,二、地址码,二地址地址根据操作数的物理位置分为:,SS,存储器,-,存储器类型,RS,寄存器,-,存储器类型,RR,寄存器,-,寄存器类型,,慢,12二、地址码二地址地址根据操作数的物理位置分为:慢,12,13,二、地址码,一地址指令,指令格式为:,,,操作码,θ,第一操作数,A1,功能描述:,(AC)θ(A1) →A1 (PC)+1→PC,单操作数运算指令,如“,+1”,、“,-1”,、“求反”,指令中给出一个源操作数的地址,θ,A1,13二、地址码一地址指令θA1,13,14,二、地址码,零
12、地址指令,,其格式为:,,操作码,θ,“,停机”、“空操作”、“清除”等控制类指令。,θ,14二、地址码零地址指令 θ,14,15,三,、指令长度,概念,指令字长度(一个指令字包含二进制代码的位数),机器字长:计算机能直接处理的二进制数据的位数。,单字长指令,半字长指令,双字长指令,多字长指令,的优缺点,优点提供足够的地址位来解决访问内存任何单元的寻址问题 ;,缺点必须两次或多次访问内存以取出一整条指令,降低了,CPU,的运算速度,又占用了更多的存储空间。,15三、指令长度概念,15,指令系统中指令采用,等长指令,的优点:各种指令字长度是相等的,,指令字结构简单,且指令字长度是不变的,;,采
13、用,非等长指令,的的优点:各种指令字长度随指令功能而异,,结构灵活,能充分利用指令长度,但指令的控制较复杂,。,,指令系统中指令采用等长指令的优点:各种指令字长度是相等的,指,16,17,四、指令助记符,由于硬件只能识别,1,和,0,,所以采用二进制操作码是必要的,但是我们用二进制来书写程序却非常麻烦。,为了便于书写和阅读程序,每条指令通常用,3,个或,4,个,英文缩写字母来表示。这种缩写码叫做指令助记符,用,3,~,4,个英文字母来表示操作码,一般为英文缩写,不同的计算机系统,规定不一样,必须用汇编语言翻译成二进制代码,17四、指令助记符由于硬件只能识别1和0,所以采用二进制操作,17,18
14、,五、指令格式举例,8,位微型计算机的指令格式,如,8088,,字长,8,位,指令结构可变,包括单字长指令、双字长指令和三字长指令,操作码长度固定,,PDP/11,系列机的指令格式,字长,16,位,单字长指令,操作码字段不固定,,18五、指令格式举例8位微型计算机的指令格式,18,19,六,、,Pentium,指令格式,指令长度可变,最短,1,个字节,最长,12,个字节,典型的,CISC,指令系统,由可选前缀(,0~4,)、操作码(,1~2,)、,一个由,mod-R/M,字节和一个,SIB,(,Scale Index Base,)比例变址字节组成的地址指定器,、一个可选的位移量(,0~4,)和
15、一个可选的立即数字段(,0~4,)构成。,19六、 Pentium指令格式指令长度可变,最短1个字节,,19,20,4.4,指令和数据的寻址方式,研究问题,确定本条指令中各操作数的地址,下一条指令的地址,寻址方式是指,CPU,根据指令中给出的地址码字段寻找相应的操作数的方式,它与计算机硬件结构紧密相关,而且对指令的格式和功能有很大的影响。,204.4 指令和数据的寻址方式研究问题,20,21,4.3,指令和数据的寻址方式,指令的寻址方式,顺序方式,PC,跳跃方式,214.3 指令和数据的寻址方式指令的寻址方式,21,22,4.3,指令和数据的寻址方式,操作数的寻址方式,,形成操作数有效地址的方
16、法,称为寻址方式。,操作数通常放在哪儿呢?,,224.3 指令和数据的寻址方式操作数的寻址方式,22,23,4.3,指令和数据的寻址方式,操作数包含在指令中;,操作数包含在,CPU,的某一个内部寄存器中;,操作数包含在主存储器中;,操作数包含在,I/O,设备的端口中,根据操作数放在不同的地方,从而派生各种不同的寻址方式,往往不同的计算机具有不同的寻址方式。,234.3 指令和数据的寻址方式操作数包含在指令中;,23,24,1、隐含寻址,指令中隐含着操作数的地址,如某些运算,隐含了累加器,AC,作为源和目的寄存器,如,8086,汇编中的,STC,指令,设置标志寄存器的,C,为,1,241、隐含寻
17、址指令中隐含着操作数的地址,24,25,2、立即寻址,立即寻址是一种特殊的寻址方式,指令中在操作码字段后面的部分不是通常意义上的操作数地址,而是操作数本身,也就是说数据就包含在指令中,只要取出指令,就取出了可以立即使用的操作数,因此,这样的操作数被称为立即数。,指令格式:操作码,θ,操作数,A,,252、立即寻址立即寻址是一种特殊的寻址方式,指令中在操作码,25,26,2、立即寻址,特点:在取指令时,操作码和操作数被同时取出,不必再次访问存储器,从而提高了指令的执行速度。,但是,因为操作数是指令的一部分,不能被修改;,而且对于定 长指令格式,操作数的大小将受到指令长度的限制,所以这种寻址方式灵
18、活性最差,通常用于给某一寄存器或主存单元赋初值,或者用于提供一个常数。,,262、立即寻址特点:在取指令时,操作码和操作数被同时取出,,26,27,3,、,直接寻址,,指令中地址码字段给出的地址,A,就是操作数的有效地址,EA(Effective Address),,即,EA,=,A,。,,273、直接寻址 指令中地址码字段给出的地址A就是操作数的有,27,28,3,、,直接寻址,操作数地址是不能修改的,与程序本身所在的位置无关,所以又叫做绝对寻址方式,在早期的计算机中,主存储器的容量较小,指令中地址码的位数要求不长,采用直接寻址方式简单快速,也便于硬件实现,因此,常被作为主要的寻址方式。,但
19、在现代,随着计算机主存容量的不断扩大,所需的地址码将会越来越长。指令中地址码的位数将不能满足整个主存空间寻址的要求,因此直接寻址方式受到了很大的限制。另外,在指令的执行过程中,为了取得操作数,必须进行访存操作,降低了指令的执行速度。,283、直接寻址操作数地址是不能修改的,与程序本身所在的位置,28,29,4,、,间接寻址,间接寻址意味着指令的地址码部分给出的地址A不是操作数的地址,而是存放操作数地址的主存单元的地址,简称操作数地址的地址。操作数的有效地址的计算公式为:EA=(A),294、间接寻址 间接寻址意味着指令的地址码部分给出的地址A,29,30,4,、,间接寻址,特点:因为操作数的有
20、效地址在主存储器中,可以被灵活的修改而不必修改指令,从而使间接寻址要比直接寻址灵活得多。但是,间接寻址在指令执行过程中至少需要两次访问主存储器才能取出操作数,严重降低了指令执行的速度。,,304、间接寻址特点:因为操作数的有效地址在主存储器中,可以,30,31,5,、寄存器寻址,在指令的地址码部分给出,CPU,内某一通用寄存器的编号,指令的操作数存放在相应的寄存器中,即,EA=Ri,,,,,优点:,(1),由于寄存器在,CPU,的内部,指令在执行时从寄存器中取操作数比访问主存要快得多;,(2),由于寄存器的数量较少,因此寄存器编号所占位数也较少,从而可以有效减少指令的地址码字段的长度。,315
21、、寄存器寻址 在指令的地址码部分给出CPU内某一通,31,32,6,、寄存器间接寻址,为了克服间接寻址中多次访存的缺点,可采用寄存器间接寻址,即将操作数放在主存储器中,而操作数的地址放在某一通用寄存器中,然后在指令的地址码部分给出该通用寄存器的编号,这时有,EA=(Ri),,,,,,,,,这种寻址方式的指令较短,并且在取指后只需一次访存便可得到操作数,因此指令执行速度较前述的间接寻址方式要快,也是目前在计算机中使用较为广泛的一种寻址方式。,,326、寄存器间接寻址 为了克服间接寻址中多次访存的缺点,,32,33,7,、相对寻址,由程序计数器,PC,提供基准地址,而指令的地址码部分给出相对
22、的位移量,D,,两者相加后作为操作数的有效地址,即:,EA,=,(PC),+,D,。,,337、相对寻址由程序计数器PC提供基准地址,而指令的地址码,33,34,7,、相对寻址,对寻址方式使程序模块可采用浮动地址,编程时只要确定程序内部操作数与指令之间的相对距离,而无需确定操作数在主存储器中的绝对地址,这样,将程序安排在主存储器的任意位置都不会影响程序执行的正确性。,347、相对寻址对寻址方式使程序模块可采用浮动地址,编程时只,34,35,8,、基址寻址,在基址寻址方式中,指令的地址码部分给出偏移量D,而基准地址放在基址寄存器Rb中,最后操作数的有效地址仍然是由基准地址A与偏移量D相加而成,即
23、:EA=(Rb)+D。,用哪一个寄存器作为基址寄存器也必须在硬件设计时就事先规定,基址寄存器Rb中的内容称为基准地址,该值可正可负。,358、基址寻址在基址寻址方式中,指令的地址码部分给出偏移量,35,36,8,、基址寻址,,,,,,,,基址寄存器的位数可以设置得很长,从而可以在较大的存储空间中寻址。,368、基址寻址,36,37,9,、变址寻址,变址寻址就是将指令的地址码部分给出的基准地址A与CPU内某特定的变址寄存器Rx中的内容相加,以形成操作数的有效地址,即:EA=A+(Rx)。,用哪一个寄存器作为变址寄存器必须在硬件设计时就事先规定,变址寄存器Rx中的内容称为变址值,该值可正可负。,3
24、79、变址寻址变址寻址就是将指令的地址码部分给出的基准地址,37,38,9,、变址寻址,389、变址寻址,38,39,9,、变址寻址,变址寻址方式是一种被广泛采用的寻址方式,最典型的应用就是将指令的地址码部分给出的地址,A,作为基准地址,而将变址寄存器,Rx,中的内容作为修改量。在遇到需要频繁修改操作数地址时,无须修改指令,只要修改,Rx,中的变址值就可以了,这对于数组运算、字符串操作等一些进行成批数据处理的指令是很有用的。,399、变址寻址变址寻址方式是一种被广泛采用的寻址方式,最典,39,10,、段寻址方式,微型机中采用了段寻址方式。,给定一个,20,位的地址,从而有,2,20,=1 M,
25、存储空间的直接寻址能力。,将整个,1M,存储空间以,64K,为单位划分为若干个段。在寻址一个内存单元时,由一个基地址再加上某些寄存器提供的,16,位偏移量来形成实际的,20,位物理地址。这个基地址就是,CPU,中的段寄存器。,在形成,20,位物理地址时,段寄存器中的,16,位数会自动左移,4,位,然后与,16,位偏移量相加,即可形成所需的内存地址。,,,10、段寻址方式微型机中采用了段寻址方式。,40,41,10、段寻址方式,4110、段寻址方式,41,42,4.4,典型指令,指令分类与基本指令类型,数据传送类指令,一般传送指令:,MOV AX,,,BX,数据交换指令:,XCHG,堆栈操作
26、指令:,PUSH,,,POP,运算类指令,算术运算指令: 加、减、乘、除以及加,1,、减,1,、比较,逻辑运算指令:,移位指令,程序控制类指令,程序控制类指令用于控制程序的执行方向,并使程序具有测试、分析与判断的能力。,输入和输出指令、字符串处理指令、特权指令、其他指令,424.4 典型指令指令分类与基本指令类型,42,43,4.4,典型指令,基本指令系统,P122,表,4.9,介绍,20%,和,80%,规律:,CISC,中大约有,20%,的指令使用频率高,占据了,80%,的处理机时间,而有,80%,的不常用指令只占用处理机的,20%,时间。,VLSI,技术发展引起的问题,VLSI,工艺要求规
27、整性,而大量复杂指令控制逻辑极其不规整,给,VLSI,工艺造成了很大的困难。,现在用微程序实现复杂指令与用简单指令组成的子程序相比,没有多大的区别。因为现在控制存储器和主存的速度差缩小。,CISC,中,通过增强指令系统的功能,简化了软件,增加了硬件的复杂程度。然而指令复杂了,指令的执行时间必然加长,从而使整个系统的执行时间反而增加,因而在计算机体系结构设计中,软硬件的功能分配必须恰当,434.4 典型指令 基本指令系统,43,44,4.4,典型指令,RISC,特点(采用流水线技术),简单而统一格式的指令译码;,大部分指令可以单周期执行,只有,LOAD/STORE,可以访问存储器,简单的寻址方
28、式,采用延迟转移技术,采用,LOAD,延迟技术,三地址指令格式,较多的寄存器,对称的指令格式,444.4 典型指令 RISC,44,45,本 章 小 结,,一台计算机中所有机器指令的集合,称为这台计算机的指令系统。指令系统是表征一台计算机性能的重要因素,它的格式与功能不仅直接影响到机器的硬件结构,而且也影响到系统软件。指令格式是指令字用二进制代码表示的结构形式,通常由操作码字段和地址码字段组成。,45本 章 小 结 一台计算机中所有机器,45,46,本 章 小 结,,操作码字段表征指令的操作特性与功能,而地址码字段指示操作数的地址。目前多采用二地址、单地址、零地址混合方式
29、的指令格式。指令字长度分为:单字长、半字长、双字长三种形式。高档微机采用,32,位长度的单字长形式。,46本 章 小 结 操作码字段表征指令的,46,47,本 章 小 结,形成指令地址的方式,称为指令寻址方式。有顺序寻址和跳跃寻址两种,由指令计数器来跟踪。,形成操作数地址的方式,称为数据寻址方式。操作数可放在专用寄存器、通用寄存器、内存和指令中。数据寻址方式有隐含寻址、立即寻址、直接寻址、间接寻址、寄存器寻址、寄存器间接寻址、相对寻址、基值寻址、变址寻址、块寻址、段寻址等多种。按操作数的物理位置不同,有,RR,型和,RS,型。前者比后者执行的速度快。,,,47本 章 小 结形成指令地址的方式,称为指令寻址方式。有顺,47,48,本 章 小 结,不同机器有不同的指令系统。一个较完善的指令系统应当包含数据传送类指令、算术运算类指令、逻辑运算类指令、程序控制类指令、,I/O,类指令、字符串类指令、系统控制类指令。,RISC,指令系统是目前计算机发展的主流,也是,CISC,指令系统的改进,它的最大特点是:①指令条数少;②指令长度固定,指令格式和寻址方式种类少;③只有取数,/,存数指令访问存储器,其余指令的操作均在寄存器之间进行。,,48本 章 小 结 不同机器有不同的指令系统,48,
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。