二进制
定义:一种基于 0 和 1 的数字系统。
位:二进制中的单个数字,0 或 1。
字节:8 个位组成的单位,通常用于表示字符和数字。
二进制到十进制转换:
每个位都有一个权重:2^(位号)
将每个位的权重乘以位值,然后相加得到十进制值。
十进制到二进制转换:
1. 不断将数字除以 2,记录余数。
2. 将余数从下往上排列,得到二进制值。
二进制操作:
与 (&):只有两个位都为 1 时才为 1。
或 (|):如果任一比特为 1,则为 1。
异或 (^):如果两个位不同,则为 1。
取反 (~):将 1 改为 0,将 0 改为 1。
左移 (<<):将数字向左移动 n 位,相当于乘以 2^n。
右移 (>>):将数字向右移动 n 位,相当于除以 2^n。
示例:
十进制 7
二进制:111
2^2 + 2^1 + 2^0 = 4 + 2 + 1 = 7
二进制 1010
十进制:10
2^3 + 2^1 = 8 + 2 = 10
二进制中1不对应001,对应01。
二进制计数法只使用两个数字:0 和 1。
例如:
10 进制的 1 用二进制表示为 01。
一张图看懂二进制数字
步骤 1: 将数字分解为 2 的幂的和:
| 数字 | 2 的幂 |
|||
| 13 | 2^3 + 2^2 + 1 |
步骤 2: 根据分解结果写出二进制表示:
| 2 的幂 | 二进制位 |
|||
| 2^3 | 1000 |
| 2^2 | 0100 |
| 2^1 | 0010 |
| 2^0 | 0001 |
步骤 3: 将二进制位从左到右拼接在一起:
1000 0100 0010 0001
因此,13 的二进制表示为 1101。
注意:
二进制数字只使用 0 和 1 两个符号。
二进制数字从右向左,每一位的权重依次翻倍(2^0、2^1、2^2、...)。
最高位(最左边)表示数字的符号(0 表示正数,1 表示负数)。
二进制转十进制
步骤:
1. 将二进制数写成位权制形式:每一位的权重为2的相应次幂。
2. 将每一位的权重乘以对应的二进制数字(0或1)。
3. 将所有乘积相加即可得到十进制数。
图表:
| 二进制数 | 位权制形式 | 权重乘积 |
||||
| 1011 | 1 x 23 + 0 x 22 + 1 x 21 + 1 x 2? | 8 + 2 + 1 = 11 |
示例:
将二进制数 1011 转换为十进制:
1. 位权制形式:1 x 23 + 0 x 22 + 1 x 21 + 1 x 2?
2. 权重乘积:8 + 2 + 1 = 11
因此,二进制数 1011 等于十进制数 11。