使用MIPS汇编如果我提示用户输入一个整数,那么我如何获取该整数并将其分解为必需的部分?
示例:
# User inputs a number
li $v0, 5 # read value of n
syscall然后,我将$v0中的值存储在一个临时寄存器(比如$t0 )中,并需要将其分解为组成它的每个部分。因此,308必须分解为: 3,0和8。我需要这样做,以便我可以将这些部分的每一部分平方,并将它们相加在一起。
来自用户的输入值必须作为整数输入。
谢谢,核磁共振
发布于 2009-11-30 13:56:40
这是@Don的回答,有点曲折
$t0包含用户输入。(asume未签名)
li $t1,10
DIVU $t0,$t1 //divide by 10
mfhi $t2 //t2 contains the division result
mflo $t3 //t3 containts the division remainder使用beq,bgt进行比较。
一些帮助
http://www.mrc.uidaho.edu/mrc/people/jff/digital/MIPSir.html
发布于 2009-11-30 13:48:39
除以10,用余数得到8,如果商不是零,再除以10,然后用余数到零,如果商是非零重复。
https://stackoverflow.com/questions/1817988
复制相似问题