</div>
一、二进制数的表示 n:二进制数整数位数 m:二进制数小数位数 B:二进制数标记 如:10111B .1101B 1110.011B 二、十六进制数的表示 1、十六进制数的数码 0~9,A(a)、B(b)、C(c)、D(d)、E(e)、F(f) 2.十六进制数的表示 例:85A0H 4B0CH 三.数制转换 1.十进制→二进制 (1)整数转换 降幂法:二进制权重 … 128 64 32 16 8 4 2 1 241 1 1 1 1 0 0 0 1 B 255 1 1 1 1 1 1 1 1 B 除以2取余数,逆序排列得整数 ∴ 215D=11010111B (2)小数转换 不断乘以2,顺序排列取整数积 2.十进制→十六进制 (1)整数转换 除以16,逆序排列得整数 (2)小数部分 乘以16,顺序排列取整数积 3.二进制→十进制 二进制数第0位的权值是2的0次方,第1位的权值是2的1次方…… 所以,设有一个二进制数:0110 0100,转换为10进制为: 0110 0100 换算成 十进制 第0位 0 * 20 = 0 第1位 0 * 21 = 0 第2位 1 * 22 = 4 第3位 0 * 23 = 0 第4位 0 * 24 = 0 第5位 1 * 25 = 32 第6位 1 * 26 = 64 第7位 0 * 27 = 0 + --------------------------- 100 用横式计算为: 0 * 20 + 0 * 21 + 1 * 22 + 1 * 23 + 0 * 24 + 1 * 25 + 1 * 26 + 0 * 27 = 100 0乘以多少都是0,所以我们也可以直接跳过值为0的位: 1 * 22 + 1 * 23 + 1 * 25 + 1 * 26 = 100 4.十六进制→十进制 16进制就是逢16进1,但我们只有0~9这十个数字,所以我们用A,B,C,D,E,F这五个字母来分别表示10,11,12,13,14,15。字母不区分大小写。 十六进制数的第0位的权值为16的0次方,第1位的权值为16的1次方,第2位的权值为16的2次方…… 所以,在第N(N从0开始)位上,如果是是数 X (X 大于等于0,并且X小于等于 15,即:F)表示的大小为 X * 16的N次方。 假设有一个十六进数 2AF5, 那么如何换算成10进制呢? 2AF5换算成10进制: 第0位: 5 * 160 = 5 第1位: F * 161 = 240 第2位: A * 162 = 2560 第3位: 2 * 163 = 8192 + ------------------------------------- 10997 直接计算就是: 5 * 160 + F * 161 + A * 162 + 2 * 163 = 10997 现在可以看出,所有进制换算成10进制,关键在于各自的权值不同。 假设有人问你,十进数 1234 为什么是 一千二百三十四?你尽可以给他这么一个算式: 1234 = 1 * 103 + 2 * 102 + 3 * 101 + 4 * 100 5.二进制→十六进制 (1)整数部分 从右向左,4位一组,不足一组前面补0,每组二进制数用一位十六进制数码表示。 110101101B= 0001,1010,1101B=1ABH ↓ ↓ ↓ 1 A B (2)小数部分 小数点开始,从左向右,4位一组,不足一组后面补0,每组二进制数用一位十六进制代码表示。
·110111B=·1101,1100B=·BCH ↓ ↓ B C 6.十六进制→二进制 每位十六进制数以4位二进制表示 6AB5H=0110 1010 1011 0101 B </div></div> |