网站程序0day,浙江建设网证书查询,浏阳做网站,怎么做企业网站二维码原因#xff1a;
之前会一直好奇补码为什么是这么设计的#xff0c;刚刚发呆的时候突然就明白了。
设计目的#xff1a;
要理解#xff0c;补码的设计初衷是为了计算机的计算问题。计算机的加法计算是非常简单的#xff0c;但是对于减法#xff0c;因为要借位#xf…原因
之前会一直好奇补码为什么是这么设计的刚刚发呆的时候突然就明白了。
设计目的
要理解补码的设计初衷是为了计算机的计算问题。计算机的加法计算是非常简单的但是对于减法因为要借位所以每次计算起来是很麻烦的。
利用 钟表 理解加法等效减法
想明白的原因是因为看了眼手机上的表。 假如现在是5点如果我想拨到3点有两种拨法逆时针拨两小时或者顺时针拨10小时。 所以如果忽略掉前面符号位减法是可以等效为加法的。 以4bit整数为例 最大表示值为7则对于任何数字N忽略符号位-N等效于8-N而对于3bit不考虑符号位而言直接取反相当于7-N所以需要再1。 到这里就明白了为什么除符号位以外取反1。是为了用加法等效减法。
最后的符号位呢
最后的符号设计的目的就是为了表示一下在反方向拨钟表时是否会拨过0点 如果拨不到0点就是负数如果拨的过0点就是正数。所以什么时候拨的过呢拨过之后就会发生加法溢出就会向前冲一位就会把负数第一位的符号位冲掉。