计机组成原理 第十一、十二讲 指令系统 2021年2月21日 计算机组成原理
计算机组成原理 1 计 算 机 组 成 原 理 第十一、十二讲 2021年2月21日 指 令 系 统
本饼安排 1、指令系统概述 2、指令构成与指令编码 操作码、地址码、定长指令和不定长指令格式,定长操作 码,操作码扩展技术 3、操作数存储及寻址方式 操作数类型,边界对齐,大数端、小数端,常见的寻 址方式以及实例 4、指令系统 指令类型,五类基本指令,RISC技术 计算机组成原理
计算机组成原理 2 1、指令系统概述 2、指令构成与指令编码 操作码、地址码、定长指令和不定长指令格式,定长操作 码,操作码扩展技术 3、操作数存储及寻址方式 操作数类型,边界对齐,大数端、小数端,常见的寻 址方式以及实例 4、指令系统 指令类型,五类基本指令,RISC技术 本讲安排
本讲将解决的主要问题 指令如何构成 如何寻址操作数 计算机组成原理
计算机组成原理 3 本讲将解决的主要问题 指令如何构成 如何寻址操作数
指令概迷 用计算机解题时,一般都要编制程序,程序既可用高级语 编写,亦可用机器语言编写; ·但计算机只能够识别和执行用机器语言编写的程序; 各种高级语言编写的应用程序,最终都要翻译成机器语言 来执行。 机器语言是由一系列的指令(语句)组成的; 指令的格式就是机器语言的语法 ·每条指令规定机器完成一定的功能。 台计算机的所有的指令集合称为该机的指令系统或指令 集。它是程序工作者编制程序的基本依据,也是进行计算机 逻辑设计的基本依据。 计算机组成原理
计算机组成原理 4 指令概述 • 用计算机解题时,一般都要编制程序,程序既可用高级语 言编写,亦可用机器语言编写; • 但计算机只能够识别和执行用机器语言编写的程序; • 各种高级语言编写的应用程序,最终都要翻译成机器语言 来执行。 • 机器语言是由一系列的指令(语句)组成的; • 指令的格式就是机器语言的语法; • 每条指令规定机器完成一定的功能。 • 一台计算机的所有的指令集合称为该机的指令系统或指令 集。它是程序工作者编制程序的基本依据,也是进行计算机 逻辑设计的基本依据
条指令应包含如下傖息 进行何种操作:即操作性质。 体现在指令中被称为操作码。 操作的对象:数据来源以及如何寻找操作数。 体现在指令中被称为地址码 操作结果:结果存放在何处。 下一条指令又如何寻找 计算机组成原理
计算机组成原理 5 一条指令应包含如下信息: 进行何种操作:即操作性质。 体现在指令中被称为操作码。 操作的对象:数据来源以及如何寻找操作数。 体现在指令中被称为地址码 操作结果:结果存放在何处。 下一条指令又如何寻找
指令格式 指令由操作码和地址码两部分组成,它的基本格式如下: 操作码 地址码 1.操作码 操作码是说明指令操作性质的二进制数代码。 操作码所占的二进制位数决定了一台计算机所能允许的指令 条数。 例如,操作码占用六位二进制码时,这台计算机最多允许有: 26=64条指令 计算机组成原理 6
计算机组成原理 6 指令格式 指令由操作码和地址码两部分组成,它的基本格式如下: 操 作 码 地 址 码 • 操作码是说明指令操作性质的二进制数代码。 •操作码所占的二进制位数决定了一台计算机所能允许的指令 条数。 例如,操作码占用六位二进制码时,这台计算机最多允许有: 2 6=64 条指令 1.操作码
操作码字段分两种: (1)固定长度操作码 固定长度操作码是指操作码所占的二进制位数固定不变,而 且集中放在指令字的一个字段中。 这种格式有利于简化硬件设计,减少指令译码时间,广泛用 于字长较长的大、中型计算机和超级小型计算机中。 例如IBM37和ⅥX-11系列机中,操作码的长度都是8位, 可表示256条指令。 (2)可变长度操作码 可变长度操作码是操作码扩展技术的应用,即操作码的长 度是可变的,且分散地放在指令的不同字段中。这种格式有利 于压缩程序中操作码的平均长度,在字长较短的微型机中被广 泛应用。如:PDP-11, INTEL8086/80386等,其操作码的长 度均是可变的。 计算机组成原理
计算机组成原理 7 固定长度操作码是指操作码所占的二进制位数固定不变,而 且集中放在指令字的一个字段中。 这种格式有利于简化硬件设计,减少指令译码时间,广泛用 于字长较长的大、中型计算机和超级小型计算机中。 例如IBM370和VAX﹣11系列机中, 操作码的长度都是8位, 可表示256条指令。 (2)可变长度操作码 可变长度操作码是操作码扩展技术的应用,即操作码的长 度是可变的,且分散地放在指令的不同字段中。这种格式有利 于压缩程序中操作码的平均长度,在字长较短的微型机中被广 泛应用。如:PDP-11,INTEL 8086/80386等,其操作码的长 度均是可变的。 (1)固定长度操作码 操作码字段分两种:
下图是一种扩展操作码的安排示意。 OP 2 4位4位4位4位 这是一个16位字长的指令码,包括4位基本操作码字段和三个 4位长的地址字段。4位基本操作码,若全部用于三地址指令, 则有16条。 显然,4位基本操作码是不够的,必须向地址码字段扩展操作 作码的长度。其扩展方法及步骤如下 计算机组成原理
计算机组成原理 8 下图是一种扩展操作码的安排示意。 这是一个16位字长的指令码,包括4位基本操作码字段和三个 4位长的地址字段。4位基本操作码,若全部用于三地址指令, 则有16条。 显然,4位基本操作码是不够的,必须向地址码字段扩展操作 作码的长度。其扩展方法及步骤如下: OP A1 A2 A3 4位 4位 4位 4位
①15条三地址指令的操作码由4位基本操作码00011给定 剩下一个110则用于把操作码扩展到X地址码字段,即由4位 扩展到8位; 0000 XXXX YYYY ZZZZ 00 AX YYYY ZZZZ15条三地址指令 1110 XXXX YYYY ZZZZ 1111 0000 YYYY ZZZZ 1111 0001 YYYY ZZZZ 14条二地址指令 1111 1101 YYYY ZZZZ 计算机组成原理
计算机组成原理 9 ① 15条三地址指令的操作码由4位基本操作码0000~1110所给定, 剩下一个1111则用于把操作码扩展到X地址码字段,即由4位 扩展到8位;
②14条二地址指令的操作码由8位操作码的110,01 给定,剩下的111,10和111,11可用于把操作码扩充到Y 地址字段,即从8位又扩充到12位; 1111 0000 YYYY ZZZZ 1111 0001 YYYY ZZZZ 14条二地址指令 1111 1101 YYYY ZZZZ 111111100000ZZZZ 111111100001ZZZZ 31条一地址指令 111111111110ZZZZ ③31条一地址指令的操作码由12位操作码的 1111,1110,0000~1111,1111定。 计算机组成原理 10
计算机组成原理 10 ② 14条二地址指令的操作码由8位操作码的1111,0000~1111,1101 给定,剩下的1111,1110和1111,1111又可用于把操作码扩充到Y 地址字段,即从8位又 扩充到12位; ③ 31条一地址指令的操作码由12位操作码的 1111,1110,0000 ~ 1111,1111,1110给定