转到自己博客里一篇,这样需要用的时候好找,如果侵犯会及时删除

在[操作及其解释]部分中似乎有些有问题,还是以第四版书中及PPT为准

注意 nor or xor xnor and (里边可能有表里没有的,主要是说这些代表什么)

nor 异或

or 或

xor 或非

xnor 同或

and 与

MIPS 指令集(共31条)

MIPS 指令集(共31条)

助记符

指令格式

示例

示例含义

操作及其解释

Bit #

31..26

25..21

20..16

15..11

10..6

5..0

R-type

op

rs

rt

rd

shamt

func

add

000000

rs

rt

rd

00000

100000

add $1,$2,$3

$1=$2+$3

rd <- rs + rt   ;其中rs=$2,rt=$3, rd=$1

addu

000000

rs

rt

rd

00000

100001

addu $1,$2,$3

$1=$2+$3

rd <- rs + rt   ;其中rs=$2,rt=$3, rd=$1,无符号数

sub

000000

rs

rt

rd

00000

100010

sub $1,$2,$3

$1=$2-$3

rd <- rs - rt   ;其中rs=$2,rt=$3, rd=$1

subu

000000

rs

rt

rd

00000

100011

subu $1,$2,$3

$1=$2-$3

rd <- rs - rt   ;其中rs=$2,rt=$3, rd=$1,无符号数

and

000000

rs

rt

rd

00000

100100

and $1,$2,$3

$1=$2 & $3

rd <- rs & rt   ;其中rs=$2,rt=$3, rd=$1

or

000000

rs

rt

rd

00000

100101

or $1,$2,$3

$1=$2 | $3

rd <- rs | rt   ;其中rs=$2,rt=$3, rd=$1

xor

000000

rs

rt

rd

00000

100110

xor $1,$2,$3

$1=$2 ^ $3

rd <- rs xor rt   ;其中rs=$2,rt=$3, rd=$1(异或)

nor

000000

rs

rt

rd

00000

100111

nor $1,$2,$3

$1=~($2 | $3)

rd <- not(rs | rt)   ;其中rs=$2,rt=$3, rd=$1(或非)

slt

000000

rs

rt

rd

00000

101010

slt $1,$2,$3

if($2<$3) 
  $1=1 else
   $1=0

if (rs < rt) rd=1 else rd=0 ;其中rs=$2,rt=$3, rd=$1

sltu

000000

rs

rt

rd

00000

101011

sltu $1,$2,$3

if($2<$3) 
  $1=1 else
   $1=0

if (rs < rt) rd=1 else rd=0 ;其中rs=$2,rt=$3, rd=$1
  (无符号数)

sll

000000

00000

rt

rd

shamt

000000

sll $1,$2,10

$1=$2<<10

rd <- rt << shamt  ;shamt存放移位的位数,
  也就是指令中的立即数,其中rt=$2, rd=$1

srl

000000

00000

rt

rd

shamt

000010

srl $1,$2,10

$1=$2>>10

rd <- rt >> shamt ;(logical) ,其中rt=$2, rd=$1

sra

000000

00000

rt

rd

shamt

000011

sra $1,$2,10

$1=$2>>10

rd <- rt >> shamt  ;(arithmetic) 注意符号位保留
 其中rt=$2, rd=$1

sllv

000000

rs

rt

rd

00000

000100

sllv $1,$2,$3

$1=$2<<$3

rd <- rt << rs  ;其中rs=$3,rt=$2, rd=$1

srlv

000000

rs

rt

rd

00000

000110

srlv $1,$2,$3

$1=$2>>$3

rd <- rt >> rs  ;(logical)其中rs=$3,rt=$2, rd=$1

srav

000000

rs

rt

rd

00000

000111

srav $1,$2,$3

$1=$2>>$3

rd <- rt >> rs  ;(arithmetic) 注意符号位保留
 其中rs=$3,rt=$2, rd=$1

jr

000000

rs

00000

00000

00000

