CDH6.x,各组件对应的版本号

做而论道_CS:
一个字节是 8 位 2 进制数。
可构成 2^8 = 256 种编码,应该能表示 256 个十进制数。
用其中的一半(128 个)表示 128 个负数。
(即:-1 ~-128。)
用另外的一半(128 个)表示 128 个非负数。
(即: 0 ~+127。)
综合,总的范围就是:-128 ~ +127。
这些连续的数字,既不重复,也无遗漏。
数值与代码,一一对应,实现了完备性。
只有这样安排,才是合理的。
补码的表示范围,就是这么确定下来的。
(当然,这也是移码的表示范围。)
------------------------
原码和反码,可就不那么合理了。
同样是 8 位 2 进制数,都有 2^8 = 256 种编码。
但是,针对一个 0,它们都重复编了两个编码:+0、-0。
因此,它们所能表示的数,必然就比补码少一个。
8 位的原码反码,都只能表示:-127 ~ +127。
------------------------
原码和反码,只能表示 255 个数字。
它们都表示不了-128,这就是它们的缺陷。
它们都是 “残疾的乱码”,所以,计算机无法使用它们。
因此,在计算机系统中,数值,一律采用补码表示和存储。
原码和反码,都是不存在的,所以就不必讨论了。
数值和补码,可以直接转换,也并不需要原码反码。
原码和反码,只是让计算机专业老师混口粥喝而已。