计算机编程语言从何而来?二进制的开端!

       与我们所处的现实世界不同,计算机所处的世界中只存在逻辑,并不存在像我们人类一样的情感。在计算机语言中,只存在着“是”与“非”。这也使机器无法拥有着我们人类的情感。

       于是为了方便我们介入到计算机的世界中,更好的设计出我们想要得到的程序,我们引入了二进制,让它成为了计算机唯一能识别的机器语言。

二进制的开端,要追溯到17世纪

       在德国图灵根著名的郭塔王宫图书馆保存着一份弥足珍贵的手稿,其标题为:“1与0,一切数字的神奇渊源。这是造物的秘密美妙的典范,因为,一切无非都来自上帝。”

       这是德国天才大师莱布尼茨的手迹。但是,关于这个神奇美妙的数字系统,莱布尼茨只有几页异常精炼的描述。莱布尼茨认为,这些由“0”与“1”所构成的数字体系中,有着丰富的宗教内涵。比如它通过二进制解释了为什么“7”是神圣的数字。因为“7”在二进制中是“111”,表示了神创7天与三位一体之间的联系。

       后人们根据这个手迹,总结演化出了后来的二进制。

莱布尼茨的二进制手稿 

二进制是什么

       我们平时说的数字都是十进制,也就是说所有的数字都有0、1、2、3、4、5、6、7、8、9十个数字排列组合而成,而二进制数据是只用0和1两个数码来表示的数。

       我们选择引用二进制作为计算机唯一能识别的机器语言,好处可不少:

1)二进制数在物理上最容易实现。例如,可以只用高、低两个电平表示"1"和"0"。

2)二进制数用来表示的二进制数的编码、计数、加减运算规则简单。

3)二进制数的两个符号"1"和"0"正好与逻辑命题的两个值"是"和"否"或称"真"和"假"相对应,为计算机实现逻辑运算和程序中的逻辑判断提供了便利的条件。 

       将二进制选定为计算机唯一能识别的机器语言的同时还是我们对于逻辑问题的强调。在计算机语言中,一切都是非真即假的,这也是计算机的语言中只存在逻辑的原因。

       在计算机决定要不要做一件事的时候结果只有“做”与“不做”两种情况,分别针对于二进制中的“1”与“0”。“1”代表“是”、“真”;“0”代表“非”、“假”。这时如果要让我们使用十进制,我们就需要把“是”和“非”之间定义出10个区别明显的量来,这是无法做到的。

说了这么多,让我们进入最难的部分:二进制和我们平常用的十进制之间是怎么转化的呢?


二进制变十进制:

规律:从右向左看,第一个位数的数字的次数是0,第二个位数上的数字的次数是1,第三个位数上的次数是2,第四个位数上的次数是3,以此类推...再用每个位上的数乘上2的每一个位上的的次数方,结果相加,就变成了十进制。

例如

1011(二进制)=1x23+0x22+1x21+1x20=11(十进制)

十进制变二进制:

规律:除二取余法

例如

89÷2 ……1

44÷2 ……0

22÷2 ……0

11÷2 ……1

5÷2 ……1

2÷2 ……0

1....

再将余数由下至上依次写出

89(十进制)=1011001(二进制)


好啦,以上就是今天的分享,下次再见!

       对于热爱编程的人来说,有一群一起学习的小伙伴很重要!如果你感兴趣或者有需求的话,笔者的专栏有一个编程零基础入门学习交流俱乐部,还有学习视频文件,欢迎初学者和正在进阶中的小伙伴们!

你可能感兴趣的:(计算机编程语言从何而来?二进制的开端!)