计算机中只能存在二进制, 所以计算需要使用二进制的补码进行计算
原码,反码,补码
整数: 原码 = 反码 = 补码
负数: 第一位是符号位1
反码 = 原码取反
补码 = 反码+1
计算机只能做加法, 所以需要用到补码来加负数, 乘除法使用左移和右移<<>>来实现
例如: 12 - 15 = ?
可以看做是 12 + (-15)
12 = 0000 1100(原码, 反码, 补码)
-15 = 1000 1111(原码)
= 1111 0000(反码)
= 1111 0001(补码)
然后将两个二进制数的补码进行相加:
0000 1100 + 1111 0001 = 1111 1101(补码)
将获得的补码转换为原码进行显示:
1000 0011(原码) = -3(符号位1表示负数)