1樓:沙裡波特
計算機中,並沒有原碼和反碼,只是使用補碼,代表正負數。
使用補碼的意義:可以把減法或負數,轉換為加法運算。從而簡化計算機的硬體。
比如鐘錶,時針轉一圈,週期是 12 小時。
倒撥 3 小時,可以用正撥 9 小時代替。
9,就稱為-3 的補數。
計算方法:12-3 = 9。
對於分針,倒撥 x 分,就可以用正撥 60-x 代替。
如果,限定了兩位十進位制數 (0~99),週期就是 100。
那麼,減一,就可以用 +99 代替。
忽略進位,只取兩位數,這兩種演算法,結果就是相同的。
於是,99 就是 -1 的補數。
其它負數的補數,大家可以自己求!
求出了負數的補數,就可用加法,代替減法了。
計算機中使用二進位制,補數,就改稱為【補碼】。
常用的八位二進位制是:0000 0000~1111 1111。
它們代表了十進位制:0~255,週期就是 256。
那麼,-1,就可以用 255 = 1111 1111 代替。
所以:-1 的補碼,就是 1111 1111 = 255。
同理:-2 的補碼,就是 1111 1110 = 254。
繼續:-3 的補碼,就是 1111 1101 = 253。
最後:-128,補碼是 1000 0000 = 128。
計算公式:負數的補碼=256+這個負數。
正數,直接運算即可,不需要求補碼。
也可以說,正數本身就是補碼。
補碼的應用如: 7-3 = 4。
用補碼的計算過程如下:
7 的補碼=
3的補碼=
相加
得: (1)= 4 的補碼。
捨棄進位,只保留八位,作為結果即可。
這就是:使用補碼,加法就代替了減法。
所以,在計算機中,有一個加法器,就夠用了。
原碼和反碼,都沒有這種功能。
原碼和反碼,毫無用處。計算機中,根本就沒有它們。
2樓:做而論道
在計算機系統中,數值,一律採用補碼錶示和儲存。
也就是說:計算機中,根本就沒有原碼和反碼。
計算機原碼反碼補碼怎麼算
3樓:象拔蚌燒賣
計算機原碼反碼補碼計算方法:
1、原碼。原碼就是符號位加上真值的絕對值,即用第一位表示符號,其餘位表示值。比如如果是8位二進位制:
1]原 = 0000 0001
1]原 = 1000 0001
第一位是符號位。 因為第一位是符號位, 所以8位二進位制數的取值範圍就是:[1111 1111 , 0111 1111]
即[-127 , 127]
原碼是人腦最容易理解和計算的表示方式。
2、反碼。反碼的表示方法是:正數的反碼是其本身。負數的反碼是在其原碼的基礎上, 符號位不變,其餘各個位取反。
1] =00000001]原 = 00000001]反。
1] =10000001]原 = 11111110]反。
可見如果一個反碼錶示的是負數,人腦無法直觀地看出來它的數值。通常要將其轉換成原碼再計算。
3、補碼。補碼的表示方法是:正數的補碼就是其本身。負數的補碼是在其原碼的基礎上,符號位不變,其餘各位取反,最後+1。(即在反碼的基礎上+1)。
1] =00000001]原 = 00000001]反 = 00000001]補。
1] =10000001]原 = 11111110]反 = 11111111]補。
對於負數,補碼錶示方式也是人腦無法直**出其數值的。通常也需要轉換成原碼在計算其數值。
計算機如何區別原碼與補碼
4樓:匿名使用者
計算機沒辦法區分任何檔案形式的存在,本質上就是超多的高低電路在做布林運算
不管是原碼,反碼,補碼都是以二進位制的形式轉換而來,為什麼用二進位制,就是為了契合計算機的高低電路,所有的計算數都是以補碼轉成高低電路的,在做電路計算。
開發人員(10進位制)--編譯器(2進位制)--作業系統(補碼)--計算機硬體(高低電路)
這麼描述比較通俗,但不嚴謹,真的感興趣可以從作業系統和資料結構入手。
5樓:網友
原碼就是早期用來表示數字的一種方式: 一個正數,轉換為二進位制位就是這個正數的原碼。負數的絕對值轉換成二進位制位然後在高位補1就是這個負數的原碼。
正數的補碼與原碼相同,負數的補碼為 其原碼除符號位外所有位取反(得到反碼了),然後最低位加1.正數的反碼和補碼都與原碼相同。
負數的反碼為對該數的原碼除符號位外各位取反。
負數的補碼為對該數的原碼除符號位外各位取反,然後在最後一位加1
6樓:沙裡波特
使用補碼的意義在於:可把負數變正數,可把減法變加法。
從這個實用性來講,計算機中,只是用補碼。原碼根本就不存在。
計算機,是執行程式的。程式,都是由人,編寫的。
所以,不是計算機來區別原碼、補碼。
而是由人,來區別。
如果限定,只是使用兩位十進位制數 0~99,共有一百個。
那麼,減一,就可以用 +99 代替:
只保留兩位,忽略進位,結果就是相同的。
99,就稱為-1 的補數。
看到了嗎? 出現了進位。
如果你忽略了進位,實際上就是減法運算!
--這時,99 就是補數,是當做-1 來用的。
如果不忽略進位,結果就是 1 百 23,這還是加法運算。
此時,99,就是正常的數字。
一個**,到底是原來的數字,還是代表負數?
就看你怎麼對待它了。
這些都是由程式設計人,來決定。
計算機,它才不管這些。
7樓:匿名使用者
正負整數都用補碼進行儲存,0開頭就是正整數 補碼=原數的二進位制,1開頭就是負整數,再補碼一次就是原碼的二進位制。
8樓:匿名使用者
個人的理解重心主要要搞清為什麼有原碼/反碼/補碼。
為什麼會出現這三種編碼制式?
你肯定是這個沒搞清,這個搞清楚了,不存在什麼區不區分的問題。
計算機中為何不使用原碼和反碼
9樓:做而論道
在計算機系統中,數值,一律採用補碼錶示和儲存。
在計算機中,根本就不使用原碼和反碼。
64 的原碼反碼是什麼?
這個,不需要關心。
即使有人能把原碼反碼,說出天花來,它們,也沒有任何用處。
對於數值-64,只需要關心它的補碼,即可。
一般來說,補碼,是八位二進位制數。
那麼,1100 1010,是誰的補碼呢?
要記住:首位 1,既代表負號,也代表數值-128。
其它數值位,都是正數。
加在一起,即可:-128 + 64 + 8 + 2 = 54。
再看另一個補碼:0100 1010。
它代表的數值是:64 + 8 + 2 = 74。
-64 的補碼是什麼?答案是:1100 0000。它的數值,怎麼就是-64 呢?
你按照上面的演算法,算一下吧。
求補碼,用不著「原碼反碼取反加一符號位不變」!
你輕輕的算一下,就可以了。
老外腦子不好,才弄哪些個騷操作。
計算機中,原碼、反碼的定義是什麼?
10樓:做而論道
在計算機系統中,數值,一律用補碼來表示和儲存。
補碼,實際上,就是一個「代替負數」的【正數】。
使用了補碼(正數)之後,在計算機中,就沒有負數了。
隨之而來的就是:減法運算,也都不存在了。
所以,藉助於補碼,計算機只需要配置一個加法器,就能走遍天下。
使用補碼的目的,也就是:簡化計算機的硬體。
原碼和反碼,都沒有這種功能,所以,計算機中,根本就不用它們
不存在的,就不必討論什麼定義了。
補碼(一個正數),怎麼就能代替負數呢?
你看時針:倒撥 3 小時,可以用正撥 9 小時代替吧?
你看三角函式:-π2、+3π/2,兩者的函式值也是相同的吧?
10 進位制數,如果限定只用 2 位 ,那麼就會有:
25 + 99 = 一百) 24
如果忽略進位一百(10^2),+99 就可以代替-1。
上面所說的這些正數,就是「負數的補數」。
求補數的公式,你自己可以推出,即:
補數(即正數)= 負數 + 週期。
正數,必須直接參加運算,不可再做任何變換。
就是說:正數,本身就已經是正數了,它並不存在什麼補數。
計算機用二進位制,補數,那就稱為「補碼」了。
8 位 2 進位制的週期,是:2^8 = 256。
1 的補碼,就是:-1 + 256 = 255 = 1111 1111(二進位制)。
2 的補碼是:-2 + 256 = 254 = 1111 1110。
128 的補碼,就是:128 = 1000 0000。
至此,你就可以推出「補碼的定義式」:
當 x >=0, [x ]補 = x; 零和正數不用變換。
當 x < 0, [x ]補 = x + 2^n。 n 是補碼的位數。
這是通用的公式。
計算 5 - 7 =-2,用八位補碼計算如下:
7]補碼 =
相加---得: (1)= [2]補碼。
捨棄了進位,結果,就是正確的。
計算機中為什麼沒有原碼、反碼?
11樓:做而論道
在計算機系統中,數值,一律採用補碼錶示和儲存。
補碼,其實就是一個「代替負數運算」的正數。
使用了補碼,計算機中,就沒有負數了,同時,也就沒有減法運算了。
那麼,計算機,只要具有加法器,就可以走遍天下了。
使用補碼的目的,就是:簡化硬體。原碼和反碼,都沒有這種功能。
所以,計算機中,根本就沒有原碼反碼。
補碼(一個正數),怎麼就能代替負數呢?
且看 2 位 10 進位制數的運算:
25 + 99 = 一百) 24
進位一百,也就是計數週期 10^2。
如果你忽視進位,+99,不就可以代替-1 了嗎?
99,就稱為-1 的補數。
在 8 位 2 進位制的運算中,計數週期是 2^8 = 256。
那麼,+255,就是-1 的補碼。
化為二進位制,就是:255 = 1111 1111b。
求其它負數的補碼,你可以推匯出一個計算公式:
補碼(補數)= 負數 + 週期。相比之下,原碼或反碼,連一個正經的公式都導不出來。
所以,原碼或反碼,只能是隨便說說而已,不值一提。
計算機中的URL是什麼呀,計算機中的URL是指什麼?
url 是univisal resource locator 的簡寫,即統一資源定位器。用來顯示資源所在的路徑資訊。計算機中的url是指什麼?url 統一資源定位系統 計算機中的url是什麼?url 統一資源定位符 電腦中的url是什麼意思?k是千 m是兆 g是吉咖 t是太拉 8bit 位 1byt...
計算機描述和計算機名 是什麼,請教高手計算機描述和計算機名是什麼意思???
計算機名,顧名思義就是計算機的名字.每個計算機名都是唯一的,不能有重複的.有點像ip.在區域網內,有ip和計算機名搜東西是一樣的.名字是可以自己設定的 xp預設administrator 右鍵 我的電腦 屬性 計算機名 點 更改 就可以改名。計算機描述則是一些說明文字,可以和計算機名相同也可以是簡單...
計算機中的c語言是什麼意思,計算機中的pgup什麼意思
死老虎 c語言是一種計算機程式設計語言。它既有高階語言的特點,又具有組合語言的特點。它可以作為系統設計語言,編寫工作系統應用程式,也可以作為應用程式設計語言,編寫不依賴計算機硬體的應用程式。因此,它的應用範圍廣泛。c語言對作業系統和系統使用程式以及需要對硬體進行操作的場合,用c語言明顯優於其它解釋型...