数据在计算机中的表示

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

计算机应用基础——数据在计算机中的表示徐艳艳xuyyxu@gmail.com信息学院数据在计算机中的表示•进位计数制及相互转换•数值及字符在计算机中的表示•什么是二进制?–二进制表示的数据中,每个数位上的数字只能是0或者1–(10101011)2–逢2进一:(1)2+(1)2=(10)2计算机中采用二进制来表示数据二进制在计算机中为什么要采用二进制?•容易实现二进制只有0和1两个状态,电子器件具有实现的可行性•运算简单二进制的运算法则少,运算简单,使硬件结构大大简化•有逻辑性二进制的0和1正好和逻辑代数的假和真相对应•有稳定性二进制只有0和1两个状态,传输和处理时不容易出错二进制的优点数据单位计算机中数据的常用单位有位、字节和字。1、位(Bit)也称比特,记为bit或b。是数据的最小单位,是二进制的一位数,用0或1表示。2、字节(Byte)简称为B。字节是表示存储空间大小的最基本单位。1B=8bit1KB=1024B=210B1MB=1024KB=210KB=220B1GB=1024MB=210MB=230B10111100数据单位•字:Word或W,字由若干字节组成,每个字中包含的二进制位数称为字长•示例:–64位计算机是指计算机一次可以处理64位二进制数–64位计算机中的64是指机器字长1011111110000000一个位一个字节字长(16位)进位计数制按进位的原则进行的计数方法称为进位计数制任何一种进位计数值表示的数都可以写成按其权展开的多项式之和(数码*权值)。在采用进位计数的数字系统中,如果用r个基本符号(例如0,1,2,…,r-1)表示数值,则称其为基r数制(Radix-rNumberSystem),r称为该数制的基(Radix),数制中每一固定位置对应的单位值称为位权(基r的i次方)。常用的进位计数制•日常使用:十进制(Decimal)•计算机采用:二进制(Binary)•为了简化二进制的表示方式,使用–八进制(Octal)–十六进制(Hexdecimal)二进制的基是2,八进制的基是8十进制的基是10,十六进制的基是16不同的数制,它们的共同特点是:1.每一种数制都有固定的符号集:如二进制数制,其有2个符号:0,1;如八进制数制,其有8个符号:0,1,2,…,7;如十进制数制,其有10个符号:0,1,2,…,9;如十六进制数制,其有16个符号:0,1,2,…,9,A,B,C,D,E,FWhy?大家思考一下十六进制(Hexadecimal)的基数是16,它必须有16个数字才够用。因此,除了十进制中的10个数可用外,还必须再创造6个数字。十六进制中借用了6个英文字母。所以,它的16个数字依次是:0~9,A~F。其中A至F分别代表十进制数的10至15,最大的数字也是基数减1。由于存在不同的进制,那么在今后在给出了一个数时必须指明它是什么数制的数。例如:(1010)2、(1010)8、(1010)10、(1010)16除了用下标表示外,还可用后缀字母来表示数制。例如后缀字母B表示二进制,后缀字母O表示八进制后缀字母D表示十进制,后缀字母H表示十六进制后缀判断对错•每一个数位上的数字不能超出数码的范围(1010)2,(18)10,(28)8,(6AEI)16(正确)(正确)(错误)(错误)进位计数制间的转换非十进制转换为十进制二进制八进制十进制十六进制十进制转换为非十进制二进制八进制十进制十六进制非十进制之间的转换二进制八进制二进制十六进制之间简单简单将各位数码乘以各自的权值累加即可。(1011.101)2=1×23+0×22+1×21+1×20+1×2-1+0×2-2+1×2-3=8+0+2+1+0.5+0+0.125=(11.625)10(143.65)8=1×82+4×81+3×80+6×8-1+5×8-2=64+32+3+0.75+0.78125=(99.828125)10(32CF.4B)16=3×163+2×162+12×161+15×160+4×16-1+11×16-2=12288+512+192+15+0.25+0.4296875=(13007.19196875)10非十进制数转换成十进制数为了将一个即有整数部分又有小数部分的十进制数转换成二进制数,可以将其整数部分和小数部分分别转换,然后再组合。十进制数转换成非十进制数对整数部分:除基取余除基后所得到的第一个余数是转换后进制整数数列的最低位;所得的最后一个余数是转换后的进制整数数列的最高位。对于十进制数转换为非十进制数。这个规律是:“先余为低,后余为高”十进制数(18)10转换成二进制即十进制数(18)10=(10010)2将小数不断乘以基取整数,直到小数部分为0或达到所求的精度为止(小数部分可能永远的不会得到0);第一个得到的整数为最高位,最后得到的为最低位,这个规律是:“先整为高,后整为低”对小数部分:乘基取整第一个整数为最高位,最后一个整数为最低位。刚好与整数部分的相反。注意:0.6875×21.3750整数为11.0.3750×20.7500整数为0×21.5整数为11.0.52.×21.0整数为1(0.6875)10=(0.1011)2把(0.6875)10转换为二进制十进制转换为八进制八进制数基数为8:对整数部分,除8取余;对小数部分,乘8取整。例:把207转换为八进制数:(207)10=(317)8十进制转换为十六进制十进制数转换为十六进制数的方法同十进制数转换为二进制的方法类似。举例:(216)10=(?)16十进制数0~16和其他进制数之间的对应关系二进制数转换为八进制数八进制数转换为二进制数二进制数转换为十六进制数十六进制数转换为二进制数非十进制的数之间的相互转换方法:将二进制数从最右边的低位到高位每3位组成一组,最后不足3位的前面补0,然后每3位二进制数用一个八进制数来表示即可转换为八进制。例如:将二进制数10101010011转换成八进制数:0101010100112523即(10101010011)2=(2523)8二进制数转换为八进制数方法:将每一位八进制数用3位二进制数表示即可得到相应的二进制数。例如:将八进制数3274转换为二进制数:3274011010111100即(3274)8=(011010111100)2八进制数转换为二进制数方法:将二进制数从最右边的低位到高位每4位分成一组,最后不足4位的前面补0,然后每4位二进制用十六进制数来表示即可得到相应的十六进制数。例将二进制数10111010010011转换为十六进制数00101110100100112E93即(10111010010011)2=(2E93)16二进制转换为十六进制方法:将每一位十六进制数用4位二进制数表示即可得到相应的二进制数。例如:将十六进制数4C3F转换成二进制数:4C3F0100110000111111即(4C3F)16=(0100110000111111)2十六进制转换为二进制从二进制数很容易地直接写成八进制数和十六进制数。反之亦然。即非十进制数之间的转换较简单。而由十进制数转换成二进制数、八进制数和十六进制数相比较而言要难一些。数据转换小结数值及字符在计算机中的表示•数值数据•字符•图形图像编码使用计算机的目的是利用计算机进行信息的处理,最终得到所需的处理结果。信息?计算机中信息表示形式计算机的信息转换过程输入信息数值西文字符汉字……二进制数数值西文字符汉字……计算机输出信息编码编码各类数据在计算机中的转换过程•数值-十/二进制转换(输入)-内存-二/十进制转换(输出)-数值•西文-ASCII码(输入)-内存-西文字形码(输出)-西文•汉字-输入码/机内码转换(输入)-内存-汉字字形码(输出)-汉字•声音、图像-模/数转换(输入)-内存-数/模转换(输出)-声音、图像数值数据-整数•通常规定一个数的最高位为符号位。用“0”和“1”来表示,0表示该数为正,符号位为1表示该数为负。•一个数在计算机内部的表示称为机器数符号位10101100计算机中,常对机器数采用原码、反码与补码表示。使用补码的优点是:(1)使得符号位能与有效数值部分一起参加运算,从而简化运算规则。(2)使减法运算转换为加法运算,简化计算机中运算器的线路设计。对于正数,其原码、反码与补码表示是一致的。对于负数,除符号位外,将其原码的数值部分求反(即0变1,1变0)则可求其反码,由反码的最低位加1即可求得其补码。假设字长为8位。二进制数01010101的原码、反码与补码表示均为01010101。而二进制数11010101的原码为11010101,其反码表示为10101010,其补码表示为10101011。原码和补码示例•正整数的补码等于原码•负整数的补码:将该数的绝对值按位取反再加1000000000000101011111111111101011111111111110110|-10|取反再加1得-10的补码整数在内存中是以补码的形式存在的原码和补码示例•占两个字节的整数的数值范围是-32768~32767011111111111111110000000000000000111111111111111100000000000000032767-32768的补码数值数据-浮点数•浮点数的规格化表示规格化数=数符*1.xxxxx*2指数1、若浮点数为正数,则数符为0,否则为12、尾数中的”1.”不存储3、存储的阶码等于规格化数中的指数加上127,即阶码=指数+127,这是为了处理负指数的情况。IEEE754的规定。例126.0格式化表示:26.0=11010.0B=+1.10100*2的4次方B阶码:4+127=131=10000011B因此,26.0在计算机中的存储为:01000001110100000000000000000000例2-2.5格式化表示:-2.5=-10.1B=-1.01*2的1次方B阶码:1+127=128=10000000B因此,-2.5在计算机中的存储为:11000000001000000000000000000000浮点数编码说明•一般来说,增加尾数的位数,将增加可表示区域数据点的密度,从而提高了数据的精度;增加阶码的位数,能增大可表示的数据区域。由于计算机中的数据以二进制的形式存储、运算、识别和处理。字母和各种字符也必须按特定规则变成二进制编码才能输入计算机。字符的表示字符编码(charactercode):规定用怎样的二进制码来表示字母、数字以及专门符号。在微型机系统中,有一种重要的字符编码方式ASCII码。字符的表示ASCII码-是美国标准信息交换码(AmericanStandardCodeforinformationInterchange)的缩写。它本来只是一个美国交换码的国家标准,但它成为一种国际标准。采用7位二进制数编码,用来表示128种不同字符。字符的表示•国际上通用的ASCII码,它包含:10个阿拉伯数字:0~9,0的ASCII码4852个英文字母:(A~Z,a~z),A的ASCII码65,a的97ASCII码32个标点符号和运算符以及34个控制码。ASCII编码表英文是拼音文字,一般不超过128种字符的字符集。而汉字字数多,字形复杂,计算机存储和处理也比较复杂。计算机处理汉字信息的前提条件是对每个汉字进行编码,这些编码统称为汉字编码。汉字信息在系统内传送的过程就是汉字编码转换的过程。汉字编码从汉字代码转换的角度,一般可以把汉字信息处理系统抽象为一个结构模型,如下图示:汉字输入汉字输出输入码→国标码→机内码→字形码汉字编码•输入汉字时使用的编码–音码类:全拼、双拼、微软拼音、智能ABC、紫光输入法、搜狗输入法等–形码类:五笔字型法、郑码输入法–语音识别输入、手写输入等等汉字输入码国标码又称为汉字交换码。•1981年我国颁布了《信息交换用汉字编码字符集·基本集》,国家标准代号GB2312-80。根据词频统计的结果,选择出6763个常

1 / 65
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功