001000

jr $31

goto $31

PC <- rs

I-type

op

rs

rt

immediate

addi

001000

rs

rt

immediate

addi $1,$2,100

$1=$2+100

rt <- rs + (sign-extend)immediate ;其中rt=$1,rs=$2

addiu

001001

rs

rt

immediate

addiu $1,$2,100

$1=$2+100

rt <- rs + (zero-extend)immediate ;其中rt=$1,rs=$2

andi

001100

rs

rt

immediate

andi $1,$2,10

$1=$2 & 10

rt <- rs & (zero-extend)immediate ;其中rt=$1,rs=$2

ori

001101

rs

rt

immediate

andi $1,$2,10

$1=$2 | 10

rt <- rs | (zero-extend)immediate ;其中rt=$1,rs=$2

xori

001110

rs

rt

immediate

andi $1,$2,10

$1=$2 ^ 10

rt <- rs xor (zero-extend)immediate ;其中rt=$1,rs=$2

lui

001111

00000

rt

immediate

lui $1,100

$1=100*65536

rt <- immediate*65536 ;将16位立即数放到目标寄存器高16
         位,目标寄存器的低16位填0

lw

100011

rs

rt

immediate

lw $1,10($2)

$1=memory[$2
 +10]

rt <- memory[rs + (sign-extend)immediate] ;rt=$1,rs=$2

sw

101011

rs

rt

immediate

sw $1,10($2)

memory[$2+10]
 =$1

memory[rs + (sign-extend)immediate] <- rt ;rt=$1,rs=$2

beq

000100

rs

rt

immediate

beq $1,$2,10

if($1==$2)  
 goto PC+4+40

if (rs == rt) PC <- PC+4 + (sign-extend)immediate<<2

bne

000101

rs

rt

immediate

bne $1,$2,10

if($1!=$2) 
 goto PC+4+40

if (rs != rt) PC <- PC+4 + (sign-extend)immediate<<2

slti

001010

rs

rt

immediate

slti $1,$2,10

if($2<10) 
  $1=1 else
   $1=0

if (rs <(sign-extend)immediate) rt=1 else rt=0 ;
   其中rs=$2,rt=$1

sltiu

001011

rs

rt

immediate

sltiu $1,$2,10

if($2<10) 
  $1=1 else
   $1=0

if (rs <(zero-extend)immediate) rt=1 else rt=0 ;
  其中rs=$2,rt=$1

J-type

op

address

j

000010

address

j 10000

goto 10000

PC <- (PC+4)[31..28],address,0,0   ;address=10000/4

jal

000011

address

jal 10000

$31<-PC+4;
 goto 10000

$31<-PC+4;PC <- (PC+4)[31..28],address,0,0
   ;address=10000/4

注意:因为MIPS16只有16个16位的寄存器,所以JAL指令中$31改成$15, 所有立即数均无需扩展,LUI指令直接就是将立即数付给RT寄存器。

