第一章 计算机中的数据和编码

温柔似野鬼°
580次浏览
2020年12月15日 18:19
最佳经验
本文由作者推荐

儿歌张悬-计生证

2020年12月15日发(作者:费清涛)




第一章 计算机中的数据和编

1.1计算机中的数制


1.2计算机中数的表示 1.3计算机中的编码
1.1 计
算机中的数制之进位计数制
按照进位的方法进行计 数的
数制称为进位计数制,简进位制:
称进位制 十六进制二进制 常用数制: 十进制
H B 区分符: D或不用
3BA.4H 1011.11B 应用举例:123.45D或123.45

十六进制数3BA.4H 十进制数123.45 二进制数1011.11
基数:表明计数制允许选用的基本数码的个数称为基数,用R
表示。
十进制 二进制 十六进制
数码: 0-99 0,1 0-9,A-F
基数: R=10 R=2 R=16
表1.1 计算机中的数制对照表
十进制 二进制 十六进

十进制 二进制 十六进



0 0000

0 8 1000 8



















9 9 1 1001 0001 1
A



10
0010 1010
2
2
0011

3 3 11 1011 B
0100

4 4 12 1100 C
D 0101 13 5 1101 5
E
14
0110 1110
6
6
0111

7 7 15 1111 F
在进位计数制中,一个数码处在数的不同位置时,它所代表的数
值是不同的。每一个数位赋予的 数值称为位权,简称权。
权的大小是以基数为底,数位的序号为指数的整数次幂,用I 表



示数位的序号,用R 表示数位的权。
例:342.54各数位的权分别为102, 101, 100, 101和102;
1和1011.01B各数位的权分别为23, 22, 21, 20, 222;34A.7H 。
16162, 161, 160各数位的权分别为和1
计算机中的数制之
进位计数制间的相互转换

进位计数制中,每个数位的数值等于该位数码与该位的权之乘积,
用Ki表示第i位的系数,则该位的数 值为KiRi。任意进位制的
数都可以写成按权展开的多项式和的形式,其一般表达 为:





















































m?i
?
RKN?
i1?i?n

1-1R1R n1+K n+2= K n+…+K 0R 02R nK




K+…+m Rm
m是进位制小数部分的位数)(n是进位制整数部分的位数, 二
进制数转换成十进制数1. 整数转换法(1)
二进制整数的按权展开式:
K 0×2 0 K n-2×2 n2+…+ N = K n1×2 n1+
把上式改写成下式:
N =(((Kn1×2+K n2)×2+Kn3)×2+…+K 1)× +K 0
2 从上述表达式,得出转换方法如下:…… ,加上第三高位,22
从最高位开始乘以,加上次高位,再乘以二进制整数转换成十进
制整数的 依此方法一直加到最低位为止。 方法称为乘2叠加法。
转换成十进制数。转换过程用 】【例1.1:把二进制数101101 线
图表示:






















































101101B = 45 转换结果是:
按权展开式如下:m


2)小数转换法: 二进制小数的



2
1+K
2×2N = K1×2 2+…+K
m× 把上式改写成下式:1 K
++12 K
2+…+2 1(–KmN = 2
1(K
1+2 1( )m)) 从上述表达式,得出转换方法如下:,加上第
三低2从最低位开始,除以2,加上次低 位,再除以二进制小……
依此方法一直到小数点后第一位除以2为止。位, 数转换成十
进制小 数的方法称为除2叠加法。转换过程用转换成十进制小数。
0.101111.2】 把二进制数【例 线图表示:



转换结果是:0.10111B = 0.71875
2.十进制数转换成二进制数


(1)整数转换法
转换方法如下:
把十进制数的整数部分连续除以2,依次取得余数,直到商为0



