MIPS 指令集(共31条)1

preview
需积分: 0 30 下载量 115 浏览量 更新于2022-08-03 1 收藏 609KB PDF 举报
"MIPS指令集详解" MIPS指令集是基于RISC(Reduced Instruction Set Computing,精简指令集计算)架构的指令集,共有31条指令。这些指令可以组合使用,以实现复杂的计算和逻辑操作。下面是MIPS指令集的详细解释: 加载指令 * `la`:加载地址(load address)- 将一个地址载入寄存器中。 * `li`:加载立即数(load immediate)- 将一个立即数载入寄存器中。 * `lw`:加载字(load word)- 将一个字载入寄存器中。 * `lh`:加载半字(load halfword)- 将一个半字载入寄存器中。 * `lb`:加载字节(load byte)- 将一个字节载入寄存器中。 * `lbu`:加载无符号字节(load unsigned byte)- 将一个无符号字节载入寄存器中。 * `lhu`:加载无符号半字(load unsigned halfword)- 将一个无符号半字载入寄存器中。 存储指令 * `sw`:存储字(store word)- 将一个寄存器的值存储到内存中。 * `sh`:存储半字(store halfword)- 将一个寄存器的值存储到内存中。 * `sb`:存储字节(store byte)- 将一个寄存器的值存储到内存中。 * `sdl`:存储双字(store doubleword)- 将两个寄存器的值存储到内存中。 算术指令 * `add`:加法(add)- 将两个寄存器的值相加。 * `sub`:减法(subtract)- 将两个寄存器的值相减。 * `mul`:乘法(multiply)- 将两个寄存器的值相乘。 * `div`:除法(divide)- 将两个寄存器的值相除。 * `mod`:取模(modulus)- 将两个寄存器的值相除,并取余数。 逻辑指令 * `and`:按位与(bitwise AND)- 将两个寄存器的值进行按位与操作。 * `or`:按位或(bitwise OR)- 将两个寄存器的值进行按位或操作。 * `nor`:按位非或(bitwise NOR)- 将两个寄存器的值进行按位非或操作。 * `xor`:按位异或(bitwise XOR)- 将两个寄存器的值进行按位异或操作。 控制流指令 * `beq`:分支相等(branch if equal)- 如果两个寄存器的值相等,则分支到指定地址。 * `bne`:分支不相等(branch if not equal)- 如果两个寄存器的值不相等,则分支到指定地址。 * `blt`:分支小于(branch if less than)- 如果一个寄存器的值小于另一个寄存器的值,则分支到指定地址。 * `bgt`:分支大于(branch if greater than)- 如果一个寄存器的值大于另一个寄存器的值,则分支到指定地址。 * `j`:跳转(jump)- 无条件分支到指定地址。 * `jr`:寄存器跳转(jump register)- 将寄存器的值作为跳转地址。 其他指令 * `move`:移动(move)- 将一个寄存器的值复制到另一个寄存器中。 * `nop`:无操作(no operation)- 不执行任何操作。 * `syscall`:系统调用(system call)- 调用操作系统提供的服务。 在MIPS指令集中,每个指令都有其特定的格式和功能。了解这些指令的用途和格式是编写高效的MIPS程序的关键。
艾闻
  • 粉丝: 45
  • 资源: 301
上传资源 快速赚钱
voice
center-task 前往需求广场,查看用户热搜

最新资源