进制
1. 进制概念
- 进制 :进制也就是进位计数制,是人为定义的带进位的计数方法(有不带进位的计数方法,如原始的结绳计数,唱票时常用的“正”字计数)
- 对于任何一种进制—X进制,就表示每一位置上的数运算时都是逢X进一位。
2. 进制表示
- 常见的进制表示 :
- 二进制:B
- 八进制:O
- 十进制:D
- 十六进制:H
3. 进制加减法
-
二进制
- 用0、1两个数字来表示数值,这就是二进制(Binary)
- 在计算机内部,数据都是以二进制的形式存储的,二进制是学习编程必须掌握的基础。
- 加减法:
对于十进制,进行加法运算时逢十进一,进行减法运算时借一当十;
对于二进制,进行加法运算时逢二进一,进行减法运算时借一当二。
-
八进制
- 用0~7八个数字来表示数值,这就是八进制(Octal)
- 加减法:
对于十进制,进行加法运算时逢十进一,进行减法运算时借一当十;
对于八进制,进行加法运算时逢八进一,进行减法运算时借一当八。
-
十六进制
- 十六进制中,用A来表示10,B表示11,C表示12,D表示13,E表示14,F表示15,因此有 0~F 共16个数字,基数为16
- 加法运算时逢16进1,减法运算时借1当16。
- 注意 ,十六进制中的字母不区分大小写,ABCDEF 也可以写作 abcdef
4. 进制间的相互转化
-
其他进制转化为十进制:
-
十进制转化为其他进制:
- “除 N 取余,逆序排列” 法:
- 将 N 作为除数,用十进制整数除以 N,可以得到一个商和余数;
- 保留余数,用商继续除以 N,又得到一个新的商和余数;
- 仍然保留余数,用商继续除以 N,还会得到一个新的商和余数;
- 如此反复进行,每次都保留余数,用商接着除以 N,直到商为 0 时为止。
- 把先得到的余数作为 N 进制数的低位数字,后得到的余数作为 N 进制数的高位数字,依次排列起来,就得到了 N 进制数字。
-
八进制和二进制之间的相互转化
-
十六进制和二进制之间的相互转化
-
常用的进制对照表:
5. 进制存储
- 背景介绍 :我们的计算机中最常见的硬件之一就是内存条,内存条是一个非常精密的部件,包含了上亿个电子元器件,它们很小,达到了纳米级别。这些元器件,实际上就是电路。当电脑通电时,电路的电压会变化,要么是 0V,要么是 5V,只有这两种电压。5V 是通电,用1来表示,0V 是断电,用0来表示。所以,一个元器件有2种状态,0 或者 1。通过电路来控制这些元器件的通断电,会得到很多0、1的组合。例如:8个元器件有 28=256 种不同的组合,16个元器件有 216=65536 种不同的组合。虽然一个元器件只能表示2个数值,但多个结合起来就可以表示很多数值了。
- 一般情况下我们不单独的使用元器件,而将8个元器件看做一个单位。1个元器件称为1比特(Bit)或1位,8个元器件称为1字节(Byte)
以此类推:
8×1024个元器件就是1024Byte,简写为1KB;
8×1024×1024个元器件就是1024KB,简写为1MB;
8×1024×1024×1024个元器件就是1024MB,简写为1GB。 - 单位换算公式:
- 1Byte = 8 Bit
- 1KB = 1024Byte = 210Byte
- 1MB = 1024KB = 220Byte
- 1GB = 1024MB = 230Byte
- 1TB = 1024GB = 240Byte
- 1PB = 1024TB = 250Byte
- 1EB = 1024PB = 260Byte