你的位置: 首页 > 家电弱电 > 电子技术

数字电路中的正负数表示

2016-12-14 12:43:05 | 人围观 | 评论:

数字电路只认识二进制数,所以正负数肯定也用二进制数表示。其方法是在一个数的最高位前设置一位符号位。符号位为“0”时,表示该数为正数,符号位为“1”时,表示该数为负数。这样规定后的表示形式有三种:

1 . 正负数的“原码”表示

原码表示规定:符号位加上原数的数值部分组成,即[X]原=符号位+原数值。

如:X1=+1001010→ [X1]=01001010;X2=-1001010→ [X2]=11001010,这种原码表示方法,适用于两数相乘,因为乘积的符号位只要将两乘数符号位相异或即可。

2 . 正负数的“反码”表示

反码表示有二种情况:如果原数值为正数,则该数的反码为符号位加上原数值;如果原数值为负数,则该数的反码为符号位加上原数值的反码。即[X]=符号位+原数值,X为正数;[X]=符号位+原数值反码,X为负数。
如: X1=+1001010→ [X1]=01001010;X2=-1001010→ [X2]=10110101。

3 . 正负数的“补码”表示

补码(补数)可以从生活中来认识:如早晨7:00起床时,发现时钟停在10:00,要校到7:00时,有二种方法,一种是顺时针拔9个小时,另一种是反时针拔3个小时,都可以将时钟校到7:00。由于时钟走一圈是12小时,12将自动丢失,所以,对走一圈12小时这个最大数而言,顺拔时的10+9=12+7和反拔时10-3=7是等价的。因此,+9和-3就称为最大数12的互为补数(或补码),最大数(12)又称模。从上述可见,用补码表示可以把一个减法运算变换成加法。

一个n位的二进制补码用下式求得:

如:二进制数1010的补码是:。但实际操作时,有二种直接求法,一是原二进制数的反码加1求得补码;另一种是:从原二进制数的最低位开始,在遇到1(包括该1)之前,原数不变,其后数码按位求反,也可得到一个二进制数的补码。所以正负数的补码表示为:[X]=符号位+原数值,X为正数;[X]=符号位+原数值补码,X为负数。如: X1=+1001010→[X1]=01001010;X2= -1001010→[X2]=10110110。补码的运算规则:补码+补码=补码,补码再求补=原码。因此,减法运算X1-X2可用[X1]补码+[-X2]补码的加法运算处理。

例1:1100-1001=01100+10111=100011,其中,最高位丢失,留下符号位为0,所以结果是+3。

例2:1001-1100=01001+10100=11101,其中,11101是补码,符号位不变,数值再求补后得实际数,所以结果是-0011,即-3。





标签:

相关内容推荐: