概述
文章目录
- 一、进制是什么?
- 二、计算机采用二进制原因
- 三、二进制的地位
- 四、二进制的转换
- (1)模2取余法
- (2)拆分相加法(一般是与二进制的转换)
- 小提问
一、进制是什么?
进制就是到达一定数量后便进一位的数制。因此 逢X进一 就是 X进制
我们日常生活中所用到、见到的数字就是十进制的形式,并且你应该不会在见过个位数上能够见到 “10” 吧!
因为在十进制中,每位数上能够有 0~9 共十个数字,所以逢十进一。
要是有“10” 的话,就违背了逢十进一的原则了
推测一下,我们过的“每一周”是___进制
(答:七进制)
二、计算机采用二进制原因
- 总所周知,计算机是用可见的物理材料组成的,而对于材料的选取就需要它能够具有两种及以上的不同状态,才可以具有转化信息的功能。那么对于这种具有几种状态的物理材料的选取就要考究了。设计计算机的超级大佬就发现到有许多具有两种状态的物理元件,如:灯的“亮”和“熄” ;开关的“开” 和 “关”;电压的“高” 和“低”; 磁性材料的南极和北极等等。
- 那么利用这些不同的状态来代表数字,是极易实现的。更重要的是只有两种状态,代表的数字就只有两种,就很难发生信号转译差别(数字信号转换为其它信号),那么相对于其它可以有表示多种状态的物理元件相比,就能大大提高机器的抗干扰能力,提高可靠性。而且找出一个能表示多于二种状态而且简单可靠的器件,困难多了 。
- 还有,用二种状态的,二进制计算也十分简单,更利于计算速度的提升
- 在电子计算机中采用二进制表示数可以节省设备。可 以从理论上证明,用三进位制最省设备,其次就是二进位制。但由于二进位制有包括三进位制在内的其他进位制所没有的优点,所以大多数电子计算机还是采用二进制。此外,由于二进制中只用二个符号 “ 0” 和“1”,因而可用布尔代数来分析和综合机器中的逻辑线路。
- 二进制的符号“1”和“0”恰好与逻辑运算中的“对”(true)与“错”(false)对应,便于计算机进行逻辑运算。
三、二进制的地位
机器语言就是一连串的二进制代码,而机器语言就是机器能够直接识别的代码。换句话说,计算机就是靠一连串的 0,1 来工作的
所以,如今的信息世界就是 01 构成的,那么二进制的地位多么重要呀!
值得一提的是机器语言所使用的是补码!
【了解】:我们如今大多数使用的软件都是用高级语言编写的,从高级语言成为机器能够识别的,需要经历这几个过程
高级语言(java、python、C、C++等)转译过程:
-
高级语言(程序)
↓ 【利用编译器】
-
汇编语言(程序)
↓ 【利用汇编器】
-
机器语言(程序) → 指令【执行】
-
高级语言(程序)
↓ 【利用解释器】
-
指令【执行】
解释型语言:python、java、scala、javascript 等
编译型语言:C、C++ 等
速度:编译型语言 > 解释型语言
编译型语言将程序运行前翻译成机器语言,.解释型语言是在运行时将程序翻译成机器语言,所以运行速度相对于编译型语言要慢
四、二进制的转换
我们高中可能就已经懂了二进制和十进制的转换了!
而这采用就是以下要讲的第一种方法——模2取余法
(1)模2取余法
十进制与二进制的相互转换:
十进制(被除数) ÷ 2(除数) = 商 ··· 余数
如将十进制数123转为2进制数
注:不管 m 进制 和 n进制 的互相转换(m > n),都可以采用以上方法
只是要做个简单的转换
- m进制 转换为 n进制:
- 将上图的 2 变为 n
- 补充一点:不管什么进制转换,用上图方法就一点要变到最后的结果:最后的商为 0
- n进制 转换为 m进制:
- 将上图的指数的2 变为 n
- 同样补充一点:是从 x进制(从后往前)算,并且最后一位的指数次方为 0,之后往前便加一位
(2)拆分相加法(一般是与二进制的转换)
首先我们要记住常见的 2的 1~8 次方的数
之后便可以拆分十进制数(以十进制举例)
注意拆分是要变成上图的数相加得到的形式,如下:
有些同学可能就奇怪了,这为什么就可以得出呢?
如果对方法一:模2取余法 了解深的话应该就明白了,这不就是对法一的各数反过来相乘再相加的结果吗?换句话说,就是 模2取余法 的二进制转换为十进制的过程!
要注意一下:
上图的数是指数大的排在二进制数的前面的位数,且二进制位数的最后一位的指数是 0
你把它123放在等式的左边应该就明白了!
我的建议是此法用于二进制和十进制的相互转换,不过也是可以用于任意的进制之间的转换,转换方法就是将指数的底换位相应的进制
小提问
请问程序员中的:世界上只有10种人! 是什么意思呢?
注:计算机采用二进制原因中部分内容转载自百度百科
最后
以上就是超帅流沙为你收集整理的应该了解的二进制基础知识一、进制是什么?二、计算机采用二进制原因三、二进制的地位四、二进制的转换小提问的全部内容,希望文章能够帮你解决应该了解的二进制基础知识一、进制是什么?二、计算机采用二进制原因三、二进制的地位四、二进制的转换小提问所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复