第5章 指令系统.ppt
《第5章 指令系统.ppt》由会员分享,可在线阅读,更多相关《第5章 指令系统.ppt(71页珍藏版)》请在麦多课文档分享上搜索。
1、第5章 指令系统,5.1 指令系统的发展 5.2 指令格式 5.3 数据表示 5.4寻址方式(编址方式) 5.5 指令类型 5.6 指令系统的兼容性(略) 5.7 RISC和CISC(略) 5.8 指令系统举例(略) 5.9 机器语言、汇编语言和高级语言(略),学习目的 1. 了解指令格式、数据表示。 2. 掌握不同寻址方式(编址方式)中部件之间的动作关系,可能的时间分配。 3. 了解指令类型、指令系统的兼容性和精简指令系统计算机(RISC)、复杂指令系统计算机(CISC)的有关概念、特性等。,本章重难点,1、指令系统的定义、作用 2、指令格式 3、寻址方式,5.1 指令系统的发展,计算机系统
2、: 硬件(hardware)+软件(software) 硬件: 中央处理机(CPU)、存储器、外部设备软件: 程序 (最终转换成一系列机器指令后在计算机上执 行),指令系统的定义:一台计算机能直接识别并执行的机器指令的集合。 指令系统的作用:指令系统是硬件设计的任务书,是软件设计的基础,与计算机的性能有密切关系。,1. 20世纪50年代和60年代早期:指令系统一般只有定点加减、逻辑运算、数据传送和转移等十几至几十条最基本的指令,而且寻址方式简单。 2.到60年代中、后期:除了具有以上最基本的指令以外,还设置了乘除法运算指令、浮点运算指令、十进制运算指令以及字符串处理指令等,指令数多达一、二百条
3、,寻址方式也趋于多样化。 3. 60年代出现了系列(series)计算机。 原因:为了继承已有的软件,减少软件的开发费用.系列计算机:是指基本指令系统相同,基本体系结构相同的一系列计算机。如IBM370系列,VAX11系列,IBMPC(XTAT286386486Pentium)微机系列等。优点:在旧机种上运行各种软件可以不加任何修改地在新机种上运行。(向下兼容),随着VLSI技术的发展,硬件结构越来越复杂,所支持的指令系统也趋于多用途、强功能化。指令系统的改进是围绕着缩小指令与高级语言的语义差异以及有利于操作系统的优化而进行的。CISC(复杂指令系统计算机)的问题:(1)设计周期长,正确性难以
4、保证且不易维护等;(2) 需要大量硬件支持的大多数较复杂的指令却利用率很低,造成硬件资源的极大浪费。为了解决这个问题,在70年代末人们提出了便于VLSI实现的精简指令系统计算机,简称RISC(精简指令系统计算机)。CISC:Complex instruction set computerRISC: reduced instruction set computer,5.2 指令格式,计算机的指令格式与机器的字长、存储器的容量及指令的功能都有很大的关系。设计指令格式的要求:(1)使指令能给出足够的信息(2)其长度又尽可能地与机器的字长相匹配,以便节省存储空间,缩短取指时间,提高机器的性能。,5.2
5、.1 指令格式,一条指令就是要机器语言的一个语句,它是一组有意义的二进制代码,通常提供两方面的信息:一是指明操作的性质及功能,这一部分称为操作码。二是给出与操作数有关的信息,如:直接给出操作数本身或指明操作数的地址等。因为大多数情况下,指令中给出的是操作数的地址,因此,这一部分称为地址码。指令的基本格式为:,操作码字段 地址码字段,二 .地址码结构计算机执行一条指令所需要的全部信息都必须包含在指令中,对于一般的指令来说,除去操作码(OP)之外,指令还应包含以下信息:(1)第一操作数地址,用A1表示(2)第二操作数地址,用A2表示(3)操作结果存放地址,用A3表示(4)下条将要执行指令的地址,用
6、A4表示这些信息可以在指令中明显给出,称为显地址,也可依照某种事先的约定,用隐含方式给出,称为隐地址。下面介绍几种指令格式。,1.四地址指令,前述的四个地址信息在地址码字段中明显给出。 格式:含义: (A1)OP(A2)A3(A4)=下一条将要执行指令的地址 说明: (Ai)表示存放在一地址Ai中的内容 优点:直观,下条指令的地址明显,不适合转移指令 缺点:指令太长,因为直接给出了后继指令地址,程序不能根据操作结果灵活转移,这种格式不切实际。,2.三地址指令,执行程序时,大多数指令按顺序从主存中逐条取出执行,只有遇到转移指令时,程序的执行顺序才会改变。为了压缩指令的长度,要以用一个程序计数器P
7、C(program counter)来存放指令地址。每执行一条指令,PC就自动加1(该指令只占一个主存单元),指出将要执行的下一条指令,当遇到执行转移指令时,则用转移地址修改PC的内容,这样,指令中就不必给出A4了。格式:含义: (A1)OP (A2)A3(PC)+1 PC(隐含)特点: 指令仍然很长,只在字长较长的大、中型机中使用,而小型、微型机中很少使用。,OP,A1,A2,A3,3.二地址指令,三地址指令执行完后,主存的两个操作数均不会被破坏,可供再次使用,然而通常不一定 要完全保留两个操作数。例:把第一操作数地址同时兼作存放结果的地址,这样即可得到二地址指令。格式:含义: (A1)OP
8、 (A2)A1(PC)+1 PC(隐含)A1:目的操作数地址 A2:源操作数地址特点:二地址指令在计算机中得到广泛的应用,但要注意:指令执行之后,目的操作数地址中原存的内容已被破坏了。例: MOV AL,BL,OP A1 A2,4.一地址指令,(1)格式: (2)功能:1)单操作数运算A1既是操作数的地址,又是结果存放的地址。例:+1、-1、求反等含义: OP(A1)A1(PC)+1 PC(隐含)例:INC AL DEC CL2)双操作数约定:隐含的一个操作数放在一个专用寄存中(AC-累加器)含义: (AC)OP(A1)(AC)(PC)+1 PC(隐含) 例: MUL BL (AL)*(BL)
9、 (AX),OP A1,5. 零地址指令,格式:无操作数:如空操作NOP、停机指令HLT默认操作数:如读取标志指令LAHF,将标志寄存器FLAG的低8位送到AH寄存器中。,OP,适应范围:零地址、一地址和两地址指令具有指令短,执行速度快,硬件实现简单等特点,多为结构较简单,字长较短的小型、微型机所采用;而两地址、三地址和多地址指令具有功能强,便于编程等特点,多为字长较长的大、中型机所采用。,指令和数据的联系和区别: 联系:都是以二进制码的形式存储的。 区别:指令的地址是由程序计数器(PC)规定的,而数据的地址是由指令规定的。在程序执行过程中,要避免修改指令,但可以修改数据。,一.指令字长 定长
10、指令:便于控制 变长指令:合理利用存储空间 二.操作码格式指令系统中的每一条指令都有一个唯一确定的操作码,指令不同,其操作码的编码也不同。为了能表示整个指令系统的全部指令,指令的操作码字段应当具有足够的位数。 假定:指令系统有m条指令,指令的操作码字段的位数有N位,则m2N,即 Nlog2m. 我们希望用尽可能短的操作码字段来表达全部的指令。指令操作码的编码可以分为以下两种形式。,5.2.2 指令操作码的扩展技术,1. 定长操作码 各指令的操作码的位置、位数固定相同(即操作码的长度固定,且集中放在指令字的一个字段中)。特点:这种格式对于简化硬件设计,减少指令译码时间非常有利,在字长较长的大、中
11、型机和超级小型机以及RISC上广泛采用。,2.扩展操作码(变长)各指令操作码的位置、位数不固定,根据需要变化(即操作码的长度可变,且分散得放在指令字的不同字段中) 。 特点:这种格式能够有效地压缩程序中操作码的平均长 度,在字长较短的微型机上广泛采用。 如Z80、 Intel8086Pentium等,操作码的长度都是可变的。,例.(方法一) 指令字长16位,可含有3、2、1或0个地址,每个地址占4位。(见教材P130131),操作码 地址码,15 12 11 8 7 4 3 0,0000 X Y Z 1110 X Y Z,1111 0000 Y Z 1111 1110 Y Z,三地址指令 15
12、条,二地址指令 15条,1111 1111 0000 Z 1111 1111 1110 Z,一地址指令 15条,1111 1111 1111 0000 1111 1111 1111 1111,零地址指令 16条,可表示61条指令,例. (方法二)指令字长16位,可含有3、2、1或0个地址,每个地址占4位。(见教材P130131),操作码 地址码,15 12 11 8 7 4 3 0,0000 X Y Z 1110 X Y Z,1111 0000 Y Z 1111 1101 Y Z,三地址指令 15条,二地址指令 14条,1111 1110 0000 Z 1111 1111 1110 Z,一地址
13、指令 31条,1111 1111 1111 0000 1111 1111 1111 1111,零地址指令 16条,可表示76条指令,可变长度的指令系统的设计,到底使用何种扩展方法有一个重要的原则:就是使用频度(即指令在程序中的出现概率)高的指令应分配短的操作码;使用频度低的指令相应地分配较长的操作码。(霍夫曼编码法)作用:有效地缩短操作码在程序中的平均长度,节省存储器空间,缩短了经常使用的指令的译码时间,因而可以提高程序的运行速度。,假某计算机模型:7条指令(I1I7),程序中出现的概率用Pi表示,则可考虑表51所示的方案,这就是扩展操作码,使用频率高的指令的操作码为2位,低的用4位。这不是压
14、缩到最小代码的方案,因为在计算机中的操作码还是希望有一定的规整性,否则会引起硬件实现的复杂化。另外,内存中存放的指令长度一般是字节的整数倍,所以操作码与地址码两部分长度之和是字节的整数倍。在考虑OP长度时还要考虑地址码的要求。,由此可见,操作码扩展技术是一种重要的指令优化技术,它可以缩短指令的平均长度,减少程序的总位数以及增加指令字所能表示的操作信息。当然,扩展操作码比固定操作码译码复杂,使控制器的设计难度增大,且需更多的硬件来支持。,5.2.3 指令长度与字长的关系,字长:指计算机能直接处理的二进制数据的位数,它是计算机的一个重要技术指标。作用:字长决定了计算机的运算精度,字长越长,计算机的
15、运算精度越高。,一般机器的字长都是字节长度(即8位)的l,2,4或8倍数,也就是8,16,32或64位。如80年代微型机的字长多为8位,16位和32位,大中型机的字长多为32位和64位,因此,一个字中可以存储1,2,4或8个字符。随着集成度的提高,机器字长也在增长,16位微机已趋于淘汰。,指令的长度:主要取决于操作码的长度、操作数地址的长度和操作数地址的个数。各指令的长度不是固定的,但也不是任意的。指令的长度通常为字节的整数倍。,地址码长度决定了指令直接寻址能力。 这对于字长较短(8位或16位)的微型机来说,远远满足不了实际需求。 扩大寻址能力的方法: 1)增加机器字长来增加地址码的长度; 2
16、)采用地址扩展技术,把存储空间分成若干段,用基址加位移量的方法来增加地址码的长度。,指令的长度与机器的字长没有固定的关系,它既可以小于或等于机器的字长,也可以大于机器的字长。前者称为短格式指令,后者称为长格式指令,一条指令存放在地址连续的存储单元中。在同一台计算机中可能既有短格式指令又有长格式指令,但通常是把最常用的指令(如算术逻辑运算指令、数据传送指令)设计成短格式指令,以便节省存储空间和提高指令的执行速度。,5.3 数据表示,1.操作数的类型逻辑(布尔)数、定点数(整数)、浮点数(实数)、十进制数、字符串、数组等 2.操作数的存储方式一个数据的位数1字节或1个字的宽度,这个数据就需要存储在
17、相邻的多个字节的位置上。按照高位数据和低位数据在存储器中的存储次序,可分为大数端(big endian)和小数端(little endian)两种存储方式。将最低字节存储在最小地址位置的存储方式称为小数端方式。将最低字节存储在最大地址位置的存储方式称为大数端方式。许多新型计算机系统结构都同时支持大数端和小数端数据存储方式。,例:十进制数1000000,用十六进制数据表示为:F4240H, 在32位数据类型中存储为000F4240H。,(1)小数端存放,40 42 0F 00,0 1 2 3,存储器地址编号,(2)大数端存放,00 0F 42 40,0 1 2 3,目前计算机所用数据字长一般为3
18、2位。存储器的地址,一般按字节表示。计算机的指令系统可支持对字节、半字、字、双字的运算,有些计算机有位处理指令。为便于硬件实现,一般要求多字节数据对准边界,如P132图52(a)所示。当所存数据不能满足此要求时,则填充一个至多个空白字节。也有的计算机不要求对准边界,但可能增加访问存储器次数,而且还有可能要对高低字节的位置进行调整。,3.数据对齐方式,在数据对齐存储方式下,要求一个数据字占据完整的一个字的存储位置。而不能分成两部分。例:一个32位的字在按字对齐方式下,它的地址应当是4的倍数,即其地址的二进制码的最低两位为00,这样它占据的存储器位置是地址为:4n、4n+1、4n+2、4n+3(n
19、为自然数)。在32位宽的存储中,这个字可以一次读取或写入。,在不按字对齐方式下,它的地址就如出现:4n-1、 4n、4n+1、4n+2的情况。这样的数据在32位宽的存储 中,需要分两次读取或写入。,例:,0,4,8,12,16,字节地址,3 2 1 0,数据字的存储地址为8,0,4,8,12,16,字节地址,3 2 1 0,数据字的存储地址为9 分两次读/写,5.4 寻址方式(P133),存放操作数的部件:ALU的某个寄存器、存储器、指令程序的指令代码:一般在存储器中寻址方式:根据指令中给出的地址码字段寻找真实的操作数以及下一条要执行的指令地址的方式。,1直接寻址,操作数的地址直接在指令中给出
20、,操作数在存储器中例:MOV AX,2000,寻址方式字段,A有效地址,2寄存器寻址,操作数在寄存器中,寄存器号在指令中给出。 例:MOV AX,BX 优点:地址码短,从寄存器中存取数据比从存储器中存取快得多.寄存器寻址方式可以缩短指令长度、节省存储空间,提高指令的执行速度,在计算机中得到广泛应用。,OP R,指令,操作数,寄存器R,3基址寻址,在计算机中设置一个专用的基址寄存器,或由指令指定一个通用寄存器为基址寄存器,操作数的地址由基址寄存器的内容和指令的地址码A相加得到,地址码A通常被称为位移量(disp),也可用其他方法获得位移量。 例:MOV AX,50BX,在MASM中这叫寄存器相对
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 指令系统 PPT
