計算機原理原碼反碼補碼_第1頁
計算機原理原碼反碼補碼_第2頁
計算機原理原碼反碼補碼_第3頁
計算機原理原碼反碼補碼_第4頁
免費預覽已結(jié)束,剩余1頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、反碼原碼計算機原理整數(shù)的補碼,為圍示范個字節(jié)的表制進表示沒有符號位一解釋一:對于整數(shù)來講其二其二,1。對于整數(shù)來講 00000000-11111111由此可見一個字節(jié)的整數(shù)表示范圍為0,255=2人8 -:.先來看一下下面幾個定義進制表示中存在一個符號位0. 1:在計算機中,負數(shù)以其正值的補碼形式表達。正數(shù)即在符號位補2:原碼:一個整數(shù),按照絕對值大小轉(zhuǎn)換成的二進制數(shù),稱為原碼。3:反碼:將二進制數(shù)按位取反,所得的新二進制數(shù)稱為原二進制數(shù)的反碼。+1 :反碼4:補碼的原碼、0計算機儲存有符號的整數(shù)時,是用該整數(shù)的補碼進行儲存的,由以上可以得到.。;正數(shù)的原碼、補碼 可以特殊理解為相同;負數(shù)的補

2、碼是它的反碼加1補碼都是0。范圍說10000000 - 11111111 0,2A7 - 1。 負數(shù):范圍正數(shù) 00000000 - 01111111即=10000000, 01111111,取反-1. 10000000 -1 = 11111111 - 1 = 11111110,取反=00000001 即是明.因此有一個有符號二進制表示范圍是從-128-127.即是-128.位個字節(jié)等于8解釋二:大家都知道數(shù)據(jù)在計算機中都是按字節(jié)來儲存了,1種個字節(jié)能代表2561這兩個數(shù),所以根據(jù)排列,1( 1Byte=8bit),而計算機只能識別0和,比如定義一個字節(jié)大小的無符號整數(shù)8位排列)和1兩種可能,

