たとえば、この数値A0090000(16)をMIPSの符号なし10進数で出力したいとします。したがって、印刷結果は2684944384(10)になります。しかし、符号付き数値を印刷するためのアセンブリコードしか知らないため、行き詰まりました。
コードは次のようになります。
li $v0, 1 #System call code for print_int
li $a0, 5 #integer to print
syscall
したがって、そのコードに「5」の代わりにA0090000(16)値を入力すると、マイナス10進数値(MSBが1であるため)が出力されます。これは-1610022912(10)ですが、結果は2684944383(10)になります。 )、これは符号なしの数値として読み取られます。
どうやってやるの?