補碼存在的意義,補碼的準確定義

2024-12-31 16:35:10 字數 4401 閱讀 3278

1樓:做而論道

補碼,實際上是「代替負數做運算」的正數。

當位數限定之後,數字的變化,就是週期性的。

比如 2 位 10 進位數:00~99,週期就是 10^2 = 100。

那麼,25 - 1 = 24

25 + 99 = 一百) 24

略去週期值,+99 和-1 的功能就是相同的。

因此,+99,就稱為-1 的補數。

同樣,+98,就是-2 補數。

演算法: 補數 = 負數 + 週期。在二進位中,這就是補碼。

計算機每次計算,位數,也是限定的。

八位機,就是 8 位數,16 位機,就是 16 位數。

那麼:補碼 = 負數 + 2^n。式中:

n 是補碼的位數。2^n 是 n 位數的週期。用上了補碼,計算機中,就沒有負數了。

因此一來,計算機中,也就沒有減法了。

那麼,計算機只用乙個加法器,就打遍天下了。

2樓:沙裡波特

計算機中,只有補碼,並沒有原碼反碼。

正負數,在計算機中,就是以補碼形式存在的。

利用補碼,就可把加減法,統一用加法實現。

其原理,要從「補數」講起。)

補碼存在的意義,就是:簡化硬體,降低計算機的成本,為廠家增加利潤。

補碼的準確定義

3樓:令溫甕秀

原碼是一串二進位數,是原始資料,最高位為符號位,正數為0,負數為1.

反碼是對原碼各位進行求反得到,不改變符號位。

補碼分兩種情況:

1,對正數來說,補碼即原碼。

2,對負數來說,補碼是原碼的反碼再加上1.

計算機中一般用補碼來表示資料。

4樓:做而論道

補碼,是乙個「代替負數進行運算的正數」。

定點小數的補碼(mod=2)的定義式是:

x]補 = x ( 0 ≤ x < 1 )[x]補 = 2 + x (-1 ≤ x < 0 )定點整數的補碼(mod=2^n)的定義式是:

x]補 = x ( 0 ≤ x < 2^(n-1) )x]補 = 2^n-| x | 2^(n-1) ≤x < 0 )其中 n 是 2 進位的位數。

補碼的意義

5樓:做而論道

在計算機系統中,數值,一律採用補碼錶示和儲存。

原碼和反碼,在計算機中,都是沒用的,也都是不存在的。

補碼的意義,得從「補數」談起。

你看 2 位 10 進位的計算:

25 + 99 = 一百) 24

只要你捨棄超出 2 位數的進位,+99 就和-1 是等效的。

加法,也就代替了減法。

同樣,+98,也可以代替-2。

這些正數,就是「負數的補數」。

利用補數,在計算過程中,就沒有負數了。

同時,也就沒有了減法運算。

求補數的公式,小學生都能寫出來:

補數=負數+10^n,

n 是補數的位數,

10^n 是 n 位數的計數週期。

計算機用二進位,補數,就稱為:補碼。

補碼,就是「代替負數」的正數。

使用了補碼,不僅可以簡化演算法,而且還能簡化硬體。

求二進位補碼的公式,依然是:

補碼=負數+2^n。

在乙個位元組中,n = 8,計數週期是:2^8 = 256。

1 的補碼,就是:255 = 1111 1111 (二進位),-2 的補碼,就是:254 = 1111 1110,-128 的補碼,是:128 = 1000 0000。

求補碼,用「原碼反碼取反加一符號位不變」就費事了。

那些說法,都沒有任何理論依據。

而且,也說不明白「補碼是什麼意思?」。

老外算術不行,也弄不懂週期的意思,才編造出這些騷操作。

我們的計算機專業老師,跟風講這些,就是想多賺點課時費而已。

補碼是什麼?

6樓:沙裡波特

在數學中,有個概念,叫做:補數

鐘錶,倒撥 2 小時,可以用正撥 10 小時來代替。

即:-2 的補數,就是 10。

對於兩位十進位數,減一,可以用加 99代替

如: 25 - 1 = 24

忽略進位 1 百,結果就是相同的。

即:-1 的補數,就是 99。

計算機中,以八位二進位,作為乙個位元組。

1,可以用 1111 1111 (即十進位 255) 來代替。

即:-1 的補數(補碼),就是 1111 1111 (=255)。

即:256+這個負數,這就是【負數補碼的定義式】。

正數,不用做任何變換,也可以說:【正數沒有補碼】。

利用補碼,計算機用乙個加法器,就可以做減法運算了。

7樓:大狂哥灬

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

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

特性:1、乙個負整數(或原碼)與其補數(或補碼)相加,和為模。

2、對乙個整數的補碼再求補碼,等於該整數自身。

3、補碼的正零與負零表示方法相同。

8樓:111111前的

補碼可以簡化計算機的設計。

對於人腦而言,做加減題時,第一反應就是根據符號位,來選擇對真值區域的加減。但是計算機而言,像加減乘除這類最最基礎也是應用得最頻繁的基本運算,在物理邏輯的設計上一定要設計的儘量簡單。

如果讓計算機也先判斷符號位再分別做加或者減的運算的話,會使得計算機的電路設計變得較為複雜。人類發明了將符號位也參與進運算的方法來。對於計算機而言,不管是加法還是減法,都統一用加法來做運算,可以使得計算機的設計變得更加的簡單。

9樓:沙裡波特

這個問題,不用討論計算機怎樣怎樣。

人,就是這樣算的。

乙個小孩,很小的,只會數 100 個數。

能做加法,還不會做減法。

那麼,減一,你就可以教他:加 99。比如:

對這個小孩來說,結果,不是一樣嗎?

99,就是-1 的補數。

由此,就能推出,計算機的補碼:

255,就是-1 的補碼;

254,就是-2 的補碼;

10樓:做而論道

存在意義,就是:簡化硬體,省錢。因為,負數,是可以用乙個正數(補碼)代替的。

如: 24 - 1 = 23

24 + 99 = 一百) 23

忽略進位,用 +99 就可以代替-1。

99,就是-1 的補數。 計算機用二進位,就稱為:補碼。

用補碼(正數)代替負數,那麼,計算機中,就沒有負數了。

因此,在計算機中,也就只有加法運算了。

所以,在計算機中,只需設定乙個加法器,便可加減通吃了。

240的原碼,反碼,補碼 250的原碼,反碼 補碼各是什麼

240是正數 所以原碼,補碼,反碼都是一樣的 為 0000 0000 1111 0000,250是負數,最高位代表1代表負數,為 原碼 1000 0000 1111 1010,反碼 1111 1111 0000 0101,補碼 1111 1111 0000 0110 原碼就是這個數的二進位制碼 反碼...

為啥整數的補碼是其本身 0001 的補碼是多少

其實,補碼,它就是一個 代表負數 的正數。使用了補碼之後,計算機中,就沒有負數了。而且,也就沒有減法運算了。那麼,計算機中,只需配置一個加法器,就可以走遍天下了。補碼 一個正數 怎麼就能代表負數呢?你看 10 進位制 28 1 27 28 99 一百 27 只要你限制在2 位數,超過 2 位就捨棄!那...

原碼 反碼 補碼的理解,原碼 反碼 補碼的基本概念

在計算機系統中,數值,一律採用 補碼 來表示和儲存。原碼和反碼,都是不用的。所謂的 補碼 實際上,是一個 代替負數做運算 的正數。因為,使用了正數 即補碼 代替了負數,所以,在計算機中,也就沒有了減法運算。那麼,只需配置一個加法器,就可以走遍天下了。而原碼和反碼,都沒有這種功能。所以,它們在計算機中...