第2讲计算机信息的数字化表示_第1页
第2讲计算机信息的数字化表示_第2页
第2讲计算机信息的数字化表示_第3页
第2讲计算机信息的数字化表示_第4页
第2讲计算机信息的数字化表示_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第2讲教学内容1.2计算机中的信息表示计算机中数的表示计算机中二进制数的表示方法二进制数的运算十进制和二进制间的转换八进制和十六进制符号及小数位的表示原码、反码、补码1.2计算机中数据的表示及编码一、信息和数据的概念有两类数据:1.数值数据:如+15、-17.6;2.非数值数据:如字母(A、B……)、符号(+、&……)、汉字,也叫字符数据。

存在计算机中信息都是采用二制编码形式二、计算机为什么采用二进制?由计算机电路所采用的器件所决定的。采用二进制的优点:运算简单、电路实现方便、成本低廉。进位计数制:十进制基数是10,数码(0,1,2,3,4,5,6,7,8,9),逢10进1【例1】1234.5可表示成:

1×1000+2×100+3×10+4×1+5×0.1=1×103+2×102+3×101+4×100+5×10-1式中每个数字符号的位置不同,它所代表的数值大小也不同,这就是经常所说的个位、十位、百位、千位、..的意思。由数的位置不同决定的值称为位值,或称“权”。按“权”展开式二进制数也是一种进位计数制,但它的基数是2。数中0和1的位置不同,它所代表的数值也不同。1.2.1数的进位制一、常用的各种进位制及表示1、二进制:数码0,1基2表示形式

B2、八进制:数码0,1,…,7基8表示形式

O3、十进制:数码0,1,…,9基10表示形式

D

4、十六进制:数码0,1,…,9,A,B,C,D,E,F

基16表示形式H

如:100111O,1011D,1011001BH,1011DH,1011B

(100111)B(780)D(1289ABC)H

二、不同进制之间的转换

1.r进制转化成十进制(乘权相加)

an...a1a0.a-1...a-m(r)

=a*rn+…+a*r1+a*r0+a*r-1+...a*r-m

10101(B)=1×24+0×23+1×22+0×21+1×20

=24+22+1=21 101.11(B)=22+1+2-1+2-2=5.75 101(O)=82+1=65 71(O)=7

8+1=57 101A(H)=163+16+10=41062.十进制转化成r进制

整数部分:除以r取余数,直到商为0,余数从右到左排列。小数部分:乘以r取整数,整数从左到右排列。例如,将一个十进制整数108.375转换为二进制整数。

108.375=1101100.011十进制整数转换成八进制整数的方法是:除8取余法。十进制整数转换成十六进制整数的方法是:除16取余法。例如,将十进数108转换为八进制整数和十六进制整数的演算过程分别如图1-2(a)和图1-2(b)所示。

3.二进制数与八进制数之间的转换

(1)二进制数转换成八进制数二进制数转换成八进制数的方法是:将二进制数从小数点开始,整数部分从右向左3位一组,小数部分从左向右3位一组,若不足三位用0补足即可。例如,将1100101110.1101B转换为八进制数的方法如下:

(2)八进制数转换成二进制数方法是:以小数点为界,向左或向右每一位八进制数用相应的三位二进制数取代,然后将其连在一起即可。若中间位不足3位在前面用0补足。例如,将3216.42转换为二进制数的方法如下:则:(3216.43)8=11010001110.100011B4.二进制数与十六进制数之间的转换(1)二进制数转换成十六进制数转换方法:从小数点开始,整数部分从右向左4位一组;小数部分从左向右4位一组,不足四位用0补足,每组对应一位十六进制数即可得到十六进制数。例如,将二进制数1101101110.110101B转换为十六进制数。1101101110.110101B=36E.D4H(2)十六进制数转换成二进制数方法是:以小数点为界,向左或向右每一位十六进制数用相应的四位二进制数取代,然后将其连在一起即可。36E.D4H=1101101110.110101B5.八进制数与十六进制数之间的相互转换八进制数与十六进制数之间的转换,一般通过二进制数作为桥梁,即先将八进制或十六进制数转换为二进制数,再将二进制数转换成十六进制数或八进制数。1.2.3数值数据在计算机内的表示

一、机器数与原码、补码和反码表示

1.机器数用“0”表示正数,“1”表示负数,其余位仍表示数值。把在机器内存的正、负号数字化的数称为机器数。

假设用8位(即1个字节)来存储数据,右图所示的是十进制数67和-61在计算机中的存储形式。

2.原码表示法

原码表示方法中,数值用绝对值表示,在数值的最左边用“0”和“1”分别表示正数和负数,书写成[X]原表示X的原码。

例如,当n=8,十进制数+19和-19的原码表示为:[+19]原=00010011,[-19]原=10010011从定义可以看出,在原码的表示中,有以下两个特点:(1)最高位为符号位,正数为0,负数为1,其余n-1位是X的绝对值的二进制表示。(2)0的原码有两种表示:[+0]原=00000000,[-0]原=10000000因此,原码表示法中,数值0不是唯一的。3.反码表示法

