浅谈C语言的二进制和计算机语言

电子说

1.3w人已加入

描述

说计算机语言之前,先要说明计算机的工作原理。如果是最简化的描述计算机,那么它就是很多很多个开关。这些开关组合成了一些逻辑电路,很多很多个逻辑电路组合在一起就变成了计算机的处理器(CPU),在加上储存设备,输入输出设备就变成一个现在的计算机的样子了。因为计算机底层就是很多很多开关,如何用电来表示这些开关呢,其实有很多个方案,比如用固定的电压表示开和关,比如220v表示开,12v表示关,但是电压是很不稳定的,用电多了会降低,少了会升高,所以用具体电压值表示开和关是很不方便的,人们采用了另外一种方案:电压的高低。不用具体的数值,只用一个大致的范围表示开和关,比如4-5v表示高电平,0v表示低电平,这样就得到一个表示开和关的稳定的衡量标准了。

正因为用电压的高低可以稳定的表示开和关,所以计算机在计算机中只有两个状态来传递信息,一个高电平,一个低电平,在计算机中,用1表示高电平,用0表示低电平。

所以,计算机世界中,只有0和1,其它的什么都没有。

我们现实生活中用的是的十进制,就是只有0到9这十个数字,计算机只有0和1,它如何表示各种各样的数字呢,这个时候,人们就定制了一个规则,就说这个规则全世界的计算机都要符合它。这个规则就是用1和0来表示十进制数字,这种规则就叫做二进制。

它确定了二进制转换十进制的公式。

举个例子,这是一串二进制 100101

人们规定了它转换成十进制的方法:从右到左,依次从第0位开始,注意不是第1位,第0位是1,第1位是0,第二位是1,第三位是0,第四位是0,第五位是1,这样数,然后怎么算十进制呢,每一位就是2的位数次方乘以这一位的值,然后相加,比如第五位是1,就是2的5次方乘以这一位,也就是2的5次方乘以1,等于32。

明白了二进制是个什么东西之后,下面我们就可以谈计算机语言的发展了。

1.机器语言

计算机刚发明出来的时候,指令都是一些开关,用这些开关来给CPU输入一些二进制的指令,比如输入

1110101表示一种指令,输入110000又表示另外一种指令,没错,就是这么萌,那个时候写好的程序就是很多很多的0和1……

毫无疑问,这很不利于程序的编写和修改,因此,更高级的汇编语言出现啦!

2.汇编语言

汇编语言就没有很多的0和1了,而是用到了十六进制和一些英文缩写指令,比如

MOV A,13

ADD A,8

这就比1和0好看很多了,但还是不够好,还是很难看懂的。

3.高级语言

为了更方便编写程序,高级语言便应运而生。

C语言就是一种高级语言,为什么高级,因为见不到和硬件相关的东西了,都是很简单的英文单词来表示程序的含义了,比如C中的if——else语句,就是如果怎样,否则怎样的意思,至于它怎么就变成了计算机CPU能运算的1、0,这个我们不用知道,C语言的编译器就帮我们做了,所以说,确实是很高级的语言。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分