MIPS指令合集(31条)R,I,J型相关推荐

  1. MIPS指令合集(31条)R,I,J型 解释

    转到自己博客里一篇,这样需要用的时候好找,如果侵犯会及时删除 在[操作及其解释]部分中似乎有些有问题,还是以第四版书中及PPT为准 注意 nor or xor xnor and (里边可能有表里没有的 ...

  2. git 强制更新远程_版本控制管理工具git的常见指令合集

    今天小千就来给大家介绍一下git中比较常见的指令合集,方便大家使用git,建议收藏起来方便日后查阅. 一.常见的命令 git help <command> # 显示command的help ...

  3. JAVA我的世界给op_我的世界开服侠怎么给op 我的世界op指令合集

    我的世界开服侠是一款完全免费且好用的开服辅助,能够帮助玩家一键开服和小伙伴们一起玩耍,操作也十分的简单,最近看到很多小伙伴在问我的世界开服侠添加op的办法,那么今天就跟着小编一起看一下吧. 我的世界开 ...

  4. php早午晚问候语_美好的午安问候语合集45条

    美好的午安问候语合集 45 条 1 .命运一半把握在天主手中,另一半把握在自个手中.成功即是用自个手中的 一半去赢得天主手中的另一半.午安! 2 .成功的法则极为简单,但简单并不代表容易.人格的完善是 ...

  5. 逆向知识内存ARM常用的汇编指令合集

    ARM   处理器的指令集可以分为 跳转指令.数据处理指令.程序状态寄存器(PSR)处理指令.加载/存储指令.协处理器指令和异常产生指令  六大指令,这里把其它几个指令一起发了出来,可以查看具体的目录 ...

  6. 重磅合集 | 31 篇技术文章,带你从零入门 K8s (留言赠书)

    参与"阿里巴巴云原生"公众号文末留言提问,有机会获取赠书福利! 由阿里云与 CNCF 共同开发的<CNCF x Alibaba 云原生技术公开课>(视频课程)第一期已* ...

  7. 超实用:Vue 自定义指令合集

    大家好,我是漫步 前面我已经分享过一篇"分享8个非常实用的Vue自定义指令"文章,里面教了大家如何使用自定义指令,以及几个使用的指令,下面这篇文章也是类似内容,希望你会喜欢.记得查 ...

  8. 开箱即用,超实用的 Vue 自定义指令合集

    作者:Huup_We juejin.cn/post/6963840401899782175 在 Vue2.0 中,代码复用和抽象的主要形式是组件.然而,有的情况下,你仍然需要对普通 DOM 元素进行底 ...

  9. C51最全111条汇编指令合集,以及使用时的注意事项,超详细

    direct 以地址来命名的变量 所有的变量都需要放到一个存储单元中,这个存储单元都一定有一个地址 特别注意!!!!!寄存器的名字单独写出就代表了把该寄存器中的数据,即它就代表其里面的内容,而不是他的 ...

最新文章

  1. 测试函数: Ackely,Rastrigin,Griewangk,SumSquartes,Sphere,Quartic,Schwefel' Problem 12等
  2. 手机主宰了你的生活,这不是乔布斯想看到的
  3. R12.2 新功能:值集安全性设置及效果 Flexfield Value Set Security
  4. Sublime Text 关闭自动更新
  5. 堆的构建、堆的插入、堆的删除、堆排序
  6. LeetCode 2181. 合并零之间的节点(链表)
  7. eclipse debug进入.class_Eclipse使用教程(图文详解)
  8. 【Python】shuffle函数
  9. 【转】 Objective C实现多继承
  10. 小白如何购买阿里云服务器(2019最详细教程)
  11. 【转】 Linux中的工作队列
  12. 枪毙ctfmon.exe 恢复你的默认输入法
  13. python绘制中国地图(模仿中央气象台)
  14. IDEA 2018 激活补丁 激活到2100年 ,最新版不用注册机
  15. 网络基本知识【数据传输流程】
  16. 用C语言实现移位密码加密与解密
  17. java 解析word模板为xml, 动态填充数据到xml,最后输出word文档
  18. python分句_Python 中文分句 | 学步园
  19. 采用busybox的嵌入式Linux根文件系统的的制作方法
  20. 顺丰bsp系统 java_顺丰BSP接口SOAP的请求示例

热门文章

  1. Leetcode75. 颜色分类
  2. 好的福利体系应该如何设计?
  3. 【Hexo】GitHub_Page绑定阿里云域名
  4. 计算机机房环控模块箱的作用,模块化机房是由什么组成的,它的作用是什么
  5. java类加载器可以从互联网加载,Java类加载器深入解析(2)
  6. mono桌面应用移到android,从原生APK反编译,拿到界面,用于mono for android
  7. matlab制作有趣动画制作,18个超有趣的SVG绘制动画赏析
  8. 查看Eclipse的版本号
  9. 智能制造在汽车行业中如何应用
  10. 【原创】Unity T4M 中文讲解