為什麼正數的補碼是它本身

2025-01-22 20:45:20 字數 4800 閱讀 8507

1樓:做而論道

補碼,其實,這就是乙個「代替負數」的正數。

使用了補碼(正數)之後,在計算機中,就沒有負數了。

同時,在計算機中,也就沒有減法運算了。

所以,利用補碼,就能夠把加減法,統一為加法運算。

使用補碼的目的,就是:簡化計算機的硬體。

補碼(乙個正數),怎麼就能代替負數呢?

你看時針,倒撥 3 小時,可以用正撥 9 小時代替吧?

你看三角函式。

,正負兩種角度,功能也是相同的吧?

10 進位數,如果限定只用 2 位,那麼會有:

25 + 99 = 一百) 24

如果忽略進位一百(10^2),+99,就可以代替-1。

以上所說的這些正數,就是「負數的補數」。

求補數的公式,是: 補數(即正數)= 負數 + 週期。

而正數,不用變換,也不允許變換。必須直接參加運算。

所以,正數,它就沒有補數。

也有人隨口亂講:正數,它本身就是補數。

其實,正數,只是不許變換而已,並非是說它們就是。

唉,這些人,基本概念不清啊!

跟他們較真,也沒有用的。

計算機用二進位,那就稱為補碼了。

8 位 2 進位,週期是:2^8 = 256。

1 的補碼,是:-1 + 256 = 255 = 1111 1111(二進位)。

2 的補碼,是:254 = 1111 1110。

128 的補碼是:128 = 1000 0000。

由此,就可以匯出補碼的定義式:

x >=0, [x ]補 = x; 零和正數不用變換。

x < 0, [x ]補 = x + 2^n。 n 是補碼的位數。

這公式,是通用的。 書上,也有的,你去翻翻書吧。

按照公式求補碼,是極為簡便的,而且還能理解補碼的意義。

那麼,這些「原碼反碼取反加一符號位不變」是咋回事?

因為:第一,老外的數學不好,弄出這些「隔路」的花樣。

第二,國內計算機專業。

老師的腦子不好,跟著老外混口飯吃。

僅此而已。

2樓:張簡廣英權甲

是的。正數。

的補馬和原馬一樣,補碼的補碼還是原馬。負數。的。

補馬是。原馬的反馬加1,把補碼當原馬。

再。求反加1

就回到原馬。

例如。原馬。

是。10000001,反馬1111

1110,加。

等於。反馬。

0000,加1,回到。

正數的補碼是什麼?

3樓:你的小小生活助手

正數的補碼就是原碼本身,負數的補碼是其反碼加1。

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

中,數值一律用補碼來表示和儲存。原因在於,使用補碼,可以將符號位和數值域統一處理;同時,加法和減法也可以統一處理。

補碼:在反碼的基礎上加1,這樣可以方便計算機進行計算,可以讓「最高位符號位都能參與計算」。原碼:

位元組的最高位為符號位,其餘表示數值大小,最簡單;反碼:正數的反碼和原碼一樣,負數的反碼除最高位符號位外,其他位都取反。

補碼

補碼「模」概念的引入、負數補碼的實質、以及補碼和真值之間的關係所揭示的補碼符號位所具有的數學特徵,無不體現了補碼在計算機中表示數值型資料的優勢,解決了符號的表示的問題,克服了原碼加減法運算繁雜的弊端,可有效簡化運算器。

的設計。補碼錶示統一了符號位和數值位,使得符號位可以和數值位一起直接參與運算,這也為後面設計乘法器除法器等運算器件提供了極大的方便。補碼概念的引入和當時運算器設計的背景不無關係,考慮到了資料儲存和處理所需要的硬體代價。

以上內容參考 百科——補碼

4樓:沙裡波特

正數的補碼,是其本身。負數的補碼,就用它的正數,減一取反,即可得到補碼。

如,+9 的二進位是:0000 1001。

下面求-9 的補碼:

先減一:0000 1001 - 1 = 0000 1000;

再取反:1111 0111。所以有:-9 補碼 = 1111 0111。

簡不簡單?意不意外?

原碼反碼符號位,都是毫無用處的,不必關心。

5樓:做而論道

按照補碼的性質:

x]補 + x]補 = 0]補。

那麼:[x]補 = 0]補-[-x]補

因此,正數的補碼就是:0 的補碼,減去負數的補碼。

