资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第四章 指令系统,4.1,指令系统的发展与性能要求,4.2,指令格式,4.3,操作数类型,1,4.1 指令系统的发展与性能要求,4.1.1 指令系统的发展,4.1.2 对指令系统性能的要求,4.1.3 低级语言与硬件结构的关系,2,4.1.1 指令系统的发展,指令系统基本概念,指令:就是要计算机执行某种操作的命令。从计算机组成的层次结构来说,计算机的指令有微指令、机器指令和宏指令之分。微指令是微程序级的命令,它属于硬件;,宏指令:由若干条机器指令组成的软件指令,它属于软件;,机器指令:介于微指令与宏指令之间,通常简称为指令,每一条指令可完成一个独立的算术运算或逻辑运算操作。,3,4.1.2 对指令系统性能的要求,完备性:,完备性是指用汇编语言编写各种程序时,指令系统直接提供的指令足够使用,而不必用软件来实现。完备性要求指令系统丰富、功能齐全、使用方便。一台计算机中最基本、必不可少的指令是不多的。许多指令可用最基本的指令编程来实现。例如,乘除运算指令、浮点运算指令可直接用硬件来实现,也可用基本指令编写的程序来实现。采用硬件指令的目的是提高程序执行速度,便于用户编写程序。,有效性:,有效性是指利用该指令系统所编写的程序能够高效率地运行。高效率主要表现在程序占据存储空间小、执行速度快。一般来说,一个功能更强、更完善的指令系统,必定有更好的有效性。,规整性:,规整性包括指令系统的对称性、匀齐性、指令格式和数据格式的一致性。对称性是指:在指令系统中所有的寄存器和存储器单元都可同等对待,所有的指令都可使用各种寻址方式;匀齐性是指:一种操作性质的指令可以支持各种数据类型,如算术运算指令可支持字节、字、双字整数的运算,十进制数运算和单、双精度浮点数运算等;指令格式和数据格式的一致性是指:指令长度和数据长度有一定的关系,以方便处理和存取。例如指令长度和数据长度通常是字节长度的整数倍。,兼容性:,系列机各机种之间具有相同的基本结构和共同的基本指令集,因而指令系统是兼容的,即各机种上基本软件可以通用。但由于不同机种推出的时间不同,在结构和性能上有差异,做到所有软件都完全兼容是不可能的,只能做到“向上兼容”,即低档机上运行的软件可以在高档机上运行。,4,4.1.3 低级语言与硬件结构的关系,低级语言与高级语言关系,5,4.2 指令格式,4.2.1,操作码,4.2.2,地址码,4.2.3,指令字长度,4.2.4,指令助记符,4.2.5,指令格式举例,6,4.2.1 操作码,设计计算机时,对指令系统的每一条指令都要规定一个操作码。指令的操作码OP表示该指令应进行什么性质的操作,如进行加法、减法、乘法、除法、取数、存数等等。不同的指令用操作码字段的不同编码来表示,每一种编码代表一种指令。,组成操作码字段的位数一般取决于计算机指令系统的规模。较大的指令系统就需要更多的位数来表示每条特定的指令。,等长(指令规整,译码简单),例如IBM 370机,该机字长32位,16个通用寄存器R0R15,共有183条指令;指令的长度可以分为16位、32位和48位等几种,所有指令的操作码都是8位固定长度。,固定长度编码的主要缺点是:信息的冗余极大,使程序的总长度增加。,7,4.2.2 地址码,根据一条指令中有几个操作数地址,可将该指,称为几操作数指令或几地址指令。,三地址指令,二地址指令,单地址指令,零地址指令,8,4.2.2 地址码,三地址指令,指令格式:,操作码OP 第一操作数A1 第二操作数A2 结果A3,功能描述:,(A1)OP(A2)A3,(PC) +1PC,这种格式虽然省去了一个地址,但指令长度仍比较长,所以只在字长较长的大、中型机中使用,而小型、微型机中很少使用。,9,4.2.2 地址码,二地址指令,其格式如下:,操作码OP第一操作数A1第二操作数A2,功能描述:,(A1)OP(A2)A1,(PC)+1PC,二地址指令在计算机中得到了广泛的应用,但是在使用时有一点必须注意:指令执行之后,A1中原存的内容已经被新的运算结果替换了。,10,4.2.2 地址码,一地址指令,指令格式为:,操作码OP 第一操作数A1,功能描述:,(AC)OP(A1) A1,(PC)+1PC,单操作数运算指令,如“+1”、“-1”、“求反”,指令中给出一个源操作数的地址,11,4.2.2 地址码,零地址指令,其格式为:,操作码OP,“停机”、“空操作”、“清除”等控制类指令,12,4.2.3 指令字长度,概念,指令字长度(一个指令字包含二进制代码的位数),机器字长:计算机能直接处理的二进制数据的位数。,单字长指令,半字长指令,双字长指令,多字长指令,的优缺点,优点提供足够的地址位来解决访问内存任何单元的寻址问题 ;,缺点必须两次或多次访问内存以取出一整条指令,降低了CPU的运算速度,又占用了更多的存储空间。,13,4.2.4 指令助记符,由于硬件只能识别1和0,所以采用二进制操作码是必要的,但是我们用二进制来书写程序却非常麻烦。,为了便于书写和阅读程序,每条指令通常用3个或4个英文缩写字母来表示。这种缩写码叫做指令助记符用34个英文字母来表示操作码,一般为英文缩写 .,不同的计算机系统,规定不一样,必须用汇编语言翻译成二进制代码,14,4.2.5 指令格式举例,8位微型计算机的指令格式,如8088,字长8位,指令结构可变,包括单字长指令、双字长指令和三字长指令,操作码长度固定,PDP/11系列机的指令格式,字长16位,单字长指令,操作码字段不固定,15,4.3 操作数类型,4.3.1,一般的数据类型,4.3.2,Pentium数据类型,4.3.3,Power PC数据,16,4.3.1 一般的数据类型,地址数据,:,地址实际上也是一种形式的数据,。,数值数据,:,计算机中普遍使用的三种类型的数值数据。,字符数据,:,文本数据或字符串,目前广泛使用ASCII码。,逻辑数据,:,一个单元中有几位二进制bit项组成,每个bit的值可以是1或0。当数据以这种方式看待时,称为逻辑性数据。,17,4.3.2 Pentium数据类型,常规整数序数未压缩的BCD压缩的BCD近指针位串字符串浮点数,18,4.3.3 Power PC数据类型,无符号字节有符号半字无符号字有符号字无符号双字字节串浮点数,19,结束,谢谢观赏,杨家彬,学号: 2,20,
展开阅读全文