补码系统
在数字系统中,补指的是该数字与该数字的最大值的差。这个定义可以应用于不同的数字系统,它们的名称也不同。但一般来说,如果一个数的底数是N那么它就是(N-1)的补数。然而,如果我们用这个值加1就会得到N的补码。例如,让我们从十进制开始,因为我们最熟悉的数字系统。我们坐25路吧。可以用两种方法求出补码,因为它的底数是10,也就是(10 - 1)9的补。
方法1:第一种方法是从该数字的最高数减去该数字,这意味着必须从99减去数字。得到(99 - 25)= 74。
方法2:在第二种方法中,每个数字都被单独考虑,并从9中减去9,因为9是最高的。我们得到9 - 2,9 - 5也就是答案是74。所以我们得到了相同的答案,两种求补体的方法都是正确的,可以根据我们的意愿应用。
二进制数系统:现在来看看二进制数这是我们讨论的主要话题。它只有两个数字0和1,因此被称为二进制。它的底数是2,所以如果我们用这个数的最大值减去它就得到(2 - 11的补。如果1和它相加,我们就得到2的补码。同样,如果单个数字从1中减去(0和1中最大的),那么我们也会得到1的补码,并与之相加1将给出我们2的补。然而,幸运的是,我们还有另一种方法来求1的补码。我们不需要记住所有这些步骤来求出1和2的补数,但是一个简单的技巧就可以了。
这两种方法是相似的,我们之前已经讨论过,但我们可以使用新的方法或技巧来求1的补数。让我们打破悬念,看看不同的方法找出1和2的补用一个例子。例如,我们要找出2的补数0100。这里,在数字前面加一个零,使它成为一个四位数字。因为在二进制系统中,二进制的位数是以2的幂为单位的。
方法- 1在这个方法中,我们需要从1111减去它,因为它是最大的四位数1的补。1111 - 0100等于1011。2的补码是1011 + 1,也就是1100。
方法- 2这里,从1中减去每一位,得到1的补。结果是1 - 0,1 - 1,1 - 0,1 - 0,1 - 0等于1011。
2的补将是1011 + 1 = 1100。
方法- 3这里,我们只需要用0代替1用0代替1来求出1的补码。将1和结果相加会得到2的补数。
对于0100,我们将得到1的补码,只需用0替换1,用1替换0,这将得到结果1011。将结果加1得到(1011 + 1)= 1100。
所以在这三种方法中,我们看到我们得到了相同的结果,所有的方法都是正确的,人们可以根据其方便性使用其中的任何一种。
2是正数和负数的补码表示。
为什么我们需要2的补码?
使用的主要问题2的补它可以用于两个二进制数字的减法。正如我们所知,计算机只能理解二进制,而在计算机中没有所谓的负数二进制数字系统但是用二进制表示一个负数是绝对必要的,这可以通过给这个数分配一个符号位来实现,这个符号位是一个额外的位。如果符号位是1,那么number被认为是负的,如果它是0,那么它将被称为正数。
对于二进制数的减法,可以这样做-
从一个较大的数中减去一个较小的数
- 求2对较小数的补数。
- 把较大的数和较小的数的补数相加。
- 丢弃的。
- 丢弃进位后,保留将负责减法的结果。
用较小的数减去较大的数
- 求2的较大数的补数。
- 把2的较大数的补数与较小数相加。
- 如果没有进位,找到结果的2的补数,结果将是负的。
- 如果生成进位,丢弃进位,取结果,结果将是答案,并且符号将是负的。
用较小的数减去较大的数。
2的补码的优点
- 用2的补法可以做减法。
- 易于在较大的电路中实现。
- 的情况下,不需要执行前后进位1的补。
- 负数可以用2的补。