1.2.5指令系统
指令是编程人员与计算机交互的最基本的手段,是机器指令的简称。指令包括操作 码和地址码两部分,用二进制编码表示,因此才能把程序放到计算机中保存。
指令系统反映一台机器的主要性能。
1.指令格式例题分析
一条指令的内容,应该包括该指令的操作运算种类和指定参加运算的操作数放在什 么地方,有时还应该给出下条指令的地址,保证程序可以连续运行下去。
【例1-112】指令字长应该如何决定?指令应该包括哪些内容?
解:计算程序是由一条一条指令组成的,指令和运算的数据一样放到存储器中保存, 需要时由存储器中一条一条取出来加以执行。因此,指令字长不是任意指定的,为了简 化存储器的结构,充分发挥存储器中每一个存储单元的利用率,一般规定一个存储单元 存放一条指令。为了照顾功能不同的长短指令的要求,一个存储单元可以存放多条指令, 或一条指令存放在多个存储单元中。因为机器字长是字节长度的整数倍,指令字长也是 字节长度的整数倍。
具体指令字的长度与指令包括的内容有关,如:操作码的位数,直接决定机器中指 令的种类;地址码位数,决定可直接访问的存储器的容逝:地址码的个数,直接影响地 址码部分的长度,影响执行指令的具体操作。
【例1-114】指令中操作码的位数是如何规定的?
解:指令中操作码的位数决定该机器中指令种类的多少。如大型机中,操作码可设 罝为8位二进制数(如IBM 360/370),而微型机中操作码只设4位,但4位操作码,只 有16种编码,可设置的机器指令最多只有16种,机器功能得太少。
为了增加指令的种类,又不增加指令字的长度,提出了一种可变长指令操作码方案, 即操作码的位数对不同类型的指令长度不是固定的。对使用频繁的指令,采用短操作码 方案,对不常使用的指令操作码位数可多一些。对于后者,当操作码位数堉加时,地址 码位数应该相应地减少。
不定长指令操作码方案,指令操作码编码灵活,指令种类限制较少,但操作码的译 码控制要复杂一些。