二進位制正,負數的原碼,反碼,補碼三者之間是什麼關係

時間 2021-08-14 02:12:18

1樓:小肥楊媽媽

(1)正數的補碼表示與原碼相同;

(2)負數的補碼是將原碼符號位保持「1」之後,其餘各位按位取反,末位再加1便得到補碼,即取其原碼的反碼再加「1」:[x]補=[x]反+1。;

(3)列出 的8位二進位制原碼,反碼和補碼並將補碼用十六進製制表示。

內容拓展:

一、二進位制

1、是計算技術中廣泛採用的一種數制。二進位制資料是用0和1兩個數碼來表示的數。它的基數為2,進製規則是「逢二進一」,借位規則是「借一當二」,由18世紀德國數理哲學大師萊布尼茲發現。

2、當前的計算機系統使用的基本上是二進位制系統,資料在計算機中主要是以補碼的形式儲存的。計算機中的二進位制則是乙個非常微小的開關,用1來表示「開」,0來表示「關」。

二、在計算機中,數的正負號是用0,1表示。

三、真值為正時。其原碼,反碼,補碼完全相同。

四、 真值為負時,其原碼就是把負號改為1,其餘不變。反碼就是負號改為1,其餘取反。

五、補碼就是在反碼的基礎上加1,加1時記得是逢2進1。

2樓:暴暎千初南

2、符號位的表示:最常用的表示方法有原碼、反碼和補碼。

(1)原碼表示法:乙個機器數x由符號位和有效數值兩部分組成,設符號位為x0,x真值的絕對值|x|=x1x2x3...xn,則x的機器數原碼可表示為:

[x]原=

,當x>=0時,x0=0,當x<0時,x0=1。

例如:已知:x1=-1011b,x2=

+1001b,則x1,x2有原碼分別是

[x1]

原=11011b,[x2]原=01001b

規律:正數的原碼是它本身,負數的原碼是取絕對值後,在最高位(左端)補「1」。

(2)反碼表示法:乙個負數的原碼符號位不變,其餘各位按位取反就是機器數的反碼表示法。正數的反碼與原碼相同。

按位取反的意思是該位上是1的,就變成0,該位上是0的就變成1。即1=0,0=1

(3)補碼表示法:

首先分析兩個十進位制數的運算:78-38=41,79+62=141

如果使用兩位數的運算器,做79+62時,多餘的100因為超出了運算器兩位數的範圍而自動丟棄,這樣在做78-38的減法時,用79+62的加法同樣可以得到正確結果。

模是批乙個計量系統的測量範圍,其大小以計量進製的基數為底數,位數為指數的冪。如兩位十進位制數的測量範圍是1——9,溢位量是100,模就是102=100,上述運算稱為模運算,可以寫作:

79+(-38)=79+62

(mod

100)

進一步寫為

-38=62,此時就說

–38的補法(對模100而言)是62。計算機是一種有限字長的數字系統,因此它的運算都是有模運算,超出模的運算結果都將溢位。n位二進位制的模是2n,

乙個數的補碼記作[x]補,設模是m,x是真值,則補碼的定義如下:

例:設字長n=8位,x=-1011011b,求[x]補。

解:因為

n=8,所以模

m=28=100000000b,x<0,所以

[x]補=m+x=100000000b-1011011b=10100101b

注意:這個x的補碼的最高位是「1」,表明它是乙個負數。對於二進位制數還有一種更加簡單的方法由原碼求出補碼:

(1)正數的補碼表示與原碼相同;

(2)負數的補碼是將原碼符號位保持「1」之後,其餘各位按位取反,末位再加1便得到補碼,即取其原碼的反碼再加「1」:[x]補=[x]反+1。

下表列出

的8位二進位制原碼,反碼和補碼並將補碼用十六進製制表示。

真值原碼(b)

反碼(b)

補碼(b)

補碼(h)

+127

0111

1111

0111

1111

0111

1111

7f+39

0010

0111

0010

0111

0010

0111

27+0

0000

0000

0000

0000

0000

0000

00-0

1000

0000

1111

1111

0000

0000

00-39

1010

0111

1101

1000

1101

1001

d9-127

1111

1111

1000

0000

