了解计算机中的数制与字符编码.docx

上传人:b****7 文档编号:25557955 上传时间:2023-06-09 格式:DOCX 页数:12 大小:23.38KB
下载 相关 举报
了解计算机中的数制与字符编码.docx_第1页
第1页 / 共12页
了解计算机中的数制与字符编码.docx_第2页
第2页 / 共12页
了解计算机中的数制与字符编码.docx_第3页
第3页 / 共12页
了解计算机中的数制与字符编码.docx_第4页
第4页 / 共12页
了解计算机中的数制与字符编码.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

了解计算机中的数制与字符编码.docx

《了解计算机中的数制与字符编码.docx》由会员分享,可在线阅读,更多相关《了解计算机中的数制与字符编码.docx(12页珍藏版)》请在冰豆网上搜索。

了解计算机中的数制与字符编码.docx

了解计算机中的数制与字符编码

任务二了解计算机中的数制与字符编码

这节课我们完成第二个任务——了解计算机中的数制与字符编码

虽然计算机能极快地进行运算,但其内部并不像人类在实际生活中使用的十进制,而是使用只包含0和1两个数值的二进制。

人们输入计算机的十进制被操作系统转换成二进制进行计算,计算后的结果又由二进制转换为十进制输出。

计算机为什么采用二进制呢?

因为二进制运算规则简单,与十进制数相比,二进制数的运算规则要简单得多,这不仅可以使运算器的结构得到简化,而且有利于提高运算速度,技术上也很容易实现。

另外二进制符合逻辑运算的真和假,并且易于进行转换,所以计算机采用二进制是最方便的。

要理解二进制,我们先要了解几个相关知识:

数制、数制的转换、字符编码。

一、计算机中的数制

数制也称进制,是用一组固定的符号和统一的规则来表示数值的方法。

生活中其实很多地方的计数方法都多少有点不同进制的影子。

比如我们最常用的10进制,其实起源于人有10个指头,远古以前的人都用手指来计数。

如果我们的祖先始终没有摆脱手脚不分的境况,那么我们现在一定是在使用20进制。

不同的进制,生活中还有:

七进制,比如星期。

十二进制,比如“一打”,六十进制,比如分钟……

计算机中通常采用的数制有十进制、二进制、八进制和十六进制。

在计算机中,文字、数字、声音、图形图像,视频以及动画等数据都是以二进制形式进行存储的。

学习数制,必须首先掌握数码、基数、数位和位权这几个概念。

1、数码:

也称数符,是数制中表示基本数值大小的不同数字符号。

比如:

十进制有10个数码:

0、1、2、3、4、5、6、7、8、9;

二进制有2个数码:

0和1;

八进制有八个数码:

0、1、2、3、4、5、6、7;

十六进制有16个数码:

0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F。

2、基数:

基数就是数制所使用数码的个数。

一般而言,r进制数的基数为r,可供选用的计数符号有r个,分别为0~r-1,每个数位计满r就向其高位进1,即“逢r进一”。