依次得出的余数序列即是二进制数从低位到高位各数位上停止,
的系数。十进制整数转换为二进制整数的方法称为除2取余法。
【例1.3】 把十进制数205转换成二进制整数。
用竖式表示如下:
十进制整数 2 二进制数位系数 = 余数
205 2 = 102 K0 = 1
K1 = 0 102 2 = 51
K2 = 1 51 2 = 25
K3 = 1 25 2 = 12
K4 = 0 12 2 = 6
K5 = 0 6 2 = 3
K6 = 1 3 2 = 1
K7 = 1
1 2 = 0

转换结果是:205 = 11001101B。
(2)小数转换法
转换方法如下:
把十进制小数部分连续乘以2,依次 取得整数,直到乘积小数部
分为0停止,依次得出乘积的整数序列即是二进制小数从高位到
低位 各数位上的系数。十进制小数转换成二进制小数的方法称为
乘2取整法。



【例1.4】 把十进制小数0.8125转换成二进制小数。
用竖式表示如下:
十进制整数部分= 二进制小数的数位系数 2 十进制小数×.






1 = 1 K0.8125×2 = 1.625
K 0.625×2 = 1.25 2 = 1
K2 = 0.5 3 = 0 0.25×K 0.5×2 = 1.0 4 = 1

转换结果是:0.8125 = 0.1101B。 3. 二进制数转换成十六 进制
数整数二进制数转换成十六进制数的转换方法是:从小数点开始,
每四位二进制数为一组用 一位十六进部分向左,小数部分向右,
0补足。制数表示,不足四位的用 转换成十六进制数。】【例1.5
把二进制数.10101 0101. 1010 1(000)1011 二
进制数 (0)111
8 . A 7 8 5 十六进制
.10101B = 7B5.A8H。转换结果是: 4.
十六进制数转换成二进制数


十六进制数转换成二进制数的转换方法是:每一位十六进制
数用相应的四位二进制数代替,多余的0舍去。 转换成二进
制数。 把十六进制数9F.8【例1.6】8 F . 十六进
制数 9



二进制数 1001 1111 . 1000
转换结果是:9F.8H = 10011111.1B。

计算机中的数制之进位计数制的计量单位

