如何考虑Python的负数按位运算?

问题描述 投票:-1回答:1

我发现很难考虑Python(和Python3)的无限精度负数和按位运算。它不是32位或64位。左侧的1可以被认为是“无限多个”。它不是很明确,这就是为什么有时很难考虑它如何工作的原因。

似乎可行的一种方法是:总是做得更多,例如,如果您要处理具有67位的正整数,那么只需考虑具有负数的96位或128位负数的操作即可。一点。这是思考的正确方法吗?规范中是否有任何说明其工作方式或应考虑的内容? (例如内部实现只考虑了正整数,而只考虑了负数为“还有1位”?)

python python-3.x bit-manipulation negative-number
1个回答
0
投票

有很多方法可以实现无限精度,但是您应该在这里提出实际情况以获得答案。

我也不认为您不理解左边无限多个1的概念。正整数:将未保存的位回退为0,从最低有效位保存所有1位负整数:将未保存的位回退为1,从最低有效位保存所有0位

当您需要对2个无限精度的对象执行按位运算时,您也只需对后备位进行操作。

从您的问题开始,我认为您真的不需要关于Python如何实现此目的的技术细节...

© www.soinside.com 2019 - 2024. All rights reserved.