(十六进制与10进制的对应关系是:

0-9对应0-9;A-F对应10-15。

3、数位:

数码在数中的位置。

对于N进制数,各数字符号所处位置的数位计法为:

我们以十进制数1234.56为例,以小数点为基准,整数部分自右向左依次为0、1…递增,小数部分自左向右依次为-1、-2…递减。

例如十进制数:

1234.56

1234.56

千百十个十百

位位位位分分

位位

数位3210-1-2

4、位权:

“位权”又简称“权”,是指数制中某一位上的1所

表示数值的大小。

例如如十进制第2位的位权为10,第3位的位权为100;而二进制第2位的位权为2,第3位的位权为4。

某一位位权的大小具体计算方法为:

以基数为底,数字符号所处位置的数位为指数的整数次幂。

不同的进位制,处于同一数位上的位权是不同的,虽然数位相同,但是基数不同,所以整数次幂也不相同。

数码所表示的数值等于该数码它所在数位的位权。

二、进制的转换

虽然不同进制数之间的转换过程是计算机自动完成的,但我们仍有必要了解不同进制数之间的转换方法:

1、将r进制转换为十进制

方法是:

将r进制按权位展开,然后各项相加,就得到相应的十进制数。

例如:

二进制数转换为十进制数:

(11011001)2=1×27+1×26+1×24+1×23+1×20=21710

(10010.011)2=1×24+1×21+1×2-2+1×2-3=18.37510

八进制数转换为十进制数:

(37)8=3×81+7×80=3110

(22.3)8=2×81+2×80+3×8-1=(18.375)10

十六进制数转换为十进制数:

(A7)16=10×161+7×160=16710

(32CF.4B)16=3×163+2×162+C×161+F×160+4×16-1+B×16-2

=3×163+2×162+12×161+15×160+4×16-1+11×16-2

=(13007.292969)10

2、将十进制转换为r进制

对具有整数和小数两部分的十进制数,要将其整数部分和小

数部分分别进行转换,然后用小数点连接起来。

我们先以十进制数转换为二进制数举例,来详细说明具体转

换方法:

1十进制整数转换为二进制整数采用“除r取余,逆序排列”

法。

具体做法是:

用2去除十进制整数,可以得到一个商和余数;再用2去除商,又会得到一个商和余数,如此进行,直到商为0时为止,然后把所得到的余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来,就是相应的r进制数。

例如:

(302)10=(100101110)2

302÷2=151余0

151÷2=75余1

75÷2=37余1

37÷2=18余1

18÷2=9余0

9÷2=4余1

4÷2=2余0

2÷2=1余0

1÷2=0余1(1=0x2+1)

然后把余数按逆位排列,就得到二进制数100101110

⑵、十进制小数转换成二进制小数采用“乘r取整,顺序排列”法。

具体做法是:

用2乘十进制小数,可以得到积,将积的整数部分取出,再用2乘余下的小数部分,又得到一个积,再将积的整数部分取出,如此进行,直到积中的纯小数部分为0,或者达到所要求的精度为止。

然后把取出的整数部分按顺序排列起来,先取的整数作为二进制小数的高位有效位,后取的整数作为低位有效位。

例如:

(0.3125)10=(0.0101)2

0.3125×2=0.6250

0.625×2=1.251

0.25×2=0.50

0.5×2=1.01

然后把有效位按顺序排列,就得到二进制数0.0101。

对于十进制数转换为八进制数或十六进制数,方法与十进制数转换为二进制数相同,十进制整数转换为r进制整数采用“除r取余,逆序排列”法。

十进制小数转换成r进制小数采用“乘r取整,顺序排列”法。

3、二进制与八进制/十六进制的转换

二进制与八进制/十六进制的转换相对来说就比较简单了。

由于二进制、八进制、十六进制之间存在特殊的关系:

81=23,161=24,也就是说,1位八进制数相当于3位二进制数,1位十六进制数相当于4位二进制数,因此转换比较容易,把一位八进制数用三位二进制数表示,把一位十六进制数用四位二进制数表示,可以对照进制转换表进行转换即可。

●二进制与八进制数之间的转换:

是以小数点为界,分别向左右每三位二进制数合成一位八进制数,或每一位八进制数展成三位二进制数,不足三位者补0。

例如:

(10101011.110101)2=(253.65)8

(010101011.110101)2

(253.65)8

●二进制数与十六进制数之间转换:

是以小数点为界,分别向左右每四位二进制合成一位十六进制数,或每一位十六进制数展成四位二进制数,不足四位者补0。

例如:

(10101011.110101)2=(AB.D4)16

(10101011.11010100)2

(AB.D4)16

●八进制数或十六进制数转换为二进制数:

是把一位八进制数用三位二进制数表示,把一位十六进制数用四位二进制数表示。

例如:

将(22.34)8转换为二进制数。

   2 2.3 4

(010)(010).(011)(100)

(22.34)8=(10010.0111)2

●八进制与十六进制没有直接转换的方法,需要通过转换成十进制或二进制来完成,通过转换成十进制的方法比较繁琐,而通过转换成二进制的方法更简单一些。

现在我们掌握了各数制之间的转换方法。

除此之外,我们还可以借助计算机里的计算器更轻松的直接进行数制之间的转换,具体操作步骤为:

点开桌面左下角的“开始”菜单,点击“所有程序”按钮,然后打开“附件”里的“计算器”。

在打开的“计算器”窗口中,选择左上角“查看”按钮,在弹出的下拉菜单中选择“程序员”和“基本”两个选项,然后我们就可以进行数制转换的计算了。

不过,计算机自带的计算器是不支持小数之间的转换的。

遇到有小数的情况,还是只能通过我们以上学到的方法来进行转换。

总结:

几进制的基数就是几。

权是基数的N次方,每位的权

是基数的位数-1的次方。

任意进制的数转换为十进制数的方法为:

按权展开求和。

十进制数转换为其他进制数的方法为:

整数部分除基取余,小数部分乘基取整。

三、字符编码

计算机内部采用二进制的方式计数。

为了把非二进制形式的数值数据和非数值数据(如文字、图片等)转换为二进制数,以便在计算机中进行存储和处理,需要在计算机内采用统一的编码标准;处理结束后,还需要把处理后的信息转换成可视信息显示出来,这就是编码的由来。

1、ASCII码

字符是计算机中使用最多的信息形式之一,在计算机中要为每个字符指定一个确定的二进制编码,作为识别与使用这些字符的依据。

字符编码就是规定用二进制数表示文字和符号的方法。

在西文领域,目前普遍采用的字符编码是美国标准信息交换代码,简称为ASCII码。

有七位版本和八位版本两种。

七位版本由7位二进制数编码组成,有128种不同的组合,用以表示128个不同的字符或功能符号,它由一个4位组和一个3位组构成,最高位是0。

八位版本是由八位二进制数编码组成,有256种不同的组合,用以表示256种不同的字符或功能符号,它由两个4位组构成,最高位是1。

目前国际上通用的且使用最广泛的字符有:

十进制数字符号0-9,大小写的英文字母,各种运算符,标点符号等,这些需要编码的字符个数不超过128个,因此,用七位二进制数就可以对这些字符进行编码。

七位ASCII码也被称为标准ASCII码,具有如下特征:

2ASCII码是唯一的,不可能出现两个字符的ASCII码值一样。

3常用字符有128个,编码是从0-127。

其中:

数字0-31与127分配给了控制字符,共有33个,用于控制像打印机等一些外围设备。

数字32-126分配给了能在键盘上找到的字符,当您查看或打印文档时就会出现。

这类普通字符有95个(包括10个阿拉伯数字、52个英文大小写字母、33个标点符号和运算符)。

4每个字符占一个字节、7位,最高位为0。

5ASCII码的大小规则是:

0-9<A-Z<a-z。

数字比字母小;数字按0-9的顺序递增;字母按A到Z顺序递增;同一个字母的大写字母要比小写字母小32。

除此之外,为了满足对更多字符的需求,还规定了扩展的ASCII字符。

扩展的ASCII包含ASCII中已有的128个字符,又增加了128个字符,总共是256个,这就是八位版本的ASCII码。

•练习:

–数字字符“5”的ASCII码的十进制表示为(A)。

•A)53B)51C)55D)54

