補碼運算說明單片機ppt課件_第1頁
補碼運算說明單片機ppt課件_第2頁
補碼運算說明單片機ppt課件_第3頁
補碼運算說明單片機ppt課件_第4頁
補碼運算說明單片機ppt課件_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、補碼的運算闡明補碼的運算闡明 在微處置機中,運用補碼進展運算使在微處置機中,運用補碼進展運算使同一個微處置機中既能運算帶符號數(shù)又能運同一個微處置機中既能運算帶符號數(shù)又能運算不帶符號的數(shù)。而且,在采用補碼表示帶算不帶符號的數(shù)。而且,在采用補碼表示帶符號數(shù)的情況下,兩個數(shù)的減法可以用加法符號數(shù)的情況下,兩個數(shù)的減法可以用加法來實現(xiàn)。來實現(xiàn)。 在進展帶符號數(shù)的加減運算時,把參在進展帶符號數(shù)的加減運算時,把參與運算的數(shù)據(jù)轉(zhuǎn)換成補碼方式進展運算。當與運算的數(shù)據(jù)轉(zhuǎn)換成補碼方式進展運算。當運用運用8位二進制數(shù)表示帶符號的數(shù)時,它所位二進制數(shù)表示帶符號的數(shù)時,它所能表示的數(shù)值范圍在能表示的數(shù)值范圍在(-128

2、)10(+127)10之間,之間,假設(shè)相加結(jié)果超出了這個范圍,便溢出。假設(shè)相加結(jié)果超出了這個范圍,便溢出。 X+Y補補=X補補+Y補補 X-Y補補=X補補+-Y補補 加法運算加法運算 例:例: 98補補 0 1 1 0 0 0 1 0 25補補+0 0 0 1 1 0 0 1 123補補 0 0 1 1 1 1 0 1 1 未溢出未溢出 0 0 Cy S未溢出未溢出 補碼的運算補碼的運算例:知例:知 X=52 Y=38 求求X-Y 方法方法1: 直接相減直接相減 X-Y = 52-38 =14 0 0 1 1 0 1 0 0 - 0 0 1 0 0 1 1 0 0 0 0 0 1 1 1 0

3、方法方法2: 補碼相加補碼相加 X-Y = X-Y補補補補 = X補補+-Y補補補補 = 52補補+ -38補補補補 = 14 補補 =14 52補:補: 0 0 1 1 0 1 0 0 -38補:補:+ 1 1 0 1 1 0 1 0 1 0 0 0 0 1 1 1 0 自然喪失自然喪失計算機在做算術(shù)運算時,必需檢查溢出,以防止發(fā)生錯誤計算機在做算術(shù)運算時,必需檢查溢出,以防止發(fā)生錯誤 【例1】兩個帶符號的數(shù)(01000001)補(十進制數(shù)+65)與(01000011)補(十進制數(shù)+67) 例中是兩個正數(shù)相加,但結(jié)果卻是一個負數(shù)符號位為1。顯然,這個結(jié)果是錯誤的,出現(xiàn)這種錯誤的緣由就在于這兩

4、個數(shù)相加的結(jié)果超越了8位二進制帶符號數(shù)所能表示的數(shù)值范圍?!纠?】兩個負數(shù)(10001000)補和(11101110)補的相加情況。+010000010100001110000100100010001110111001110110+1 由于規(guī)定用8位二進制數(shù)來表示帶符號的數(shù),按8位二進制數(shù)補碼來解釋這兩個帶符號數(shù)的相加,其結(jié)果為一個正數(shù)。很明顯,結(jié)果是錯誤的?!纠?】兩個無符號數(shù)(11111101)補和(00000011)補相加: +1111111010000001100000000 從相加計算的結(jié)果來看,假設(shè)微處置機只需8位,也就是用8位二進制數(shù)來解釋運算的結(jié)果,那么將出現(xiàn)錯誤。因此,在微處

5、置機中設(shè)有專門的一位,稱為進位位,它將用于保管第九位以防喪失信息。 85補:補: 0 1 0 1 0 1 0 1 47補:補:+0 0 1 0 1 1 1 1 132補:補: 1 0 0 0 0 1 0 0 溢出溢出 0 1 Cy S 溢出溢出錯:兩個正數(shù)相加和為負數(shù)。錯:兩個正數(shù)相加和為負數(shù)。 - 85補:補: 1 0 1 0 1 0 1 1 - 47補:補:+1 1 0 1 0 0 0 1 - 132補:補:1 0 1 1 1 1 1 0 0 溢出溢出 1 0 Cy S 錯:兩個負數(shù)相加和為正數(shù)。錯:兩個負數(shù)相加和為正數(shù)。 十進制數(shù)的編碼十進制數(shù)的編碼十進制的字符用二進制數(shù)進展編碼十進制的

6、字符用二進制數(shù)進展編碼BCD碼:碼: 0 0000 5 0101 1010 1111 1 0001 6 0110 1011 2 0010 7 0111 1100 3 0011 8 1000 1101 4 0100 9 1001 1110二進制數(shù)對十進制編碼。二進制數(shù)對十進制編碼。每每4位二進制數(shù)表示一個十進制字符,這位二進制數(shù)表示一個十進制字符,這4位中各位的權(quán)依次是:位中各位的權(quán)依次是: 8、4、2、18421 BCD碼。碼。BCD碼的運算:碼的運算:例、例、 1 8 + 3 2 1 0 0 0 1 1 0 0 0+0 0 0 0 0 0 1 1 0 0 0 1 1 0 1 1 結(jié)果低位結(jié)果

7、低位= B是非是非BCD碼錯碼錯需進展十進制調(diào)整:需進展十進制調(diào)整: 0 0 0 1 1 0 0 0 +0 0 0 0 0 0 1 1 0 0 0 1 1 0 1 1 個位大于個位大于9,應(yīng)進,應(yīng)進1 + 0 1 1 0 加加6使進使進1 0 0 1 0 0 0 0 1 結(jié)果形如結(jié)果形如21BCD碼加法規(guī)那么:碼加法規(guī)那么:兩個兩個BCD數(shù)相加時,數(shù)相加時,“某位的和小于某位的和小于10那么堅持不變;那么堅持不變;兩個兩個BCD數(shù)相加時,數(shù)相加時,“某位的和大于某位的和大于9,那么和數(shù)應(yīng)加,那么和數(shù)應(yīng)加6修正。修正。BCD碼減法規(guī)那么:碼減法規(guī)那么:兩個兩個BCD數(shù)相減時,數(shù)相減時,“某位的差未發(fā)生借位,那么差數(shù)堅持不某位的差未發(fā)生借位,那么差數(shù)堅持不變;變;兩個兩個BCD數(shù)相減時,數(shù)相減時,“某位發(fā)生了借位,其差應(yīng)減某位發(fā)生了借位,其差應(yīng)減6修正。修正。這里這里“某位指某位指BCD數(shù)中的數(shù)中的“個位、個位、“十位、十位、“百位、百位、 加法舉例:加法舉例: 0 1 1 0 0 1 0 1 6 5 +1 0 0 1 0 1 1 1 97 1 1 1 1 1 1 0 0 +0 1 1 0 0 1 1 0 加加66調(diào)整調(diào)整 1 0

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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

提交評論