您的位置: 网站首页> 计算机底层> 当前文章

何为进制?计算机为何用二进制?

老董-我爱我家房产SEO2019-12-08157围观,121赞

  什么是进制

  所谓进制就是计算者(人/或者机器)进行算术运算时的数据累计的规则,比如十进制,它的累计规则就是逢十进一,0到9为数码,只是不同的文化中,数码符号有所不同,比如,

  (1)印度/阿拉伯:0123456789,目前为全世界所通用

  (2)英语:one two three....nine

  (3)中文:零一二三.....九,或者零壹贰叁肆......玖

  (3)其它:.......

  进制的高位和低位

  高位和低位是人规定的,比如10进制,数字12,左边虽然是1,但是人类让他代表10。数字123左边虽然是1,但是人类让他代表100.

  为什么需要进制

  当进行算术运算时,数值比较大不好表示所以提出进制这个概念,对于计算机来说,他的算术运算也是基于人类现有的算术运算,所以也必然涉及进制问题。

  原则上可以有n(n>=2)进制,所以可以有2/3/4/5/6/7/8/9...16/..20...n等进制,比如目前常见的进制为

  (1)2进制:逢2进1,数码为0,1

  (2)8进制:逢8进1,数码为0,1,2,3,4,5,6,7

  (3)10进制:逢10进1,数码为0,1,2,3,4,5,6,7,8,9

  (4)16进制:逢16进1,数码为0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F

  进制只是一种计数方式

  同一个数值可以使用不同进制表示,表示的样子可能不一样,比如十进制的30这个数,以其它进制表示的话,

  (1)二进制:11110

  (2)8进制:36

  (3)16进制:1E

  虽然表示形式有差异,但是表示的数值大小是相等的。使用者具体采用那种进制来计数,需要根据使用者自身特点来定

  (1)对人来说,人所使用的进制不能太低,也不能太高,

  1> 进制太低的话

  进制太低的话,会导致进位太频繁,人脑反应不过来,比如2进制的进位就会非常频繁,对人来说,使用二进制计数不合适。

  2> 进制太高的话

  比如弄个100进制,进位实在是太慢了,需要逢100才进位,实在是太慢了。

  3> 人适合使用进位不快不慢的进制

  对人来说,使用8/9/10/11/12/13/14/15/16进制都是合适的,比如玛雅人就是12进制的,但是人类习惯使用的还是10进制,之所以会使用十进制,也许是因为人类有十个手指的缘故吧。

  (2)机械式计算机

  对于早期机械式计算机来说,由于机械运转速度慢,所以进制过低会导致频繁进位,机械的速度跟不上,进制过高又导致进位过慢,因此和人一样,早先的机械式计算机,大多也采用10进制作为计算进制。

  (3)电子计算机

  由于电子计算机自身的物理特性,电子计算机非常合适使用二进制计数,接下来就会介绍为什么适电子计算机适合使用二进制计数。

  (1)很容易使用电子器件的二态性,来代表二进制的0、1数码

  1> 二态性就是两个状态,电路中到处充满二态性的特点,比如高电平/低电平,饱和/截止,通/断等等,非常适合用来表示二进制的0、1这两个数码。(因为电流传输会有损耗,电压/电流值无法精确测量和预估,不能用10个电压值代表10个数字,这会有很大误差!但是有电压和无电压是可以准确判断的)。

  2> 在电路当中,最常见的就是使用高低电平表示0/1,比如0v(低电平)代表0,2.5v(高电平)代表1。

  (2)容易对二进制数据进行永久存储

  1> 早期的纸带存储

  在纸带上打孔,当光照射到纸带上时,光线能够穿过去孔洞被另一边接收到时就死数据1,否则就是数据0。

  2> 磁盘存储

  通过磁极的方向(正反)表示二进制数据,实现数据永久保存。

  3> 光盘存储

  表面的凹凸表示二进制数据的0/1。

  (3)容易进行算术运算和逻辑运算

  1> 容易实现算术运算

  容易设计出二进制加法电路(加法器),而算术运算单元的核心就是加法器,对于计算机来说,只要实现了加法运算,其它的减/乘/

  除等运算,很容从加法运算中引申出来。

  2> 容易实现逻辑运算(与、或、非)

  在逻辑运算中有真假概念(条件成立为真、不成立为假),二进制的1/0正好可以用来代表“真”和“假”,1可以表示“真(Ture)”,0可以表示“假(False)”,所以说电子计算机使用二进制,非常适合用于进行逻辑运算。计算机的逻辑运算也是使用“加法器”完成的。

  (4)电子计算机使用二进制数据,具有很强的抗干扰能力

  因为二进制数只有两个表示状态,比如2.5V表示1,0v表示0,状态很简单,因此抗干扰能力强,如果是十进制的话,需要十种状态

  来表示0...9的数码,表示的状态越复杂,电流在传输中会损耗,影响信号精度的判断!(比如8V表示数字8,可是接收到了8.1V或者7.9V,这就很尴尬。)数据就越容易因干扰而出错。

很赞哦!

python编程网提示:转载请注明来源www.python66.com。
有宝贵意见可添加站长微信(底部),获取技术资料请到公众号(底部)。同行交流请加群 python学习会

文章评论

    何为进制?计算机为何用二进制?文章写得不错,值得赞赏

站点信息

  • 网站程序:Laravel
  • 客服微信:a772483200