全部科目 > 网络管理员 >
2018年下半年 上午试卷 综合知识
第 14 题
知识点 二进制数运算方法   算术运算  
关键词 带符号   数据   算术运算  
章/节 算术运算  
 
 
采用( )表示带符号数据时,算术运算过程中符号位与数值位采用同样的运算规则进行处理。
 
  A.  补码
 
  B.  原码
 
  C.  反码
 
  D.  海明码
 
 




 
 
相关试题     计算机中的二进制数运算方法 

  第14题    2015年上半年  
机器字长确定后,()运算过程中不可能发生溢出。

  第2题    2009年上半年  
设两个8位补码表示的数b7b6b5b4b3b2b1b0和a7a6a5a4a..

  第5题    2014年下半年  
在定点二进制运算中,减法运算一般通过( )来实现。

 
知识点讲解
· 二进制数运算方法
· 算术运算
 
        二进制数运算方法
        1)定点数的加减运算
        虽然原码与人的思维方式一致,但是运算时要单独处理符号位,而且0的表示不唯一,反码也存在同样的问题。所以计算机中定点数的加减运算用补码,符号位可一起处理。
        补码加法运算规则:和的补码等于补码的和,即[X+Y]=[X]+[Y]
        补码减法运算规则:差的补码等于被减数的补码加上减数取负后的补码。由[Y求[-Y的方法是[Y]各位取反然后末位加1,即[X-Y=[X]+[-Y
        字长为n的计算机整数的表示范围为-2n-1~2n-1-1,所以进行加减运算时要判断是否溢出。判断溢出方法除了能根据两数符号及运算结果符号判断外,还可以利用双进位位状态判断和利用变形码判断。
        双进位位状态判断规则是:两个补码数实现加减运算时,若最高数值位向符号位的进位值与符号位产生的进位输出值不相同,则表明加减运算产生了溢出,可表示为
        OVR=Cn-1CnCn-1是最高数值位的进位值,Cn是符号位的进位值)
        在右边的例子中,Cn-1=1,Cn=0,则OVR=1,有溢出。
        变形码判断规则是:用两位二进制数表示符号位,用00表示正数,用11表示负数,当两位符号位不同时,即结果为01表明两个正数相加结果大于机器所能表示的最大正数,称为"上溢";10表明两个负数相加小于计算机所能表示的最小负数,称为"下溢"。
        
        2)定点数的乘除运算
        定点数的乘除运算可以用原码和补码分别实现。
        原码乘(除)法:乘积的符号位由被乘(除)数和乘(除)数的符号位异或得到;数值部分由被乘(除)数和乘(除)数数值部分相乘(除)得到,方法与十进制乘法类似。
        补码乘法:当两个乘数为正数时,[X×Y=[X×[Y,当Y为负数时,是用[X乘以[Y的数值位,然后再加上[-X]。另外,还有用逻辑电路实现的由Booth夫妇提出来的比较法,可避免区分乘数的符号。
        3)浮点数的加减运算
        浮点数经常被写成
        N=2J×S
        式中,S为数N的尾数,为规格化的二进制小数,机器中多用原码或补码表示;J为数N的阶码,为二进制整数,机器中多用移码或补码表示。
        假定有两个浮点数,即
        
        实现加减运算要分以下几步。
        (1)对阶操作。比较两个浮点数的阶码值的大小,求△J=J1-J2。当其不等于0时,将原来阶码小的数的尾数右移|△J|位,其阶码加上|△J|。尾数右移时,对原码表示的尾数,符号位不参加移位,尾数高位补0;对补码表示的尾数,符号位要参加右移并保持不变。
        (2)尾数运算。实现尾数加减运算,若得到的结果不满足规格化规则,就进行规格化处理。
        当结果尾数的两个符号位不同时尾数运算溢出,此时应使尾数右移一位,阶码加1,称之为右规;当结果尾数不溢出时,但最高数值位与符号位相同时,应重复地使尾数左移,阶码减1,直到出现最高数值位与符号位不同时为止,称之为左规。
        (3)舍入操作。在对阶和右规操作时,尾数低位上的若干位数值被移掉,会产生误差。可进行截断处理,无条件丢弃这些值;也可把这些值保存起来,最后采用0舍1入的方法处理,这样做很可能使尾数溢出,此时再做右规处理;或者若有被丢掉的值,则将末位恒置为1。
        (4)检查阶码。检查阶码是否溢出。
        4)浮点数的乘除运算
        两个浮点数相乘,其乘积的阶码应为相乘两个数的阶码之和,其尾数应为相乘两数尾数之积。两个浮点数相除,商的阶码应为被除数阶码减去除数阶码的差,尾数应为被除数尾数除以除数尾数的商。乘除运算都可能出现结果溢出,或者不满足规格化要求,也必须进行检查和处理。
 
        算术运算
               二进制算术运算规则
               (1)加法:二进制加法的进位规则是“逢二进一”。
               0+0=01+0=10+1=11+1=0(有进位)
               (2)减法:二进制减法的借位规则是“借一当二”。
               0-0=01-0=11-1=00-1=1(有借位)
               (3)乘法:
               0×0=01×0=00×1=01×1=1
               机器数的加减运算
               在计算机中,可以只设置加法器,而将减法运算转换为加法运算来实现。
               (1)补码加法的运算法则是:和的补码等于补码求和,即[X+Y]=[X]+[Y]
               (2)补码减法的方法是:差的补码等于被减数的补码加上减数取负后的补码。因此,在补码表示中,可将减法运算转换为加法运算,即[X-Y]补=[X]+[-Y]
               (3)由[X]求[-X]的方法是:[X]的各位取反(包括符号位),末尾加1。
               溢出及判定
               在确定了运算的字长和数据的表示方法后,数据的范围也就确定了。一旦运算结果超出所能表示的数据范围,就会发生溢出。发生溢出时,运算结果肯定是错误的。
               只有当两个同符号的数相加(或者是相异符号数相减)时,运算结果才有可能溢出。
               机器数的乘除运算
               在计算机中实现乘除法运算,通常有如下三种方式。
               (1)纯软件方案,在只有加法器的低档计算机中,没有乘、除法指令,乘除运算是用程序来完成的。这种方案的硬件结构简单,但进行乘除运算时速度很慢。
               (2)在现有的能够完成加减运算的算术逻辑单元ALU的基础上,通过增加少量的实现左、右移位的逻辑电路,来实现乘除运算。与纯软件方案相比,这种方案增加硬件不多,而乘除运算的速度有了较大提高。
               (3)设置专用的硬件阵列乘法器(或除法器),完成乘(除)法运算。该方案需付出较高的硬件代价,可获得最快的执行速度。
               浮点运算
                      浮点加减运算
                      设有浮点数X=M×2iY=N×2j,求X±Y的运算过程如下。
                      (1)对阶。使两个数的阶码相同。令K=|i-j|,把阶码小的数的尾数右移K位,使其阶码加上K
                      (2)求尾数和(差)。
                      (3)结果规格化并判溢出。若运算结果所得的尾数不是规格化的数,则需要进行规格化处理。当尾数溢出时,需要调整阶码。
                      (4)舍入。在对结果进行右移时,尾数的最低位将因移出而丢掉。另外,在对阶过程中也会将尾数右移使最低位丢掉。这就需要进行舍入处理,以求得最小的运算误差。舍入处理的方法如下。
                      ①截断法。将要保留的数据末位右边的数据全都截去,不管数据是0还是1。
                      ②末位恒1法。将要保留的末位数据恒置1,不管右移丢掉的数据是0还是1。
                      ③0舍1入法。舍去的数据为0时,保持末位原始状态。若舍去的数据为1,则将末位加1。这类似于十进制中的四舍五入。但当数据为0.1111…1,即在尾数全为1的特殊情况下,这种舍入会再次产生溢出。遇到这种情况可用硬件判断,并在舍去1时末位不再加1。
                      (5)溢出判别。以阶码为准。若阶码溢出(超过最大值),则运算结果溢出;若阶码下溢(小于最小值),则结果为0,否则结果正确无溢出。
                      浮点乘除运算
                      浮点数相乘,其积的阶码等于两乘数的阶码相加,积的尾数等于两乘数的尾数相乘。浮点数相除,其商的阶码等于被除数的阶码减去除数的阶码,商的尾数等于被除数的尾数除以除数的尾数。乘除运算的结果都需要进行规格化处理并判断阶码是否溢出。



更多复习资料
请登录电脑版软考在线 www.rkpass.cn

京B2-20210865 | 京ICP备2020040059号-5
京公网安备 11010502032051号 | 营业执照
 Copyright ©2000-2023 All Rights Reserved
软考在线版权所有