美文网首页
计算机组成原理—指令系统

计算机组成原理—指令系统

作者: Githubforusc | 来源:发表于2018-11-26 13:27 被阅读0次

    典型的指令格式

    操作码 OP——指明操作性质的命令码,提供指令的操作控制信息。

    操作对象——说明操作数存放的地址,有时则就是操作数本身。

    微机中常使用变长操作码,在不增加指令字长度的情况下可表示更多的指令,但增加了译码和分析难度,需更多硬件支持



    操作数个数的类型

    零地址指令,也叫无操作数指令。例:空操作NOP、停机HLT

    一地址指令 , 例:递增,移位,取反,INC AX,NOT BX

    二地址指令, 例:[A1]+[A2]→[A1],[A2]为源地址,[A1]为目的地址。

    三地址指令,例: [A1]+[A2]→[A3],其中[A1]、[A2]为源地址,[A3]为目的地址,操作后源地址内容不变,仅被拷贝。
    在边界对齐的32位(4B)字长的计算机中,存放和访问存储器数据时,可按字、半字、字节或双字的方式进行。
    “双字”地址为8的整数倍,最低3位:000
    “字”地址为4的整数倍,最低两位:00
    “半字”地址为2的整数倍,最低位:0

    指令和数据的寻址方式

    寻址方式分为 指令寻址方式 和 地址寻址方式。
    在冯·诺依曼型结构的计算机中,内存中指令的寻址和数据的寻址是交替进行的。

    指令的寻址方式

    有两种;

    顺序寻址方式

    指令地址在内存中按顺序安排,当执行一段程序时,通常是一条指令接一条指令的顺序进行。

    指令的顺序寻址方式,必须使用程序计数器PC来计数指令的顺序号,该顺序号就是指令在内存中的地址。

    跳跃寻址方式

    所谓跳跃,是指下条指令的地址码不是由程序计数器给出,而是由本条指令给出。

    操作数基本寻址方式

    隐含寻址

    不是明显地给出操作数的地址,而是在指令中隐含着操作数的地址。

    操作数在专用寄存器中

    立即寻址

    指令的地址字段指出的不是操作数的地址,而是操作数本身。
    特点:指令中包含的操作数立即可用,节省了访问内存的时间。

    操作数=A.

    直接寻址

    特点:在指令格式的地址字段中直接指出操作数在内存的地址A。
    如果用D表示操作数,那么直接寻址的表达式为:D=(A).

    EA=A.

    间接寻址

    相对于直接寻址而言,指令地址字段中的形式地址A不是操作数D的真正地址,而是操作数地址的指示器。
    两次访存,影响指令执行速度。

    EA=(A).

    寄存器寻址

    当操作数不在内存中,而是放在CPU的通用寄存器中,可采用寄存器寻址方式。
    指令结构中的RR型指令,就是采用寄存器寻址方式的例子。

    EA=R

    寄存器间接寻址

    与寄存器寻址的区别
    指令格式中的寄存器内容不是操作数,而是操作数的地址,该地址指明的操作数在内存中。

    EA=(R).

    偏移寻址

    直接寻址寄存器间接寻址的结合。

    EA=A+(R);

    常用的三种偏移寻址:

    相对寻址:EA=A+(PC);引用的专用寄存器是程序计数器(PC).
    基址寻址:EA=A+(R);引用的专用寄存器是基址寄存器.
    变址寻址:EA=A+(R);引用的专用寄存器是变址寄存器.

    段寻址方式

    EA=A+(R);

    堆栈寻址

    EA=栈顶

    相关文章

      网友评论

          本文标题:计算机组成原理—指令系统

          本文链接:https://www.haomeiwen.com/subject/ltcbqqtx.html