2012-05-03 42 views
0

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

的代码是这样的:

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

所以,如果我在代码放的“5”,而不是A0090000(16)值, 将打印负十进制值(因为MSB是1) ,这是-1610022912(10) 但我想要结果2684944383(10),它被读作一个无符号数字。

我该怎么做?

回答

0

通过连续将值除以10(无符号)并将余数的数字添加到字符串的开始处,以相反的顺序填充一个字符串与数字的位数;然后打印字符串。

+0

非常感谢!那工作 –

相关问题