【教学课件】第四章指令系统.ppt
《【教学课件】第四章指令系统.ppt》由会员分享,可在线阅读,更多相关《【教学课件】第四章指令系统.ppt(48页珍藏版)》请在三一办公上搜索。
1、第四章 指令系统,4.1 指令系统概述(掌握)4.2 指令格式(重点)4.3 寻址方式(重点)4.4 指令类型,一、概念指令:指示机器执行某种操作的命令。指令码:表示一条指令意义的二进制代码。指令格式:指令码的编码规则称为指令格式。一条指令由操作码和操作数两部分组成。操作码:指明本条指令的操作性质和功能。如算术运算、逻辑运算、存数、取数、转移等。每条指令分配一个确定的操作码。操作数:指出该条指令涉及的操作数有关的信息;如:直接给出操作数本身或者操作数的地址。指令系统:一台计算机所能执行的全部指令的集合。程序:使计算机执行某个特定任务的一系列指令序列。,4.1 指令系统概述,4.1 指令系统概述
2、,计算机语言有:机器语言:0、1代码,机器可直接识别;汇编语言:符号化、需汇编程序翻译;高级语言:B、F、C、P需翻译(编译或解释)机器语言是以机器指令的形式书写的语言,其它类型的语言只有变成机器指令的形式,机器才能直接执行。高级语言与计算机的硬件结构及指令系统无关,汇编语言依赖于计算机的硬件结构和指令系统。不同的机器有不同的指令,所以用汇编语言编写的程序不能在其他类型的机器上运行。,一、概念,4.1 指令系统概述,指令系统:一台机器所包含的全部指令不同的计算机,其用途不同,系统结构不同,采用的硬软件技术不同,其指令系统的功能也不同,有的强大,有的弱小,但其指令不外乎以下几类:算逻运算类数据传
3、送类指令控制类I/O类其它:停机,一、概念,4.1 指令系统概述,一、概念机器字长:指计算机能直接处理的二进制数据的位数,它决定了计算机的运算精度。机器字长通常与主存单元的位数一致;指令长度:指令码中二进制码的位数。它取决于操作码字段的长度、操作数地址的个数及长度。指令长度可以等于机器字长,也可以大于或小于机器字长。原则:尽可能短(节省存储空间、减少访存次数、提高指令的执行速度)等于字节的整数倍(充分利用存储空间)在一个指令系统中,若所有指令的长度都是相等的,称为定长指令字结构;若各种指令的 长度随指令功能而异,称为变长指令字结构。单字长指令:指令字长=机器字长半字长指令:指令字长=1/2机器
4、字长双字长指令:指令字长=2倍机器字长,二、对指令系统的基本要求 1、完备性一台计算机中最基本的、必不可少的指令构成了指令系统的完备性。使系统能提供足够的指令用于编程;如:加、减、乘、除都有,若只有加法、移位指令,乘法:只能用加法、移位实现,速度慢2、有效性有效性是指利用该指令系统所提供的指令编制的程序能够产生高效率。高效率主要表现在空间和时间方面,即占用存储空间小、执行速度快。采用该指令系统编的程序能高效地运行:速度快、占内存少。即:指令格式要短,多用寄存器寻址,少访内存。,4.1 指令系统概述,二、对指令系统的基本要求 3、规整性规整性是指指令操作的对称性和匀齐性,指令格式与数据格式的一致
5、性。对称性:指在指令系统中,所有的寄存器和存储单元都可同等对待,这对简化程序设计,提高程序的可读性非常有用。匀齐性:是指一种操作性质的指令可以支持各种数据类型。指令的格式与数据格式的一致性:是指指令长度与数据长度有一定关系,以方便存取和处理。,4.1 指令系统概述,4.1 指令系统概述,二、对指令系统的基本要求4、兼容性兼容性一般是指计算机的体系结构设计基本相同,机器之间具有相同的基本结构、数据表示和共同的基本指令集合。系列机:基本指令系统相同,基本结构相同的一系列计算机。一个系列有多种型号,各型号的结构基本相同,由于推出的时间不同,所采用的器件不同,故结构、性能有差异,但系列机必须做到一点:
6、软件兼容(向上)-新机种的指令系统一定包含所有旧机种的所有指令系统,以保证在旧机种上运行的各种软件,可以不加修改地在所机种上运行,指令格式与机器的字长、存储器的容量及指令的功能密切相关。4.2.1 指令的组成两个字段:操作码字段+操作数地址字段:一、操作码操作码是指明指令操作性质的命令码。它提供指令的操作控制信息。每条指令都要求它的操作码必须是独一无二的位组合。指令系统中指令的个数N与操作码的位数n,必须满足关系式:N2n,4.2 指令格式,地址码字段A,操作码字段OP,4.2 指令格式,指令操作码的编码有两种组织方式:规整型和非规整型(1)规整型(定长编码):每条指令的操作码长度均相同指令条
7、数m与指令操作码字段的位数N之间关系:m2N优点:简化了计算机的硬件设计,提高了指令译码和识别速度。缺点:当指令长度较短时,操作数地址的位数就会严重不足。适用:用于字长较长的大中型机或超小型机的指令系统,如32位或32位以上。举例:IBM370 机(字长32位),OP 8位(P70),4.2.1 指令的组成,(2)非规整型(变长编码)指令操作码的长度不尽相同将使用频率较高而地址码要求较多的指令用较少位表示操作码;对地址码位数要求较少的指令,用较多位表示操作码;对无操作数的指令,整个指令字均用作操作码。优点:在比较短的指令字中,既能表示出比较多的指令条数,又能尽量满足操作数地址的要求。缺点:计算
8、机的硬件设计复杂,指令译码和执行速度较慢。(增加了硬件设计的复杂性)适应:适用于字长较短的计算机系统,如16位或16位以下的微型和小型计算机。以上两种方案,操作码一般在指令字的最高位部分。,4.2 指令格式 4.2.1 指令的组成,举例:PDP-11是16位的小型机,采用变长操作码。,4.2 指令格式4.2.1 指令的组成,二、地址码地址码指出参与操作的数据(存贮位置)计算机操作数的来源、去处:1、CPU内部的通用寄存器:最快,与运算器速度匹配,例如 MOVE R2,R1 2、内存的一个单元:次之,与运算器速度不匹配,尽量少访内,例如 MOVE R12,R1 3、外设接口中的寄存器:较慢,较少
9、使用 例如 IN PORT 据指令中地址码部分地址的个数,指令格式可分为以下几种:零地址指令、一地址指令、二地址指令、三地址指令、四地址指令;,4.2 指令格式4.2.1 指令的组成,一.零地址指令格式这是一种没有操作数地址部分的指令格式。这种指令有两种可能:(1)无需任何操作数。如空操作指令,停机指令等。(2)所需的操作数是默认的:堆栈。堆栈的概念(a)是若干个存储单元(或寄存器)的有序集合,它顺序地存放一组元素。(b)数据的存取都只能在栈顶单元内进行,即数据的进栈与出栈都只能经过栈顶单元这个“出入口”。(c)堆栈中的数据采用“先进后出”或“后进先出”的存取工作方式。硬堆栈:寄存器堆。软堆栈
10、:内存中的指定区域。,操作码OP,4.2 指令格式4.2.2 指令的格式,堆栈结构在计算机中的作用(a)具有堆栈结构的机器使用零地址指令,这不仅合指令长度短,指令结构简单,机器硬件简化。(b)实现程序调用,子程序嵌套调用和递归调用。(c)对于“中断”技术,堆栈更是不可缺少的,保存“断点”和“现场”。堆栈的操作设数据进栈方向为从高地址向低地址发展,当向堆栈压入数据时,SP的内容先自动递减而指向一个新的空栈顶单元,再把数据写入此栈顶单元;当数据弹出堆栈时,立即读出SP所指向的栈顶单元内容,再把SP内容自动递增而指向新的栈顶位置。即 PUSH X;(SP)-1SP(X)(SP)POP X;(SP)X
11、(SP)+1SP 压栈:先修改SP,后存数据出栈:先取出数据,后修改SP,4.2 指令格式4.2.2 指令的格式,二、一地址指令格式(1)指令中给出的一个地址即是操作数的地址,又是操作结果的存储地址。如加1、减1、移位等单操作数指令。(2)在某些计算机中,指令中提供一个操作数地址,另一个操作数是由机内硬件寄存器“隐含”地自动提供的。所谓“隐含”是指此操作数在指令中不出现,而是按照事先约定由寄存器默认提供,运算结果仍送到寄存器中。因为这个寄存器在连续运算时,保存着多条指令连续操作的累计结果,故称为累加器(ACC)。例如:指令含义:(ACC)OP A1ACC(累加器);ACC中既放操作数,又放结果
12、。(PC)+1 PC 下一条指令地址注意:如果地址是内存单元,执行一条一地址的指令,需要访问两次主存。,A1,操作码OP,4.2 指令格式4.2.2 指令的格式,设字长42位OP 6位每个A为36位寻址空间:236,A1,操作码OP,三、二地址指令格式(1)源地址(SS):把保存操作前操作数的地址称为源地址。(2)目的地址(DD):保存结果的地址称为目的地址。(3)通常二地址指令又称为双操作数指令。例如,双操作数加法指令:ADD R0,R1表示将R0寄存器的内容和R1寄存器的内容相加以后,将结果存入R1寄存器中。又如ADD(R0),R1表示将R0寄存器的内容作为地址,到内存中取出该地址所指向的
13、单元内容作为源点操作数,和作为终点操作数的R1寄存器的内容相加以后,将结果存入R1寄存器中。注意:如果两地址均是内存单元,执行一条这类指令至少需访存4次。,4.2 指令格式4.2.2 指令的格式,设字长42位OP 6 位每个D为18位寻址空间:218,四、三地址指令格式其操作是对A1、A2指出的两个操作数进行操作码所规定的操作,并将结果存入A3中。例如:ADD X Y Z 含义为(X)+(Y)Z 即X单元内容加上Y单元内容,结果送Z单元中。注意:如果三地址均是内存单元,执行一条这类指令至少也要需访存4次。,4.2 指令格式4.2.2 指令的格式,设字长42位OP 6位每个D为12位寻址空间:2
14、12,五.多地址指令格式例如四地址指令格式。(1)含义:ADD X Y Z WA、(X)+(Y)ZB、(W)下一条指令地址(2)特点:A、直观明了;B、程序执行的流向明确;C、操作数和结果可以分散在内存各处。D、但是指令字长度太长。,4.2 指令格式4.2.2 指令的格式,设字长42位OP 6位每个D为12位寻址空间:212,总结:上述五种指令格式,并非所有计算机都有零地址,单地址,二地址指令,具有指令短,执行速度快,硬件实现简单等特点,多为结构较简单、字长较短的小型机、微机所采用。二地址,三地址、四地址指令,具有功能强,编程方便等特点,多为字长较长的大、中型机所采用。但不能一概而论,因还与指
15、令本身的功能有关。如停机指令,不管什么类型的计算机,都有。,4.2 指令格式4.2.2 指令的格式,六、指令格式设计准则 1、指令字长要短,以得到时间和空间上的优势。2、指令字长必须有足够的长度。3、指令字长一般应是机器字符长度的整数倍以便存储系统的管理。若机器中字符码长是L位,则机器指令字长最好是L,2L,4L,8L等。4、指令格式的设计还与如何选定指令中操作数地址的位数有关。,4.2 指令格式4.2.2 指令格式,例如,对同一容量(如64KB)的存储器(1)若取存储单元为一字节长,则需要16位地址码,(2)若存储单元长度为32位,则只需14位地址码。方案(1)对字符操作方便,但地址码位数多
16、,方案(2)地址码位数少,很有利,但字符操作困难,分辩率低。(存储器分辩率:指存储器能被区分、识别与操作的精细程度)注:1KB=1024=210字节;64KB=216字节若取存储单元为一字节长,要16根地址线寻址;若存储单元长度为32位长(四字节长)(216/4),要14根地址线寻址,4.2 指令格式4.2.3 指令格式,例(P90)4-3 某机为定长指令字结构,指令长度16位;每个操作数的地址码长6位,指令分为无操作数、单操作数和双操作数三类。若双操作数指令已有K种,无操作数指令已有L种,问单操作数指令最多可能有多少种?上述三类指令各自允许的最大指令条数是多少?,4.2 指令格式,双操作数指
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 教学课件 教学 课件 第四 指令系统
链接地址:https://www.31ppt.com/p-5665040.html