失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 指令系统 —— 指令格式

指令系统 —— 指令格式

时间:2019-03-18 11:50:22

相关推荐

指令系统 —— 指令格式

一、指令的定义

指令是指示计算机执行某种操作的命令,是计算机运行的最小功能单位。一台计算机的所有指令的集合构成该机的指令系统,也称指令集。

指令的长度是指一条指令中所包含的二进制代码的位数,因为主存一般是按字节编址的,所以指令的长度一般为字节的整数倍

指令长度与机器字长没有固定的关系,它可以等于机器字长,也可以大于或小于机器字长。根据指令长度与机器长度的大小关系,可以把指令分为

单字长指令半字长指令双字长指令

根据指令的长度是否固定,可以把指令分为

定长指令字结构变长指令字结构

根据操作码的长度是否固定,可以把指令分为

定长操作码:n位,可以包含2^n条指令扩展操作码:操作码长度可变

二、指令的基本格式

(1)指令分类

(2)示例

为了增加指令操作数的直接寻址范围,我们可以对四地址指令进行优化,将下一个指令的地址按顺序存放在程序计数器 PC 中

三、定常操作码指令格式

定常操作码指令在指令字的最高位部分分配固定的若干位(定长)表示操作码。一般用 n 位操作码字段的指令系统最大能表示 2^n 条指令

优点:定长操作码对于简化计算机硬件设计,提高指令译码和识别速度很有利;

缺点:指令数量增加时会占用更多固定位,留给表示操作数地址的位数受限。

四、扩展操作码指令格式

全部指令的操作码字段的位数不固定,且分散地放在指令字的不同位置。在设计扩展操作码指令格式时,必须注意以下两点:

不允许短码是长码的前缀,即短操作码不能与长操作码的前面部分的代码相同,否则无法区分不同长度的操作码。各指令的操作码一定不能重复。

优点:在指令字长有限的前提下仍保持比较丰富的指令种类

缺点:增加了指令译码和分析的难度,使控制器的设计复杂化。

通常情况下,对使用频率较高的指令,分配较短的操作码;对使用频率较低的指令,分配较长的操作码,从而尽可能减少指令译码和分析的时间。

示例1:

4 位基本操作码如果全部用于三地址指令,则有16条。但至少需要将1111留作扩展操作码来用,即三地址指令为15条。

1111 1111留作扩展操作码来用,即二地址指令为15条。

1111 1111 1111留作扩展操作码来用,即一地址指令为15条。

零地址指令为16条

故扩展操作码指令格式共可以表示 15+15+15+16=61 条指令

示例2:

如果觉得《指令系统 —— 指令格式》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。