zoukankan      html  css  js  c++  java
  • 汇编语言中溢出和进位的区别

    of的设置,以加法为例,如果两数符号相同,结果却相反,则of=1;否则of=0;(如果两数符号相反,是不会溢出的)。 
    cf的设置,最高有效位(bit7,比如)向高位进位则为1,否则为0。所以实际上of是表示有符号数的溢出,cf是表示无符号数的溢出。 
    理解进位,从af位的设置更为容易。

    其他回答

    A的补码与B的补码计算后(   加减)为C的补码 
    把C的补码看成无符号数,意义与C相同就是CF=0否则CF=1 
    把C的补码看成有符号数,意义与C相同就是OF=0否则OF=1

    对于非符号数来说,不存在溢出的问题,它的进位就相当于符号数中的溢出. 
    而对于符号数来说,不存在进位的问题.两个正数相加(或一个正数减一个负数)得到负数,或是两个负数相加得到正数,就是溢出了.一个正数和一个负数相加不可能溢出
    最佳答案
    对于非符号数来说,不存在溢出的问题,它的进位就相当于符号数中的溢出. 
    而对于符号数来说,不存在进位的问题.两个正数相加(或一个正数减一个负数)得到负数,或是两个负数相加得到正数,就是溢出了.一个正数和一个负数相加不可能溢出
    最佳答案
    对于非符号数来说,不存在溢出的问题,它的进位就相当于符号数中的溢出. 
    而对于符号数来说,不存在进位的问题.两个正数相加(或一个正数减一个负数)得到负数,或是两个负数相加得到正数,就是溢出了.一个正数和一个负数相加不可能溢出

    溢出……值不能太大。太大就会溢出。 

    比如在内存里计算一个数据, 
    这个数据只在一个字节里计算。 
    那这个数据就不能大于255,就会溢出 


    1+1=10,10中的1就是从个位上进上来的

    汇编语言中溢出是指结束超出数据所表示的范围,通俗地说是装不下了,比如,两个带符号的字节数127和2相加,结果为-1,因为带符号的字节数最大正数为127,所以超过范围,溢出标志位为1,说明出错了。 
    进位表示最高位有没有向上形成进位,或向个形成借位,如果有则进位标志为1,但结果没错。

    汇编语言中存储的数是有一定范围的,无符号字节存储的范围为0~255,带符号字节存储范围为-128~+127。溢出是指结束超出数据所表示的范围,说明出错了。 
    进位表示相加时最高位有没有向上形成进位,或相减时向上形成借位,如果有则进位标志为1,但结果没错

    摘自:http://hi.baidu.com/yesdo/blog/item/079f49e92872823bb90e2d63.html

  • 相关阅读:
    hud 1397
    hdu 1211
    hdu 1124
    hdu 1104
    1788
    hdu 1796
    sdut 2169
    hdu 1019
    $http post 取不到数据
    sql
  • 原文地址:https://www.cnblogs.com/yangzhong/p/1966494.html
Copyright © 2011-2022 走看看