知识拓展二 计算机中数据的表示

更新于 2026年10月10日 版权声明
知识拓展二 计算机中数据的表示

计算机从它诞生之日起就作为信息的处理工具,随着人类社会的发展,它的作用越来越明显。计算机能“读懂”怎样的数据形式?人们又怎样使各种信息被计算机“读懂”呢?下面,一起来学习计算机中数据的表示。

1.信息的数字化表示

计算机要处理的信息是多种多样的,如日常的十进制数、文字、符号、图形、图像和语言等。但是计算机无法直接“理解”这些信息,所以计算机需要采用数字化编码的形式对信息进行存储、加工和传送。

信息的数字化表示就是采用一定的基本符号、使用一定的组合规则来表示信息。计算机中采用的二进制编码,其基本符号是“0”和“1”。

(1)数值数据的表示

在普通数字中,用“+”或“-”符号在数的绝对值之前来区分数的正负。在计算机中有符号数包含三种表示方法:原码、反码和补码。

①原码表示法:用机器数的最高位代表符号位,其余各位是数的绝对值。符号位若为0则表示正数,若为1则表示负数。

②反码表示法:正数的反码和原码相同,负数的反码是对原码除符号位外各位取反。

③补码表示法:正数的补码和原码相同,负数的补码是该数的反码加1。

(2)字符数据的表示

①字符的表示:在计算机处理信息的过程中,要处理数值数据和字符数据,因此需要将数字、运算符、字母和标点符号等字符用二进制编码来表示、存储和处理。目前通用的是美国国家标准学会规定的ASCII码,即美国标准信息交换代码(参见附录ASCII码对照表)。每个字符用7位二进制数来表示,共有128种状态,这128种状态表示了128种字符,包括大小写字母、0~9、其他符号及控制符。

②汉字表示:汉字交换码是指不同的具有汉字处理功能的计算机系统之间在交换汉字信息时所使用的代码标准。自国家标准GB2312—1980《信息交换用汉字编码字符集》公布以来,我国一直沿用该标准所规定的国标码作为统一的汉字信息交换码。

(3)其他非数值的数据表示

要表示其他非数值的数据,首先要进行信息的数字化。

①图像信息的数字化。一幅图像可以看成是由一个个像素点构成的,图像的信息化,就是对每个像素用若干个二进制数码进行编码。图像文件的后缀名有bmp、gif和jpg等。

②声音信息的数字化。自然界的声音是一种连续变化的模拟信息,可以采用A/D转换器对声音信息进行数字化。声音文件的后缀名有wav、mp3等。

③视频信息的数字化。视频信息可以看成是由连续变换的多幅图像构成的,播放视频信息,每秒需传输和处理25幅以上的图像。视频信息数字化后的存储量相当大,所以需要进行压缩处理。视频文件的后缀名有avi、mpg等。

2.进位计数制

进位计数制是利用符号来计数的方法。根据不同的进位原则,可以得到不同的进位制。在计算机中最常使用的是十进制、二进制、八进制和十六进制。不同数制的常见书写方法有下标法、后缀法和前缀法3种。

下标法直接将数制作为下标,可用下标2、8、10、16分别表示这个数是二进制数、八进制数、十进制数、十六进制数,如(190)10、(72)8、(1101)2、(AF06)16。

后缀法是使用后缀表示数制,在数值后面加字母D、B、O、H分别表示该数是十进制数、二进制数、八进制数、十六进制数,如190D、72O、1101B、AF06 H。

前缀法则常用于十六进制数的表示,如0x AF06、0x FF0000。

(1)几种常见进制数的表示方法

①十进制(decimal)记数法。十进制记数法采用10个不同的数码0、1、2、…、9,基数是10,进位规则是“逢十进一”。

【例1】用10的幂表示435.86。

图示

上式左边称为位置记数法,右边称为多项式表示法或按权展开法。

一般地,对于任何一个十进制数N,都可以用位置记数法和多项式表示法写为

图示

式中,n代表整数位数,m代表小数位数,ki(-m≤i≤n-1)表示第i位数码,它可以是0、1、2、3、…、9中的任意一个,10i为第i位数码的权值。

上述十进制数的表示方法也可以推广到任意进制数。对于一个基数为N的N进制计数制,可以写为

图示

②二进制(binary)记数法。在计算机中,广泛采用的是只有“0”和“1”两个基本符号组成的二进制数,而不使用人们习惯的十进制数,原因如下。