3、不同的信息,即2A8( 0個數(shù),因為,256( 02人8 -1 )這些數(shù),一共是,那么它能表示的是(unsigned char) 0255種不同的信息。別停下,還是一個字節(jié)的無符號整數(shù),我256前面說了,一個字節(jié)只能表示位二進制8們來進一步剖析它,0是這些數(shù)中最小的一個,我們先假設它在計算機內(nèi)部就用個數(shù)每個數(shù)25600000000 (從理論上來說也可以表示成其他不同的二進制碼,只要這表示為表示3表示為00000010, 1表示為00000001, 2對應的二進制碼都不相同就可以了),再假設,111111118位二進制中就表示為最大的數(shù),依次類推,那么最大的那個數(shù) 255在為00000011而事

4、會發(fā)現(xiàn)剛好和我們假設的數(shù)是相同的,然后,我們把 這些二進制碼換算成十進制看看,所以告訴你一個無符號的整數(shù)無符號的整數(shù)就是按這個原理來儲存的,實上,在計算機中,這個數(shù)本身就是以這個二而且知道在計算機中,的二進制碼,你就 可以知道這個數(shù)是多少,進制碼來儲存的。反碼和補碼只有有符號的整數(shù)才有原碼、無符號的整數(shù)根本就沒有原碼、反碼和補碼。最大的其他的類型一概沒有。雖然我們也可以用二進制中最小的數(shù)去對應最小的負數(shù),的!但是那樣不科學,下面來說說科學的方法。還是說一個字節(jié)的整數(shù),不過這次是也相對應,個數(shù),因為有符號所以我們就把它表個字節(jié)它不管怎么樣還是只能表 示256有符號的啦,1用 最高位表示符號位,。

5、它在計算機中是怎么儲存的呢?可以這樣理解,示成范圍:-128-1272A77位用來儲存數(shù)的絕對值的話,能表示表示正數(shù),如果是1表示負 數(shù),剩下的如果是 0在計算機中儲存為個數(shù)。首先定義02人7*2還是256個數(shù)的絕對值,再考慮正負兩種情況,1依次表示00000001到0111111100000000,對于正數(shù)我們依然可以像無符號數(shù)那 樣換算,從。那么這些數(shù)對應的二進制碼就是這些數(shù)的原碼。到這里很多人就會想,那負數(shù)是不127到,那你發(fā)現(xiàn)沒有,如果這樣的話那么一共就只-127-1到到是從1000000111111111依次表示在計算機中表示最 1000000010000000的情況沒有考慮在內(nèi)。實

6、際上,有255個數(shù)了,因為,到-127到11111111依次表示-1-128小的負整數(shù),就是這里的,而且實際上并不是從 10000001。負整數(shù)在 計算機中是以補碼-1-12711111111依次表示到而是剛好相反的,從10000001到所謂反碼就是把這里還要引入另一個概念一一反碼,形式儲存 的,補碼是怎么樣表示的呢,簡單的說就是絕對值相同的數(shù)負數(shù)的原碼和和它的絕對值所對應的原碼相同,負數(shù)的原碼(* 1,和-1的原碼是00000001,如,是)各個位按位取反,是原碼相同1就換成00就換成1 的補碼是-11的反碼就是11111110,而補碼就是在反碼的基礎上加,即-1的原碼相同,那么儲存的。11

7、111111-111111110+仁11111111,因此我們可以算岀在計算機中是按精選文檔.總結(jié)一下,計算機儲存有符號的整數(shù)時,是用該整數(shù)的補碼進行儲存的,0的原碼、補碼都是0,正數(shù)的原碼、補碼可以特殊理解為相同,負數(shù)的補碼是它的反碼加1。下面再多舉幾個例子,來幫助大家理解!例:47 101111有符號的整數(shù)原碼反碼補碼47001011111101000000101111 (正數(shù)補碼和原碼相同)4700101111 1101000011010001 (負數(shù)補碼是在反碼上加1)精選文檔.關(guān)于補碼:補碼表示機器數(shù)(原碼),x是真值(二進制)用x 原=0.1001貝嘰x x= +0.1001,原=

8、1.1001 x x= -0.1001 則0”之分,故有兩種形式:0,原碼中有“ +0 "、“-對于=0.0000 +0原=1.000.0 -0原這是因為,當兩數(shù)相加時,如米用原碼表示法簡單易懂,但它的最大缺點是加法運算復雜。而在進行減法時還要比較絕對值的大小,則要進行減法。果是同號則數(shù)值相加;如果是異號,然后大數(shù)減去小數(shù),最后還要給結(jié)果選擇符號。如果機器數(shù)是正機器數(shù)的補碼可由原碼得到。為了解決這些矛盾,人們找到了補碼表示法。(除則該機器數(shù)的補碼是對它的原碼則該機器數(shù)的補碼與原碼一樣;如果機器數(shù)是負數(shù),數(shù),1而得到的。符號位外)各位取反,并在未位加負數(shù)用補碼表示時,可以把減法轉(zhuǎn)化為加

9、法。這樣,在計算機中實現(xiàn)起來就比較方便>x01x 補=x 0>x> 1 | x | 2+x = 2 0.1011 x 補=x= +0.1011,則1.0101 10.0000-0.101仁 x 補=10+ x= x = -0.1011 貝嘰 2) (mod00,+補=補=0.00000對于 例子中是以定點小數(shù)為例。補碼的原理可以用鐘表來描述點了,為了校準時間,可以采用兩種方法:一是將時7點正;一只表已經(jīng)如設標準時間為4等價,因此,把負7+9(mod12)和格;一是將時針向前撥12-3=9格。即7-37-4=3 針退操作,可以把減法轉(zhuǎn)化為加法。mod2數(shù)用補碼表示的精選文檔.補

10、碼說明: 在計算機系統(tǒng)中,數(shù)值一律用補碼來表示(存儲)。 1、主要原因:使用補碼,可以將符號位和其它位統(tǒng)一處理;同時,減法也可按加法來處 理。另外,兩個用補碼表示的數(shù)相加時,如果最高位(符號位)有進位,則進位被舍 棄。補碼與原碼的轉(zhuǎn)換過程幾乎是相同的。 2 、數(shù)值的補碼表示也分兩種情況:。 +9 的補碼是 00001001 ( 1)正數(shù)的補碼:與原碼相同。例如,其余位為該數(shù)絕對值的原碼按位取反;然后整個數(shù))負數(shù)的補碼:符號位為 1 (2 。 加 1 的-7;其余 100001117位為 例如,-7的補碼:因為是負數(shù), 則符號位為“1”,整個為的補碼是 11111001。按位取反為 111100

11、0;再加 1,所以-7絕對值+7的原碼 0000111 已知一個數(shù)的補碼, 求原碼的操作分兩種情況:(1)如果補碼的符號位為“ 0”,表示是一個正數(shù),所以補碼就是該數(shù)的原碼。)如果補碼的符號位為“ 1”,表示是一個負數(shù),求原碼的操作可以是:符號位為2 ( 1。 1,其余各位取反,然后再整個數(shù)加) :因為符號位為“ 1”,表 -710000111( 例如,已知一個補碼為 11111001,則原碼是;再加 00001101111001 取反后為示是一個負數(shù),所以該位不變,仍為“1”;其余 7 位 10000111。 1,所以是 我在這里介紹一下“?!钡母拍睿?、“模”是指一個計量系統(tǒng)的計數(shù)范圍。如

12、時鐘等。計算機也可以看成一個計量機器,它也有一個計量范圍,即都存在一個“?!?。11,模=12例如: 時鐘的計量范圍是0 =2人(n)。2A(n)-1,模表示n位的計算機計量范圍是 0“?!睂嵸|(zhì)上是計量器產(chǎn)生“溢出”的量,它的值在計量器上表示不出來,計量器上只能表示出模的余數(shù)。任何有模的計量器,均可化減法為加法運算。點,而準確時間是 6 點,調(diào)整時間可有以下兩種撥法: 例如: 假設當前時針指向 10 10+8=12+6=6 8 小時:;小時,即: 10-4=6 另一種是順撥一種是倒撥 4來運算,都可以用加488和減 4 效果是一樣的,因此凡是減在以 12模的系統(tǒng)中,加 代替。, 3, 9 和,

13、 11 和 110和 2 模的系統(tǒng)中,和對“模”而言,84互為補數(shù)。實際上以 12 都有這個特性。共同的特點是兩者相加等于模。 6 和 5, 6和 7 所能表示的最大數(shù)是, 對于計算機,其概 念和方法完全一樣。 n 位計算機,設 n=8 自然丟失。又回了位,最高位 1)稱為 100000000(9位, 但因只有8111111111,若再加在這樣的系統(tǒng)中減法問題也可以化成加2A8800000000,所以位二進制系統(tǒng)的模為。 精選文檔法問題,只需把減數(shù)用相應的補數(shù)表示就可以了。把補數(shù)用到計算機對數(shù)的處理上,就是補碼。另外兩個概念一的補碼 (one's complement) 指的是正數(shù) =原碼,負數(shù)=反碼 而二的補碼 (two's complement) 指的就是通常所指的補碼。 精選文檔4、這里補充補碼的代數(shù)加減運算:(1)補碼加法 補 X+Y 補 = X + Y 補【例 7】X=+0110011,Y=-0101001,求X+Y補X補=00110011 Y補= 11010111X+Y 補 = X 補= 00110011+11010111=0

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論