【问题标题】:Range of immediates in lui instructionlui 指令中的立即数范围
【发布时间】:2018-11-25 13:20:34
【问题描述】:

我不确定lui 指令中立即数的范围是多少。

当我组装时:

lui $t0,32768

它成功地没有错误。

然而,

lui $t0,-32768 

通知 -32768 超出范围。

【问题讨论】:

    标签: mips instructions immediate-operand


    【解决方案1】:

    在 MIPS 中,I 型指令的立即数总是 16 位长。这意味着如果汇编器将其视为无符号,则范围将为 [0, 65535],而对于有符号的情况,范围将为 [-32768, 32767]

    但是你可以在汇编中使用什么取决于汇编器

    例如,像shell-stormWeMips 这样的一些汇编程序接受 [-32768, 65535] 中的常量,这是 16 位有符号和无符号的混合,MIPS Converter 只接受十六进制值,但 WebMIPSASM 接受偶数像 9223372036854775807 这样的巨大值并将结果截断为 16 位

    【讨论】:

      猜你喜欢
      • 2011-10-03
      • 1970-01-01
      • 2021-06-17
      • 1970-01-01
      • 2016-05-20
      • 2015-09-03
      • 2016-08-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多