–按对应的ASCII码值来比较(B)。

•A)“A”比“B”大B)“f”比“H”大

•C)“X”比“Z”大D)空格比逗号大

2、汉字编码

目前,汉字输入计算机有三种主要途经:

1、机器自动识别汉字:

计算机通过“视觉”装置,用光电扫描等方法识别汉字。

2、通过语音识别输入:

计算机利用“听觉”装置,自动辨别汉字语音要素。

从不同的音节中找出不同的汉字,或从相同音节中判断出不同的汉字。

3、通过汉字编码输入:

根据一定的编码方法,借助输入设备将汉字输入计算机。

机器自动识别汉字和汉语语音识别,使用起来难度较大。

在现阶段,比较容易的是通过汉字编码方法使汉字进入计算机。

汉字编码是为汉字设计的一种便于输入计算机中的代码。

计算机中汉字的表示也是用二进制编码,计算机对汉字信息的处理过程实际上是各种汉字编码间的转换过程。

根据应用目的不同,汉字编码分为外码、交换码、机内码和字形码。

1、汉字外码:

外码也叫输入码。

是用来将汉字输入到计算机中的一组键盘符号。

输入码种类较多,同一个汉字,不同的输入法,它的输入码是不同的。

选择不同的输入码方案,则输入的方法及按键次数、输入速度均有所不同。

