ch2-信息表示与二进制运算_第1页
ch2-信息表示与二进制运算_第2页
ch2-信息表示与二进制运算_第3页
ch2-信息表示与二进制运算_第4页
ch2-信息表示与二进制运算_第5页
已阅读5页,还剩61页未读 继续免费阅读

下载本文档

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

文档简介

第2章

信息表示与二进制运算主要内容:计算机与二进制计算机中的数制及其相互间的转换二进制数的表示计算机中的信息表示与编码字符信息音频信息图像信息基于计算机的信息处理的一般过程2在线自学习一、计算机与二进制3十进制计算装置人类从远古开始就习惯于十进制计数早期的机械式计算机采用十进制,它利用齿轮的不同位置来表示不同的数值。45十进制计算装置十进制有10个符号,需要有10种稳定状态与之对应表示10种状态的电子器件很困难实现两种状态的电子器件非常容易计算机与二进制德国数学家莱布尼茨(G.W.Leibniz)发明了二进制用0和1表示一切数中国的伏羲八卦图也可以与二进制对应6两仪生四象:太阴、少阳、少阴、太阳;四象生八卦:乾、兑、离、震、巽、坎、艮、坤用6位0和1,可以表示八卦图的六十四个卦象现代计算机采用二进制宇宙万物计算机采用二进制的理由计算机中使用二进制编码的有很多优势技术实现简单具有两种稳定状态的器件很容易找。运算规则简单二进制只有0和1两个符号易于与十进制的转换符合逻辑运算。逻辑运算的对象是“真”和“假”,两种状态正好与之对应。例:设低电平为“假”,高电平为“真”设:用0表示“假”;用1表示“真”8计算机由成千上万个可表示“0”和“1”的器件构成计算机采用二进制的理由输入输出X1X2Y假假假假真假真假假真真真输入输出X1X2Y000010100111无论计算机的功能有多么强大,能够处理的信息有多么丰富,计算机硬件惟一能够直接识别的信息只有一种,就是“0”和“1”。结论:计算机能够直接识别的信息只有二进制。所有需要计算机存储、处理的信息都必须转换为二进制。计算机采用二进制的理由提示与思考:如果计算机只能够识别“0”和“1”,那么为什么还能处理文字、声音、图像等各种非数值信息?我们在录入文字、保存照片时并未做任何转换工作,但计算机为什么能认识?除了数值之外的其他信息在计算机中是如何表示的?10以上问题将在课堂或论坛上进行讨论二、计算机中的数制及其转换121.计算机中的信息单位bit“0”/”1”1Kb(Kilobit)=1024bits=210bits1Mb(Megabit)=220bits=1024Kb1Gb(Gigabit)=230bits=1024Mb1Tb(Tearbit)=240bits=1024GbByte1Byte=8bit1KB=1024Byteb7b6b5b4b3b2b1b02.计算机的字长字长:计算机一次能够同时(并行)处理的二进制位13字长越长,计算机处理数据的速度就越快143.计算机中的常用计数制计算机中的常用计数制十进制二进制数十六进制数八进制数15十进制表示法特点:以十为底,逢十进一;共有0-9十个数字符号。用D(decimal)代表。16二进制表示法特点:以2为底,逢2进位;只有0和1两个符号。用B(binary)表示。表示:å--=--------=+×××+++×××++=111002211n2222222)(nmiiimmnnnBBBBBBB17为什么要引入十六进制、八进制数?11000011010100000十进制数100000的二进制表示:110000110101000000A68118十六进制表示法特点:有0--9及A--F共16个数字符号逢16进位。用H(hex)表示表示:å--=--------=+×××+++×××++=1110022n1116161616161616)(nmiiimmnnnHHHHHHH19八进制表示法特点:有0--7共8个数字符号逢8进位,用O(octal)表示。表示:å--=--------=+×××+++×××++=1110022n118888888)(nmiiimmnnnOOOOOOO20例:234.98或234.98D或(234.98)D1101.11B或(1101.11)B271.54O或(271.54)OABCD.BFH或(ABCD.BF)H计数制的通用表达式对任意一种计数制,都可以用以下权展开式表示:21224.

各种进制数之间的转换非十进制数到十进制数的转换方法:按相应的权表达式展开例:1011.11B=1×23+0×22+1×21+1×20+1×2-1+1×2-2=8+2+1+0.5+0.25=11.755B.8H=5×161+11×160+8×16-1

=80+11+0.5=91.523十进制到非十进制数的转换对二进制的转换:对整数:除2取余;对小数:乘2取整。对十六进制的转换:对整数:除16取余;对小数:乘16取整。对八进制的转换:对整数:除8取余;对小数:乘8取整。例:

将48.25转换为二进制24非十进制数与二进制数的转换十六进制数与二进制的转换用4位二进制数表示1位十六进制数整数部分,从小数点向左组,每4位一组,不够4位的高位补0。小数部分,从小数点向右分组,不够4位的在低位补0。例:25.511001010.0110101B

=19.8H=11001.1B=00011001.1000B0B=CA.6AHCA6A非十进制数与二进制数的转换八进制数与二进制的转换用3位二进制数表示1位八进制数整数部分,从小数点向左组,每3位一组,不够3位的高位补0。小数部分,从小数点向右分组,不够3位的在低位补0。例:11001010.0110101B=011001010.011010100B25=(312.324)O312324三、二进制数的算术运算2627二进制数的算术运算加法运算1+1=0(有进位)减法运算0-1=1(有借位)乘法运算除法运算四、二进制数的表示28291.计算机中的数计算机中的数据类型:数值、文字、图、表、文件、队列、链表、字符……计算机中的各种数据通称为数据。计算机中数值数据的表示:定点数浮点数使用定点表示实现浮点运算,运算速度一般会降低两个数量级定点数据表示优点:硬件结构简单缺点:速度慢。需要用软件将数据扩大或缩小一定倍数后送入计算机,运算结束后再恢复。表数范围小,对机器字长要求高。存储空间利用率低30例:太阳的重量≈0.2×1034克一个电子的重量≈0.9×10-27克2x>1061,x>203浮点数据表示小数点在数据中可以左右移动的数据规格化浮点数的尾数为纯小数浮点表示法的主要优点:表数范围大,运算速度快31尾数阶码阶符尾符2.机器数的表示计算机中的数称为机器数构成:符号位+真值32“0”表示正“1”表示负33[例]

+52=+0110100=0

0110100-52=-0110100=1

0110100符号位真值符号位真值34机器数的表示机器数的表示方法:原码反码补码351)原码最高位为符号位,其余为真值部分。“0”表示正“1”表示负优点:真值和其原码表示之间的对应关系简单,容易理解;缺点:计算机中用原码进行加减运算比较困难0的表示不唯一。36数0的原码8位数0的原码:+0=00000000-0=10000000即:数0的原码不唯一。372)反码对一个机器数X:若X>0[X]反=[X]原若X<0[X]反=对应原码的符号位不变,数值部分按位求反38[例]X=-52=-0110100[X]原=10110100[X]反=11001011390的反码:[+0]反=00000000[-0]反=11111111即:数0的反码也不是唯一的。403)补码定义:若X>0[X]补=[X]反=[X]原若X<0[X]补=[X]反+141[例]X=-52=-0110100[X]原=10110100[X]反=11001011[X]补=[X]反+1=11001100420的补码:[+0]补=[+0]原=00000000[-0]补=[-0]反+1=11111111+1=100000000

