进制
什么是进制
进制:就是进位制,是人们规定的一种进位方法,对于任何一种进制,就表示某一位置上的数运算时是逢 X 进一,二进制就是逢二进一,八进制是逢八进一,十进制是逢十进一,十六进制是逢十六进一。
十进制的由来
十进制的由来是因为人类有十个手指。
二进制的由来
其实二进制来源与中国,18世纪德国数理哲学大师莱布尼兹从他的传教士朋友鲍威特寄给他的拉丁文译本《易经》中,读到了八卦的组成结构,惊奇地发现 0
和 1
分别为表示数字原点的特殊数和基本数,其进位制就是二进制,并认为这是世界上数学进制中最先进的,20世纪被称作第三次科技革命的重要标志之一的计算机的发明与应用,其运算模式正是二进制。
八进制的由来
任何数据在计算机中都是以二进制的形式存在的。
二进制早期由电信号的开关演变而来。
一个整数在内存中一样也是二进制的,但是使用一大串的 1
或者 0
组成的数值进行使用很麻烦,所以就想把一大串缩短点,将二进制中的三位用一位表示,这三位可以取到的最大值就是 7,超过 7 就进位了,这就是八进制。
十六进制的由来
对于过长的二进制变成八进制还是较长,所以出现的用 4 个二进制位表示一位的情况,四个二进制位最大是 15,这就是十六进制。
进制的表现形式
二进制:由 0,1 组成。以 0b(b 可以大写也可以小写)开头。
八进制:由 0,1 - 7 组成。以数字 0
开头。
十进制:由 0,1 - 9 组成。整数默认是十进制的。
十六进制:由 0,1 - 9,a,b,c,d,e,f(大小写均可)以 0x
开头。
十进制转二进制
用上的数字标记为 1,没有用上的数字标记为 0,标记完了之后,从右侧往左侧排序标记的数字就是当前这个数的二进制。
例如 6,按照上面的方式进行转,效果如下。
例如 13 转的过程如下。
二进制转十进制
传统十进制。
二进制转十进制。
八进制,与 16进制先转二进制,再进行其它进制之间的转换。
计算机数据存储单位
原码 反码 补码
概念
- 人脑可以知道第一位是符号位,可以根据符号位对真值的绝对值进行加减乘除。
- 但是对于计算机来说,加减乘除是最基本的运算,要设计的尽量简单。
- 计算机辨别符号位会让计算机的设计电路变得很复杂。
- 于是人们想出了让符号位也参与到运算上来。减去一个数,等于加上他的负数。
- 0 就代表正数,1 代表负数,第 1 位为符号位。
正数
- 假设机器字长(处理的位数为 8 位)
- 数字
1
- 00000001
- 00000001
- 00000001
负数
- 数字
-1
- 10000001:原码,符号位为 1 其余各位不变。
- 11111110:反码,符号位不变,其余各位取反。
- 11111111:补码,符号位不变,其位各位取反后加 1。
- 对补码取返加 1,得到原码。