数据表示及运算.ppt_第1页
数据表示及运算.ppt_第2页
数据表示及运算.ppt_第3页
数据表示及运算.ppt_第4页
数据表示及运算.ppt_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

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

文档简介

1、第二章 计算机中数据的 编码与运算,胡丽霞 计算机与通信工程系 Huse_lily,主要内容,常用计数方法及其相互转换 计算机中数的运算 数据在计算机中的编码,2.1 常用计数方法及其相互转换,进位计数制 数制转换,2.1.1 进位计数制,基数,不同的数制拥有的数码个数不同,这个个数就称为基数。 若以R代表基数,则: 十进制(D或不带字母) R=10,可使用0,1,2,3,4,5,6,7,8,9 二进制(B) R=2 ,可使用0,1 八进制(0) R=8 ,可使用0,1,2,3,4,5,6,7 十六进制(H) R=16 ,可用0,9,A,B,C,D,E,F,位权值,在某种数制中,处于不同位置(

2、数位)上的数码代表不同的数值。 123.4 = 110221013100410-1 用Ri表示R进制的位权值(i为整数),例如,十进制的位权值为10i;二进制的位权值为2i;八进制的位权值为8i;十六进制的位权值为16i。,进位计数制规则,“逢R进一、借一当R” “按位权值计数”,例:888.8 =,810281018100810-1,(101101.11) 2 =,12502412312202112012-112-2,=32 + 0 + 8 + 4 + 0 +1 + 0.5 + 0.25,=(45.75)10,数制书写方法,为了区别不同的数制,可在数的右下角注明数制,或者在数的后面加一个大写

3、字母表示该数的进制。D或不带字母表示十进制数,B表示二进制数,表示八进制数,H表示十六进制数。 例如: 二进制数101可表示为(101)2或101B 八进制数101可表示为(101)8或101O,2.1.2数制转换,R进制数转换成十进制数,例如: (1011.01)2=1X23+0X22+1X21+1X20+0X2-1+1X2-2 =13.25 (1762.37)8=1X83+7X82+6X81+2X80+3X8-1+7X8-2= (F49C.A8)16=15X163+4X162+9X161+12X160 +10X16-1+8X16-2=,按位权值计算,十进制转换成R进制数,十进制整数转换为R

4、进制 规则:采用除以R取余数,直到商为零时结束。所得余数序列,先余为低位,后余为高位。 十进制小数转换为R进制 规则:采用乘以R取整数,直到余数为0时结束。所得整数序列,先整为高位,后整为低位。,例2.1将(31572)10转换成二进制数(保留 4位小数),先对整数部分31进行转换成二进制数:,3 1,2,1 5,2,7,2,3,2,1,2,0,余数,二进制数低位,二进制数高位,(31)10 = (11111)2,再对小数部分0.572进行转换成二进制:,0. 5 7 2,2,1 4 4,1.,2,2 8 8,2,0.,5 7 6,0.,2,1 5 2,1.,整数,1,0,0,1,二进制数高位

5、,二进制数低位,(0.572)10 = ( 0.1001)2,最后 将整数部分和小数部分相拼 得到 (31.572)10 = (11111.1001)2,例2.2 将(2010.3729)10转换成八进制数.(保留6位小数),十进制数转换成八或十六进制数,整数部分采用除8(或16)取余法,小数部分采用乘8(或16)取整法。,所以 (2010)10 = (3732)8,对小数部分进行转换,所以 (03729)10 = (0276731)8 最后得:(2010.3729)10= (3732.276731) 8,高位,2,低位,7,6,7,3,1,二进制与八进制、十六进制之间的相互转换,二进制数转换

6、成八进制数:以小数点为分界点,左右三位一节,不足三位以零补足三位,例2.3 将11010101.11B转换成八进制数。 011 010 101110 3 2 5 6 所以11010101.11B=325.6O,八进制数转换成二进制数:将每位八进制数码以三位二进制数表示。若首尾有0,应去掉,例2.4 将631.47O转换成二进制数。 6 3 1 4 7 110 111 001. 100 111 所以631.47O= 110111001.100111B,二进制数转换成十六进制数:以小数点为分界点,左右每四位一节,不足四位以零补足四位,例2.5 将11011000101.01111B转换成十六进制数

7、。 0110 1100 01010111 1000 6 C 5 7 8 所以11011000101.01111B=6C5.78H,十六进制数转换成二进制数:将每位十六进制数码以四位二进制数表示。若首尾有0,应去掉,例2.6 将A39.06H转换成二进制数。 A 3 9 0 6 1010 0011 1001 0000 0110 所以A39.06H=101000111001.0000011B,数制转换练习,按要求对下列数据进行数制转换(保留4位小数),789.453D=( )H 763.452O=( )H 10010101.0011B=( )D 10110101.0011B=( )O 101101

