二进制与计算机事物的多少或者顺序,我们可以用一种称为“数”的符号来表示。事物的数量是无穷的,我们却不可能创造无数个符号。为了解决这个难题,人们创造了进位制(又叫做位值制),这样就可以用几个有限的符号,来表达无穷的数量了。
进位制是人类计数史上最伟大的创造之一。现在国际通用的主要进位制有十进制、二进制、二十进制和六十进制。其中的二进制是计算机通用的进位制。
中国古人很早就开始使用十进制的计数方法,其数字符号有:一、二、三、四、五、六、七、八、九、十、百、千、万、亿、兆等。此外,还有与中国的传统思想、文化和生活有密切关系的符号体系——天干、地支和八卦。
《伏羲之先天八卦图》
古人用天干和地支表示顺序、计时和纪年,天干有10个符号:甲、乙、丙、丁、戊、己、庚、辛、壬、癸 。地支也就是我们所说的属相,有12个动物作为符号:子、丑、 寅、卯、辰、巳、午、未、申、酉、 戌、亥。
八卦或许是最古老和神秘的符号,是中国所独有的一种符号体系。据传说,在上古时代,伏羲“仰观天文,俯察地理”,他发现世间万事万物,皆阴阳相生相克,而作八卦。其实,八卦是中国古时候人们记录卜筮结果的符号,其基本结构成分是形似卜筮工具蓍草的“爻”,一个爻有“阳”和“阴”两种形态,三个爻放在一起就组成一个“卦”,所以总共有23=8种卦,称为八卦。八卦出现时还没有文字,因此起初卦没有名称。
文字出现以后,为了便于使用,人们又补上了卦名:乾、兑、离、震、巽、坎、艮、坤。把八卦两两重叠就组成了六十四卦。算卦的人就用六十四卦来预测凶吉福祸,解释世间的万事万物。流传至今的《周易》就是一部专门解释六十四卦的古书,它是由孔子和他的弟子整理而成的。
《周易》六十四卦图
二进制由1和0排列而成,与十进制一样,它也能表示任何整数。如若把阳爻当作“1”,把阴爻当作“0”,八卦则可与3位二进制相对应,而六十四卦则可与6位二进制相对应。
1679年,德国哲学家、数学家莱布尼茨写了一篇《二进制算术》,对二进制及其运算首次给出了比较完整的描述。后来,他拜访一位曾经到过中国的欧洲传教士,了解了中国的周易八卦,他对其与二进制数的相似之处极为惊叹。八卦是利用符号的二元形态来表示事物,这一点与二进制颇为相同,因此说,八卦是古代中国人提出的二进制思想。
1678年,德国著名数学家布莱尼茨发明了计算机,为了满足计算机的需要,他引入了二进制。二进制是最为简单的进位制,仅有1和0两个基本符号,运用二进制,逢2进1,与其他进位制相比较,同样一个数,二进制位数比较多。例如,十进制的2对应二进制的10;十进制的4对应二进制的100;十进制的5对应二进制的101;十进制的10对应二进制的1010;十进制的37对应二进制的100101等等。
用二进制表示的数字,虽然位数比较多,看起来还不够直观,但计算时却非常简单,其加法和乘法公式分别仅有4条,而十进制中相应的公式则有100多条。二进制的加法公式为:
从以上的介绍可以看出,二进制的符号较少,运算较简单,所以莱布尼茨在自己发明的计算机上就采用了二进制。现在的计算机上依然采用二进制,除了上述原因,另外一种原因是,在计算机上,两种截然相反状态的现象是大量存在的,比如电路的通电与断电,电容器的充电与放电等,这些均可以用二进制的两个符号1和0来表示。例如计算机电路的接通用1表示,断开用0表示。