本文《数制与编码》关键词:计算机考试
1. 数制
数的表示规则称为数制。R(其中R是任意整数)进制计数制为“逢R进一”。任意一个R进制数都也可以用“0,1,……,R-2,R-1”这R个数来表示。这里R被称为基数。
(1)常用的数制
常用的数制有:十进制、二进制、十六进制。
l 十进制有“0~9”10个数码,逢十进一;
l 二进制有“0、1”两个数码,逢二进一;
l 十六进制有“0~9,A~F”16个数码,逢十六进一。
(2)数值的按权展开
权(位值):任何一个R进制的数都是由一串数码表示的,其中每一位数码所表示的实际值大小,还与它所处的位置有关,由位置决定的值就称为位权(又称为位值)。位权用基数R的i次幂R i表示。如“12345”中的“3”表示的是300,即3×102。
任一R进制的数值都可以表示为各位数码本身的值与其权的乘积之和。如:
(12345)10=1×104+2×103+3×102+4×101+5×100=12345
(1001)2=1×23+0×22+0×21+1×20=8+0+0+1=9
(12F)16=1×162+2×161+F×160=256+32+15=303
2. 十进制和其他进制的相互转换
(1)其他进制转十进制
其他进制转十进制就是将其他进制数按权展开。
(2)十进制数转二进制
把十进制整数转换成二进制整数,采用“除二取余”法。我们首先举一个例子看看:将11转换成二进制数,这里共用了5步:
① 首先,用11除以2,得商数5、余数1。
② 用5再除以2,得商数2、余数1。
③ 用2除以2,得商数1、余数0。
④ 用1除以2,得商数0、余数1。
⑤ 一直进行到商数为0停止。将余数从后往前排列:1011。
11转换成二进制数就是1011。具体步骤如表1-2所示:
表1-2 十进制整数转二进制数的转换步骤
|
除式 |
余数 |
排列顺序 |
|
11/2 |
1 |
↑ |
|
5/2 |
1 |
|
|
0 |
|
|
1 |
由上面的例子,我们可以总结出十进制转二进制的方法:
① 用十进制数除以2,得商数和余数。
② 以后每一步都用上一步所得的商数去除以2(这个2是不变的)。
③ 结束的标记是商数为0。
④ 最后,将所有的余数从后向前排列在一起。
3. 二、十六进制整数转换
(1)二进制整数转换成十六进制整数
二进制整数转换成十六进制整数需要按3步进行:
① 将二进制数从个位数开始向左按每4位一组划分。
② 不足4位的组以0补足(从左往右补0)。
③ 然后将每组4位二进制数代之以一位十六进制数字即可。
例如,将1001100转成十六进制数,转换步骤如下:
① 将1001100从个位数开始向左每4位一组,得到2组:100 1100;
② 第一组不足4位,补0(注意从左往右补0),则2组变成0100 1100;
③ 0100对应十六进制数是4,1100对应十六进制数是C,则转成十六进制数是4C。
(2)十六进制整数转换成二进制整数
十六进制数转成二进制数的方法正好相反,即将每一位十六进制数字代之以其等值的四位二进制数即可。例如将十六进制数5F转换成二进制数的方法是:
|
十六进制 |
5 |
F |
|
|
↓ |
↓ |
|
二进制 |
101 |
1111 |
即5F转换成二进制数是(1011111)2。
4. 西文字符的编码
计算机中常用的字符编码有EBCDIC码和ASCII码。IBM系列大型机采用EBCDIC码,微型机一般采用ASCII码。
ASCII码的全称是American Standard Code for Information Interchange,即美国标准信息交换码,它有7位码和8位码两种版本。7位ASCII码是常用的编码,是用7位二进制数表示一个字符的编码,其编码范围从0000000B~1111111B,共有27=128个不同的编码值,相应可以表示128个不同的编码。这128个编码按照ASCII码值从小到大的排列见表1-2。
表1-2 ASCII码值大小比较
|
ASCII码值 |
ASCII码 |
|
|
控制符 |
|
特殊符号 |
|
阿拉伯数字(0~9) |
|
特殊符号 |
|
大写字母(A~Z) |
|
特殊符号 |
|
小写字母(a~z) |
|
特殊符号 |
由此我们尽管不看ASCII码表,也可以快速地比较出某些ASCII码的码值大小。如A和F比较,肯定是F的码值大;7、A、b三者比较,肯定是小写字母最大,其次是大写字母,最小的是数字7。
5. 汉字的编码
(1)汉字信息交换码
汉字信息交换码简称交换码,也叫国标码。它规定7445个字符编码,其中有682个非汉字图形符和6763个汉字的代码。两个字节存储一个国标码。国标码的编码范围2121H—7E7EH。
(2)区位码
将7445个国标码放在一个94行×94列的表中,每一行称为一个汉字的“区”,用区号表示;每一列称为一个汉字的“位”,用位号表示。一个汉字的区号和位号的组合就是该汉字的“区位码”。区位码和国标码之间的转换方法:
汉字国标码=区号(十六进制数)+20H 位号(十六进制数)+ 20H
(3)汉字输入码
也叫外码,都是由键盘上的字符和数字组成的。
(4)汉字内码
内码是在计算机内部对汉字进行存储、处理的汉字代码,它应能满足存储、处理和传输的要求。国标码和内码的关系可表示为:汉字的内码=汉字国标码+8080H。
(5)汉字字形码
汉字字形码的功能是使汉字显示或打印。描述字形的方法主要有两种:点阵字形和轮廓字形。点阵字形就是用排列成方阵的点的黑白来描述汉字。在计算机中,8个二进制位组成一个字节,它是度量空间的基本单位。可见一个32×32点阵的字形码转换成字节就是32×32/8=128个字节。
(6)汉字地址码
汉字地址码是指汉字库中存储汉字字形信息的逻辑地址码。 计算机等级考试,IT 认证考试试题复习资料下载=进入快乐阅读网www.zuwenw.com
|