综合起来,汉字输入码可分为流水码、拼音类输入法、拼形类输入法和音形结合类输入法几大类。

目前常用输入码有拼音码、五笔字型码、自然码、表形码、认知码、区位码和电报码等。

一种好的输入码应具有编码规则简单、易学好记、操作方便、重码率低、输入速度快等优点,用户可根据自己的需要进行选择。

在后面的项目中,我们将学习使用拼音码输入汉字的方法。

2、汉字交换码:

交换码也称为国标码。

交换码是指不同的具有汉

字处理功能的计算机系统之间在交换汉字信息时所使用的代码标准。

它是为方便在各种系统、设备之间进行信息交换而制定的。

计算机只能识别二进制编码,故所有的汉字都得转成二进制编码形式,于是需要采用信息交换码。

中国标准总局1981年制定了中华人民共和国国家标准《信息交换用汉字编码字符集--基本集》,简称GB2312--80,所以也称为国标码。

国标码中包括了6763个汉字,按其使用频度分为一级汉字3755个和二级汉字3008个。

一级汉字按拼音排序,二级汉字按部首排序。

此外,该标准还包括标点符号、数种西文字母、图形、数码等符号682个。

国标码合计7445个。

3、汉字机内码:

计算机系统中用来表示中文或西文信息的代码称为机内码,前面所说的ASCII码就是一种西文机内码。

而汉字机内码则是计算机内部存储、处理汉字的代码。

根据国标码的规定,每一个汉字都有了确定的二进制代码,但是这个代码在计算机内部处理时会与ASCII码发生冲突,为解决这个问题,把国标码的每一个字节的首位上加1,换算成机内码。

由于ASCII码只用7位,所以,这个首位上的“1”就可以作为识别汉字代码的标志,计算机在处理到首位是“1”的代码时把它理解为是汉字的信息,在处理到首位是“0”的代码时把它理解为是ASCII码。

这样既解决了汉字机内码与ASCII码之间的二义性,又使汉字机内码与国标码具有极简单的对应关系,简而言之,汉字机内码就是为了区分ASCII码而又能和国标码统一的一种编码。

可以将机内码看作是国标码的变形。

它们的区别就是每个字节的最高位是否为1。

机内码与国际码之间的换算关系为:

机内码=国际码+8080H,H为十六进制数标志,所以计算时用十六进制运算规则。

⑷、汉字字形码:

汉字字型码又称汉字字模,是汉字的输出码,用于汉字在显示屏或打印机输出。

汉字字型码通常有两种表示方式:

点阵和矢量表示方法。

用点阵表示字型时,汉字字型码指的是这个汉字字型点阵的代码。

点阵字体是把每一个字符都分成16×16或24×24个点,然后用每个点的虚实来表示字符的轮廓。

根据输出汉字的要求不同,点阵的多少也不同。

