次课2-计算机中的数制和码.ppt_第1页
次课2-计算机中的数制和码.ppt_第2页
次课2-计算机中的数制和码.ppt_第3页
次课2-计算机中的数制和码.ppt_第4页
次课2-计算机中的数制和码.ppt_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

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

文档简介

第二章 计算机中的数制和码制 2.1数与数制 一、数的表示方法与数制 二、数制之间的转换(需要掌握) 2.2 二进制无符号数的运算 2.3 有符号二进制数表示及运算 一、有符号二进制数的表示 二、补码的运算规则 三、 补码运算溢出 2.4 小数的表示方法 一、定点表示法 二、浮点表示法 2.5 码与码制 一、 8241BCD码 二、 ASCII字符代码 2.1数与数制 l 一、数的表示方法与数制 不同的计数制采用不同的基本计数符号,例如 数符 基数 十进制 0 1 2 3 4 5 6 7 8 9 10 二进制 0 1 2 八进制 0 1 2 3 4 5 6 7 8 十六进制 0 9 A B C D F F 16 l一个n位整数和m位小数可表示的实际数值 N为: 1、十进制计数制 2、二进制计数制 = 3、八进制计数制 (123)8=1*82+2*81+3*80 。 4、十六进制计数制 (13A)16=1*162+3*161+A*160 2.1数与数制 二、数制之间的转换(需要掌握) l1、十进制到任意进制之间的转换 1)十进制整数到任意进制整数之间的转换 总的规则就是: 整数部分:十进制数N除以基数X取余数。 2.1数与数制 2 301 2 150 余数为:1= 2 75 余数为:0= 2 37 余数为:1= 2 18 余数为:1= 2 9 余数为:0= 2 2 余数为:0= 2 4 余数为:1= 2 1 余数为:0= 0 余数为:1= 例1. 十进制数301 二进制数 转换过程如下: 301=100101101B 低位 高位 2.1数与数制 16 18 余数为:D= 16 1 余数为:2= 16 301 0 余数为:1= 例2. 十进制数301 十六进制数 转换过程如下: 301=12DH 2.1数与数制 2)十进制小数到任意进制小数之间的转换 十进制小数N乘以基数取整数。 例 将0.6875转换为二进制小数 将0.6875转换为十六进制小数 2.1数与数制 3)十进制数到非十进制数之间的转换 如果一个任意十进制数要转换为非十进制数,可以把整数 部分和小数部分分别加以转换,然后把转换后的整数部分 和小数部分相加。 如301.6875=100101101.1011B 301.6875=12D.BH 2.1数与数制 l 2、非十进制数到十进制数之间的转换 规则:按权展开,按照公式计算 例 1101.101 3D.5H 1101.101=1*23+1*22+0*21+1*20+1*2-1+0*2-2+1*2-3=13.625 3D.5H=3*161+13*160+5*16-1=61.3125 2.1数与数制 l 3八进制、十六进制同二进制间的转换 三位二进制数视为一个八进制位,如101为5Q;将四位二进制 数视为一个十六进制位 1):二八 010 111 000 101B=2705Q 2):八二 467Q=100110111B 3) 二进制 - 十六进制数的转换规则 1001001011010.101001111 B 1 2 5 A . A 7 8 H 2.1数与数制 例: 1 0 1 1 0 1 0 1 B + 0 0 0 0 1 1 1 1 B 、 1 1 0 0 0 1 0 0 B 、 1 0 1 1 0 1 0 1 B - 0 0 0 0 1 1 1 1 B 1 0 1 0 0 1 1 0 B 1、二进制数的算术运算 二进制计数制不仅物理实现容易,且运算方法也比 十进制计数制大为简单,所以计算机中均采用二进制数 。 二进制数的算术运算包括加、减、乘、除。 “逢二进一”和减法是“借一作二” 2.2 二进制无符号数的运算 二进制数的逻辑运算 二进制数的逻辑运算包括与、或、异或、非四种运算。 1 0 1 1 0 1 0 1 B 0 0 0 0 1 1 1 1 B 1 0 1 1 1 0 1 0 B 1 0 1 1 0 1 0 1 B 例: 0 0 0 0 1 1 1 1 B 0 0 0 0 0 1 0 1 B X= 1 0 1 1 0 1 0 1 B = 0 1 0 0 1 0 1 0 B 1 0 1 1 0 1 0 1 B 0 0 0 0 1 1 1 1 B 1 0 1 1 1 1 1 1 B 与 或 非 异或 AND OR NOT XOR 二进制数的逻辑运算只按位进行运算。 2.2 二进制无符号数的运算 2.3 有符号二进制数表示及运算 l一、有符号二进制数的表示 前面我们接触的二进制数均为无符号数,即所有二 进制数位均为数值位,很多情况下都是这样对待的。但 在有些情况下,有些数值是带符号的,即可能是正数, 也可能是负数。这样就存在一个有符号二进制数的表示 方法问题。 1、数的符号表示法 l 为了表示一个有符号数,除了数值位以外,还应制定符号 位,通常以这个数的最高位表示符号位。 符号位 0:表示正数 1:表示负数 2.3 有符号二进制数表示及运算 2、符号数的表示方法 l 原码法: 如果正数的符号位用0表示,负数的符号位用1表示 ,绝对值的编码规则与前面讲的无符号数编码规则相同 ,这种表示方法称为原码表示法。 一个数X的原码记为: 原 X 数值部分=绝对值(用无符号二进制数表示) 符号位 0 0 0 0 0 0 1 1 +3的表示 =00000011B 原 +3 2.3 有符号二进制数运算规则 1 0 0 0 0 0 1 1 -3的表示 =10000011B 原 -3 原 +0 原 -0=0 0 0 0 0 0 0 0B=1 0 0 0 0 0 0 0B 数0的两种表示方法 对8位有符号二进制数用原码表示的范围: 正数从00000000 01111111,+0 +127 负数从10000000 11111111,-0 -127 2.3 有符号二进制数表示及运算 优点:表示简单,易于理解,真值转换方便。 缺点:运算麻烦。因为它仅仅是将其值的符号用一 位二进制数表示,因而它的原码数的+、-运算完全同笔 算。如两个正数相减,计算机首先要判断被减数的绝对 值与减数的绝对值的大小,然后决定是颠倒过来相减, 还是直接相减。最后在结果的前面加上正确的正负号。 所以,势必增加运行时间,降低速度,使运算器的逻辑 复杂化。 有符号二进制数用原码表示的优缺点: 2.3 有符号二进制数表示及运算 l 反码法: 对于负数,用相应正数的原码各位取反来表示,包括将符 号位取反,取反的含义就是将0变为1,将1变为0。如: (+45)10=(00101101)2 (-45)10=(11010010)2 (+0)反码 = 0 000,0000 = 00H (-0)反码 = 1 111,1111 = FFH 注意:用原码法和反码法表示符号数时,数值0有两种表示 方法,使用起来不方便。 2.3 有符号二进制数表示及运算 l 补码法(重点) (1)补码的定义 定义:把某数X加上模数K为 该数X对模K的补码Y补,即 X补=K+X 当数X用n位二进制数表示时,1位为符号位,(n-1)位数 值位,数X的补码定义为: 正数补码与其原码相同,只有负数才有求补的问题。所以严格地说, “补码表示法”应称为“负数的补码表示法”。 2.3 有符号二进制数表示及运算 补 x= = ,x=1/2 (R=2) M为尾数 l 一般情况: |M|=1/R 2.4 小数的表示方法 2.4 小数的表示方法 一、 8241BCD码 前面讲过,计算机只认识0、1二进制代码,但人们 最习惯的是十进制。为了解决这一矛盾,提出了一个比 较适合于十进制系统的二进制代码的特殊形式BCD码。 BCD码是用四位二进制数表示1位0 9的十进制数, 而4位二进制数码有16种组合,原则上可任选10种作为代 码,但为便于记忆和比较直观,最常用的是8421BCD码, 8、4、2、1分别是4位二进制数的位权值。 下面给出十进制数和8421BCD编码的对应关系。 2.5 码与码制 10008 01117 01106 01015 01004 00113 00102 00011 00000 8421BCD码十进制数 10019 2.5 码与码制 如:十进制数和BCD码相互转换 75.4 BCD码 75.4 = BCD码10000101.0101十进制数 =85.5 同一个8位二进制代码表示的数,当认为它表示的是二 进制数和认为它表示的是二进制编码的十进制数,数值是 不相同的。如: =24 =18 2.5 码与码制 在计算机中,BCD码有两种基本格式 a.组合式BCD码 b.分离式BCD码 a.组合式BCD码 两位十进制存放在一个字节中。 如数24的存放格式: 0 0 1 0 0 1 0 0 2 4 2.5 码与码制 b.分离式BCD码 每位数存放在8位字节的低4位 , 高4位的内容与数值无关。如 数24的存放格式: x x x x 0 0 1 0 4 2 x x x x 0 1 0 0 二、 BCD码的加减法运算 下面我们以组合式BCD码格式为例讨论BCD码的加减运算 。 由于BCD编码是将每个十进制数用一组4位二进制数表示 ,若将这种BCD编码直接交计算机运算,计算机总是把它按 二进制数处理,所以结果可能出错。 2.5 码与码制 如:38+49=87 0 0 1 1 1 0 0 0 0 1 0 0 1 0 0 1 1 0 0 0 0 0 0 1 38 49 87 81 显然,结果出错 。 出错原因:十进制相加应 逢十进一,但计算机按二 进制运算,每四位一组, 低四位向高四位进位相当 十六进制运算,“逢十六 进一”。所以当结果超过9 时将比正确值少6。 解决办法:加六修正 2.5 码与码制 加六修正规则: (1)如果两个BCD码位相加没有进位,并且结果9, 则该位不需修正。 (2)如果两个BCD码位相加有进位,或者其结果10, 该位进行加六修正。 (3)低位修正结果使高位9时,高位进行加六修正。 例:94+7=101 2.5 码与码制 1 0 0 1 0 1 0 0 94 1 0 1 0 0 0 0 1 高4位大于9 0 0 0 0 0 1 1 1 7 1 0 0 1 1 0 1 1 低4位大于9 + 0 0 0 0 0 1 1 0 加六修正 + 0 1 1 0 0 0 0 0 加六修正 + 10 0 0 0 0 0 0 1 101结果正确 2.5 码与码制 减六修正规则: (1)如果两个BCD码位相减没有借位,则该位不需修正 。 (2)如果两个BCD码位相减有借位,则该位进行减六修 正。 例:5029=21 2.5 码与码制 0 1 0 1 0 0 0 0 50 0 0 1 0 0 0

温馨提示

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

最新文档

评论

0/150

提交评论