一 数制
1. 含义. 表示数大小的计数方法
基数(底数)----R进制的R就是基数
数字符号------R进制有R个数字符号0,1,2,…(R-1)
2. 数的表示方法
(1) 位置表示法 (数字符号和小数点的一定排列表示数的大小)
(129.5)D 权,权系数
(N)10=(dn-1,dn-2,…d1d0.d-1…d-m)
(N)R=(rn-1,rn-2,…r1r0.r-1…r-m)
(2) 多项式的表示法(把数字符号和对应的权系数构成积之和表达式)
(N)10=(dn-1·10n-1 dn-2·10n-2 …d0·100 d-1·10-1 … d-m·10-m)
(N)R=(rn-1·10n-1 rn-2·10n-2 … r0·100 r-1·10-1 … r-n·10-n)
3. 常用计数制
|
|
10进制(D) |
2进制(B) |
16进制(H) |
R进制 |
|
基数 |
10 |
2 |
16 |
R |
|
数字符号 |
0,1,…9 |
0,1 |
0,…9,A,…F |
0,1…(R-1) |
|
表示方法 |
n-1 (N)10 =(∑di·10i)10 -m
|
n-1 (N)2=(Σbi·2i)2 -m
|
n-1 (N)16=(Σhi·16i)16 -m
|
n-1 (N)R=(Σri·Ri)R -m
|
4.数制转换
含义. 同一个数从一种计数制变换为另一种计数制的表示形式。
(1) 2进制→10进制-----采用多项式替代法(把二进制用多项式在十进制中表示)
(1101.1)2=(1·23 1·22 1·20 1·2-1)10=(13.5)10
(2) 10进制→2进制----采用基数除乘法整数部分用基数除法,小数部分用基数乘法
(47.6)10=(101111.1001)2
2|_47__________ 1 2|_21_____ 1 2|_11_____ 1 2|_5_____ 1 2|_2____ 0 2|_1___ 1 0 |
 |
(LSB) |
| |
| (MSB) | |
|
0.6 |
|
× 2 |
|
---------- |
|
[1].2 |
|
× 2 |
|
---------- |
|
[0].4 |
|
× 2 |
|
--------- |
|
[0].8 |
|
× 2 |
|
----------- |
|
[1].6 | |
 |
MSB |
| |
| LSB | |
(3) R1进制------------→10进制----------→R2进制(R1和R2非10)
多项式替代法 基数除乘法
(4) 2K进制之间的互相转换
21---2进制 0 1
22---4进制 00 01 10 11
23---8进制 000 001 010 011 100 101 110 111
.
.
.
(101011)2=(223)4=(53)8=(2B)16
(11011.1)2=(123.2)4=(33.4)8=(1B.8)16
例题:
(7F3.9)16=(0111011110011.1001)2=(133303.21)4
比较下列数的大小:(1.1)2 (1.1)4 (1.1)8 (1.1)10(1.1)15 (1.1)16
二.编码
1.含义:同一套符号按一定规则编排起来,用以表示信息(数字或字符)的过程
数字:1,2,…9,0
字母:a,…z,A,…Z
算符: ,-,*,/,=,〈,[,],(,),…
码位,码元,二进制中可用 bite表示
(1000)2(20)4(10)8
4个码位 2个 2个
2. 常用编码
①二进制编码------用若干二进制数表示信息的过程
a. 自然二进制码------用二进制数N位 从全0开始,逐个加1,自至全1来表示信息
n=1 0 |
n=2 00 |
n=3 000 |
n=n 000…0(n个0) |
| 1 |
01 |
001 |
. |
| |
10 |
…… |
. |
| |
11 |
…… |
111…1(n个1) |
优点:简便,清晰
缺点:可靠性差,如011
100(相当于十进制数3变化到4)要变化三位码元,很可能产生瞬时错误码!
b. 二进制循环码(GRAY码,格雷码)
|
n=1 |
|
n=2 |
|
n=3 |
|
|
|
|
0 |
|
00 |
|
000 |
0 |
|
|
1 |
|
01 |
|
001 |
1 |
|
|
|
|
11 |
|
011 |
3 |
|
|
|
|
10 |
|
010 |
2 |
|
|
|
|
|
|
110 |
6 |
|
|
|
|
|
|
111 |
7 |
|
|
|
|
|
|
101 |
5 |
优点:可靠性编码
缺点:不容易记忆(利用反射特性)
相邻码——表示相邻十进制数的编码
相邻码间距——码元取值不同的总数
②二----十进制编码(BCD码,BINGRY,LODID)
用若干位二进制数来表示十进制数的编码-----用四位二进制数
a. 1有权BCD码
(i)8421BCD码 十进制
|
十进制 |
b3 |
b2 |
b1 |
b0 |
|
0 |
0 |
0 |
0 |
0 |
|
1 |
0 |
0 |
0 |
1 |
|
2 |
0 |
0 |
1 |
0 |
|
3 |
0 |
0 |
1 |
1 |
|
4 |
0 |
1 |
0 |
0 |
|
5 |
0 |
1 |
0 |
1 |
|
6 |
0 |
1 |
1 |
0 |
|
7 |
0 |
1 |
1 |
1 |
|
8 |
1 |
0 |
0 |
0 |
|
9 |
1 |
0 |
0 |
1 |
D=b3*W3 b2*W2 b1*W1 b0*W0 C
(ii)5421码
| 十进制 |
b3 |
b2 |
b1 |
b0 |
|
|
0 |
0 |
0 |
0 |
0 |
|
|
1 |
0 |
0 |
0 |
1 |
|
|
2 |
0 |
0 |
1 |
0 |
|
|
3 |
0 |
0 |
1 |
1 |
|
|
4 |
0 |
1 |
0 |
0 |
|
|
5 |
1 |
0 |
0 |
0 |
(0101) |
|
6 |
1 |
0 |
0 |
1 |
(0110) |
|
7 |
1 |
0 |
1 |
0 |
(0111) |
|
8 |
1 |
0 |
1 |
1 |
|
|
9 |
1 |
1 |
0 |
0 |
|
有些编码形式不是唯一的,因此无效码(非法码)也不一样
b. 无权BCD码
(i)BCD格雷码(循环码)
|
十进制 |
G3 |
G2 |
G1 |
G0 |
|
|
0 |
0 |
0 |
0 |
0 |
|
|
1 |
0 |
0 |
0 |
1 |
|
|
2 |
0 |
0 |
1 |
1 |
|
|
3 |
0 |
0 |
1 |
0 |
|
|
4 |
0 |
1 |
1 |
0 |
|
|
5 |
0 |
1 |
1 |
1 |
|
|
6 |
0 |
1 |
0 |
1 |
|
|
7 |
0 |
1 |
0 |
0 |
|
|
8 |
1 |
1 |
0 |
0 |
|
|
|
为与0000循环改为1000 |