用[X]反表示X的反码。如果机器的字长为n,则反码的定义如下:

例如,当n=8,十进制数+19和-19的反码表示为:[+19]反=00010011[-19]反=11101100由此可以看出,在反码的表示中,有以下特点:(1)正数的反码与原码相同,负数的反码是其绝对值的二进制表示按各位取反(0变1,1变0)所得的表示。(2)0在反码表示中也有两种表示:[+0]反=00000000,[-0]反=11111111,即数值0不是唯一的。4.补码表示法用[X]补表示X的补码。设机器的字长为n,则补码的定义如下:

例如,当n=8,十进制数+19和-19的补码表示为:[+19]补=00010011[-19]补=11101101在补码的表示中,有以下特点:(1)正数的补码与原码、反码相同,负数的反码是其绝对值的二进制表示按各位取反(0变1,1变0)加1,即为其反码+1。(2)0在补码表示中:[+0]补=[-0]补=00000000,数值0是唯一的。由于补码运算方便,所以在计算机中广泛使用。如何将一个负数的二进制补码数转换成十进制数?将一个负数的补码数转换成十进制数的步骤如下:(1)首先将各位取反。(2)将其转换为十进制数,并在前加一负号(3)对所得到的数再减1,即得到该数的十进制数。例如:求补码11000011对应的十进制数,其步骤:取反:00111100;转换为十进制数,加负号得:-60,再减1,则为-61。二、定点数和浮点数

1.整数的表示——定点数

符号位数值部分.如果计算机用N位来表示一个带符号的整数M,可写成:M=NsNn-1Nn-2…N2N1N0Ns为符号位

M的取值范围:-2n≤M≤2n-1

2.实数的表示——浮点数

在计算机中一个浮点数由两部分构成:阶码和尾数,阶码是批数,尾数是纯小数。即可表示为:M=2P×S其中P是一个二进制整数,S是二进制小数,这里称P为数N的阶码,S称为数M的尾数,S表示了数M的全部有效数字,阶码P指明了小数点的位置。十进制和二进制间的转换十进制二进制十进制二进制十进制二进制0000060110121000170111132001081000143001191001154010010101050101111011常用的二进制与十进制对照表(记住)八进制数、十六进制数和十进制数之间的转换

可把二进制数作为媒介,先把待转换的数转换成二进制数,然后将二进制数转换成相应数制形式。不同进制数之间的转换二进制八进制十进制十六进制练习求(84.375)10=(?)2求(1110100)2=(?)10求(2DA.BE)16=(?)8设字长n=8,利用补码求16-51?练习答案求(84.375)10=(1010100.011)2(1110100)2=(64+32+16+4)10=(116)10求(2DA.BE)16=(0010

1101

1010.1011

1110)2 =(001011011010.101111100)2 =(1332.574)8[16-51]补=[16]补+[-51]补 =(00010000)2+(11001101)2 =(11011101)2=[-35]补

1.西文字符编码——ACSII码

每一个字符有一个编码。

ACSII码(American

Standard

Codefor

Information

Interchange)常用字符有128个,编码从0到127。空格 20H

32‘0’~‘9’ 30H~39H 48~57‘A’~‘Z’ 41H~5AH 65~90‘a’~‘z’ 61H~7AH 97~122

控制字符:0~32,127;普通字符:94个。每个字符占一个字节,用7位,最高位为0。1.2.4常见的信息编码

计算机中的信息编码计算机中常用的西(英)文符号包括:字母、数字、标点符号等,构成的集合称为西(英)文字符集(<90个)。每一字符在计算机中用一个二进制数(代码)与其对应。构成代码表

为使计算机使用的数据能共享和传递,必须对字符进行统一的编码,其中ASCII码(AmericanStandardCodeforInformationInterchange,美国信息交换标准代码)是使用最广泛的一种编码。ASCII码用一个字节(8位二进制数)来表示。最高位总为0,其余7位能表示字符范围是0~127个[共128个]1.西文字符编码包括10个十进制数(0~9),52个英文大写和小写字母(A~Z,a~z),32个通用控制字符,34个专用字符通过ASC码直接输入字符的方式:Alt键+字符asc码(小键盘)计算机中的信息编码BCD编码:用一组4位二进制编码表示一个十进制数字符号,又称为8421码。00000001001000110100010101100111‘0’‘1’‘2’‘3’‘4’‘5’‘6’‘7’10001001‘8’‘9’例如:’74’的BCD码是:011101003.汉字处理(1)汉字库(2)汉字信息处理

汉字处理方法包括汉字输入:通过汉字输入设备输入汉字外码,并通过其输入法程序把它转化为汉字机内码,存入存储器中;汉字信息加工处理:对汉字内码进行加工处理;汉字输出。

