指令寄存器用来存放正在执行的指令。指令分成两部分:操作码和地址码。操作码用来指示指令的操作性质,如加法、减法等;地址码给出本条指令的操作数地址或形成操作数地址的有关信息(这时通过地址形成电路来形成操作数地址)。有一种指令称为转移指令,它用来改变指令的正常执行顺序,这种指令的地址码部分给出的是要转去执行的指令的地址。
指令寄存器:用以保存当前执行或即将执行的指令的一种寄存器。指令内包含有确定操作类型的操作码和指出操作数来源或去向的地址。指令长度随不同计算机而异,指令寄存器的长度也随之而异。计算机的所有操作都是通过分析存放在指令寄存器中的指令后再执行的。指令寄存器的输人端接收来自存储器的指令,指令寄存器的输出端分为两部分。操作码部分送到译码电路进行分析,指出本指令该执行何种类型的操作;地址部分送到地址加法器生成有效地址后再送到存储器,作为取数或存数的地址。
一个程序由若干个程序段组成,每个程序段的指令可以设计成顺序地存放在存储器之中,所以只要指令地址寄存器兼有计数功能,在执行指令的过程中进行计数,自动加一个增量,就可以形成下一条指令的地址,从而达到顺序执行指令的目的。这个办法适用于以随机存储器作为主存储器的计算机。当程序的运行需要从一个程序段转向另一个程序段时,可以利用转移指令来实现。