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