1000

0001

81-128

無法表示

無法表示

1000

0000

80從上可看出,真值+0和-0的補碼表示是一致的,但在原碼和反碼表示中具有不同形式。8位補碼機器數可以表示-128,但不存在+128的補碼與之對應,由此可知,8位二進位制補碼能表示數的範圍是-128——+127。還要注意,不存在-128的8位原碼和反碼形式。

3樓:幹疇鐘之桃

正數的原碼、補碼和反碼相同。

負數的反碼等於原碼按位取反,補碼等於反碼加1。

二進位制正,負數的原碼,反碼,補碼三者之間是什麼關係

4樓:小肥楊媽媽

(1)正數的補碼表示與原碼相同;

(2)負數的補碼是將原碼符號位保持「1」之後,其餘各位按位取反,末位再加1便得到補碼,即取其原碼的反碼再加「1」:[x]補=[x]反+1。;

(3)列出 的8位二進位制原碼,反碼和補碼並將補碼用十六進製制表示。

內容拓展:

一、二進位制

1、是計算技術中廣泛採用的一種數制。二進位制資料是用0和1兩個數碼來表示的數。它的基數為2,進製規則是「逢二進一」,借位規則是「借一當二」,由18世紀德國數理哲學大師萊布尼茲發現。

2、當前的計算機系統使用的基本上是二進位制系統,資料在計算機中主要是以補碼的形式儲存的。計算機中的二進位制則是乙個非常微小的開關,用1來表示「開」,0來表示「關」。

二、在計算機中,數的正負號是用0,1表示。

三、真值為正時。其原碼,反碼,補碼完全相同。

四、 真值為負時,其原碼就是把負號改為1,其餘不變。反碼就是負號改為1,其餘取反。

五、補碼就是在反碼的基礎上加1,加1時記得是逢2進1。

5樓:

近至正負的原碼,反碼補碼三者之間的關係是正碼和駙馬他倆是相反的,賦碼和正碼是相輔相成的。

6樓:紫水晶

原碼就是原來上多少就是多少了啊,反碼就是正炒負,負產正,補碼就是厘公尺變一,一變零,這就是這樣吧,很容易記得把,常用就好了。

7樓:gta小雞

正數的原碼、補碼和反碼相同。

負數的反碼等於原碼按位取反,補碼等於反碼加1。

8樓:希賽教育

以8位二進位制為例,

正數的原碼、反碼、補碼相同,

負數的反碼為:除符號位外,原碼各位取反,反碼加1,得負數的反碼.

下面就對於原碼,反碼,補碼詳細分析一下:

原碼:將乙個整數,轉換成二進位制,就是其原碼。如單位元組的5的原碼為:0000 0101;-5的原碼為1000 0101。

反碼:正數的反碼就是其原碼;負數的反碼是將原碼中,除符號位以外,每一位取反。如單位元組的5的反碼為:0000 0101;-5的反碼為1111 1010。

補碼:正數的補碼就是其原碼;負數的反碼+1就是補碼。如單位元組的5的補碼為:0000 0101;-5的原碼為1111 1011。

在計算機中,正數是直接用原碼表示的,如單位元組5,在計算機中就表示為:0000 0101。

負數用補碼表示,如單位元組-5,在計算機中表示為1111 1011。

9樓:暖憶江南

可以通過原碼、反碼和補碼三者的含義及關係來介紹三者之間的換算關係:1、原碼原碼就是符號位加上真值的絕對值,即用第一位表示符號,其餘位表示值。比如如果是8位二進位制:

[+1]原=00000001[-1]原=10000001第一位是符號位。2、反碼正數的反碼是其本身負數的反碼是在其原碼的基礎上,符號位不變,其餘各個位取反.[+1]=[00000001]原=[00000001]反[-1]=[10000001]原=[11111110]反第一位是符號位。

3、補碼正數的補碼就是其本身負數的補碼是在其原碼的基礎上,符號位不變,其餘各位取反,最後+1.(即在反碼的基礎上+1)[+1]=[00000001]原=[00000001]反=[00000001]補[-1]=[10000001]原=[11111110]反=[11111111]補第一位是符號位。注:

