Function 实现绝对值函数的MIPS指令

Function 实现绝对值函数的MIPS指令,function,assembly,mips,absolute-value,Function,Assembly,Mips,Absolute Value,这学期我在EE课上真的很努力,我的教授通过了MIPS的指导,就像我们在这门课上很流利一样!我试过这本书,谷歌,YouTube,家教,和学生交谈,但要么没有意义,要么他们没有足够的信心提供帮助 我对如何开始编写代码真的几乎没有信心。我已经准备好了,但我不知道该怎么办。我将提供问题,并在收到帮助时更新我所拥有的内容 问题: 只使用MIPS整数指令,编写一个函数,使 x=abs(y),其中x和y是浮点数。函数 只需要正确处理正常浮点值,而不是NaN等。” 在工程中的尝试: (尚未取得进展:() 如果

这学期我在EE课上真的很努力,我的教授通过了MIPS的指导,就像我们在这门课上很流利一样!我试过这本书,谷歌,YouTube,家教,和学生交谈,但要么没有意义,要么他们没有足够的信心提供帮助

我对如何开始编写代码真的几乎没有信心。我已经准备好了,但我不知道该怎么办。我将提供问题,并在收到帮助时更新我所拥有的内容

问题: 只使用MIPS整数指令,编写一个函数,使 x=abs(y),其中x和y是浮点数。函数 只需要正确处理正常浮点值,而不是NaN等。”

在工程中的尝试: (尚未取得进展:()


如果有人能提供一些很好的参考资料、提示、建议、建议、提示或任何东西,我将不胜感激!谢谢。

所以,ieee754。
阅读。
想想。
意识到它的重要性。
在MIPS上,符号位在字中的位置恰好与整数中的最高有效位相同。

load float as integer x
AND x with 0x7fffffff
store x as float

我刚刚读了一些关于它的东西,但似乎你可以用ieee 754做很多事情。与具体的事情相比,我的问题似乎很模糊。32位无符号int不是6个位置吗?那么,无符号int不是7个吗?我不知道你所说的“位置”是什么意思.A
float
通常为32位,
int
通常(尽管不总是)为32位。整数数据类型的
无符号
版本与
有符号
版本大小相同(这就是为什么
无符号
类型可以表示两倍于
有符号
类型可以表示的最大值的原因).就像你说的第二句话,我真的不明白:(我把它看成是二进制的。所以从最不重要的f开始,我一直认为7在128位。对不起,我不打算在这个评论部分解释二进制。去读一本关于它的书,或者在网上浏览解释什么的。@习惯:en.wikipedia.org/wiki/binary_number这应该给你一个起点。Al因此,en.wikipedia.org/wiki/Two的_补码有助于理解。
load float as integer x
AND x with 0x7fffffff
store x as float