javascript - 如何在javascript中执行二进制补码和按位运算

标签 javascript bit bitwise-operators twos-complement

如果我想将二进制数转换为 32 位二进制补码。在 javascript 中执行此操作的正确方法是什么

e.g. "10101010001000101110101000101110" -> -1440552402

反过来呢?

e.g. -1440552402 -> "10101010001000101110101000101110"

最佳答案

以 2 为底的

parseInt 几乎足够了,只是它不将第 32 位视为符号位。

但这行得通:parseInt(someString, 2) | 0

回到字符串,toString(2) 再次几乎可以工作,但以我们不希望的方式处理符号,但这有效:(x >>> 0 ).toString(2)>>>0 使其成为无符号整数。

关于javascript - 如何在javascript中执行二进制补码和按位运算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31998628/

相关文章:

javascript - 图像自然宽度返回零

python - 两个二进制字符串之间的汉明距离不起作用

java - Java中的&和&&有什么区别?

algorithm - 如果奇数,如何执行按位舍入到偶数?

java - 防止 Android Webview 在导航时显示空白屏幕

javascript - 使用 SystemJS 将 ng2-ace 库集成到新创建的 angular-cli (angular2) 项目中

javascript - Angular 模块的 forRoot 中的运行时值

binary - 1 KB (KiloByte) 真的等于 1024 字节吗?

c++ - 在 C++ 中附加两个无符号字符的位运算符

php - 找到最高设置位