对8位字长,进位被舍掉现代计算机中多采用补码433.补码数的运算通过引进补码,可将减法运算转换为加法运算。即:[X+Y]补=[X]补+[Y]补[X-Y]补=[X+(-Y)]补=[X]补+[-Y]补例1:66-51=66+(-51)=15用二进制补码运算:[+66]补=[+66]原=01000010[-51]原=10110011[-51]补=11001101[+66]补+[-51]补=00001111=1544145例2:X=-52=-0110100,Y=116=+1110100,求X+Y=?[X]原=10110100[X]补=[X]反+1=11001100[Y]补=[Y]原=01110100[X+Y]补=[X]补+[Y]补

=11001100+01110100=01000000X+Y=+1000000现代计算机系统中,程序设计时,负数可用“-”表示,由编译系统将其转换为补码。例:若输入数=-3程序编译后的值=FDH4647本章主要知识点了解计算机求解问题的局限性理解图灵机模型及其工作原理理解计算机与二进制了解文字信息和多媒体信息的表示计算机系统的组成机器数的表示及运算逻辑运算与逻辑门谢谢!机器数的表示与运算48492.计算机中的数计算机中的数称为机器数构成:符号位+真值“0”表示正“1”表示负50[例]

+52=+0110100=0

0110100-52=-0110100=1

0110100符号位真值符号位真值513.

机器数的表示机器数的表示方法:原码反码补码52原码最高位为符号位,其余为真值部分。“0”表示正“1”表示负优点:真值和其原码表示之间的对应关系简单,容易理解;缺点:计算机中用原码进行加减运算比较困难0的表示不唯一。53数0的原码8位数0的原码:+0=00000000-0=10000000即:数0的原码不唯一。54反码对一个机器数X:若X>0[X]反=[X]原若X<0[X]反=对应原码的符号位不变,数值部分按位求反55[例]X=-52=-0110100[X]原=10110100[X]反=11001011560的反码:[+0]反=00000000[-0]反=11111111即:数0的反码也不是唯一的。57补码定义:若X>0[X]补=[X]反=[X]原若X<0[X]补=[X]反+158[例]X=-52=-0110100[X]原=10110100[X]反=11001011[X]补=[X]反+1=11001100590的补码:[+0]补=[+0]原=00000000[-0]补=[-0]反+1=11111111+1=100000000

对8位字长,进位被舍掉现代计算机中多采用补码604.补码数的运算通过引进补码,可将减法运算转换为加法运算。即:[X+Y]补=[X]补+[Y]补[X-Y]补=[X+(-Y)]补=[X]补+[-Y]补注:运算时符号位须对齐例1:66-51=66+(-51)=15用二进制补码运算:[+66]补=[+66]原=01000010[-51]原=10110011[-51]补=11001101[+66]补+[-51]补=00001111=1561162例2:X=-52=-0110100,Y=116=+1110100,求X+Y=?[X]原=10110100[X]补=[X]反+1=11001100[Y]补=[Y]原=01110100[X+Y]补=[X]补+[Y]补

=11001100+01110100=01000000X+Y=+1000000现代计算机系统中,程序设计时,负数可用“-”表示,由编译系统将其转换为补码。例:若输入数=-3程序编译后的值=FDH63五、字符编码64西文字符编码编码:将信息用二进制0和1来表示的过程标准ASCII码用7位二进制码表示一个字符ASCII编码字符ASCII编码字符ASCII编码字符ASCII编码字符00000000空格01000011C01010100T01101011k001100000010

温馨提示

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

评论

0/150

提交评论