MIPS指令集(学习中)

MIPS指令集(学习笔记)

先序:

1.指令存储在存储器当中,每条指令包括操作类型、操作数。

2.MIPS汇编语法规定,可以用两种方式表示寄存器,比如 10 或 10或 10t2都是”10号寄存器“

3.MIPS指令集一共包含三种类型的指令:

(1).R型(寄存器类型):操作数全部存放在寄存器中

遵循格式:<操作码> <目的寄存器>,<源操作数寄存器> ,<源操作数寄存器>

从上可看出,指令格式中没有常数(立即数),只有寄存器,因此称为R(register)型指令

(2).I型(立即数类型):操作数不全存放在寄存器中

遵循格式:<操作码> <目的寄存器>,<源操作数寄存器> ,<立即数>

指令中既有寄存器,也有立即数(常数),因此这种指令被称为I(Immediate)型指令

(3).J型(跳转类型):用于汇编语句的跳转

4.MIPS中的标签(Label)

标签可以表示某个数据或者某条指令的地址

指令合集:

操作码指令类型样例解释
addii型指令addi $s8, $0, 32s8 = 0 + 32
orii型指令ori $1, $2, 10$1 = $2 | 10
lwi型指令中的访存指令lw s 1 , 20 ( s1, 20( s1,20(s2)s1 = Memory[$s2+20],将一个字从内存取到寄存器
swi型指令中的访存指令sw s 1 , 20 ( s1, 20( s1,20(s2)Memory[ s 2 + 20 ] = s2+20]= s2+20]=s1,将一个字从寄存器取到内存
bne决策指令有条件跳转(I型指令)bne $s0, $s1, Labelbranch not equal,当 s 0 ! = s0!= s0!=s1时跳转到Label
beq决策指令有条件跳转(I型指令)beq $s0, $s1, Labelbranch equal,当$s0 = $s1时跳转到Label
bge决策指令有条件跳转(I型指令)bge $s0, $s1, Label当$s0 >= $s1时跳转
bgt决策指令有条件跳转(I型指令)bgt $s0, $s1, Label当$s0 > $s1时跳转
ble决策指令有条件跳转(I型指令)ble $s0, $s1, Label当$s0 <= $s1时跳转
blt决策指令有条件跳转(I型指令)blt $s0, $s1, Label当$s0 < $s1时跳转
j决策指令无条件跳转j Label执行后跳转到Label
b决策指令无条件跳转b Label执行后跳转到Label
jr决策指令无条件跳转jr $ra执行后将PC值修改为ra寄存器中的值

随着学习进度更新!!!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值