【问题标题】:How can I print unsigned integer in decimal number in MIPS?如何在 MIPS 中以十进制数打印无符号整数?
【发布时间】:2012-05-05 02:51:41
【问题描述】:

例如,我想在 MIPS 中以无符号十进制数打印此数字 A0090000(16)。 所以打印结果应该是2684944384(10)。 但我卡住了,因为我只知道打印签名数字的汇编代码。

代码是这样的:

li    $v0, 1    #System call code for print_int
li    $a0, 5    #integer to print
syscall

因此,如果我在该代码中输入 A0090000(16) 值而不是“5”, 它将打印一个负十进制值(因为 MSB 为 1),即 -1610022912(10) 但我想得到结果 2684944383(10),它被读取为无符号数。

我该怎么做?

【问题讨论】:

    标签: printing mips unsigned-integer


    【解决方案1】:
    【解决方案2】:

    以相反的顺序用数字的数字填充字符串,将值连续除以 10(无符号)并将余数添加到字符串的开头;然后打印字符串。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-12-29
      • 2011-03-15
      • 1970-01-01
      • 2015-07-23
      • 2021-05-12
      • 2018-01-11
      • 2018-04-29
      相关资源
      最近更新 更多