資料在計算機中表示形式原碼 反碼 補碼

2021-06-22 04:36:07 字數 2203 閱讀 4777

(1)原碼表示法

原碼表示法是機器數的一種簡單的表示法。其符號位用0表示正號,用:表示負號,數值一般用二進位制形式表示。設有一數為x,則原碼表示可記作[x]原。

例如,x1= +1010110

x2= 一1001010

其原碼記作:

[x1]原

=[+1010110]原

=01010110

[x2]原=[-1001010]原

=11001010

原碼表示數的範圍與二進位制位數有關。當用8位二進位制來表示小數原碼時,其表示範圍:

最大值為0.1111111,其真值約為(0.99)

10最小值為1.1111111,其真值約為(一0.99)

10當用8位二進位制來表示整數原碼時,其表示範圍:

最大值為01111111,其真值為(127)

10最小值為11111111,其真值為(-127)

10在原碼表示法中,對0有兩種表示形式:

[+0]原

=00000000

[-0]原

=10000000 (

2)補碼表示法

機器數的補碼可由原碼得到。如果機器數是正數,則該機器數的補碼與原碼一樣;**自:圖碼網)如果機器數是負數,則該機器數的補碼是對它的原碼(除符號位外)各位取反,並在未位加1而得到的。設有一數x,則x的補碼表示記作[x]補。

例如,[x1]=+1010110

[x2]= 一1001010

[x1]原

=01010110

[x1]補

=01010110

即      [x1]原

=[x1]補

=01010110

[x2]原

= 11001010

[x2]補

=10110101+1=10110110

補碼表示數的範圍與二進位制位數有關。當採用8位二進位制表示時,小數補碼的表示範圍:

最大為0.1111111,其真值為(0.99)

10最小為1.0000000,其真值為(一1)

10採用8位二進位制表示時,整數補碼的表示範圍:

最大為01111111,其真值為(127)

10最小為10000000,其真值為(一128)

10在補碼表示法中,0只有一種表示形式:

[+0]補

=00000000

[+0]補

=11111111+1=00000000(由於受裝置字長的限制,最後的進製丟失)

所以有[+0]補

=[+0]補

=00000000

(3)反碼表示法

機器數的反碼可由原碼得到。如果機器數是正數,則該機器數的反碼與原碼一樣;如果機器數是負數,則該機器數的反碼是對它的原碼(符號位除外)各位取反而得到的。設有一數x,則x的反碼表示記作[x]反。

例如:x1= +1010110

x2= 一1001010

[x1]原=01010110

[x1]反

=[x1

]原=01010110

[x2]原

=11001010

[x2]反

=10110101

反碼通常作為求補過程的中間形式,即在乙個負數的反碼的未位上加1,就得到了該負數的補碼。

例1. 已知[x]原

=10011010,求[x]補

。分析如下:

由[x]原

求[x]補

的原則是:若機器數為正數,則[x]原

=[x]補

;若機器數為負數,則該機器數的補碼可對它的原碼(符號位除外)所有位求反,再在未位加1而得到。現給定的機器數為負數,故有[x]補

=[x]原

十1,即

[x]原

=10011010

[x]反

=11100101

十)    1     

[x]補

=11100110

例2. 已知[x]補

=11100110,求[x]原。

分析如下:

對於機器數為正數,則[x]原

=[x]補

對於機器數為負數,則有[x]原

=[[x]補]補

現給定的為負數,故有:

[x]補

=11100110

[[x]補]反

=10011001

十)         1   

[[x]補]補

=10011010=[x]原

原碼 反碼 補碼,計算機中負數的表示

原碼 將乙個整數,轉換成二進位制,就是其原碼。如單位元組的5的原碼為 0000 0101 5的原碼為1000 0101。反碼 正數的反碼就是其原碼 負數的反碼是將原碼中,除符號位以外,每一位取反。如單位元組的5的反碼為 0000 0101 5的反碼為1111 1010。補碼 正數的補碼就是其原碼 負...

原碼 反碼 補碼,計算機中負數的表示

原碼 將乙個整數,轉換成二進位制,就是其原碼。如單位元組的5的原碼為 0000 0101 5的原碼為1000 0101。反碼 正數的反碼就是其原碼 負數的反碼是將原碼中,除符號位以外,每一位取反 如單位元組的5的反碼為 0000 0101 5的反碼為1111 1010。補碼 正數的補碼就是其原碼 負...

計算機中原碼 反碼 補碼

首先要明白,在計算機中,數以二進位制的形式存在,其中有無符號數和有符號數 無符號數的,相當於十進位制中的自然數,沒有負數,因此八位無符號數的範圍 00000000 11111111,而有符號數的最高位表示符號,最高位為0表示整數 0000 0001 1 最高位為1表示負數 1000 0001 1 原...