我正在阅读MIPS中的分区,我发现了div
将$ s除以$ t并存储 $ LO中的商和其余的 $ HI
http://www.mrc.uidaho.edu/mrc/people/jff/digital/MIPSir.html
维基百科说
HI和LO用于访问乘法器/分频器结果,由mfhi(从高位移动)和mflo命令访问。
http://en.wikipedia.org/wiki/MIPS_architecture
HI和LO是否注册?他们有多少个寄存器?
答案 0 :(得分:23)
这些特殊寄存器用于存储乘法和除法的结果。它们不能直接寻址。可以使用特殊说明mfhi
和mflo
它们存在于乘法单元中,每个单位为32位。更多信息here。
答案 1 :(得分:9)
HI和LO没有编号寄存器,IIRC。它们仅用于存储不适合单个寄存器的操作结果(例如,将两个32位整数相乘可能会产生64位整数,因此溢出进入HI)。
编辑:根据this class description,它们确实是特殊的寄存器,因此它们没有编号,只能使用特殊命令访问。
答案 2 :(得分:1)
LO的作用是乘法,它存储最低有效位,HI存储其余的位,但主要是,我们只关注LO部分进行乘法运算。在分工中,我们专注于两者。分区中的LO是应该存储商的位置,HI是余数。