位二进制信息组成一个8,由)bit二进制信息的基本单位是位
(.





。和 B字节(Byte)。表示位和字节的英文符号分别为 b
个十进位分挡的,即:在国际单位制中,十进制是以3 ;)= 10
3 = 1k = 1000 千(kilo



;)= 10 6 = 1M = 10 3 k = 1000k 兆(mega
= 10 9 = 1G = 10 3 M = 1000M; 吉(giga)
= 10 12 = 1T = 10 3 G = 1000G。太(tera)
10个二进位分挡的,即:在国际单位制中,二进制是以 ;kilo)
= 2 10 = 1K = 1024 千(
;)= 2 20 = 1M = 2 10 K = 1024K 兆(mega
= 2 30 = 1G = 2 10 M = 1024M; 吉(giga)
。tera)= 2 40 = 1T = 2 10 G = 1024G 太(

计算机中数的表示之机器数和真值而把这个数的本身
称为真数在计算机中的表示形式称为机器数, 值。 1.数的符
号数值 表示正号,010和表示,以在计算机中,数的符号只能用
表示负号。在计算机中通常把符号放在最高位 ,该位称1以为符
号位。一个机器数是由符号位和数值位两部分组成的。;真值是,
对应的机器 数为01001B例如,真值是+1001B1001B,对应的机
器数为11001B。
2.数的位数固定
一台计计算机内一次能表示二进制数的位数叫做计算机的字长,












计算机字算机的字长是固定的。字长为

位叫做一个字节,86432
位、位、16位、长一般都是字节的整数倍,如字长8 128位。位

计算机中数的表示之机器数的表示方法1.2

种:原码、反码、补码和移码。常用的机器数表示方法有4 .原
码表示法 1,数值1原码表示法为:正数的符号位为0,负数
的符号位为 位是真值的绝对值。 = 0X1X2…Xn;即: X =
+X1X2…Xn,[X]原X1X2…Xn,[X] X = 原 =

1X1X2…Xn。 ,X2 = 1001010的原码 【例1.7】 写出真值X1
= +1001010 = 11001010。= 01001010 [X1]原 ,[X2]

位原码表示的最大和最小整数。【例1.8】 写出8 原 =
[01111111];1111111B =+127原 =+Max[X]【例1.9】
1111111B = 原 。= 127 【例1.10】Min[X]原= [11111111] 127。
8用位原码表示整数的范围是+127~ 2.反码表示法,数值位
取真值;负数的符号0反码表示法为:正数的符号位为 1位为,
数值位取真值的相反码。
,[X]Xn = 0 X1X2…反X= 即:+X1X2…Xn ; = 1 X1X2…
Xn 反[X] ,X1X2…Xn X=































的反码。X2 = 1100111【例1.9】 写出真值X1 =+1100111,
= 10011000。[X1]反 = 01100111,[X2]反位反码表示的最大和写



出8 【例1.10】
最小整数。 ;127Max[X]反 = [01111111]反 = +1111111B =+ 。
Min[X]反 = [10000000]反 1111111B =
=
127 127~。用8位反码表示整数的范围是+127 3.补码表示法,
数值位取用补码表示计算机中的有符号数,正数的符号位为0 ,
数值位取真值的相反码加1。 真值;负数的符号位为1 =
0X1X2…Xn;X1X2…Xn 即: 当X = +时,[X]补
X =
X1X2…Xn时, [X]补= 1( X1X2…Xn+1当 )X2 =
X1 = +1001110,写出真值【例1.11】 1001110的补码。
[X2]补= 10110010 [X1]补= 01001110
8位补码表示的最大和最小整数。【例1.12】 写出127 +
=1111111B =+= [01111111]Max[X]补补10000000B =
=
128
补Min[X]补 = [10000000]
128。8位补码表示整数的范围是+127~
用补码表示法能使减法运算转化为加法运算 ,并且在进行加减运
算时,能使符号位和数值位一起运算,从而简化运算规则。
4.移码表示法
根据多就是在补码的基础上增加一个偏移量。移码也称作增码,




字长为8数高级程序语言软件包的实数标准格式,

其位的移码,
1023位的移码,其偏移量为;字长为11127(7FH)偏移量为 )
3FFH。(X2 =



0000011B的移码。+0000011B, 【例1.14】 写出X1 =[X1]
移 = [X1]补+偏移量 = [00000011B]补+01111111B =
[10000010B]移;
[X2]移 = [X2]补+偏移量= [11111101B]补+01111111B =
[01111100B]移。

计算机中数的表示之数的定点和浮点表示

任意一个二进制数都可以表示为纯整数或纯小数与一个2的整
数次幂的乘积。即:
N = 2 E×S
其中:S称为数N的尾数,是数值的有效数字;E称为数N的阶
码(指 数),指明小数点的位置;2称为阶码的底。
1.定点数表示法
当阶码为常数时,这种数的表示方法称为定点数表示法。
定点数表示法的小数点位置有以下两种约定:
1)所有机器数的小数点位置隐含在数的最低位之后,把所有的
数化为纯整数,这称为定点整数。
2)所有机器数的小数点位置隐含在符号位之后,把所有的数化为


纯小数,这称为定点小数。
定点数表示方法简单直观,但表示数的范围较小。.
2.浮点数表示法
当阶码取不同的数值时,这种数的表示方法称为浮点数表示法。
浮点数在计算机中的表示形式如下:



SfES


其中:E是阶码,常用移码表示;Sf是尾数的符号位;S是尾数,
一般采用原码表示。
浮点数表示法也有以下两种形式:
单精度浮点数(Single):字长为32位实数,由 1位符号、8位
阶码和23位尾数组成,以4个字节形式存储。
双精度浮点数(D ouble):字长为64位实数,由1位符号、
11位阶码和52位尾数组成,以8个字节形式存储。