·二进制数在物理上最容易实现。在数字电路中利用一个具有两个稳定状态且能相互转换的开关器件就可以表示一位二进制数,电路容易实现,且工作稳定可靠。

·用二进制数来表示的编码、计数、加减运算规则简单。

·二进制数的两个符号“1”和“0”正好与逻辑命题的两个值“是”和“否”或“真”和“假”相对应,为计算机实现逻辑运算和程序中的逻辑判断提供了便利的条件。(https://www.daowen.com)

二进制数的进位规则是“逢二进一”,基数N=2,每位数码的取值只能是0或1,每位的权是2的幂,采用逢二进一的原则计数。

【例2】将二进制数(10110.11)2转换成十进制数。

图示

由于二进制数书写冗长、易错、难记,而且十进制数与二进制数之间的转换过程复杂,所以一般用十六进制数或八进制数作为二进制数的缩写。

③八进制(octal)记数法。八进制数的进位规则是“逢八进一”,其基数N=8,采用的数码是0、1、2、3、4、5、6、7,每位的权是8的幂。

【例3】将八进制数(376.4)8转换成十进制数。

图示

④十六进制(hexadecimal)记数法。十六进制数采用的16个数码为0、1、2、…、9、A、B、C、D、E、F。符号A~F分别代表十进制数的10~15。进位规则是“逢十六进一”,基数N=16,每位的权是16的幂。

【例4】将十六进制数(3AB.11)16转换成十进制数。

图示

(2)几种常见进制数之间的转换

①任意进制转换为十进制数。将不同进制表示的数按权展开,再按十进制把各项数值相加,就可以转换为十进制数。前面章节已经阐明,这里不再赘述。

②十进制数转换为任意J进制数。将整数部分和小数部分分别转换。整数部分的转换:除J取余法。用J除后取余,逆序排列(第一个余数为最低位)。小数部分的转换:乘J取整法。用J乘后取整,顺序排列(第一个整数为最高位)。最后将两部分合在一起得转换结果。

【例5】将(123.687 5)10转换为二进制数。

图示

所以,(123.687 5)10=(1111011.1011)2。

【例6】将(3 952)10转换为十六进制数。

整数部分:

图示

所以,(3 952)10=(F70)16。

利用上述方法可以将十进制数转化为任意进制数,如常用的八进制和十六进制,但是由于除以这些数比较麻烦,所以通常利用二进制做中间转换,因为二进制转换为八进制和十六进制比较容易。

③二进制与八进制数之间的转换。因为23=8,即3位二进制数恰好对应1位八进制数。所以,要将二进制数转换为八进制数,从二进制数的小数点开始分别向左、向右两个方向,将二进制数按每3位一组分组,不足以零补足,然后写出每一组等值的八进制数。

【例7】求(10101011.1011)2的等值八进制数。

二进制:010 101 011. 101 100

八进制:2 5 3.5 4

所以,(10101011.1011)2=(253.54)8。

要将八进制数转换为二进制数,可将每位八进制数写成对应的3位二进制数。

【说明】分好组后,可以不通过查表1-1即可得到每一组所对应的八进制数。方法:421法则。该题可以这样做:010对应的八进制数为0×4+1×2+0×1=2;101对应的八进制数为1×4+0×2+1×1=5;011对应的八进制数为0×4+1×2+1×1=3;100对应的八进制数为1×4+0×2+0×1=4。

表1-1 常用的几种进位计数制对照表

图示

④二进制数与十六进制数之间的转换。因为24=16,即4位二进制数恰好对应1位十六进制数。所以,要将二进制数转换为十六进制数,从二进制数的小数点开始向两个方向以4位二进制数字分组,不足以零补足,用它的十六进制等值代替这样的组。

【例8】将(110101011.10111)2转换为十六进制数。

二进制:0001 1010 1011. 1011 1000

十六进制:1 A B.B 8所以,(110101011.10111)2=(1AB.B8)16。

要将十六进制数转换为二进制数,可将每位十六进制数写成对应的4位二进制数。

同理,分好组后,也可以不通过查表得到每一组所对应的十六进制数。方法如下:8421法则。该题可以这样做:0001对应的十进制数为0×8+0×4+0×2+1×1=1;1010对应的十进制数为1×8+0×4+1×2+0×1=10,即数码A;1011对应的十进制数为1×8+0×4+1×2+1×1=11,即数码B;1000对应的十进制数为1×8+0×4+0×2+0×1=8。

↑上一章 ↓下一章
关注公众号获取验证码
复制内容需要验证码(7.99元/天)