8、10.0101B=( )H AC867.3FH=( )D AC867.3FH=( )O,315.73F7,1F3.95A,149.1875,265.14,B6. 5,706663.2461,2544147.176,2.2 计算机中数的运算,二进制的算术运算 二进制的逻辑运算,2.2.1 二进制的算术运算, 加法规则 0+0=0 0+1=1 1+0=1 1+1=0(向高位有进位) 减法规则 0-0=0 1-0=1 1-1=0 0-1=1(向高位有借位) 乘法规则 00=0 01=0 10=0 11=1 除法规则 00=0 01=0 10(无意义)11=1,2.2.2 二进制的逻辑运算,逻辑运算结

9、果只有“真”或“假”两个值,约定用1表示真,用0表示假。 与运算 00=0 01=0 10=0 11=1 或运算 00=0 01=1 10=1 11=1 非运算 1 = 0 0 = 1 异或运算 0 + 0=0 0 + 1=1 1 + 0=1 1 + 1=0,2.3 数据在计算机中的编码,数值数据的编码及表示 非数值数据的编码,2.3.1 数值数据的编码及表示,机器数 带符号数的编码 数的定点与浮点表示 8421BCD码,机器数,数的正、负号用“0”和“1”表示 一般约定,数的最高位作为符号位,并用“0”表示正,用“1”表示负,称为数符 把在机器内存放的正、负号被数符化了的数称为机器数,机器数

10、所表示的真实数值称为真值,机器数与真值 对比如下:,带符号数的编码,原码 用最高位表示数的正、负号,0表示正,1表示负,而数值部分用最高位以后的若干位来表示 直接用原码运算会产生错误,例2.8 按原码将+5加上5时,结果不为0,00000101,+5的原码,10000101,-5的原码,10001010,-10的原码,+,反码 正数的反码与原码相同,负数的反码是将负数的原码的符号位保持不变,其余各位取反(即0变1,1变0) 反码仍然不能直接带符号运算,例: +6的原码为:00000110,反码为:00000110 6的原码为:10000110,反码为:11111001,例2.9 按反码将+6加

11、上-3时,结果不为+3,00000110,+6的反码,11111100,-3的反码,100000010,+2的反码(高位1丢弃),+,将负数的原码中第一个1和最后一个1中间的各位取反,即得负数的补码,补码 正数的补码与原码相同,负数的补码保持原码的符号位不变,其他各位取反,再在最低位加1,例如,二进制数+1010110的补码表示为01010110。 二进制数1010110的补码表示为10101010。,11010110,10101010,例2.10 使用补码计算+6加上3结果,00000110,+6的补码,11111101,-3的补码,100000011,+3的补码(高位1丢弃),+,按补码计

12、算,最终得到结果为正确答案,+6的原码:,00000110,-3的原码:,10000011,原码、补码的几个例子,十进制 原 码 补 码,87 -87 127 -127 0 -0,01010111,01010111,11010111,10101001,01111111,01111111,11111111,10000001,00000000,00000000,10000000,00000000,采用补码来表示正、负整数时,+0 和 0 的取码是完全相同的,而原码对+0和 0 的取码是不相同的。,数据编码练习,-16的原码为( ),反码为( ) 补码为( ) -37的原码为( ),反码为( ) 补

13、码为( ) 19的原码为( ),反码为( ) 补码为( ),10010000,11101111,11110000,10100101,11011010,11011011,00010011,00010011,00010011,回顾之前,简述各进制数之间的转换方法 使用补码计算+134加上58的结果 使用补码计算+16加上+37的结果 使用补码计算-6加上79的结果,数的定点与浮点表示,数的定点表示 将计算机中的小数点的位置视为是固定不变的 设计算机使用的定点数的长度为2个字节,则-56、0.625在计算机内表示为如下:,(1)定点整数,格式:,(2)定点小数,格式:,数的浮点表示,34.7,=,3

14、4.7100,=,3.47101,=,=,0.347102, ,一个实数的值由尾数和阶码唯一决定。 计算机中的浮点数规定: 尾数都是小于1的纯小数,采用定点小数表示法; 阶码总是整数,采用定点整数表示法。,阶符,阶码(E),数符,尾数(d),小数点位置,阶符,阶码(E),数符,尾数(d),小数点位置,阶码是指数部分的值,表示幂次,其基数通常取2。 X = d 2E,例如: 0.110112-011 的浮点格式(32位)为:,8421BCD码,8421BCD编码方法是将一位十进制数用4位二进制编码来表示,以4位二进制数为一个整体来描述十进制的09十个不同数码。,2.3.2 非数值数据的编码,西文字符的ASCII编码 汉字字符的编码,西文字符的ASCII编码,ASCII是英文America

温馨提示

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

评论

0/150

提交评论