机器语言、汇编语言、高级语言都包含什么-推介社区-其他-习书阁

机器语言、汇编语言、高级语言都包含什么

文章内容源自网络,如有侵权请及时联系作者,谢谢!

 

在阿拉伯数字里,有1、2、3、4、5、6、7、8、9、0,十个数字,我们生活中常说的进制,一般是10进制。
所谓的“进制”也称作进位制,它是一种记数方式,故亦称进位记数法/位值计数法,可以用有限的数字符号代表所有的数值。可使用数字符号的数目称为基数(en:radix)或底数,基数为n,即可称n进位制,简称n进制。现在最常用的是十进制,通常使用10个阿拉伯数字0~9进行记数。
人类天然选择了十进制
由于人类解剖学的特点,双手共有十根手指,故在人类自发采用的进位制中,十进制是使用最为普遍的一种。成语“屈指可数”某种意义上来说描述了一个简单计数的场景,而原始人类在需要计数的时候,首先想到的就是利用天然的算筹——手指来进行计数。
十进制编码几乎就是数值本身。
数值本身是一个数学上的抽象概念。经过长期的演化、融合、选择、淘汰,系统简便、功能全面的十进制计数法成为人类文化中主流的计数方法,经过基础教育的训练,大多数的人从小就掌握了十进制计数方法。盘中放了十个苹果,通过数苹果我们抽象出来“十”这一数值,它在我们的脑海中就以“10”这一十进制编码的形式存放和显示,而不是其它的形式。从这一角度来说,十进制编码几乎就是数值本身。
但在我们生活中还有另外一种常见的进制,这种进制常用于各个计算机以及各种通讯设备之间。相对于十进制来说,它只有0和1组成。这就是“二进制”,原因很简单,十进制运算起来,太复杂了。
我们先来看看这两种进制的运算法则:

 

二进制的运算法则,只有这么八条

0+0=0,0+1=1,1+0=1,1+1=10 ,0×0=0,0×1=0,1×0=0,1×1=1

而我们再来看十进制的运算法则

1+9=10,2+8=10,3+7=10,4+6=10,5+5=10,6+4=10,7+3=10,8+2=10,9+1=10…….

至于乘法,直接去小学课本寻找九九乘法表吧,这里就不说了………

 

显然,二者一比较,二进制显然比十进制更容易运算,只不过位数有点多而已,但没关系,只要存储空间足够大,就能够解决这个问题。
既然二进制这么简单,那为啥从小数学学十进制不学二进制?

 

知乎上有位网友给出了答案:

其实显然的二进制在日常生活中使用起来是十分麻烦的,一是太长长长…长,二是实在容易读错。而计算机就不怕这两个毛病,并且在计算机的这些电子器件中,电路的通和断、电位的高和低,用两个数字符号“1”和“0”分别表示比较容易实现容易实现。再说了,二进制的算法比较简单这就使计算机运算器的结构大大简化。

而人类为什么使用十进制呢?以为十进制对于人们平时用到的数目来说不算太长(特别是古时候),再是不容易看错…吧。其实十个数字记起来也不算多,算法难度也算是比较合理。

来源:知乎网友的回答

    请登录后查看回复内容