補碼運算的結果是正數時得到的結果是什麼?

6樓:熱心市民安某

得到的結果是:原碼。

補碼。運算的結果是正數時得到的就是原碼。正數的原碼和反碼。

補碼都是一樣的,都是正數本身。負數原碼是符號位為1,數值部分取x絕對值。

的二進位。反碼是符號位為1,其它位是原碼取反。補碼是符號位為1,其它位是原碼取反,未位加1。負數的補碼是其反碼未位加1。移碼就是將符號位取反的補碼。

符號數三種表達方式:

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

中,數值一律用補碼來表示和儲存。原因在於,使用補碼,可以將符號位和數值域統一處理。同時,加法和減法也可以統一處理。

7樓:沙裡波特

補碼運算的結果,當然還是補碼。

補碼運算的結果,絕對不可能是「數」。

你得出的補碼,它只是代表了某個「數」。

你就把補碼,再轉換為數字,這個數字,是什麼就是什麼。

8樓:做而論道

補碼運算的結果是正數時,得到的結果是什麼?

補碼運算,你怎麼能得出正數!難道,你忘了嗎:

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

補碼運算,結果,必然還是補碼。運算結果,絕對不是數,也不會是原碼。

整數的補碼怎麼表示

9樓:夏天的小紅花

補碼的最高位:0表示正數,1表示負數。

資料位:正數就是數值的二進位數。

負數是取原數絕對值。

的二進位數,每一位取反互換)後,末位加1。

10樓:金色潛鳥

正數的補碼就是正數的原碼,不變化。

負數的補碼,等於 不考慮符號位時 的數碼的反 碼 加 1。

例如 十進位 -9, 一位元組原碼: 1000 1001; 最高位是符號位,符號位1是負數。

反碼:1111 0110, 加1得補碼 1111 0111。

11樓:做而論道

還能怎麼表示?

無論是整數,還是小數,或者是分數,無論你選用什麼**,都是用二進位的 表示。

當用補碼錶示數時,負數可以比正數多表示乙個為什麼

12樓:可軒

1全部以8位字長有符號整數為例:

補碼範圍:1000 0000b~0111 1111b對應的真值範圍:-1000 0000b~+111 1111b, 即 -128d~ +127d

最大絕對值負數 -128d 的來由:

8位字長的模 =2^8 =1 0000 0000b真值x =[x]補 -模 =1000 0000b -1 0000 0000b = -1000 0000b = -128d

b是二進位數字尾,d是十進位數字尾)

13樓:沙裡波特

不是負數比正數多乙個。

而是,正數,少了乙個。

8 位的補碼,可以代表 256 個數字。

0,既不是正數,也不是負數。

但是,0 在補碼中,卻佔用了乙個正數的位置。

所以,正數,就少了乙個+128。

補碼運算的結果是正數時得到的結果是什麼?

14樓:做而論道

補碼 + 補碼,算出來的,還是補碼。

平方根等於它本身的數是立方根等於它本身的數是算術平方根等於它本身的數是

平方根等於它本身的數是 0 立方根等於它本身的數是 1和0和1 算術平方根等於它本身的數是 1 平方根等於它本身的數是1和0,立方根等於它本身的數是 1,0和1,算術平方根等於它本身的數是非負數。妹子你在這來幹嘛呢 平方根等於它本身的數是 立方根等於它本身的數是 算術平方根.0 0,1,1 0,1 ...

闡述補碼運算的意義,補碼運算結果是正數時得到的結果為什麼是真值啊

數值在計算機中表示形式為機器數,計算機只能識別0和1,使用的是二進位制,而在日常生活中人們使用的是十進位制,正如亞里士多德早就指出的那樣,今天十進位制的廣泛採用,只不過我們絕大多數人生來具有10個手指頭這個解剖學事實的結果.儘管在歷史上手指計數 5,10進位制 的實踐要比二或三進位制計數出現的晚.摘...

為什麼做網線一定要重新排序,用它本身的順序為什麼不行

你自己用 順序2頭你只要能記著不弄錯,你隨便排列都能用。網線買回來,你可以選擇做機對機的網線 即兩臺計算機對聯,不通過集線器 也可以選擇做機對網聯,就是指通過網絡卡連線網路裝置接入網際網路。具體的做法是 一端採用上述的568b做線標準不變,另一端在這個基礎上將這八根線中的1,3號線和2,6號線互換一...