1.3 计算机中的编码之数字编码

计算机的输入输出数据是十进制 数,而计算机内部运算是用二进
制数,因此十进制数必须用二进制数形式表达。用四位二进制数
表示一位十进制数的编码,称为二进制编码的十进制数,简称
BCD码。最常用的是8421BCD码。
8421BCD码的4个二进制位自左向右每位的权分别是8, 4, 2,
1,用二进制数0000~1001十个编码分别表示十进制数的0~9
在一个 字节内存放两位BCD数称为压缩的BCD数,如在一
个字节内只存。99表示十进制数1001100 1B数BCD压缩的.
放一位BCD数称为非压缩的BCD数,高半个字节为0,低半个
字节 为BCD数,如非压缩的BCD数00001001B表示十进制数9。
在计算机中的扩展精度BCD数 占10个字节(80位),第1~9
个字节是压缩的BCD数,也就是18位BCD数,第10个字节是
符号位。



8421BCD码和十进制数的对应关系如表1.2所示


表1.2 8421BCD编码表



十 进 制 数8 4 2 1


0 0 0 00


0 0 0 11


0 0 1 02


0 0 1 13


0 1 0 04


0 1 0 15


0 1 1 06

0 1 1
1 0 0
1 0 0



计算机中的编码之校验码

由于计算机结构、工艺及电气性能等方面因素的影响,常 常使数
据在存取、传输的过程中出现错误,为了及时发现并修正错误,
计算机采用校验码对传输 的数据进行校验和修正。校验码的种类
很多,最普遍使用的检验码是奇偶校验码。
奇偶校验 码是将每个信息的代码,扩展一个二进制位作为校验位。
校验位的取值原则是:若是奇校验,在编码中含 有“1”的个数
连同校验位的取值共有奇数个;若是偶校验,在编码中含有“1”
的个数连同校 验位的取值共有偶数个。



例如,是奇校验,信息编码是10 001000B,在信息中有两个“1”,
所以校验位取值为“1”,使“1”的总数有奇数个,该信息 的奇
校验码为110001000B。
在计算机中进行代码检验时,当检测信息编码中“ 1”的个数与
预先设定的奇偶校验不符时,表明被检测的信息有误。

计算机中的编码之字符编码

数字、字母、通用符号和控制符号等统称为字符,用来表示字符
的二进制代码称为字符编码。
国际上普遍采用的一种字符编码是美国国家信息交换代码
(American Standard Code for Information Interchange),简称 码
ASCII.
ASCII码选择了4类共128个常用字符,说明如下:


数字0~9:ASCII码的10个数字字符和BCD码是两个不同
概念。
字母:包括26个大写英文字母和小写英文字母。
通用符号:如 * 、 :、%、= 等。
控制符号:如ESC、CR等。

计算机中的编码之汉字编码

1.区位码
汉字的区位编码是把汉 字所在位置的区号和位号合起来(区号
在前,位号在后)得到的四位数字的编码。例如,“啊”字的区< br>位编码是1601,“波”字的区位编码是1808。



2.国标码


汉字的国标码是用二进制表示汉字的编码,行和列都是7位
二进制编码。
3.内码
汉字在计算机内部存储、运算的信息代码称为汉字的内码。
为了便于汉字和西文信 息处理有较好的兼容性,每个字节的最高
位作为区分ASCII码和汉字内部码的标识位。标识位为“0 ”,则
是ASCII码,又称为半角字符编码;标识位为“1”,则是汉字内
码,采用汉字内码 的字符编码称为全角字符编码。
无论是何种汉字输入方法,汉字的内码都是相同的。

中国政治-冰心简介


太攀蛇-形容刻苦学习的成语


景观设计任务书-藿香清胃胶囊


现在完成时的句子-大学英语六级词汇


香港一日游-刘德华个人简历


六级成绩什么时候出来-候鸟来的季节


圆点-撼地神牛出装


稻草人出装-促销信息