MIPS寻址方式

来源:互联网 发布:中性笔成分知乎 编辑:程序博客网 时间:2024/05/29 12:30

MIPS的寻址方式:

      1、MIPS硬件只支持一种寻址模式,即:寄存器基地址 + 立即数偏移量,且offset必须在-32768~32767之间(16位),任何载入和存储机器指令都可以写成:
       lw        $1,offset($2)
      可以使用任何寄存器作为目的操作数或源操作数。

 

      2、但是,MIPS汇编器可以利用合成指令来支持多种寻址方式,这些寻址方式包括:

               直接寻址(Direct):由数据标号或者外部变量名寻址;

               直接+索引(Direct+index):偏移量加上由寄存器指定的标号地址;

               常数(Constant):32位常数;

               寄存器间接(Register Indirect):寄存器+偏移量(其中偏移量为0).

      3、另外,MIPS对数据的访问还有一种称为“全局指针gp相对寻址”的技术。

 

MIPS的指令格式:

      MIPS只有三种指令格式:

      1、R(register)类型的指令。该类型指令从寄存器堆(register file)中读取两个源操作数,计算结果写回寄存器堆。

                                    

op rs rt rd 

shamt 

funct 6bit  5bit 5bit 5bit 5bit 6bit

 

      2、I(immediate)类型的指令。该类型指令使用一个16位的立即数作为一个源操作数。

      op  rs rt Address/Immediate 6bit5bit 5bit 16bit 

      3、J(jump)类型的指令。该类型指令使用一个26位的立即数作为跳转的目标地址(target address)。

                             

 optarget-address  6bit 26bit

 

 

 

       参考资料:

           1、《See MIPS run》;

           2、http://wenku.baidu.com/view/66672a07e87101f69e319526.html 指令系统与寻址方式

0 0
原创粉丝点击