晚上好。我试图找出如何确定一个整数是否符合MIPS中的16位整数。MIPS溢出逻辑
我知道2^15-1 = 32767或2 ^(16-1)-1 = 32767,我们需要16位值的二进制数。无论如何,我试图确定一个整数是否通过测试。我写这个:
addi $s3, $zero, 32767
bgt $t2, $s3, else #branch to else if t2>s3
move $v0, $t2 #if no overflow; place t2 in v0
addi $v1, $zero, 0 #if no overflow; place zero in v1
else:
addi $v0, $zero, 0 #if overflow; place 0 in v0
addi $v1, $zero, -1 #if overflow; place -1 in v1
无论如何,当我尝试和评估负数时,我的逻辑有一个问题。我明天要完成任务。我正在学习MIPS编程。我不是一个编程势力,所以任何有用的建议是值得赞赏的。感谢您的时间。