Binary 二进制加法溢出与求和正确性

Binary 二进制加法溢出与求和正确性,binary,addition,signed,twos-complement,Binary,Addition,Signed,Twos Complement,我需要一些关于以下主题的建议:添加两个有符号/量级和添加两个补码二进制数。我在纸上计算并上传了照片。对不起,如果我的照片是横向的(我不知道为什么上传会这样) 添加两个有符号/幅值 +6+(-6) 忽略进位1。总数是4,不正确。没有溢出,因为我们添加了两个具有不同符号指示符的数字0和1 +4+(+5) 总和为-1,不正确。溢出,因为我们添加了两个具有相同符号指示符0的数字 添加两个补码二进制数 +6+(-6) 忽略进位1。总和为0且正确。没有溢出,因为我们添加了两个具有不同符号指示符的数字0和1

我需要一些关于以下主题的建议:添加两个有符号/量级和添加两个补码二进制数。我在纸上计算并上传了照片。对不起,如果我的照片是横向的(我不知道为什么上传会这样)

添加两个有符号/幅值

  • +6+(-6) 忽略进位1。总数是4,不正确。没有溢出,因为我们添加了两个具有不同符号指示符的数字0和1

  • +4+(+5) 总和为-1,不正确。溢出,因为我们添加了两个具有相同符号指示符0的数字

  • 添加两个补码二进制数

  • +6+(-6) 忽略进位1。总和为0且正确。没有溢出,因为我们添加了两个具有不同符号指示符的数字0和1

  • +4+(+5) 总和为-7,不正确。溢出,因为我们添加了两个具有相同符号指示符0的数字

  • 通过我的示例,我是否正确理解了二进制加法溢出和求和正确性

    来自

    4.11.4。加减法 加减法需要注意符号位。如果符号相同,我们只需将大小作为无符号数字相加,然后观察溢出。如果符号不同,我们从较大的量中减去较小的量,并保留较大的符号

    所以对于符号大小,你第一个错了

    符号不同,所以你可以从较小的符号中减去较大的符号。因为它们是一样的,所以你选择什么并不重要。结果是0,这是正确的+0或-0。这没关系,因为它们都代表同一件事

    你把第二个也弄错了,因为对于+4+5的和,你应该保留符号+作为结果,然后加上大小。那是

    1         carry (ignore carry to the most sign bit)
    0100  +4
    0101  +5
    --------
    0001  +1
    
    结果为+1,进位检测到最高有效位(符号位)溢出

    查看此以了解更多信息


    2的补语

    你的答案是正确的:塔达: