当前位置:首页 > 初赛 > 正文内容

信息学奥赛知识点(六)----信息编码

亿万年的星光4年前 (2021-01-28)初赛2661
一、基本概念

1.编码

计算机要处理的数据除了数值数据以外,还有各类符号、图形、图像和声音等非数值数据。而计算机只能识别两个数字。要使计算机能处理这些信息,首先必须将各类信息转换成0和1表示的代码,这一过程称为编码。

2.数据

    能被计算机接受和处理的符号的集合都称为数据。

3.比特

比特(Bit,二进制数位)是指1位二进制的数码(即0或1).比特是计算机中表示信息的数据编码的最小单位。

4.字节

字节表示被处理的一组连续的二进制数字。通常用8位二进制数字表示一个字节,即一个字节有8个比特组成。  1Byte= 8bit
字节是存储系统的最小存取单位

二、字符表示

字符是人与计算机之间交互过程中不可缺少的重要信息。要使计算机能处理、存储字符信息,首先必须用二进制0和1代码对字符进行编码。



三、ASCII码

ASCII 码对英语字符与二进制位之间的关系,做了统一规定。

ASCII码是由美国国家标准委员会制定的一种包括数字、字母、通用符号和控制符号在内的字符编码集,称为美国国家信息交换标准码(American Standard Code for Information Interchange)。ASCII码是一种7位二进制编码,能表示27=128种国际上最通用的西文字符。是目前计算机中,特别是微型计算机中使用最普遍的字符编码集。



“0”  —–48

“A”  —–65

“a”  —–97

ASCII 编码包括4类最常用的字符。

  • 数字“0”~“9” 。ASCII编码的值分别为0110000 B ~ 0111001 B,对应十六进制数为30H~39H。

  • 26个英文字母。大写字母”A”~”Z”的ASCII编码值为41H~5AH,小写字母“a”~“z”的ASCII编码值为61H和7AH。

  • 通用符号。如“+”  “-”  “=”  “*”  和 “/” 等32个。

  • 控制符号。 如空格符和回车符等共34个。

ASCII码是一种7位编码,它存储时必须占一个字节,即8位: b7、b6、b5、b4、b3、b2、b1、b0。其中,b7恒为0,其余几位为ASCII码。

       人们可以通过键盘输入和显示器显示不同的字符,但在计算机中,所有信息都是用二进制代码表示。n位二进制代码能表示2n个不同的字符,这些字符的不同组合就可以表示不同的信息。为使计算机使用的数据能共享和传递,必须对字符进行统一的编码。ASCII码是使用最广泛的一种编码。ASCII码由基本的ASCII码和扩充的ASCII码组成。在ASCII码中,把二进制位最高位为0的数字都称为基本的ASCII码。其范围是0~127;把二进制位最高位为1的数字都称为扩展的ASCII码,其范围是128~255。

补充:内码和外码

