Assembly 在汇编中整除浮点
我在汇编中编写实现Shell排序。我的问题是在这段代码的末尾。我有EAX中的号码,我想这样做。EAX=EAX/2,2我没有读你的代码,因为你甚至懒得把它放在你的问题里 整数近似可能是你最好的选择,见Michael的评论。否则,请使用SSE:Assembly 在汇编中整除浮点,assembly,divide,x86,Assembly,Divide,X86,我在汇编中编写实现Shell排序。我的问题是在这段代码的末尾。我有EAX中的号码,我想这样做。EAX=EAX/2,2我没有读你的代码,因为你甚至懒得把它放在你的问题里 整数近似可能是你最好的选择,见Michael的评论。否则,请使用SSE: cvtsi2ss xmm0, eax divss xmm0, [a_float_constant] cvtss2si eax, xmm0 如果希望截断而不是四舍五入到最近值,请使用cvttss2si 或使用x87: 将eax、fld 2.
cvtsi2ss xmm0, eax
divss xmm0, [a_float_constant]
cvtss2si eax, xmm0
如果希望截断而不是四舍五入到最近值,请使用cvttss2si
或使用x87:
将eax、fld 2.2从一个常数fdivr[rsp]中推出来。st0=doubleeax/2.2。完成后别忘了修复堆栈
有关insn set手册的链接,请参见标记wiki。您的文章似乎大部分是代码;请添加更多详细信息:/我知道,但当我想添加代码时。抛出的错误消息看起来您的帖子主要是代码;请添加更多详细信息我将我的代码添加到链接我希望在标签中分割其他项它需要精确到2.2?如果2.2069足够接近,你可以通过imul eax,eax,29/shr eax实现,6看起来你的帖子大部分是代码;请添加更多的细节,这是一个强烈的提示,即您不应该发布只包含带有标题的代码转储的问题,您应该花一些时间编写一个更好的问题。