首页 >> 知识 >> 原码,反码,补码基本练习

原码,反码,补码基本练习

原码,反码,补码基本练习

做而论道_CS: 计算机中,只有加法器,只能做加法运算。

计算机中,也只有二进制数。

所谓的补码,当然也是不存在的。

----------------2 + 3 = 5,八位计算机的算法如下:0000 0010+0000 0011---------0 0000 0101CPU 所用的法则,就是 “逢二进一” 。

那么,2 + 255 = ?计算机,也是如法炮制:0000 0010+1111 1111(即十进制 255)---------1 0000 0001看到了吗?出现了一个进位 1 !如果算上进位,就是九位数,即:257。

如果,你舍弃这个进位,只保留八位数:【 结果就是:0000 0001 = 1。

】那么,这次计算,就是:2 - 1 = 1。

并不是原来的:2 + 255 = 257。

此处的 1111 1111 = 255,就【相当于-1】了。

同时,这次加法运算,就表现出:减法的功能。

1111 1111,这就是专家所编造的 “-1 的补码”。

而实际上,计算机,不知道什么补码不补码的。

它只知道这是二进制数 1111 1111。

CPU 只会按照 “逢二进一” 来计算。

CPU 也不知道,你后来又舍弃了进位!舍弃了进位:1111 1111 = 255,就能当做-1;加法,就能当成减法运算。

舍弃进位、或不舍弃,这是你的事情!与计算机、CPU,都毫无关系。

你 “天马行空” 的做法,可不要赖上计算机。

同样,所谓的 “浮点数”,也是一般的二进制数。

需要你后期处理,才能成为 “你想要的浮点数字”。

这些,都是算法的问题、编程的问题,与计算机无关。

程序中的算法,二进制数的意义,可就无穷无尽了。

符号位原码反码取反加一符号位不变,更是一派胡言。

这些,跟计算机,更是一丁点关系都没有!伪科学,说的就是这些事。

。

网站地图