大学时,学计算机原理,对于「补码」,总感觉很奇怪。应试教育的好处就是,会做题就行,关于计算机为什么要这样设计,从来没深入思考过。
在计算机原理中,二进制中补码的出现是用来表示负数,求一个正数对应的负数,就是求这个正数对应二进制的补码。
补码 = 二进制各位取反 + 1
为什么要这样设计呐?
简单来说,是为了方便计算机的加法运算。加法运算就分为两种情况,即正数和正数、正数和负数的相加,使用补码,用一套逻辑就可以完成。即计算机只要部署加法电路和补码电路,就可以完成所有整数的加法。
Reference:
阮一峰的博客:关于2的补码
网友评论