不使用按位运算符右旋转

发布于 2024-09-12 09:14:59 字数 111 浏览 4 评论 0原文

如何在不使用任何按位运算的情况下对 32 位整数实现右旋转(和左旋转)运算?

我需要这个,因为高级着色器语言(HLSL)不允许对数字进行按位操作,并且我需要对我尝试实现的特定着色器进行右旋转。

How can I implement the rightrotate (and leftrotate) operations on 32 bit integers without using any bitwise operations?

I need this because High Level Shader Language (HLSL) does not allow bitwise oeprations upon numbers, and I need rightrotate for a specific shader I'm trying to implement.

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

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

发布评论

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

评论(1

时光与爱终年不遇 2024-09-19 09:14:59

对于无符号整数,如果数字是奇数,则除以 2 并加上 2^32,以进行右旋转。对于左侧,乘以 2,如果大于 2^32 - 1,则加 1。

For unsigned integers, divide by 2 and add 2^32 if the number was odd, for right rotate. For left, multiply by two and add 1 if it was above 2^32 - 1.

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