内码:对于计算机的文本文件,机器是存储其相应的字符的ASCII码(用一个ASCII码存储一个字符需8个二进制位,即一个字节,这些可被计算机内部进行存储和运算的数字代码称为内码。如输入字符“A” ,计算机将其转换成内码65后存于内存。

外码:计算机与人进行交换的字形符号称为外码,如字符“A”的外码是“A”。

       通常一个西文字符占一个字节(半角),一个中文字符占两个字节。


十进制十六进制图形
3220空格
49311
十进制十六进制图形
6541A
905AZ
十进制十六进制图形
9761a
1227Az


四、Unicode编码

世界上存在着多种编码方式,同一个二进制数字可以被解释成不同的符号。因此,要想打开一个文本文件,就必须知道它的编码方式,否则用错误的编码方式解读,就会出现乱码,因此Unicode应运而生。

Unicode,就像它的名字都表示的,这是一种所有符号的编码,将世界上所有的符号都纳入其中,每一个符号都给予一个独一无二的编码。

Unicode存在的问题:

Unicode 只是一个符号集,它只规定了符号的二进制代码,却没有规定这个二进制代码应该如何存储。 如果 Unicode 统一规定,每个符号用三个或四个字节表示,那么每个英文字母前都必然有二到三个字节是0,这对于存储来说是极大的浪费。

为了解决这个问题:就有了Unicode 三种实现:UTF8 UTF16 UTF32

UTF8可以方便的转换为UTF16和UTF32

UTF-8:,就是它是一种变长的编码方式。它可以使用1~4个字节表示一个符号,根据不同的符号而变化字节长度。

UTF-16:UTF-16 使用二或四个字节为每个字符编码(定长 一般情况下为2字节),因为对于绝大部分字符只使用2个字节就可以表示了。对于汉字而言,大部分汉字采用两个字节编码,少量不常用汉字采用四个字节编码。

UTF-32:UTF-32 使用四个字节为每个字符编码,使得 UTF-32 占用空间通常会是其它编码的二到四倍。UTF-32 与 UTF-16 一样有大尾序和小尾序之别,编码前会放置 U+0000FEFF 或 U+0000FFFE 以区分。

五、汉字信息编码

1. 汉字交换码

       汉字交换码是指不同的汉字处理功能的计算机系统之间在交换汉字信息时所使用的的代码标准。自国家标准GB-2312公布以来,我国一直延用该标准所规定的国标码作为统一的汉字信息交换码GB5007-85图形字符编码。

       GB2312-80标准包括了6763个汉字,按其使用频率分为一级汉字3755个和二级汉字3008个。一级汉字按拼音排序,二级汉字按部首排序。该标准还包括标点符号、数种西文字母、图形、数码等符号682个。

       区位码的区码和位码采用从01到94的十进制,国标码采用十六进制的21H到73H。区位码和国标码的换算关系是:区码和位码分别加上十进制32。如“国” 字在表中的25行90列,其区位码为2590。国标码是397AH。

2.字形存储码

       字形存储码是指供计算机输出汉字(显示或打印)用的二进制信息,也称子模。通常,采用的数字化点阵字模。

       一般的点阵规模有16*16、24*24等。每一个点在存储器中用一个二进制位(bit)存储。在16*16的点阵中,需8*32bit的存储空间,每8bit为1字节,所以,需32字节的存储空间。在相同点阵中,不管其笔画繁琐,每个汉字所长空间所占字节数相等。

       例如:在24*24点阵的字库中,汉字“一“ 与 “魏”的字模占用的字节数分别是( 72,72

       解析:24*24点阵的字模需要24*24个二进制来存储。每个字节有8个二进制位。所以汉字字模占用字节数24*24/8=72个字节。汉字 “一”和“魏”简繁不一样,但所需空间是一样的。

六、编码之间的关系




扫描二维码推送至手机访问。

版权声明:本文由青少年编程知识记录发布,如需转载请注明出处。

分享给朋友:

相关文章

信息学奥赛知识点(十一)----逻辑运算

一、介绍逻辑运算又称布尔运算。布尔用数学方法研究逻辑问题,成功地建立了逻辑演算。他用等式表示判断,把推理看作等式的变换。这种变换的有效性不依赖人们对符号的解释,只依赖于符号的组合规律 。二、...

信息学奥赛知识点(一)----计算机基础知识

信息学奥赛知识点(一)----计算机基础知识

1.计算机发展史年代代表原件第一代1946-1958电子管第二代1959-1964晶体管第三代1965-1970集成电路第四代1971—~大规模集成电路2.世界上第一台电子计算机时间:1946年2月地...

信息学奥赛知识点(三)----计算机软件系统

信息学奥赛知识点(三)----计算机软件系统

软件是计算机的灵魂,硬件为软件提供了运行平台,软件和硬件相互关联,两者之间相互转换,相互补充。计算机的软件系统分成系统软件和应用软件两大类。一、系统软件常见的操作系统:分为桌面操作系统、服务器操作系统...

信息学奥赛知识点(十二)----栈和队列

信息学奥赛知识点(十二)----栈和队列

一、栈栈是只能在某一端插入和删除的特殊线性表。用桶堆积物品,先堆进行的压在底下,随后一件一件往上堆。取走时,只能从上面一件一件取。堆和取都在顶部进行。底部一般是不动的。栈就是一种类似桶堆积物品的数据结...

NOIP2009年普及组初赛题目及答案解析

NOIP2009年普及组初赛题目及答案解析

一、单项选择题(共20题,每题1.5分,共计30分。每题有且仅有一个正确答案。)1、 关于图灵机下面的说法哪个是正确的:( D)A.图灵机是世界上最早的电子计算机。B.由于大量使用磁带操作,图灵机运行...

信息学奥赛知识点(七)----原码补码反码

一、数的原码、补码和反码1.机器数与真值在计算机中,表示数值的数字符号只有0和1两个数码,我们规定最高位为符号位,并用0表示正数符号,用1表示负数符号。这样,机器中的数值和符号全“数码化”了。为了简化...