我想问一下转换int
和. 第一个很简单,但第二个,我不知道。它应该是格式化的符号、基数和尾数。有任何想法吗?float
binary
问问题
1272 次
1 回答
2
下面是一个在 MIPS 中打印出单精度浮点数的符号、指数和尾数的示例。您说您已经了解如何将十进制转换为二进制,因此我省略了该步骤。
有关单精度浮点数布局的详细信息,请参见: this。
.text
main:
li.s $f0 0.15625 #load floating point immediate
mfc1 $t8 $f0 #store in $t8
#extract bit 31
ori $t0 $zero 0x1
sll $t0 $t0 31
and $a0 $t0 $t8
srl $a0 $a0 31
#print sign
addi $v0 $zero 1
syscall
#print space
addi $a0 $zero 32
addi $v0 $zero 11
syscall
#extract bits 23-30
ori $t0 $zero 0xFF
sll $t0 $t0 23
and $a0 $t0 $t8
srl $a0 $a0 23
#print exponent
addi $v0 $zero 1
syscall
#print space
addi $a0 $zero 32
addi $v0 $zero 11
syscall
#extract bits 0-22
ori $t0 $zero 0xFFFF
sll $t0 $t0 7
ori $t0 $t0 0x7F
and $a0 $t0 $t8
#print mantissa
addi $v0 $zero 1
syscall
#print new line
addi $a0 $zero 10
addi $v0 $zero 11
syscall
jr $ra
这将输出:
0 124 2097152
于 2013-06-24T21:48:11.033 回答