1樓:做而論道
補碼,其實,它就是一個「代替負數」的正數。
使用了補碼,計算機中,就沒有負數了,也就沒有減法了。
那麼,計算機只需要一個加法器,就可以走遍天下了。
為什麼使用補碼?
就是為了簡化計算機的硬體。
補碼(也就是正數),怎麼就能代表負數呢?
其實,道理也很簡單。
你看2 位 10 進位制數吧:
25 + 99 = 一百) 24
進位是10^2 = 100,這也是 2 位數的計數週期。
這個進位,顯然不在 2 位數之中。
結果,只取 2 位數,+99和-1 的作用,就是相同的。
就是說,只要捨棄了進位,正數,就可以代替負數。
這個正數,就是「負數的補數」。
求補數的公式: 補數 = 負數 + 週期。
-π/2 和 +3π/2,這兩個角度,功能也是相同的。
負角度,和正角度,要怎麼變換呢?
也是用同樣的公式: 正角度 = 負角度 + 週期(2π)。
計算機用二進位制,補數,就改稱為:補碼。
8 位 2 進位制是:0000 0000~1111 1111 (十進位制 255)。
其計數週期是:2^8 = 256。
此時,-1 就可以用 255 (1111 1111) 代替。
同理,-2 的補碼就是 254 (1111 1110)。
正數,本身就是正數,必須直接參加運算,不許再作任何變換。
所以,正數,根本就沒有補數(補碼)。
由此,你就可以推出補碼定義式:
當 x >=0, [x ]補 = x; 零和正數不用變換。
當 x < 0, [x ]補 = x + 2^n。 n 是補碼的位數。
以上就是「求補碼的正規做法」。
示例,5 - 7 = 2,用補碼計算如下:
7 的補碼 =
相加---得: (1)= -2 的補碼。
捨棄進位,只取 8 位,結果就是正確的。
這就說明了,藉助於補碼,就可以用加法,實現減法運算。
原碼和反碼,都沒有這種功能。
所以,在計算機中,根本就不使用原碼和反碼。
2樓:做而論道
在計算機系統中,數值,一律用補碼來表示和儲存。
只要會求補碼,就夠用了。
計算機,所計算的位數,是固定的。
八位機就是八位,16 位機就是 16。。。
位數,限定了之後,即使出現了進位,也不再考慮。
在這個前提下,加法、減法,就可以互換。
比如,兩位十進位制是 00~99。
週期是 100(即一百)。
減一,就和 +99,作用相同。
25 + 99 = 一百) 24
捨棄進位,加法,就能起「減法」的作用。
99,就是-1 的補數。
藉助於補數,加減法,就可以統一為加法。
藉助於補碼,就可以簡化計算機的硬體。
八位的二進位制是:0000 0000~1111 1111(十進位制255)。
週期是 2^8 = 256。
1 的補碼就是:256-1 = 255(二進位制 1111 1111)。
2 的補碼就是:256-2 = 254(二進位制 1111 1110)。
公式:負數的補碼 = 週期 + 該負數。
零和正數,不存在補碼,直接就可以參加計算。
補碼,就是這麼計算出來的。
補碼,和原碼反碼,毫無關係。
計算機中,也並沒有原碼反碼,因此,就不必討論它們。
為什麼現代計算機都用補碼來表示整數
3樓:做而論道
就是為了:簡化硬體,省錢。因為,負數,可以用一個正數(補碼)代替。
如: 24 - 1 = 23
24 + 99 = 一百) 23
忽略進位,用 +99 就可以代替-1。
那麼,藉助於補碼,就可以,把減法轉換為加法運算。
因此,在計算機中,只需設定一個加法器,便可加減通吃了。
4樓:可軒
機器數用補碼錶示的好處:
原碼簡單,適用於乘除運算,但用原碼錶示的數進行加減法運算比較複雜。
補碼,減法運算可以用加法來實現,例如 [x-y]補 = x]補 +[y]補,而且,數的符號位也可以參與運算,便於運算結果的正負及是否溢位判斷。
因此在計算機中大都採用補碼來進行加減及乘除運算。
不僅是整數,小數亦可用補碼錶示)
計算機為什麼採用補碼計算
5樓:沙裡波特
正負數,在計算機中存放的格式,就是補碼。
計算機中,並沒有原碼和反碼,也就不必關心它們了。
下面,針對補碼,給出解釋。
比如,有一個小孩,很小的。
他只認識 100 個數(0~99),也不會做減法。
那麼,就可以告訴他:「減一」,就用「加 99」算吧。
忽略進位的 100,結果不是一樣的嗎?
那麼,就是說:
99,就是-1 的補數。
98,就是-2 的補數。
利用「補數」,就可把「減法」轉為「加法」。
利用這個特點,計算機中,僅需一個「加法器」,就夠用了。
在計算機中,是以二進位制存放各種資訊的,統稱為:**。
八位,作為一個計算單位。
範圍是:0000 0000 ~ 1111 1111。
寫成十進位制,就是:0~255。
共有 256 個**。--這個數字,稱為:模。
那麼:1111 1111(255),就是-1 的補碼。
1111 1110(254),就是-2 的補碼。
1000 0000(128),就是-128 的補碼。
求負數的補碼,就是這麼簡單。
而零和正數,直接參加運算即可,用不著求補碼。
因此,下面就是補碼的定義式。
零和正數的補碼: 就是該數字本身。
負數的補碼: 就用「模」,加上該負數。
模,就是**的總個數。
原碼和反碼,則毫無意義。
所以,在計算機中,並沒有它們的存在。
6樓:做而論道
在計算機中,負數,以其正值的補碼形式表示。
就是說,負數,是用一個正數(即補碼)來表示的。
使用了補碼,計算機中,就沒有負數了。並且,也就消除了減法運算。
那麼,計算機,只需配置一個加法器,便可橫行天下。
7樓:郜訪彤儀燁
使用補碼的好處:
可加法代替減法運算,[a-b]補。
a]補+[-b]補。
簡體了計算機運算硬體電路,提高運算效率:
統一了正0和負0
原碼及反碼的正0、負0有不同的表示,補碼的0是唯一的,例如字長8位,補碼的0表示為唯一的00000000
8樓:翟惜海農婀
在計算機系統中,數值一律用補碼來表示和儲存。原因在於,使用補碼,可以將符號位和數值域統一處理;同時,加法和減法也可以統一處理。此外,補碼與原碼相互轉換,其運算過程是相同的,不需要額外的硬體電路。
補碼的特性:
1、一個負整數(或原碼)與其補數(或補碼)相加,和為模。
2、對一個整數的補碼再求補碼,等於該整數自身。
3、補碼的正零與負零表示方法相同。
計算機中為什麼用補碼來表示有符號數?
9樓:做而論道
補碼,實際上,就是一個「代替負數」的正數。
使用了補碼之後,計算機中,就沒有負數了。
同時,也就沒有減法運算了。
計算機,只要配置一個加法器,就能橫行天下了。
這就是補碼的作用。
補碼(一個正數),怎麼就能代替負數呢?
想一想週期性的規律吧。
比如,2 位 10 進位制數計數週期就是 10^2=100。
可有: 25 - 1 = 24
25 + 99 = 一百) 24
你捨棄進位的 1 百,只保留 2 位數,+99 就能代替-1!
而且,加法,也能代替減法運算!
同樣,+98 也可以代替-2。
這些正數,就稱為「負數的補數」。
求補數的公式,顯然就是:
補數=負數+10^n
式中:n 是補數的位數。
10^n,是 n 位 10 進位制數的週期。
這公式,在三角函式中,也有雷同的表現。
三角函式,是以 2π 為週期的。
任何負角度,加上週期,就可以轉換為正角度。
如:x =-2,與其等效的正角度,即為:
x =-2 + 2π =3π/2
計算機用二進位制,補數,就稱為:補碼。
求負數的補碼,公式是:
補碼 = 負數 + 2^n
2^n,是 n 位 2 進位制數的計數週期。
對於 8 位 2 進位制數,週期就是
那麼,-1 的補碼就是 255 = 1111 1111 (二進位制)。
2 的補碼就是 254 = 1111 1110 (二進位制)。
128 的補碼就是 128 = 1000 0000 (二進位制)。
正數,不用轉換,也不許做任何轉換,必須直接去參加算。
所以,零和正數,並沒有補碼。
求補碼,不需要「符號位原碼反碼取反加一符號位不變」。
那一大堆步驟,並沒有什麼數學理論依據。
數學不好的老外,弄不懂週期,才用那些騷操作。
而且,原碼反碼,在計算機中,根本就不用!
忽悠大家學了一大堆,一丁點用處,也都沒有的。
為什麼計算機中帶符號數採用補碼錶示
10樓:做而論道
為什麼用補碼錶示負數?
原理:用加法運算,也可以產生減法的效果。
目的:簡化計算機的硬體。在兩位數之內,+99,就可以代替-1。
如: 24 - 1 = 23
只取兩位,這兩種演算法,功能就是相同的。
加上 99,就相當於,減一!物極必反,聽說過吧?
99,就是-1 的補數。鐘錶的分針,正撥 59,也相當於倒撥 1 分鐘!
計算機用二進位制,補數,就改稱為:補碼。
八位二進位制:0000 0000~1111 1111(十進位制255)。
255(=1111 1111),就是-1 的補碼。
254(=1111 1110),就是-2 的補碼。
負數的補碼 = 2^n + 該負數。(n 是二進位制的位數。)
藉助於補碼,在計算機中,只需配置一個加法器,即可。
正數,沒有補碼,直接參加計算即可。
11樓:煙雅美奇原
爭議因為計算機中用補碼錶示帶符號數時,減法運算可以變成加負數,而負數用補碼錶示後,可以直接按二進位制數進行加法運算。這樣適應計算機硬體加法器進行運算。
12樓:信曼寒蕢飲
採用補碼運算具有如下兩個特徵:
1)因為使用補碼可以將符號位和其他位統一處理,同時,減法也可以按加法來處理,即如果是補碼錶示的數,不管是加減法都直接用加法運算即可實現。
2)兩個用補碼錶示的數相加時,如果最高位(符號位)有進位,則進位被捨棄。
這樣的運算有兩個好處:
1)使符號位能與有效值部分一起參加運算,從而簡化運算規則。從而可以簡化運算器的結構,提高運算速度;(減法運算可以用加法運算表示出來。)
2)加法運算比減法運算更易於實現。使減法運算轉換為加法運算,進一步簡化計算機中運算器的線路設計。
計算機為什麼使用補碼來儲存資料
13樓:網友
簡單來說,方便將減法運算化為加法運算,這樣可以簡化電路設計(cpu中只需要加法器而不需要剪髮器)
例如 100 - 50 變化為 (+100) +50)。
計算機一般都用什麼進位制,計算機中的進位制學了以後有啥用
計算機一般用 二進位制。二進位制是計算技術中廣泛採用的一種數制。二進位制資料回是用0和1兩個數碼來答表示的數。它的基數為2,進位規則是 逢二進一 借位規則是 借一當二 由18世紀德國數理哲學大師萊布尼茲發現。當前的計算機系統使用的基本上是二進位制系統,資料在計算機中主要是以補碼的形式儲存的。計算機中...
計算機中為什麼將反碼加一就得到了補碼?
正數 正數的反碼與原碼相同。負數 負數的反碼,符號位為 1 數值部分按位取反。例如 符號位 數值位。7 反 0 0000111 b 7 反 1 1111000 b 所以樓主再仔細看一下書,究竟00011010是 26的反碼,還是負數的反碼。特別規定 128的補碼為10000000,所以有符號位元組的...
為什麼在檢視工作組計算機中不能訪問別人的計算機
基本上那個部落格上的方法就是所有的方法了。請確保你完全嘗試了那個部落格所有方法。我再加兩條,你在張航的機器上試試 1 開始 執行 gpedit.msc 計算機配置 windows設定 安全設定 本地策略 安全選項 右邊找到 網路訪問 本地帳戶的共享和安全模型 雙擊,選擇 經典 對本地使用者進行身份驗...