我在python中发现了一些关于负数的奇怪行为: >>> a = -5 >>> a % 4 3 任何人都可以解释发生了什么事?
我只是好奇,如果有一个原因,为了在二进制表示-1,二进制补码使用:翻转的位和加1? -1表示为11111111(二进制补码),而不是(对我来说比较直观)10000001是二进制1,第一位是负数标志。 免责声明:我的工作不依赖二进制算术!
C代表负整数? 是通过补码表示还是通过使用MSB(最高有效位)? hex中的-1是ffffffff 。 所以请为我澄清这一点。
我做模数错了吗? 因为在Java中-13 % 64应该被评估为-13但是我得到了51 。