尽管在线资源不建议这样做,但我仍在我的脚本中使用Python进行一些简单的位移操作。位移本身没有问题,但是表示结果却很困难。让我来解释一下。
我有一个64位二进制表示:
1000010101010111010101010101010101010101010101010111010101010101
当表示为带符号整数时,应该是负数。但是,由于Python默认为long
类型,第一位无法表示符号,导致得到了数字9608242155010487637
。
如何让Python识别64位中的符号位呢?
需要说明的是,我正在使用Python 2.7。