“21天好习惯”第一期-6

2021/10/28 23:09:41

本文主要是介绍“21天好习惯”第一期-6,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

计组笔记


3.5.1        MIPS32指令架构

        MIPS32的指令字长是32位的定长格式,采用的是寄存器与立即数方式相结合的寻址方式,在指令中给出寄存器编号或者立即数。

        整个指令集由3类指令构成:R型(寄存器型)指令、I型(立即数型)指令和J型(转移型)指令。

MIPS32架构的指令格式统一定义如下:

(1) R型指令

        R型指令也称为寄存器型指令,其取操作数和保存结果都在寄存器中进行。

  • OP:指令的操作码,6位,标识指令的基本类型,所有R型指令的操作码都为全0。
  • rs:源寄存器编号,5位,用来保存第一个源操作数。
  • rt:源寄存器编号,5号,用来保存第二个源操作数。
  • rd:目的寄存器编号,5位,用来保存运算结果。
  • shamt:常数,5位,用来保存常数,在移位指令中会使用到。
  • func:功能辅助说明字段,6位。因所有R型指令的操作码都一样(6个0),所以在指令中需要通过func字段来进一步指明R型指令执行何种功能操作。

(2)I型指令

        因为指令中使用了一个16位的立即数字段imm,所以I型指令也称为立即数型指令。

  • OP:指令的操作码,6位,用来标识指令的操作类型,不同操作对应的代码不同
  • rs:源寄存器编号,5位,其中保存了一个操作数。
  • rt:目的寄存器编号,5位,用来保存指令的操作结果。
  • imm:立即数字段,16位,为指令提供第二个操作数。

(3)J型指令

        J型指令的结构最简洁,只包括两个指令代码段,它的主要作用是实现无条件转移。

  • OP:指令的操作码,6位,用来标识指令的无条件转移类型。
  • Address:地址码字段,26位,用来提供指令转移的相对偏移量。



这篇关于“21天好习惯”第一期-6的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程