计算机组成与结构运算方法,计算机组成与结构全第3章运算方法和运算部件.ppt...

计算机组成与结构全第3章运算方法和运算部件

第3章 运算方法和运算部件 3.1 数值的表示方法和转换 3.2 带符号的二进制数据在计算机中的表示方法及加减法运算 3.3 二进制乘法运算 3.4 二进制除法运算 3.5 浮点的运算方法 3.6 运算部件 3.7 数据校验码 习题 3.1 数据的表示方法和转换 3.1.1 数值型数据的表示和转换 1. 数制 日常生活中,人们广泛使用十进制数,任意一个十进制数(N)10可表示为: (N)10= Dm·10m+Dm-1·10m-1+…+D1·101+D0·100 +D-1·10-1+D-2·10-2+…+D-k·10-k = Di·10i (3.1) 其中,(N)10的下标10表示十进制,该数共有m+k+1位,且m和k为正整数;Di可以是0~9十个数码中的任意一个,根据Di在式中所处位置而赋以一个固定的单位值10i,称之为权(Weight)。式中的10称为基数或“底”。 在计算机中,十进制数的存储和运算都不太方便,于是二进制记数制应运而生。任意一个二进制数可表示为: (N)2=Dm·2m+Dm-1·2m-1+…+D1·21+D0·20+D-1·2-1+ D-2·2-2+…+D-k·2-k= Di·2i(3.2) 式中,整数部分有m+1位,小数部分有k位,基数(或底)为2。 二进制数(N)2按公式展开,可计算得该数的十进制表示。 例3.1 (1101.0101)2=(1·23+1·22+0·21+1·20+0·2-1+1·2-2+ 0·2-3+1·2-4)10=(8+4+0+1+0+0.25+0+0.0625)10 =(13.312 5)10 然而对人来说,二进制数无论是书写或阅读均很不方便,为此经常采用八进制数或十六进制数。 任意一个八进制数可表示为: (N)8= Di·8i(3.3) 式3.3中Di可为0~7八个数码中的任意一个。 例3.2 (15.24)8=(1·81+5·80+2·8-1+4·8-2)10 =(8+5+0.25+0.0625)10=(13.312 5)10 任意一个十六进制数可表示为: (N)16= Di·16i(3.4) 式3.4中,Di可以是0~15共十六个数中的任一个。为书写和辨认方便,通常用0~9和A~F分别表示十六进制数0~9和10~15。 例3.3 (0D.5)=(0·161+13·160+5·16-1)10 =(0+13+0.3125)10=(13.312 5)10 二进制数、八进制数、十六进制数和十进制数之间的关系见表3.1。 表3.1 二、八、十六和十进制数的对应关系 2. 不同数制间的数据转换 (1) 二进制数、八进制数和十六进制数之间的转换 八进制数和十六进制数是从二进制数演变而来的,由3位二进制数组成1位八进制数,4位二进制数组成1位十六进制数。对于一个兼有整数和小数部分的数,以小数点为界,对小数点前后的数分别分组进行处理,不足的位数用0补足,对整数部分将0补在数的左侧,对小数部分将0补在数的右侧。这样数值不会发生差错。 假如从二进制数转换到八进制数,则以3位为1组(用下划线表示)。 例3.4 (1 101.010 1)2=(001 101.010 100)2=(15.24)8 如从二进制数转换到十六进制数,则以4位为1组。 例3.5 (1 1101.0101)2=(0001 1101.0101)2=(1D.5)16 从八进制数或十六进制数转换到二进制数,只要顺序将每一位数写成3位或4位即可。 例3.6 (15.24)8=(001 101.010 100)2=(1101.0101)2 八进制数与十六进制数之间的转换,可将二进制数作为中间媒介进行转换。 (2) 二进制数转换成十进制数 利用上面讲到的公式(N)2= Di·2i进行计算。 (3) 十进制数转换成二进制数 通常要对一个数的整数部分和小数部分分别进行处理,各自得出结果后再合并。 对整数部分,一般采用除2取余数法,规则如下: 将十进制数除以2,所得余数(0或1)即为对应二进制数最低位的值。然后对上次所得的商除以2,所得余数即为二进制数次低位的值,如此进行下去,直到商等于0为止,最后得出的余数是所求二进制数最高位的值。 例3.7 将(105)10转换成二进制。 2 105 余数结果 2 521最低位 2 260 2 130… 2 61 2 30 2 11 01最高位 得出:(105)10=(1101001)2 对小数部分,一般用乘2取整数法,其规则如下: 将十进制数乘以2,所

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值