相关疑难解决方法(0)

在64位整数的Javascript中按位AND

我正在寻找一种在JavaScript中对64位整数执行按位AND的方法.

JavaScript会将其所有双精度值转换为带符号的32位整数,以执行按位运算(详情请参见此处).

javascript 64-bit integer bit-manipulation

29
推荐指数
4
解决办法
2万
查看次数

JavaScript:将52位整数转换为20位和32位整数

在其他可以代表64位整数的语言中,可以很容易地做到这一点......

如何在两个32位整数中存储64位整数并再次转换回来

如何在Ruby中以两个32位整数存储64位整数

// convert 64-bit n to two 32-bit x and y
x = (n & 0xFFFFFFFF00000000) >> 32
y =  n & 0xFFFFFFFF
Run Code Online (Sandbox Code Playgroud)

但JavaScript不能代表64位整数.它只能代表52位整数而不会出现问题.

现在这意味着无法将64位整数转换为两个32位整数,因为它甚至不可能首先具有64位整数.

但是,我们还有52位.我的问题是:如何在JavaScript中将这个52位整数分成两个32位整数(20个高位和32个低位)

有人建议像上面的位操作代码在JavaScript中进行20位和32位拆分吗?

相关: 由位操作产生的32位JavaScript数如何转换回64位数

javascript bit-manipulation

5
推荐指数
1
解决办法
2653
查看次数

从二进制数中提取ODD数字的最佳方法

给定64位数字,我需要从中提取每一位,并将其转换为数字:

decimal:  357
binary:   0000 0001 0110 0101
odd bits:  0 0  0 1  1 0  1 1
decimal:  27
Run Code Online (Sandbox Code Playgroud)

有没有想过一个好的算法方法呢?不,不是HW,这是真实的世界使用:)

algorithm bit-manipulation

5
推荐指数
1
解决办法
927
查看次数