您好,欢迎访问一九零五行业门户网

计算机数据表示

一、二进制数的表示
n:二进制数整数位数
m:二进制数小数位数
b:二进制数标记
如:10111b .1101b1110.011b
二、十六进制数的表示
1、十六进制数的数码
0~9,a(a)、b(b)、c(c)、d(d)、e(e)、f(f)
2.十六进制数的表示
例:85a0h 4b0ch
三.数制转换
1.十进制→二进制
(1)整数转换
降幂法:二进制权重 …128 6432168421
241 11 1 1 0001b
255 11 1 1 1111b
除以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 ab
(2)小数部分
小数点开始,从左向右,4位一组,不足一组后面补0,每组二进制数用一位十六进制代码表示。
·110111b=·1101,1100b=·bch
↓↓
b c
6.十六进制→二进制
每位十六进制数以4位二进制表示
6ab5h=0110 1010 1011 0101 b
其它类似信息

推荐信息