補碼的補碼等於原碼,如:-1的補碼為11111111,則11111111的反碼為10000000補碼為10000001(-1的原碼)。

10樓:匿名使用者

倒數第三行有誤,應該是「-5的補碼為1111 1011」,原文寫為「原碼」,係為筆誤。

對於正數,其原碼、反碼、補碼是相同的嗎

11樓:丶兔牙媽媽

相同的,正數的原碼=反碼=補碼。引進補碼的作用是為了讓計算機更方便做減法。

例如:按時間12個小時來算,現在的準確時間是4點,有乙個表顯示的是7點,如果要校準時間,我們可以將時針退7-4=3格,也可以向前撥12-3=9格,計算機做減法就可以轉化成-3=+9,這樣可以簡化計算機的硬體裝置去做複雜的減法。

然而得到補碼的定義:正數時仍為正,而負數x求補要從2減去|x|。本就為了簡化減法引進的補碼,結果在求補的過程中還是出現減法。

這樣,再引進了反碼表示法方便求補。補碼反碼就是為了簡化減法而來的,將減號化為負數,再將負數化為補碼求加法,跟正數沒關係。所以不管是正整數還是正小數,原碼,反碼,補碼都全部相同。

原碼是一種計算機中對數字的二進位制定點的表示方法。原碼是指乙個二進位制數左邊加上符號位後所得到的碼,且當二進位制數大於0時,符號位為0;二進位制數小於0時,符號位為1;二進位制數等於0時,符號位可以為0或1。原碼是有符號數的最簡單的編碼方式,便於輸入輸出,但作為**加減運算時較為複雜。

數值位表示真值的絕對值。凡不足n-1位的,小數在最低位右邊加零;整數則在最高位左邊加零以補足n-1位。**中的小數點」.

」是在書寫時為了清晰起見加上去的,在機器中並不出現。

補碼在計算機系統中,數值一律用補碼來表示和儲存。原因在於,使用補碼,可以將符號位和數值域統一處理;同時,加法和減法也可以統一處理。此外,補碼與原碼相互轉換,其運算過程是相同的,不需要額外的硬體電路。

計算機中的符號數有三種表示方法,即原碼、反碼和補碼。三種表示方法均有符號位和數值位兩部分,符號位都是用0表示「正」,用1表示「負」,而數值位,三種表示方法各不相同。對於計算機,其概念和方法完全一樣。

n位計算機,設n=8,所能表示的最大數是11111111,若再加1成為100000000(9位),但因只有8位,最高位1自然丟失。又回了00000000,所以8位二進位制系統的模為2^8。在這樣的系統中減法問題也可以化成加法問題,只需把減數用相應的補數表示就可以了。

把補數用到計算機對數的處理上,就是補碼。

反碼是數值儲存的一種,但是由於補碼更能有效表現數字在計算機中的形式,所以多數計算機都不採用反碼表示數。

關於二進位制負數的補碼,二進位制負數的補碼的原理為什麼要用補碼的形式改更負

胖大熙 求負整數的補碼,將其原碼除符號位外的所有位取反 0變1,1變0,符號位為1不變 後加1。同一個數字在不同的補碼錶示形式中是不同的。比如 15的補碼,在8位二進位制中是11110001,然而在16位二進位制補碼錶示中,就是1111111111110001。以下都使用8位2進位制來表示。例子 求...

二進位制的補碼多少位?8位二進位制補碼計算步驟是什麼

這個,可以自定義。最大的位數,取決於你的計算機,記憶體的大小。8位二進位制補碼計算步驟是什麼?正數 零的補碼,與其數值相同。負數的補碼,用 256 加上該數。補碼的計算步驟,與普通的二進位制計算步驟,完全相同。1 補碼是抄把減法用加法計算,採用進製丟的方法得到結果時應該補足的數。位二進位制補碼的計算...

二進位制數 1101010的補碼是

是101100。負數的補碼是對其原碼逐位取反,但符號位除外 然後整個數加1。1000110逐位取反,符號位除外,得 0111001。整個數加1,得 0111010。把負號變成1,得的 1000110的補碼是 10111010。二進位制數有兩個特點 它由兩個基本字元0,1組成,二進位制數運算規律是逢二...