计算机中的信息编码汉字编码计算机中的处理汉字要解决哪些问题?汉字很多(一万多个)汉字表示、存储、交换?汉字输入汉字显示计算机中的信息编码汉字编码汉字编码之间的关系汉字输入码汉字交换码汉字机内码输入法字库存储通信交换码显示、打印汉字字型码汉字编码汉字交换码汉字交换码是指具有汉字处理功能的计算机系统之间在交换汉字信息时所使用的代码标准。1981年,发布汉字交换码第一个国家标准:《信息交换用汉字编码字符集·基本集》(代号GB2312-80),一般简称为国标码或GB码。字符集=6763个汉字+682个图形符号。6763个汉字=一级常用汉字3755个+二级次常用汉字3008个。其中一级汉字按拼音字母顺序排列,二级汉字按偏旁部首排列。汉字编码国标码目标:使字符集中每个汉字或中文全角符号能在国内有一个统一的唯一代码与其对应。作电子表格:128行、128列编码:记录所在的行和所在的列,编码采用二个字节,第一个字节表示行,第二个字节表示列。一般用4位的16进制数表示编码表示:“啊”-字符集中第48行、第33列,表示为3021H汉字编码汉字机内码汉字机内码——汉字输入到计算机中,用计算机中统一规定的代码表示。机内码用于汉字信息的存储、交换、检索等操作。能直接用国标码作为机内码吗?计算机只识别由0、1组成的代码,ASCII码是英文信息处理的标准编码——用一个字节表示,最高位置为0。“保”-3123H“1”–31H“#”-23H假如内存中出现两个字节31H和23H:这到底是一个汉字,还是两个西文字符“1”和“#”?0出现了二义性汉字编码汉字机内码国标码是汉字信息交换的标准编码,但因其前后字节的最高位为0,与ASCII码发生冲突,因此国标码不能在计算机内部直接使用。汉字的机内码需在国标码的基础上进行变换,其变换方法为:将国标码的两个字节的最高位由0改1,其余7位不变如:保”字的国标码为3123H,前字节为00110001B(高位改1)

10110001B;后字节为00100011B

10100011B即为B1A3H,因此,字的机内码就是B1A3H;相当于每个字节都加上128(即80H)3123H+8080H=B1A3H汉字编码机内码总结:英文字符的机内代码即是七位的ASCII码,用一个字节表示,最高位置为0。汉字机内码:为了与西文字符编码相区别,汉字机内采用两个字节编码,基于国标码变换,将国标码的两个字节最高位改为1。01100国标码汉字机内码ASCII码3.汉字交换码(其它编码标准)

UCS编码:通用多八位编码字符集(组、面、行、位四个字节组成)Unicode编码:将全世界最常用的文字符号放在UCS中的0组、0面。只需2个字节编码。GBK码:扩展汉字内码规范。基于UCS、兼容GB2312标准。BIG5编码:港台使用的繁体汉字的编码标准与大陆使用的国标码不同,上网时需切换汉字编码汉字输入码汉字的字数繁多,字形复杂,常用的汉字符号有7千个,比英文的26个字母要多得多。西文符号可以用标准键盘直接输入。汉字输入到计算机内是一个问题。为了能使用西文标准键盘进行汉字输入,必须为汉字设计相应的编码方法,编制软件实现输入。汉字输入码分类:数字编码拼音码字形编码输入码输入法程序编码表机内码交换码汉字输入码

⑴数字编码

数字编码就是用数字串代表一个汉字的输入,常用的是国标区位码。国标区位码将国家标准局公布的的6763个两级汉字分成94个区,每个区定为94位,实际上也是把汉字集合组织成二维表的形式区码和位码各用两位十进制数字表示,因此,输入一个汉字需要按键四次。例如,“中”字位于第54区48位,区位码为5448区位码表的排列是有规律的。在94个分区中,1—15区用来表示字母、数字、制表符和空白扩展区,16—55、55—87区分别为一级和二级汉字汉字输入码

区位码输入汉字必须确定汉字在码表中的位置(区码和位码),才能输入。数字编码输入的优点是无重码,而且输入码和内部编码的转换比较方便,但是每个编码都是等长的数字串,代码难以记忆。

例如:区位码表(部分)区码位码国标码、区位码之间的关系都是采用二维表格的形式对汉字编码区位码并不直接等于国标码汉字区位码与国标码有一个相对位置差,同一个汉字在区位码表中的行和列比国际码中行列均差32D。区位码是由国标码稍作转换得到,其转换方法为:16进制的国标码的第1个字节和第2个字节分别减少20H就得到十六进制的区码和位码。16进制的区位码+0X2020=国标码汉字编码国标码、机内码、区位码之间的关系(16进制表示,两字节独立)区位码+0X2020=国标码国标码+0X8080=机内码区位码+0XA0A0=机内码

机内码国标码区位码保:B1A3H-8080H=3123H-2020H=1103H=1703D啊:B0A1H-8080H=3021H-2020H=1001H=1601D中:D6D0H-8080H=5650H-2020H=3630H=5448

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论