如何将最大的 32 位整数放入寄存器文件

How to put biggest 32bit integer into a register file

我需要将最大的整数放入一个寄存器文件中,它是(+2147483647) (0x7FFFFFFF)

.data

 input : .word 0x7FFFFFFF #+ infinity

 .text
  la $a0, input

  move $t0, $a0

输入标签可以保存这个值,但是我无法将它传输到 $a0,$a0 变成 268500992。

lui $a0, 0x7FFF
ori $a0, 0xFFFF

可以工作,但我需要从 .data 段获取参数。 你们能给我一个解决方案吗?

move $t0, $a0$a0 的值复制到 $t0。所以你得到的是 input 的地址,而不是该地址的值。

你想要的是从内存中加载一个字(32位),即lw $t0, ($a0)