MIPS汇编
MIPS指令集
MIPS指令集属于精简指令集
MIPS的所有指令都是32位,指令格式简单,而X86的指令长度不是固定的。
简单的指令和格式易于译码和流水线操作,但是代码密度不高,导致二进制文件大
MIPS有32个通用寄存器REG,为什么是32个而不是更多呢?
因为更多的寄存器需要更多的指令空间对寄存器编码,也会增加上下文切换的负担。
MIPS指令格式
R格式
655556
op
rs
rt
rd
shamt
funct
用处:
寄存器-寄存器ALU操作
读写专用寄存器
I格式
65516
op
rs
rt
立即数操作
用处:
加载/存储字节,半字,字,双字
条件分支,跳转,跳转并链接寄存器
J格式
626
op
跳转地址
用处:
跳转,跳转并链接
陷阱和从异常中返回
各字段含义:
op:指令基本操作,称为操作码。
rs:第一个源操作数寄存器。
rt:第二个源操作数寄存器。
rd:存放操作结果的目的操作数。
shamt:位移量;