底层二进制的计算

计算机中只能存在二进制,  所以计算需要使用二进制的补码进行计算

原码,反码,补码

整数: 原码 = 反码 = 补码

负数: 第一位是符号位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表示负数)

猜你喜欢

转载自www.cnblogs.com/caihuajiaoshou/p/10534195.html