int在程序集中划分float

时间:2016-05-19 20:08:30

标签: assembly divide

ng2-prism should update its dependencies

alghoritm

我在汇编中编写实现Shell排序。我的问题是这个代码结束了。我在EAX中有号码,我想要这样做。 EAX = EAX / 2,2

1 个答案:

答案 0 :(得分:1)

我没有阅读你的代码,因为你甚至不愿意把它放在你的问题中。

整数近似可能是你最好的选择,请参阅Michael的评论。否则用SSE做:

cvtsi2ss   xmm0, eax
divss      xmm0, [a_float_constant]
cvtss2si   eax, xmm0

如果要截断而不是舍入到最近,请使用cvttss2si。

或者使用x87:

push eaxfld 2.2来自常量fdivr [rsp]st(0) = (double)eax/2.2。完成后别忘了修复堆栈。

有关insn set手册的链接,请参阅标记wiki。