1.2 计算机中信息的表示与存储
1.2.1数据和信息
1.数据的定义:国际标准化组织(ISO)对数据所下的定义是:“数据是对事实、概念或指令的一种特殊表达形式,这种特殊表达形式可以用人工的方式或者用自动化的装置进行通信、翻译转换或者进行加工处理。”由此可知,数字、文字、图画、声音、活动图像等对人而言都可以认为是数据
2.数据的类型:计算机内部把数据分为数值型数据和非数值型数据,数值型数据指日常生活中可以表示数值大小的数据,可进行数学运算;而文字、图画、声音等数据一般不进行数学运算,更多的是用于排序、比较、转换、检索等处理,称它们为非数值型数据。
3.信息的定义:信息是指对人有用的数据,这些数据将可能影响到人们的行为与决策。
4.数据和信息的区别:数据是对客观存在的事实、概念或指令的一种可供加工处理的特殊表达形式,而信息强调是对人有用的数据。计算机信息处理实质上就是由计算机进行数据处理的过程,即通过数据的采集,有效地把数据输人到计算机中,由计算机系统对数据进行相应的转换、合并、加工、分类、计算、统计、汇总、存储、建库、传送等操作,经过对数据的处理,向人们提供有用的信息,这个过程就是信息处理。
1.2.2数制基础
日常生活中我们用十进制表示一个数据,但制造有十种状态的元器件异常困难,而制造有两种状态的元器件则最简单。二进制仅有两个数字符号即“O”和“1”,特别适合于用电子元件来表示,而且O和1正好代表逻辑代数中的“假”和“真”,可用逻辑代数作为工具来分析和设计计算机中的逻辑电路,使得逻辑代数成为计算机设计的数学基础。
1.十进制——D(Decimal)
十进制的数码有:0、l、2、3、4、5、6、7、8、9共十个,进位规则为逢十进一,借一当十。用字母D(Decimal)表示十进制。
2.二进制 ----B(Binary)
二进制数码只有O和1两个,进位规则为逢二进一,借一当二。用字母B(Binary)表示二进制数。
3.八进制——O(Octal)
八进制数码有O、1、2、3、4、5、6、7,进位规则为逢八进一,借一当八。用字母O表示八进制数。
4.十六进制——H(Hexadecimal)
计算机中信息表示采用二进制,但由7:--进制位数太长,不便于记忆,因此我们用十六进制形式来表示计算机中的信息。十六进制数码有O、1、2、3、4、5、6、7、8、9、A、
B、C、D、E、F,进位规则为逢十六进一,借一当十六。用字母H表示十六进制数。
5.十进制数转换为二进制数
(1)十进制整数转换为二进制整数——除2取余法
(2)十进制小数转换为二进制小数——乘2取整法
一个十进制数转换为二进制数,整数部分转换为二进制整数,小数部分转换为二进制小数,如105.6875D=1101001.1011 B。
6.二、八、十六进制数相互转换
(1)二进制数与八进制数相互转换
3位二进制数对应1位八进制数,二进制数转换为八进制数,方法是:从二进制小数点开始向左右两边,每3位划分为一组,不足3位添O。
八进制数转换为二进制数更简单,1个八进制位对应3个二进制位,只需按位展开即可。
(2)二进制数与十六进制数相互转换
4位二进制数对应l位十六进制数。二进制数转换为十六进制数,方法是:从二进制数小数点开始向左右两边,每4位划分为一组,不足4位添O。
1.2.3西文字符编码
1.计算机中的信息都是用二进制编码表示的,用来表示字符的二进制编码称为字符编码。计算机中常用的字符编码有EBCDIC码(Extended Binary Coded Decimal Interchange Code),主要是IBM大型计算机采用。
2.微机采用ACSII码(American Standard Code for Information Interchange),即美国标准信息交换码,并被国际化标准组织指定为国际标准, ASCII码用8位二进制数表示,最高位为O,因此其编码范围是00000000一Oll1111-1,即O一127,共有128个不同的编码值。一个编码代表一个字符,如01000001表示字符“A”,因此128个编码对应128个字符,这些字符包括26个大写字母,26个小写字母,O~9共lO个数字,键盘上的“+”、“一”、“/"等字符,以及34个控制字符,我们统称为字符。每个字符都对应一个ASCII码;反之,在计算机内每个ASCII码也代表一个字符。计算机内用1个字节存放ASCII码。
需要注意的是,十进制字符的ASCII码与它们的二进制数值是不一样的。例如,十进制数7的七位二进制数是000001 11,而它的ASCII码是37H即01lOll l,数值7与数字字符“7”在计算机中的表示是不同的。数值7表示数的大小,并参与数值运算。而数字字符“7”只是一个符号,不能参与数值运算。
1.2.4汉字编码
英文字符在计算机内用ASCII码表示,占用1个字节。计算机处理汉字同样也需要对每个汉字进行编码。我们从键盘上输人汉字可用全拼、智能ABC、五笔字型等汉字输入法,汉字处理系统对每种汉字输入法规定了汉字输入计算机的代码,称为输入码,从键盘上输入汉字时输入的是汉字的输入码。计算机识别汉字时要把输人码转换为机内码以便进行处理和存储。我们在显示器里看见的汉字实际上是一种汉字点阵形式,为了将汉字以点阵的形式输出,计算机还要将机内码转换为汉字的字形码,确定汉字的点阵,并且在计算机和其他 系统或设备需要信息、数据交换时还必须采用交换码。
1.汉字输入码
有7000个左右的常用汉字,每个汉字由键盘输入,键盘输入的是汉字的输入码,每个汉字对应一个输入码。目前,常用的汉字输入方法有全拼输入法、智能ABC输入法和五笔字 型等,用不同汉字输入法输入同一个汉字,其输入码是不同的。例如,“王”字的全拼输入码是“wang”,而五笔字型的输入码是“ggg”。这种不同的输入码通过输入字典转换统一为标准的国标码。
2.汉字信息交换码
汉字信息交换码是用于汉字信息处理系统之间或者与通信系统之间进行信息交换的汉字代码。
(1)我国于1981年颁布了国家标准《信息交换用汉字编码字符集一基本集》,它收录了6763个汉字和682个非汉字图形字符编码共7 445个,分为二级汉字。一级常用字3755个,按汉字的拼音顺序排列;二级次常用字3008个,按部首顺序排列。国标GB2312-80中的每个图形字符的汉字交换码均用两个字节表示,每个字节为七位二进制码。
GB2312-80信息交换码表排成一张94×94的图形符号代码表。通常将表中的行称为区,列称为位,表中任何一个字符的位置可由区号和位号唯一确定。GB2312-80中每个图形字符的区位码用两个字节表示,每个字节用七位二进制位编码。以第一字节表示行,第二字节表示列,这就是国标区位码,简称区位码。
一个汉字的区位码由4个数字组成,可以通过查表的方法得到每个汉字的区位码,如 “啊”的区位码是1601,即位于表中第16区、第Ol位,其对应的二进制编码第一字节是 00010000,第二字节是0000000l。
(2)1990年我国颁布了GBl2345-90,该国标码包括717个图形符号和6866个汉字,除新增的35个图形符号和103个汉字外,图形符号等同于GB2312-80。为和IS010646.1国际接轨,我国公布了GBl3000.1《CJK统一汉字编码字符集》,该字符集有65536个码位空间,定义了几乎所有国家和地区的语言文字和符号,包含了来自中国、日本、韩国的汉字,该汉字集称为CJK(Chinese Japanese Korean),CJK是GB2312-80、GBl2345-90和BIG5的超集。
(3)国标码:是信息交换码的十六进制表示形式,它是机内码的基础。国标码与区位码关系为国标码=区位码+2020H
3.汉字机内码
汉字机内码是在计算机内部对汉字进行存储、处理的汉字代码,汉字输入到计算机后,都要转换为机内码,才能进行各种处理。机内码是汉字系统中用来存储西文或中文信息的代码,以二进制形式表示一个西文或中文,每个西文的机内码用ASCII码表示,由于ASCII码最高位为O,用机内码表示汉字时,为了和ASCII码区别,表示一个汉字的机内码是将该汉字的国标码的2个字节的最高位都置为1。汉字机内码、国标码和区位码之间的转换关系是:机内码=国标码+8080H=区位码+AOAOH
4.汉字输出码
汉字输出码又称为汉字字形码,其作用是输出汉字。汉字机内码不能直接作为每个汉字输出的字形信息,还需根据汉字机内码在字形库中检索出相应汉字的字形信息后才能由输出设备输出。对汉字字形经过点阵数字化后的一串二进制数称为汉字输出码。
(1)字字形点阵 :汉字是方块字,将方块等分成n行n列的格子,称为汉字字形点阵。点阵中的点对应存储器中的一位。在点阵中笔画所到的格子点为黑点,用二进制数1表示;否则为白点,用二进制数O表示。汉字点阵有16×16、24×24、32×32等,每一个点用一个二进制位表示,因此16×16点阵的汉字需要用16×16/8=32个字节存储。同理,24×24点阵的汉字需要用24×24/8=72个字节存储。点阵中行、列越多,字形质量就越好,但存储汉字字形码所占用的存储容量就越多。
(2)汉字字库:汉字字形数字化后,以二进制文件形式存储在存储器中,构成汉字字模库,也称为汉字字形库,简称汉字字库。为满足不同需要,出现了很多字库,如宋体、仿宋体、楷体、黑体、简体字库和繁体字库等。
(3)汉字显示:从键盘上输入汉字的编码,首先经过代码转换程序将其转换为机内码,保存在主存储器中。转换时要根据输入码到码表中检索机内码,得到两个字节的机内码,在主机内由字形检索程序在汉字字模中查出该汉字的字形码,送显示器输出。
四、本节小结:
本节主要讲授计算机中信息的表示。
五、布置作业:
1.计算机中的信息均是以___________形式表示.
2.(80.46)D=( )B=( )O=( )H
3.(74.23)0=( )D=( )H
4.字符的二进制编码通常采用_________码,汉字在计算机中采用________码表示,汉字在信息处理系统或通信系统之间转换采用__________,其标准主要有_______、________和_______.
5.汉字在显示缓冲区的输出采用________码,它是根据________码在_______中检索得出.