版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1.1数制1.2编码数制与编码1.1数
制1.1.1进位制数及其相互转换1.进位制数1)十进制数日常生活中采用的进位制数是十进制数(Decimal),具有如下特点:选用的数字符号是符号0~9,共十个;采用的计数规则是低位向高位逢十进一;基数为10,第i位的位权为10i(整数部分最低位为第0位),即每个位上的数字符号意义不同。例如,11的第一个1是1×101=10,第二个1是1×100=1。例1-1(16.5625)10=1×101+6×100+5×10-1+6×10-2+2×10-3+5×10-42)二进制数计算机采用的进位制数是二进制数(Binary),具有如下特点:选用的数字符号是符号0~1,共两个;采用的计数规则是低位向高位逢二进一;基数为2,第i位的位权为2i(整数部分最低位为第0位)。例1-2(1100.011)2=1×23+1×22+1×2-2+1×2-3计算机学科也采用八进制数(Octal)和十六进制数(Hexadecimal),但是在计算机中只采用二进制,引入八进制和十六进制是因为它们比二进制简洁,而且二进制与它们的转换比与十进制的转换简单。各进制数的特点如表1-1所示。(2)小数转换。十进制小数转换为二进制小数采用乘2取整法,即首先用2连续乘该十进制小数及得到的积的小数,并列出积的整数,直至积的小数为0,然后把积的整数按得到的先后顺序,从高位到低位排列。若出现积的小数不可能为0的情况,则转换过程的终止可由转换精度确定。例1-6(0.3)10=(0.01001100110011……)22)二进制数与八进制数的转换由于81=23,所以八进制数与二进制数之间存在简单的转换方法,即1位八进制对应3位二进制。二进制数与八进制数及十六进制数的对应关系如表1-2所示。八进制数转换为二进制数的方法是:1位八进制直接转换为对应的3位二进制。例1-7(16.14)8=(001110.001100)2=(1110.0011)2二进制数转换为八进制数的方法是:首先以小数点为界,整数部分从低位向高位每3位1组划分,高位组不足3位时,高位补0;小数部分从高位向低位每3位1组划分,低位组不足3位时,低位补0,然后将每组的3位二进制直接转换为对应的1位八进制。例1-8(10011.00101)2=(010011.001010)2=(23.12)83)二进制数与十六进制数的转换由于161=24,所以十六进制数与二进制数之间也存在简单的转换方法,即1位十六进制对应4位二进制,对应关系如表1-2所示。十六进制数转换为二进制数的方法是:1位十六进制直接转换为对应的4位二进制。例1-9(3A.B2)16=(00111010.10110010)2=(111010.1011001)2二进制数转换为十六进制数的方法是:首先以小数点为界,整数部分从低位向高位每4位1组划分,高位组不足4位时,高位补0;小数部分从高位向低位每4位1组划分,低位不足4位时,低位补0,然后每组的4位二进制直接转换为对应的1位十六进制。例1-10(1111111.1110011)2=(01111111.11100110)2=(7F.E6)161.1.2定点与浮点表示在计算机中,小数点不用专门的器件表示,而是按约定的方式标出,有两种方法表示小数点的位置:定点表示与浮点表示。定点表示的数称为定点数,浮点表示的数称为浮点数。在介绍它们之前,首先简单介绍计算机采用的存储单位。数据的存储与处理以字节为基本单位。1个1或0称为1个位(bit),8个位称为1个字节(Byte),210个字节称为1K个字节(KB),220个字节称为1M个字节(MB),230个字节称为1G个字节(GB),240个字节称为1T个字节(TB)1.定点表示定点表示是指小数点位置固定不变,分为定点整数与定点小数,定点整数的小数点位置隐式地固定在数值位之后,表示纯整数;定点小数的小数点位置隐式地固定在数值位之前,表示纯小数,如图1-1所示。数值的位数n决定了所能表示的数值范围,如机器数采用原码,则定点整数的二进制数值范围为±,十进制数值范围为±(2n-1),定点小数的二进制数值范围为±,十进制数值范围为±(1-2-n)。例1-11以定点整数为例,设字长为8位(采用8位存储数据),从高位到低位依次是:符号1位,数值7位,小数点位置隐式地固定在数值位之后,所能表示的二进制数值范围为±1111111,对应的十进制数值范围为±(27-1)。(-10000)2的定点整数存储如图1-2所示,其中,负号用1表示,正号用0表示。2.浮点表示浮点表示是指小数点位置随着阶的变化而左右浮动。浮点表示用于实数,称为浮点实数。事实上,浮点表示采用记阶表示,即任何二进制数N都可以采用如图1-3所示的记阶表示,其中,阶数为二进制正整数,尾数为二进制正小数。例1-12(-11.01)2=(-0.1101×2+10)2=(-0.01101×2+11)2=(-0.001101×2+100)2从例中可以看到,小数点位置随着阶的变化而左右浮动。在计算机中,浮点实数表示格式如图1-4所示,小数点位置隐式地表示在尾数位之前,尾数随着阶的变化而变化,因此小数点位置也随着阶的变化而左右浮动。阶符和阶数的位数m决定了其所能表示数值的范围及小数点的实际位置。尾符决定了数值的正负,尾数的位数n决定了数值的精度。如浮点实数为非规范化浮点数时,其表示范围如图1-5所示。例1-13设字长为8位,从高位到低位依次是:阶符1位,阶数2位,尾符1位,尾数4位,则浮点实数表示格式如图1-6所示,小数点位置隐式地表示在尾数位之前,所能表示数值的正数范围为2-3×2-4~23×(1-2-4),负数范围为-23×(1-2-4)~-2-3×2-4。(-11.01)2=(-0.1101×2+10)2的浮点实数存储可见图中。一个二进制数的记阶表示不唯一,不同的记阶表示需要的阶数位数和尾数位数不同,为了提高浮点表示的精度,人们引入了规范化浮点数。尾数最高位为1的浮点实数称为规范化浮点数。当对非规范化浮点数进行规范化时,尾数左移1位,阶数减1,尾数右移1位,阶数加1。1.1.3机器数在计算机中,二进制数的正号与负号也必须转换为0和1的形式,用0表示正号,用1表示负号,未转换的二进制数称为真值,转换后的二进制数称为机器数。机器数有多种表式形式,这里将介绍原码与补码。1.原码原码是最简单的机器数,它仅将真值的正号(+)与负号(-)分别转换为0与1。设字长为n位,二进制整数x的原码[x]原定义为二进制纯小数x的原码[x]原定义为二进制数x转换为原码[x]原的简单方法是:当x为正数时,[x]原的符号位为0,数值位不变;当x为负数时,[x]原的符号位为1,数值位不变。反之,原码[x]原转换为二进制数x的简单方法是:当[x]原的符号位为0时,x为正数,数值位不变;当[[x]原的符号位为1时,x为负数,数值位不变。例1-14设字长为8位,采用定点表示,“|”分隔符号位与数值位,“.”表示小数点位置。显然,在原码中,数值0有两种形式:[+0]原=0|0000000.,[-0]原=1|0000000.。2.补码对于加法运算,原码与真值的运算步骤较复杂。为了简化运算,引入了补码。设字长为n位,二进制整数x的补码[x]补定义为二进制纯小数x的补码[x]补定义为二进制数x转换为补码[x]补的简单方法是:当x为正数时,[x]补的符号位为0,数值位不变;当x为负数时,[x]补的符号位为1,数值位为取反加1(整数相当于加1,纯小数相当于加2-(n-1))。反之,补码[x]补转换为二进制数x的简单方法是:当[x]补的符号位为0时,x为正数,数值位不变;当[x]补的符号位为1时,x为负数,数值位为取反加1(整数相当于加1,纯小数相当于加2-(n-1))。例1-15设字长为8位,采用定点表示,“|”分隔符号位与数值位,“.”表示小数点位置。对于补码,[+0]补=0|0000000.,[-0]补=0|0000000.,数值0有唯一的形式。对于所能表示数值的范围,补码比原码多1个负数[-10000000]补=1|1000000.3.补码运算对于加法运算,补码具有如下特点,可以简化运算。(1)[x+y]补=[x]补+[y]补,即二进制数的加法运算可以转换为补码的加法运算;(2)在补码的加法运算中,符号位直接参加运算。事实上,在计算机中,二进制数的乘法可以用移位与加法实现,除法可以用移位与减法实现,减法可以用加法实现,而加法可以用补码加法简化运算,所以在计算机中只需加法器。例1-16设字长为8位,采用定点表示,“|”分隔符号位与数值位,“.”表示小数点位置。在③的补码加法中,由于字长为8位,和的最高位1无法保存,自动丢弃,但是结果仍然是正确的,这是因为和仍然在字长8位所能表示数值的范围之内。在④的补码加法中,和的补码的符号位为1,这说明和的真值为负,但是两个正数的和应该为正,这说明④的补码加法出错,原因是字长不够,即和超出字长8位所能表示数值的范围,这种现象称为溢出。1.2编码1.2.1字符编码字符编码的方法是:如果编码长度为n位,则至多可以得到2n个编码,至多可以区分2n个字符;反之,如果为m个字符编码,则编码长度至少应为lbm位。确定编码长度之后,为不同的字符指派不同的编码即可。根据字符编码方法,可以有很多字符编码方案,但是为了方便计算机之间的相互通信,必须标准化字符编码。ASCII码(美国标准信息交换代码)是一种最常用的字符编码标准,它采用的编码长度是7位,可以表示27即128个字符,包括英文字母、数字、标点符号共计94个普通字符以及34个控制字符,ASCII码与字符的对应关系如表1-3所示。计算机的基本单位是字节,因此1个字符在计算机中采用8位存储。要注意的是,十进制数32在计算机中可以表示为二进制数00100000,称为二进制格式,也可以表示为ASCII码0011001100110010,称为文本格式。1.2.2汉字编码汉字编码的原理类似于字符编码,但是汉字较多,显然编码长度应更长。1980年我国发布了汉字国标码GB2312—80(国家标准信息交换汉字编码),它的编码长度是2个字节,每个字节的最高位为0,实际采用每个字节的低7位,共计14位进行汉字编码,最多可编码214个汉字,实际表示最常用的6763个汉字和682个非汉字图形符号。在计算机中,字符ASCII码的字节最高位也为0,为了区别汉字编码与ASCII码,将汉字国标码的每个字节最高位由0变为1,称为汉字机内码。汉字编码除了GB2312—80外,还有一些其它编码,例如GBK、GB18030、UCS、Unicode等,所以在查看汉字时,有时会出现乱码,主要原因就是使用了不同的汉字编码。1.2.3图像编码表示图像的技术可以划分为位图技术与矢量技术。图像的位图编码方法是:将图像分成若干行若干列,一个交叉点称为一个像素,整幅图像由若干像素构成,只要像素被编码了,整个图像也就被编码
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《Excel数据获取与处理实战》 课件 第1章 Excel 2016概述
- 2022年大学轻工纺织食品专业大学物理二月考试卷-附解析
- 智能市场推广的智慧解决方案
- 酒店消防演练方案培训
- 2022年大学能源动力专业大学物理二期中考试试题C卷-附解析
- 糖尿病下肢血管超声描述
- 技术开发年终总结
- 九年级语文《议论文阅读答题技巧》课件
- 企业微信社群营销规划
- 应急案例分享
- 非参数统计教学ppt课件(完整版)
- 手榴弹使用教案
- 关于成立医院爱国卫生委员会及完善工作职责制度的通知
- 公司股权转让协议_1
- 常用高颈法兰尺寸表
- 基于嵌入式的温度传感器的设计
- 《西方经济学》课程教学大纲
- 汽车线束控制计划
- 旅游服务礼仪说课(课堂PPT)
- JBT7688.5-2012冶金起重机技术条件第5部分:铸造起重机
- 大学高级英语第一册张汉熙版第四课原文加翻译EverydayUseforyourgrandmama
评论
0/150
提交评论