用c语言实现mips指令集,MIPS-C指令集.pdf

MIPS-C指令集

附录A MIPS-C 指令集

A.1 MIPS-C 指令表

本书从 MIPS 指令集中选择了一些常用指令构成了MIPS-C 指令集。MIPS-C 可以支持除

浮点运算外的绝大多数定点类程序的运行,并且提供了包括 CP0 、异常处理等指令,可以

支持简单的操作系统的运行。MIPS-C 指令集共包括 55 条指令。从更细致的功能角度,

MIPS-C 被划分为11 个子类。

功能 OPCODE/ 操作

助记符 功能 FUNCT

分类 (16 进制) (VerilogHDL 语法描述)

R[rt] = {24{Mem[GPR[rs]+sign_ext(offset)][7]},

LB 加载字节 20H/24H

Mem[GPR[rs]+sign_ext(offset)][7:0]}

加载字节 R[rt] = {24’b0, Mem[GPR[rs]+

LBU 24H

(无符号) sign_ext(offset)][7:0]}

加载 LH 加载半字 21H R[rt] = {16{Mem[GPR[rs]+sign_ext(offset)][15]},

Mem[GPR[rs]+sign_ext(offset)][15:0]}

加载半字 R[rt] = {16’b0, Mem[GPR[rs]+

LHU 25H

(无符号) sign_ext(offset)][15:0]}

LW 加载字 23H R[rt] = Mem[GPR[rs]+sign_ext(offset)]

SB 存储字节 28H Mem[GPR[rs]+sign_ext(offset)][7:0] = R[rt][7:0]

保存 SH 存储半字 29H Mem[GPR[rs]+sign_ext(offset)][15:0] =

R[rt][15:0]

SW 存储字 2BH Mem[GPR[rs]+sign_ext(offset)] = R[rt]

ADD 加 0/32H GPR[rd] = GPR[rs] + GRP[rt]

ADDU 无符号加 0/33H GPR[rd] = GPR[rs] + GRP[rt]

SUB 减 0/34H GPR[rd] = GPR[rs] - GRP[rt]

SUBU 无符号减 0/35H GPR[rd] = GPR[rs] - GRP[rt]

MULT 乘 0/24H {HI, LO} = GPR[rs] × GRP[rt]

MULTU 乘(无符号) 0/25H {HI, LO} = GPR[rs] × GRP[rt]

DIV 除 0/26H {HI, LO} = GPR[rs] / GRP[rt]

DIVU 除(无符号) 0/27H {HI, LO} = GPR[rs] / GRP[rt]

R-R SLL 逻辑左移 0/0H GPR[rd] = {GPR[rt][31-s:0], s{0}}

运算 SRL 逻辑右移 0/2H GPR[rd] = {s{0}, GPR[rt][31

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值