汇编。如何设置CW的RC位?

发布于 2024-12-20 21:35:34 字数 164 浏览 2 评论 0原文

如何将RC中FPU位的控制字设置为3?


答案(编者注:不要将答案作为问题的一部分发布,但现在就在这里)

fstcw word ptr cw
or word ptr cw, 110000000000b
fldcw word ptr cw

How to set in control word of FPU bits in RC to 3?


answer (editor's note: don't post answers as part of the question, but for now it's here)

fstcw word ptr cw
or word ptr cw, 110000000000b
fldcw word ptr cw

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

意中人 2024-12-27 21:35:34

查看 fasm 手册,您需要使用 fstcw 将控制字存储在 16 位内存位置,修改 适当的位,然后使用fldcw加载修改后的控制字。

在这种情况下,适当的位是位 10 和 11,并且您希望将它们都设置为 1,因此内存位置为 0x0C00 (3 << 10)。

这将设置 FPU 截断所有舍入和转换,这希望是您想要实现的目标。

Looking at the fasm manual, you'd need to use fstcw to store the control word in a 16 bit memory location, modify the appropriate bits, and then use fldcw to load the modified control word.

The appropriate bits in this case are bits 10 and 11, and you want to set them both to 1, so or the memory location with 0x0C00 (3 << 10).

This will set the FPU to truncate all rounding and conversions, which hopefully is what you're trying to achieve.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文