基本20条MIPS整数指令格式和功能等文字描述
时间: 2024-03-31 19:33:03 浏览: 328
1. ADD:将两个操作数相加,结果存储在目标寄存器中。
2. SUB:将第二个操作数从第一个操作数中减去,结果存储在目标寄存器中。
3. ADDI:将一个立即数加到一个寄存器中,结果存储在目标寄存器中。
4. AND:将两个操作数进行按位与操作,结果存储在目标寄存器中。
5. OR:将两个操作数进行按位或操作,结果存储在目标寄存器中。
6. XOR:将两个操作数进行按位异或操作,结果存储在目标寄存器中。
7. SLT:比较两个寄存器的值,如果第一个小于第二个,则目标寄存器置1,否则置0。
8. SLL:将一个寄存器中的值向左移动指定的位数,结果存储在目标寄存器中。
9. SRL:将一个寄存器中的值向右移动指定的位数,结果存储在目标寄存器中。
10. LW:从内存中加载一个字到一个寄存器中。
11. SW:将一个寄存器中的值存储到内存中的指定位置。
12. BEQ:比较两个寄存器的值,如果相等,则跳转到指定的地址。
13. BNE:比较两个寄存器的值,如果不相等,则跳转到指定的地址。
14. J:无条件跳转到指定的地址。
15. JR:跳转到一个寄存器中存储的地址。
16. JAL:跳转到指定地址,并将返回地址存储在寄存器中。
17. ADDIU:将一个立即数加到一个寄存器中,结果存储在目标寄存器中,不会发生溢出。
18. SLTI:比较一个寄存器中的值和一个立即数,如果寄存器中的值小于立即数,则目标寄存器置1,否则置0。
19. LUI:将一个立即数的高16位加载到一个寄存器的高16位中,低16位置0。
20. NOP:空操作,什么也不做。
相关问题
MIPS CPU基本20条整数指令格式和功能,用文字描述
MIPS CPU基本20条整数指令格式和功能,如下:
1. add $d, $s, $t:将寄存器$s和$t相加,结果存储在寄存器$d中。
2. addi $t, $s, imm:将寄存器$s和一个立即数imm相加,结果存储在寄存器$t中。
3. sub $d, $s, $t:将寄存器$s和$t相减,结果存储在寄存器$d中。
4. and $d, $s, $t:将寄存器$s和$t进行按位与操作,结果存储在寄存器$d中。
5. or $d, $s, $t:将寄存器$s和$t进行按位或操作,结果存储在寄存器$d中。
6. xor $d, $s, $t:将寄存器$s和$t进行按位异或操作,结果存储在寄存器$d中。
7. slt $d, $s, $t:如果寄存器$s小于$t,将$d设置为1,否则设置为0。
8. beq $s, $t, label:如果寄存器$s和$t相等,跳转到标签label处执行。
9. bne $s, $t, label:如果寄存器$s和$t不相等,跳转到标签label处执行。
10. j label:无条件跳转到标签label处执行。
11. jr $s:跳转到寄存器$s中保存的地址处执行。
12. lui $t, imm:将一个16位的立即数imm左移16位,结果存储在寄存器$t的高16位中。
13. sll $d, $t, shamt:将寄存器$t的值左移shamt位,结果存储在寄存器$d中。
14. srl $d, $t, shamt:将寄存器$t的值右移shamt位,结果存储在寄存器$d中。
15. lw $t, offset($s):将存储在地址$s+offset处的字(4个字节)加载到寄存器$t中。
16. sw $t, offset($s):将寄存器$t中的值存储到地址$s+offset处。
17. addiu $t, $s, imm:将寄存器$s和一个符号扩展的立即数imm相加,结果存储在寄存器$t中。
18. slti $t, $s, imm:如果寄存器$s小于符号扩展的立即数imm,将$t设置为1,否则设置为0。
19. lui $t, imm:将一个16位的立即数imm左移16位,结果存储在寄存器$t的高16位中。
20. lui $t, imm:将一个16位的立即数imm左移16位,结果存储在寄存器$t的高16位中。
阅读全文