【发布时间】:2014-09-20 11:12:17
【问题描述】:
以下 python 代码似乎可以很好地处理数字的二进制补码:
def twos_comp(self, val, bits):
if (val & (1 << (bits - 1))) != 0:
val -= 1 << bits
return val
它被用作num = self.twos_comp(int(binStr, 2), len(binStr))
其中 binStr 是一个包含任意长度二进制数的字符串。
我需要在 javascript(对于 node.js)中做同样的事情。我整天都在与它作斗争,并且即将从人类中辞职。显然二进制/按位数学不是我的强项。
有人可以帮忙,这样我就可以继续更有效地浪费时间:-)
【问题讨论】:
-
什么代码让你最接近解决方案,你能把它包括在这里吗(这样我们就不必从头开始写了)? :)
标签: javascript python math binary