简易型汉字为16*16点阵,提高型汉字为24*24点阵,32*32点阵,48*48点阵等等。

点阵中的点称为“像素”(Pixel);点阵规模的大小称为图像的“分辨率”。

分辨率越大,字型越清晰美观,所占存储空间也愈大。

点阵字体优点是显示速度快,不像矢量字体需要计算;其最大的缺点是不能放大,一旦放大后就会发现文字边缘的锯齿。

矢量表示方式存储的是描述汉字字型的轮廓特征,矢量字库保存的是对每一个汉字的描述信息,比如一个笔划的起始、终止坐标,半径、弧度等等。

当要输出汉字时,通过计算机的计算,由汉字字型描述生成所需大小和形状的汉字点阵。

在显示、打印这一类字库时,要经过一系列的数学运算才能输出结果,但是这一类字库保存的汉字理论上可以被无限地放大,与分辨率无关,因此可以产生高质量的汉字输出。

总结:

ASCII码是七位的二进制编码,但是表示时需要补足8位,在最高位一个0。

ASCII表示一些常见的字符。

GB2312(国标码或交换码)每个汉字用两个字节的二进制编码,最高位为0。

GB2312是表示中文字符的编码,包含了所有的ASCII字符。

机内码最高位为1,以和ASCII码相区别。

四、补充知识:

下面我们来了解几个名词:

位、字节、字和字长。

1、位(bit)

即数位,来自英文bit,音译为“比特”,用英文小写字母b表示,代表二进制位,是计算机中最小的数据单位。

11010100是一个8位二进制数。

一个二进制位只可以表示0和1两种状态;两个二进制位可以表示00、01、10、11四种状态;三位二进制数可表示八种状态……。

2、字节(Byte)

字节来自英文Byte,音译为“拜特”,习惯上用大写的“B”表示。

字节是计算机中用来表示存储空间大小的最基本的容量单位。

字节比字小,是构成字的单位。

在计算机中,通常用多少字节来表示存储器的存储容量。

计算机中以字节为单位存储和解释信息,规定一个字节由八个二进制位构成,即1个字节等于8个比特(1Byte=8bit)。

八位二进制数最小为00000000,最大为11111111;通常1个字节可以存入一个ASCII码,2个字节可以存放一个汉字国标码。

存储空间容量的单位除用字节(Byte,简记为B)表示外,还可以用千字节(KB)、兆字节(MB)及十亿字节(GB)等表示。

1KB=210B=1024B

1MB=210KB=1024KB=220B

1GB=210MB=1024MB=230B

1TB=1024GB=240B

3、字

计算机一次能作为一个整体处理的最大一组二进制位,称为计算机的一个“字”,简称字。

字是计算机进行数据处理时,一次存取、加工和传送的数据长度。

字由若干字节构成(一般为字节的整数倍)。

在存储器中,通常每个单元存储一个字。

在计算机的运算器、控制器中,通常都是以字为单位进行传送的。

宇出现在不同的地址其含义是不相同的。

例如,送往控制器去的字是指令,而送往运算器去的字就是一个数。

4、字长

计算机的每个字所包含的位数称为字长。

例如286微机的字由2个字节组成,它的字长为16位;486微机的字由4个字节组成,它的字长为32位。

计算机处理数据的速率,自然和它一次能加工的位数以及进行运算的快慢有关。

计算机的字长决定了其CPU一次操作处理实际位数的多少,由此可见计算机的字长越大,其性能越优越。

  一般地,大型计算机的字长为32―64位,而微型计算机为4―16位。

字长是衡量计算机性能的一个重要因素。

 

总结:

位是最小的数据单位,字节是最基本的容量单位,是存储系统的最小存取单位。

字是计算机一次能处理的二进制位。

一个字的位数就是字长。

1位=1个二进制数;

1个字节=8位;

16位的处理器1个字=2个字节,32位的处理器1个字=4个字节;

字长就是共有多少字节。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 历史学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1