如何在给定低位和高位的情况下生成一个64位二进制补码整数?

问题描述:

由于JavaScript不能容纳64个整数,有时它代表了他们为以下三个键的字典:如何在给定低位和高位的情况下生成一个64位二进制补码整数?

{ 
    low:-1547376220, 
    high: -1, 
    unsigned: false 
} 

我有使用javascript产生本词典的服务。我有另外一个用python编写的服务来接收这些数据,并想从中创建64位数字。有什么办法可以在Python中做到这一点?也许一个库已经这样做了?

如果你想要一个签名的结果,你可以使用:

(high << 32) | (low & 0xffffffff) 

对于一个无符号的结果,你可以使用:

((high & 0xffffffff) << 32) | (low & 0xffffffff)