补码将碱法变加法的数学原理是什么
PhaethonFL https://zhuanlan.zhihu.com/p/715521207?utm_psn=1809395293613060096,看这个,讲的很清楚。
印象中有点像做带余除法,考虑这些整数mod 232 这种,那-(1)自然相当于+(232-1)
alex 说了又好像没说
PhaethonFL 这楼说的很清楚了。
补码等价于最高位表示的数为-2n-1: 比如一个四位补码中 1000 最高位1代表-8 其他位则正常表示+4、+2、+1
等于把整个编码序列从[0,2n-1]向负方向平移了2n-1 所以可以表达[-2n-1,2n-1-1]
只是平移所以当然保持加法
Weyl 言简意赅。 不过应该不是整体平移吧,最高位是0的数字其实没动,最高位是1的数字平移了-2n
但因为平移的总是2^{n}的倍数,所以模加减法结果不变。
Cauch 确实
主要是因为实际上不考虑溢出的情况,至多只能有一个数首位是1,首位出现1等于减了2n-1,不影响加法的规则。
懂了,多谢