計算機組成原理(第二版)-第2章-計算機中的數(shù)據(jù)表示課件_第1頁
計算機組成原理(第二版)-第2章-計算機中的數(shù)據(jù)表示課件_第2頁
計算機組成原理(第二版)-第2章-計算機中的數(shù)據(jù)表示課件_第3頁
計算機組成原理(第二版)-第2章-計算機中的數(shù)據(jù)表示課件_第4頁
計算機組成原理(第二版)-第2章-計算機中的數(shù)據(jù)表示課件_第5頁
已閱讀5頁,還剩145頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第2章計算機中的數(shù)據(jù)表示計算機組成原理(第二版)清華大學出版社教學目標教學重點教學過程12/22/20221第2章計算機中的數(shù)據(jù)表示計算機組成原理(第二版)教學目標數(shù)據(jù)在計算機中的表示方法及編碼形式掌握進位計數(shù)制和數(shù)制之間的轉(zhuǎn)換掌握數(shù)與字符的表示方法及校驗方法12/22/20222教學目標數(shù)據(jù)在計算機中的表示方法及編碼形式12/19/202教學重點進位計數(shù)制和數(shù)制之間的轉(zhuǎn)換定點數(shù)和浮點數(shù)帶符號數(shù)的表示方法字符編碼數(shù)據(jù)校驗碼12/22/20223教學重點進位計數(shù)制和數(shù)制之間的轉(zhuǎn)換12/19/20223教學過程2.1數(shù)據(jù)、信息和媒體2.2進位計數(shù)制2.3定點數(shù)和浮點數(shù)2.4帶符號數(shù)的表示方法2.5十進制數(shù)據(jù)表示2.6字符編碼2.7數(shù)據(jù)校驗碼2.8例題解析12/22/20224教學過程2.1數(shù)據(jù)、信息和媒體12/19/202242.1數(shù)據(jù)、信息和媒體(1/4)數(shù)據(jù):是對事實、概念或指令的一種特殊表達形式,可以用人工方式或自動化裝置進行通信、翻譯轉(zhuǎn)換或加工處理。數(shù)值型數(shù)據(jù):具有特定值的一類數(shù)據(jù),可用來表示數(shù)量的多少,可比較其大小。非數(shù)值型數(shù)據(jù):包括字符數(shù)據(jù)、邏輯數(shù)據(jù)、圖畫、聲音和活動圖像數(shù)據(jù)等。12/22/202252.1數(shù)據(jù)、信息和媒體(1/4)數(shù)據(jù):是對事2.1數(shù)據(jù)、信息和媒體(2/4)信息:對人有用的數(shù)據(jù),這些數(shù)據(jù)可能影響到人們的行為和決策。

信息處理:通過數(shù)據(jù)的采集和輸入,有效地把數(shù)據(jù)組織到計算機中,由計算機系統(tǒng)對數(shù)據(jù)進行相應的處理加工(如:存儲、建庫、轉(zhuǎn)換、合并、分類、計算、統(tǒng)計、匯總、傳送等操作),最后向人們提供有用的信息的全過程。12/22/202262.1數(shù)據(jù)、信息和媒體(2/4)信息:對人有2.1數(shù)據(jù)、信息和媒體(3/4)媒體:承載信息的載體。與計算機信息處理有關(guān)的媒體:感覺媒體:能使人聽覺、視覺、嗅覺、味覺和觸覺器官直接產(chǎn)生感覺的一類媒體,如聲音、文字、圖畫、氣味等,它們是人類使用信息的有效形式。表示媒體:為了使計算機有效地加工、處理、傳輸感覺媒體而在計算機內(nèi)部采用的特殊表示形式,即聲、文、圖、活動圖像的二進制編碼表示。存儲媒體:用于存放表示媒體以便計算機隨時加工處理的物理實體,如磁盤、光盤、半導體存儲器等。表現(xiàn)媒體:用于把感覺媒體轉(zhuǎn)換成表示媒體進而轉(zhuǎn)換為感覺媒體的物理設備,如計算機的輸入/輸出設備傳輸媒體:用來將表示媒體從一臺計算機傳遞到另一臺計算機的通信載體,如同軸電纜、光纖、電話線等12/22/202272.1數(shù)據(jù)、信息和媒體(3/4)媒體:承載信2.1數(shù)據(jù)、信息和媒體(4/4)數(shù)字化編碼:用少量最簡單的基本符號,對大量復雜多樣的信息進行一定規(guī)律的組合。一切信息編碼的兩大要素基本符號的種類組合規(guī)則12/22/202282.1數(shù)據(jù)、信息和媒體(4/4)數(shù)字化編碼:計算機內(nèi)部采用的二進制表示方式的原因1、二進制只有兩個數(shù)碼“0”和“1”,易于用物理器件表示。這些物理狀態(tài)都是不同的質(zhì)的變化,形象鮮明、易于區(qū)別,并且數(shù)的存儲、傳送和處理可靠性高。2、運算規(guī)則簡單,操作實現(xiàn)容易3、二進制加、減、乘、除運算,可以歸結(jié)為加、減、移位三種操作。4、理論和實踐證明,采用R=e=2.71828進制時,存儲設備最省,取3比取2更節(jié)省設備,但二進制比三進制易于表示5、二進制中的“1”和“0”與邏輯命題中的“真”、“假”相對應,為計算機實現(xiàn)邏輯運算和程序中的邏輯判斷創(chuàng)造了良好條件。12/22/20229計算機內(nèi)部采用的二進制表示方式的原因1、二進制只有兩個數(shù)碼2.2進位計數(shù)制2.2.1進位基數(shù)和位的權(quán)數(shù)2.2.2二進制數(shù)制2.2.3八進制數(shù)制2.2.4十六進制數(shù)制2.2.5數(shù)制之間的相互轉(zhuǎn)換12/22/2022102.2進位計數(shù)制2.2.1進位基數(shù)和位的權(quán)數(shù)12/19/2.2.1進位基數(shù)和位的權(quán)數(shù)基數(shù):計數(shù)制中用到的數(shù)碼的個數(shù),用R表示。位權(quán):以基數(shù)為底的指數(shù),指數(shù)的冪是數(shù)位的序號。對一個數(shù)S,其基數(shù)為R,則:12/22/2022112.2.1進位基數(shù)和位的權(quán)數(shù)基數(shù):計數(shù)制中用到的數(shù)碼的個數(shù)計算機常用各種進制數(shù)的表示進位制二進制八進制十進制十六進制規(guī)則逢二進一逢八進一逢十進一逢十六進一基數(shù)R=2R=8R=10R=16基本符號0,10,1,2,…,70,1,2,…,90,1,..,9,A,..,F權(quán)2i8i10i16i形式表示BODH12/22/202212計算機常用各種進制數(shù)的表示進位制二進制八進制十進制十六進制規(guī)2.2.5數(shù)制之間的相互轉(zhuǎn)換二、八、十六進制數(shù)轉(zhuǎn)換為十進制數(shù)十進制數(shù)轉(zhuǎn)換為二、八、十六進制數(shù)十進制數(shù)轉(zhuǎn)換為二進制十進制數(shù)轉(zhuǎn)換為八進制、十六進制數(shù)二進制數(shù)和八進制數(shù)、十六進制數(shù)的轉(zhuǎn)換二進制數(shù)轉(zhuǎn)換為八、十六進制數(shù)八、十六進制數(shù)轉(zhuǎn)換為二進制數(shù)12/22/2022132.2.5數(shù)制之間的相互轉(zhuǎn)換二、八、十六進制數(shù)轉(zhuǎn)換為十進制二、八、十六進制數(shù)轉(zhuǎn)換為十進制數(shù)(1/2)例2-1將(11011.11)2轉(zhuǎn)換為十進制數(shù)解:(11011.11)2=1×24+1×23+0×22+1×21+1×20+1×2-1+1×2-2=(27.75)1012/22/202214二、八、十六進制數(shù)轉(zhuǎn)換為十進制數(shù)(1/2)12/19/20二、八、十六進制數(shù)轉(zhuǎn)換為十進制數(shù)(2/2)例2-2將(732.6)8轉(zhuǎn)換為十進制數(shù)解:(732.6)8=7×82+3×81+2×80+6×8-1=(474.75)10例2-3將(A5C.B2)16轉(zhuǎn)換為十進制數(shù)解:(A5C.B2)16=10×162+5×161+12×160+11×16-1+2×16-2=(2652.6953125)1012/22/202215二、八、十六進制數(shù)轉(zhuǎn)換為十進制數(shù)(2/2)例2-2將(十進制轉(zhuǎn)換為二進制數(shù)(1/3)任一十進制數(shù)N,N=N整+N小。將這兩部分分開轉(zhuǎn)換①整數(shù)部分的轉(zhuǎn)換:采用“除2求余法”,轉(zhuǎn)換方法為:連續(xù)用2除,求得余數(shù)(1或0)分別為K0、K1、K2、…,直到商為0,所有余數(shù)排列Kn-1Kn-2…K2K1K0即為所轉(zhuǎn)換的二進制整數(shù)部分。②小數(shù)部分的轉(zhuǎn)換:采用“乘2取整法”。轉(zhuǎn)換方法為:連續(xù)用2乘,依次求得各整數(shù)位(0或1)K-1、K-2、…、K-m,直到乘積的小數(shù)部分為0。在小數(shù)轉(zhuǎn)換過程中,出現(xiàn)Fi恒不為0時,可按精度要求確定二進制小數(shù)的位數(shù)。

12/22/202216十進制轉(zhuǎn)換為二進制數(shù)(1/3)任一十進制數(shù)N十進制轉(zhuǎn)換為二進制數(shù)(2/3)例2-4求(43)10的二進制表示解:除以2 商Qi余數(shù)Ki43/2 21 K0=121/2 10 K1=110/2 5 K2=05/2 2 K3=12/2 1 K4=01/2 0 K5=1(43)10=(101011)212/22/202217十進制轉(zhuǎn)換為二進制數(shù)(2/3)例2-4求十進制轉(zhuǎn)換為二進制數(shù)(3/3)例2-5求(0.6875)20的二進制值解:乘以2 小數(shù)Fi 整數(shù)Ki0.6875×2 0.3750 K-1=10.3750×2 0.7500 K-2=00.7500×2 0.5000 K-3=10.5000×2 0.0000 K-4=1(0.6875)10=(0.1011)212/22/202218十進制轉(zhuǎn)換為二進制數(shù)(3/3)例2-5求十進制數(shù)轉(zhuǎn)換為八進制數(shù)、十六進制數(shù)將十進制數(shù)轉(zhuǎn)換為八進制數(shù)、十六進制數(shù)時,使用的方法與十進制數(shù)轉(zhuǎn)換成二進制數(shù)的方法基本相同,只是求整數(shù)部分時是用商除以8或16,取其余數(shù);小數(shù)部分改用乘以8或16,取其整數(shù)即可。12/22/202219十進制數(shù)轉(zhuǎn)換為八進制數(shù)、十六進制數(shù)將十進制數(shù)轉(zhuǎn)換為八進制數(shù)、二進制數(shù)與八進制、十六進制數(shù)間的轉(zhuǎn)換二進制轉(zhuǎn)化成八(十六)進制整數(shù)部分:從右向左按三(四)位分組,不足補零小數(shù)部分:從左向右按三(四)位分組,不足補零例2-9(001

011

010

110.101

011

100)2=(1326.534.)81326534例2-10(0101

1101.0101

1010)2=(5D.5A)165D5A12/22/202220二進制數(shù)與八進制、十六進制數(shù)間的轉(zhuǎn)換二進制轉(zhuǎn)化成八(十六)八進制、十六進制數(shù)與二進制數(shù)間的轉(zhuǎn)換八(十六)進制轉(zhuǎn)化成二進制一位八進制數(shù)對應三位二進制數(shù)一位十六進制數(shù)對應四位二進制數(shù)例2-11(247.63)8=(010

100

111.110

011)2例2-12(F5A.6B)16=(1111

0101

1010

0110.0110

1011)212/22/202221八進制、十六進制數(shù)與二進制數(shù)間的轉(zhuǎn)換八(十六)進制轉(zhuǎn)化成二進2.3定點數(shù)和浮點數(shù)數(shù)據(jù)的表示定點表示法浮點表示法任何一個二進制數(shù)N都可以表示為N=2E·S 其中E是一個二進制整數(shù),稱為數(shù)N的階碼,2為階碼的基數(shù),S是二進制小數(shù),稱為數(shù)N的尾數(shù)。E和S可正可負。尾數(shù)S表示數(shù)N的全部有效數(shù)據(jù),階碼E指明該數(shù)的小數(shù)點位置,表示數(shù)據(jù)的大小范圍。12/22/2022222.3定點數(shù)和浮點數(shù)數(shù)據(jù)的表示12/19/2022222.3.1定點數(shù)表示法階碼E保持不變?nèi)鬍=0,小數(shù)點固定在最高位之前,則該數(shù)是一個純小數(shù)或定點小數(shù)。例如N=20·0.110101001=0.110101001若E=n(n為尾數(shù)的位數(shù)),則把小數(shù)點定在尾數(shù)最末位之后,表示一個純整數(shù)(定點整數(shù))。例如N=27×0.1011010=0101101012/22/2022232.3.1定點數(shù)表示法階碼E保持不變12/19/202222.3.2浮點數(shù)的表示浮點數(shù)的格式

階碼位數(shù)m與尾數(shù)位數(shù)n之間有如下關(guān)系:2m-1≥n 即表示階碼的值應保證實際的小數(shù)點可以在整個尾數(shù)的位格中移動。浮點數(shù)的表示形式階碼階符尾數(shù)尾符12/22/2022242.3.2浮點數(shù)的表示浮點數(shù)的格式

階碼位數(shù)m與尾數(shù)位數(shù)2.3.2浮點數(shù)的表示規(guī)格化浮點數(shù) 所謂浮點數(shù)的規(guī)格化,就是通過移動尾數(shù),使尾數(shù)S的最高位數(shù)字為1。即S滿足1/2≤|S|<1時,這個浮點數(shù)就是規(guī)格化的數(shù),否則就不是。在字長一定的情況下,規(guī)格化的浮點數(shù)精度最高。12/22/2022252.3.2浮點數(shù)的表示規(guī)格化浮點數(shù)12/19/2022252.3.3定點數(shù)表示法和浮點數(shù)表示法的比較表示的數(shù)據(jù)范圍不同定點表示法,8位小數(shù),能表示的數(shù)據(jù)范圍:0.0000001~0.1111111(2-7~1-2-7)浮點表示法,2位階碼,1位階符,4位尾數(shù),1位尾符,能表示的范圍:0.0001×2-11~0.1111×211溢出情況不同定點表示法(小數(shù))帶符號n+1位數(shù)時:小于2-n時:當0;大于1-2-n時:溢出,停機。浮點表示法:規(guī)格化后,從階碼上分析溢出:階碼很小時,下溢:當0;階碼超出最大值時,上溢:停機。運算規(guī)則的復雜性不同定點數(shù):較簡單;浮點數(shù):較復雜。精度不同:規(guī)格化浮點數(shù)的精度遠遠大于定點數(shù)。12/22/2022262.3.3定點數(shù)表示法和浮點數(shù)表示法的比較表示的數(shù)據(jù)范圍不2.3.4計算機中數(shù)的表示單位和機器字長數(shù)的表示單位:位(Bit):表示數(shù)的最基本單位,對二進制只有“0”和“1”字節(jié)(Byte):8位二進制數(shù)字(Word):機器字長:參加運算的寄存器所含的二進制位數(shù),代表機器的精度固定長度可變字長12/22/2022272.3.4計算機中數(shù)的表示單位和機器字長數(shù)的表示單位:12.4帶符號數(shù)的表示一個數(shù)的表示方法,是它們在計算機中的組成格式和編碼規(guī)則。 當一個數(shù)送入計算機進行運算處理時,首先將其轉(zhuǎn)換為二進制數(shù),同時還要解決以下幾個問題:1.怎樣表示數(shù)的符號2.怎樣確定小數(shù)點的位置12/22/2022282.4帶符號數(shù)的表示一個數(shù)的表示方法,是它們在計算機中的2.4.1機器數(shù)的原碼表示(1/3)規(guī)則:機器數(shù)的最高一位表示符號,“0”表示正號;“1”表示負號,后面各位用數(shù)的絕對值表示。整數(shù)原碼的定義為:[X]原為機器數(shù)的原碼,X為真值,n為整數(shù)的位數(shù)。

例2-13:求X=1011和Y=-1011的原碼解:X=1011時,[X]原=01011Y=-1011時,[Y]原=24-(-1011)=1101112/22/2022292.4.1機器數(shù)的原碼表示(1/3)規(guī)則:機器數(shù)的最高2.4.1機器數(shù)的原碼表示(2/3)小數(shù)原碼的定義為:[X]原為機器數(shù)的原碼,X為真值。

例2-14:求X=0.1011和Y=-0.1011的原碼解:X=0.1011時,[X]原=0.1011Y=-0.1011時,[Y]原=1-(-0.1011)=1.101112/22/2022302.4.1機器數(shù)的原碼表示(2/3)小數(shù)原碼的定義為:2.4.1機器數(shù)的原碼表示(3/3)性質(zhì):原碼最高位表示數(shù)的符號,0表示正號,1表示負號。對定點小數(shù),有:0不唯一定點小數(shù)[+0]原=0.0…0[-0]原=1.0…0整數(shù)[+0]原=00…0[-0]原=10…00X<1-1<X0+2+10-11[X]原<20[X]原<112/22/2022312.4.1機器數(shù)的原碼表示(3/3)性質(zhì):0X<1-2.4.2機器數(shù)的補碼表示(1/8)整數(shù)的補碼[X]補為整數(shù)X的補碼,X為任意整數(shù),n為整數(shù)的位數(shù)。小數(shù)的補碼:

[X]補是小數(shù)X的補碼,X為任意小數(shù),2為模數(shù)。12/22/2022322.4.2機器數(shù)的補碼表示(1/8)整數(shù)的補碼12/12.4.2機器數(shù)的補碼表示(2/8)例2-15求正整數(shù)X=1011和負整數(shù)Y=-1011的補碼解: [X]補=01011[Y]補=2n+1+X=24+1+X=100000-1011=10101例2-16求正小數(shù)X=0.1011和負小數(shù)Y=-0.1011的補碼解:[X]補=0.1011[Y]補=2+X=2-0.1011=1.010112/22/2022332.4.2機器數(shù)的補碼表示(2/8)例2-15求正2.4.2機器數(shù)的補碼表示(3/8)性質(zhì)0的補碼唯一 整數(shù)0[+0]補=00…0[-0]補=2n+1-00…0=2n+1=00…0(mod2n+1) 小數(shù)0[+0]補=0.00…0 [-0]補=2-0.00…0=2=0.00…0(mod2)設[X]補=XSXn-1Xn-2…X1X0,XS是補碼的符號位,標志整數(shù)X的符號,XS=0時,X為正數(shù);XS=1時,X為負數(shù)。補碼的表示范圍是: 正整數(shù)2n>X≥0 負整數(shù)0≥X≥-2n

整數(shù)X的補碼可以寫成:[X]補=2n+1·XS+X,12/22/2022342.4.2機器數(shù)的補碼表示(3/8)性質(zhì)12/19/2性質(zhì)整數(shù)的補碼與真值之間的關(guān)系

補碼與真值的關(guān)系設[X]補=XSXn-1Xn-2…X1X0,[X]補=2n+1·XS+X,可以證明:X=[X]補-2n+1·XS=-2n·Xs+Xn-1Xn-2…X1X0補碼的一項算術(shù)運算特性[X/2]補是把[X]補中各位連同符號位一起都右移一位,符號位保持不變。2.4.2機器數(shù)的補碼表示(4/8))X0X<2n-2nX<0[X]補-2n[)[)2n+12n[)[02n[X]補<2n+10[X]補<2n12/22/202235性質(zhì)2.4.2機器數(shù)的補碼表示(4/8))X0X<22.4.2機器數(shù)的補碼表示(5/8)補碼的求法 當0≥X≥-2n時,數(shù)X的補碼是:符號位為1,數(shù)值位是其真值X的數(shù)值位取反加1。也可由X的原碼[X]原求得補碼[X]補:[X]補等于[X]原除符號位外求反加1。反過來可由X的補碼[X]補求得原碼[X]原:[X]原等于[X]補除符號位外求反加1。 當X為小數(shù)時,若X為負數(shù),則X的補碼是:符號位為1,數(shù)值位是其真值X的數(shù)值位取反末位加1。也可由X的原碼[X]原求得補碼[X]補:[X]補等于[X]原除符號位外求反末位加1。反過來可由X的補碼[X]補求得原碼[X]原:[X]原等于[X]補除符號位外求反末位加1。12/22/2022362.4.2機器數(shù)的補碼表示(5/8)補碼的求法12/12.4.2機器數(shù)的補碼表示(6/8)由[X]補求[-X]補[X+Y]補=[X]補+[Y]補[X-Y]補=[X]補+[-Y]補 假設[X]補=XSXn-1Xn-2…X1X0,可由[X]補按下式求得[-X]補

把對[X]補連同符號位在內(nèi)的各位求反運算稱為對[X]補“求反”運算,記為~[X]補。這樣對[X]補的“求補”運算可看成對[X]補“求反”運算再加1:[-X]補=~[X]補+1,且兩者有以下關(guān)系:[X]補+~[X]補=2n+1-1=11…1(n個1)12/22/2022372.4.2機器數(shù)的補碼表示(6/8)由[X]補求[-X2.4.2機器數(shù)的補碼表示(7/8)變形補碼小數(shù)“模4補碼”的定義為:或 [X]補=X(mod4)(1)當-1≤X<1時,數(shù)X的“模4補碼”的兩個符號位相同,00表示正號,11表示負號,其數(shù)值位與補碼相同。當符號位為01或10時,表示數(shù)值溢出:為01時表示兩正數(shù)之和大于等于1的情況,稱為數(shù)值“上溢”;為10時表示兩負數(shù)之和小于等于-1的情況,稱為數(shù)值“下溢”。(2)“模4補碼”表示中,0有唯一的補碼:根據(jù)“模4補碼”的性質(zhì)1,可以判斷數(shù)的溢出。兩個同符號數(shù)相加時,有可能出現(xiàn)溢出。12/22/2022382.4.2機器數(shù)的補碼表示(7/8)變形補碼12/192.4.2機器數(shù)的補碼表示(8/8)補碼的符號位擴展 若[X]補=XSXn-1Xn-2…X1X0為8位,需要擴展為16位時,要按下面的規(guī)則進行擴展: 用符號位XS填滿擴展的高8位,若X>0,XS=0,擴展后高8位全為0,低8位包括符號位仍為原來的數(shù)碼位。 若X<0,XS=1,擴展后高8位全為1,低8位包括符號位仍為原來的數(shù)碼位。12/22/2022392.4.2機器數(shù)的補碼表示(8/8)補碼的符號位擴展12.4.3機器的反碼表示(1/3)定義:整數(shù)反碼的數(shù)學定義為:

或[X]反=X(mod2n+1-1)例2-20X=1011,則[X]反=01011Y=-1011,則[Y]反=25-1+X=1010012/22/2022402.4.3機器的反碼表示(1/3)定義:12.4.3機器的反碼表示(2/3)定義:小數(shù)反碼的數(shù)學定義為:

或[X]反=X(mod2-2-n)

12/22/2022412.4.3機器的反碼表示(2/3)定義:12.4.3機器的反碼表示(3/3)性質(zhì):(1)0的反碼不唯一,整數(shù)0[+0]反=00…0[-0]反=(2n+1-1)+(-00…0)=11…1(mod2n+1-1)小數(shù)0[+0]反=0.00…0[-0]反=2-2-n-0.00…0=1.1…1(mod2-2-n)(2)設整數(shù)X的反碼表示為:[X]反=XSXn-1Xn-2…X1X0,XS是反碼的符號位,它標志整數(shù)X的符號,XS=0時,X為正數(shù);XS=1時,X為負數(shù)。(3)反碼與補碼的關(guān)系根據(jù)補碼和反碼的定義,當X為正數(shù)時,[X]補=[X]反;當X為負整數(shù)時,[X]補=[X]反+1;當X為n位負小數(shù)時,[X]補=[X]反+2-n12/22/2022422.4.3機器的反碼表示(3/3)性質(zhì):12.4.4機器數(shù)的移(增)碼表示法(1/2)定義:設階碼為n位整數(shù),[X]移=2n+X2n>X≥-2n即無論X是正還是負,一律加上2n,稱2n為基數(shù)。移碼與補碼的關(guān)系:真值是正數(shù)時,移碼是補碼的最高位加1;真值是負數(shù)時,移碼是補碼的最高位減1。即若[X]補=XSXn-1Xn-2…X1X0,則[X]移=Xn-1Xn-2…X1X0

例2-21X=1001,[X]補=01001,可求得[X]移=11001X=-1001,[X]補=10111,可求得[X]移=0011112/22/2022432.4.4機器數(shù)的移(增)碼表示法(1/2)定義:設2.4.4機器數(shù)的移(增)碼表示法(2/2)性質(zhì):(1)0的移碼唯一。整數(shù)0[+0]移=2n+00…0=100…0[-0]移=2n-00…0=100…0(2)機器0的形式為00…0,它表示的真值是[X]移所能表示的最小的數(shù)。(3)移碼的最高位是符號位,但表示的意義與原碼和補碼的意義相反。符號為0時,表示負數(shù);符號為1,表示正數(shù)。(4)移碼一般只進行加減運算,運算后需要對結(jié)果進行修正,修正量為2n,即要對結(jié)果的符號位取反后,才能得到移碼形式的結(jié)果。(5)通過比較兩個移碼的大小,可得知其對應的真值大小。12/22/2022442.4.4機器數(shù)的移(增)碼表示法(2/2)性質(zhì):12.4.5各種編碼的比較相同點:1、三種編碼(原碼、反碼、補碼)的最高位都是符號位。2、當真值為正時,三種編碼的符號位都用0表示,數(shù)值部分與真值相同。即它們的表示方法是相同的。3、當真值為負時,三種編碼的符號位都用1表示,但數(shù)值部分的表示各不相同,數(shù)值部分存在這樣的關(guān)系:補碼是原碼的“求反加1”(整數(shù)),或者“求反末位加1”(小數(shù));反碼是原碼的“每位求反”。4、它們所能表示的數(shù)據(jù)范圍基本一樣,-2n<X<2n(整數(shù))或-1<X<1(小數(shù)),補碼多表示一個數(shù)-2n(整數(shù))或-1(小數(shù))。區(qū)別:在于對負數(shù)的表示方法有所不同。12/22/2022452.4.5各種編碼的比較相同點:12/19/2022452.5十進制數(shù)據(jù)表示人們習慣于用十進制表示數(shù)據(jù),而計算機則采用二進制表示和處理數(shù)據(jù)。所以向計算機輸入數(shù)據(jù)時,需要進行十進制數(shù)到二進制數(shù)的轉(zhuǎn)換;輸出數(shù)據(jù)時,則要進行二進制數(shù)到十進制數(shù)的轉(zhuǎn)換處理。在數(shù)據(jù)量較小的情況下,這樣的轉(zhuǎn)換對機器運行效率的影響不是很大。但是,在某些應用領域,運算簡單而數(shù)據(jù)量很大,進行這些轉(zhuǎn)換所占用的時間比例比較大。所以為了提高機器的運行效率,計算機可以用十進制來表示和處理數(shù)據(jù)。一個十進制數(shù)位是用若干位二進制編碼表示。用四位二進制代碼的不同組合來表示一個十進制數(shù)碼的編碼方法,稱為二—十進制編碼,也稱BCD碼(BinaryCodedDecimal)。常用這種編碼作為十進制數(shù)轉(zhuǎn)換成二進制數(shù)的中間過渡。即先將一個十進制數(shù)用BCD碼來表示,再把它們送入機器,計算機通過標準子程序使其轉(zhuǎn)換成純二進制數(shù)。12/22/2022462.5十進制數(shù)據(jù)表示人們習慣于用十進制表示數(shù)據(jù),而計算機則2.5.1二—十進制編碼原理1、二—十進制的編碼都采用壓縮的十進制串的方法,即四個二進制位的值來表示一個十進制數(shù)碼。2、各種編碼的區(qū)別在于選用哪十個狀態(tài)。選擇的原則是:要考慮輸入和輸出時轉(zhuǎn)換方便;內(nèi)部運算時,加、減運算規(guī)則要盡量簡單;在特定場合,可能有其它一些要求。3、從每個二進制位是否有確定的位權(quán)區(qū)分,可把二—十進制編碼分為有權(quán)碼和無權(quán)碼。12/22/2022472.5.1二—十進制編碼原理1、二—十進制的編碼都采用壓縮2.5.2二-十進制有權(quán)碼(1/2)對于有權(quán)碼,將每位的數(shù)碼與相應的位權(quán)相乘,再求和,就可以得到它所代表的十進制數(shù)值。8421碼實現(xiàn)加、減運算時的修正規(guī)則:(1)4位一組二進制數(shù),兩個8421碼表示的數(shù)相加之和等于或小于1001,即十進制的9時,不需要修正,在各組內(nèi),二進制代碼相加,仍遵循“逢二進一”的規(guī)則。(2)4位一組二進制數(shù),兩個8421碼相加結(jié)果大于1001(即十進制9)時,則應該對該組的4位進行“加6修正”,使它向高一組產(chǎn)生進位。(3)4位一組二進制數(shù),兩個8421碼相加結(jié)果大于或等于10000(即十進制16),而向高一組進位時,則應該對該4位進行“加6修正”。12/22/2022482.5.2二-十進制有權(quán)碼(1/2)對于有權(quán)碼,將每位2.5.2二-十進制有權(quán)碼(2/2)編碼方法:8421碼,2421碼、5211碼、4311碼和84-2-1碼(四位二進制位的位權(quán)分別為8、4、-2、-1)等。其最方便使用的共同特點為:(1)對于2421碼、5211碼、4311碼,任何兩個十進制數(shù)位,采用這三種編碼的任何一種編碼,它們相加之和等于或大于10時,其結(jié)果的最高位向左產(chǎn)生進位,小于10時則不產(chǎn)生進位。這一特點有利于實現(xiàn)“逢十進位”的計數(shù)和加法規(guī)則。(2)對于2421碼、5211碼、4311碼和84-2-1碼,任何兩個十進制數(shù)位,采用這四種編碼的任何一種編碼,它們相加其和等于9時,即它們的二進制編碼位互為反碼,則其結(jié)果的四個二進制位一定是1111,能較好地體現(xiàn)十進制的按9取補與二進制的按1取補的對應關(guān)系,這對減法很有用。12/22/2022492.5.2二-十進制有權(quán)碼(2/2)編碼方法:8421碼2.5.3二-十進制無權(quán)碼(1/2)無權(quán)碼中,用的較多的是余3碼(Excess-3code)和格雷碼(Graycode),格雷碼又稱循環(huán)碼。1.余3碼(1)余3碼是在8421碼的基礎上,把每個代碼都加上0011而形成的。(2)普通8421碼的加法器仍能為余3碼加法器直接利用,具體規(guī)則如下:(A)若兩個十進制數(shù)的余3碼相加,如果結(jié)果不產(chǎn)生進位,則從所得和值去減0011,便得十進制位和的余3碼。(B)若兩個十進制數(shù)的余3碼相加,如果結(jié)果有進位,則其進位正確,但需將所得和值加上0011,才求得十進制數(shù)和的余3碼。12/22/2022502.5.3二-十進制無權(quán)碼(1/2)無權(quán)碼中,用的較多的2.5.3二-十進制無權(quán)碼(2/2)2.格雷碼(1)格雷碼的編碼規(guī)則是使相鄰的兩個代碼,只有一個二進制位的狀態(tài)不同,其余三個二進制位必須有相同狀態(tài)。(2)優(yōu)點:從一個編碼變到下一個相鄰編碼時,只有一個位的狀態(tài)發(fā)生變化,有利于保證代碼變換的連續(xù)性。在模擬/數(shù)字轉(zhuǎn)換和產(chǎn)生節(jié)拍電位等應用場合特別有用。

12/22/2022512.5.3二-十進制無權(quán)碼(2/2)2.格雷碼12/表2-1二—十進制的編碼的部分編碼方案100111111111111111111100010010001001110011101011100011101110100001111101110010011100101000011000001110101001101110101010110001100101101110001011011110001110101110100010011001000001001100100110010001010110011100010011010010000111011001010100000100110101011100010010001101000001001000110100000000000011000000000000000000009876512340格雷碼(2)格雷碼(1)余3碼431184-2-152112421無權(quán)碼位有權(quán)碼十進制符號(BCD)842112/22/202252表2-1二—十進制的編碼的部分編碼方案10011111112.6字符編碼2.6.1ASCII碼2.6.2EBCDIC碼12/22/2022532.6字符編碼2.6.1ASCII碼12/19/202.6.1ASCII碼“美國標準信息交換代碼”(AmericanStandardCodeforInformationInterchange),簡稱ASCII碼。7位二進制編碼,可表示27=128個字符。 ASCII碼中,編碼值0~31不對應任何可印刷(或稱有字形)字符,通常稱它們?yōu)榭刂谱址?,用于通信中的通信控制或?qū)τ嬎銠C設備的功能控制。編碼值為32的是空格(或間隔)字符SP。編碼值為127的是刪除控制DEL碼。其余的94個字符稱為可印刷字符。12/22/2022542.6.1ASCII碼“美國標準信息交換代碼”(Ameri2.6.2EBCDIC碼EBCDIC碼(ExtendedBinaryCodedDecimalInterchangeCode,擴展BCD碼),是8位二進制編碼,可以表示256個編碼狀態(tài),但只選用其中一部分。 主要用在IBM公司生產(chǎn)的各種機器中。12/22/2022552.6.2EBCDIC碼EBCDIC碼(Extended2.6.3漢字的表示特點:(1)漢字是一種象形文字,據(jù)統(tǒng)計,從甲骨文至今約有六萬左右的漢字。目前常見的漢字有約七千個。(2)漢字字形結(jié)構(gòu)復雜,筆劃繁多。(3)漢字同音字多,多音字多。涉及多種編碼:漢字編碼輸入方案可以歸納為四類,即數(shù)字編碼,如區(qū)位碼;字音編碼,如拼音碼;字形編碼,如五筆字型;漢字混合編碼等。1981年我國制定了《信息交換用漢字編碼字符集基本集GB2312-80》國家標準。每個二進制編碼用兩個字節(jié)表示。共收錄一級漢字3755個,二級漢字3008個,各種符號682個,共計7445個。12/22/2022562.6.3漢字的表示特點:12/19/2022562.7數(shù)據(jù)校驗碼2.7.1奇偶校驗碼2.7.2海明校驗碼2.7.3循環(huán)冗余校驗碼12/22/2022572.7數(shù)據(jù)校驗碼2.7.1奇偶校驗碼12/19/20222.7數(shù)據(jù)校驗碼1、數(shù)據(jù)校驗的實現(xiàn)原理:數(shù)據(jù)校驗碼是在合法的數(shù)據(jù)編碼之間,加進一些不允許出現(xiàn)的(非法的)編碼,使合法的數(shù)據(jù)編碼出現(xiàn)錯誤時成為非法編碼。這樣就可以通過檢測編碼的合法性達到發(fā)現(xiàn)錯誤的目的。2、碼距:指任何一種編碼的任兩組二進制代碼中,其對應位置的代碼最少有幾個二進制位不相同。12/22/2022582.7數(shù)據(jù)校驗碼1、數(shù)據(jù)校驗的實現(xiàn)原理:數(shù)據(jù)校驗碼是在合法2.7.1奇偶校驗碼1、碼距=22、奇偶校驗碼:它是在被傳送的n位信息組上,加上一個二進制位作為校驗位,使配置后的n+1位二進制代碼中1的個數(shù)為奇數(shù)(奇校驗)或偶數(shù)(偶校驗)。

例: 數(shù)據(jù) 奇校驗編碼 偶校驗編碼 00000000 100000000 000000000 01110101 001110101 101110101 其中,最高一位為校驗位,其余低八位為數(shù)據(jù)位。

3、奇偶校驗碼只能檢測出數(shù)據(jù)代碼中一位出錯的情況,但無法判斷差錯所發(fā)生的位置。常用于存儲器讀寫檢查,或ASCII字符傳送過程中的檢查。12/22/2022592.7.1奇偶校驗碼1、碼距=212/19/2022592.7.2海明校驗碼(1/8)1.原理在數(shù)據(jù)位中加入幾個校驗位,將數(shù)據(jù)代碼的碼距均勻地拉大,并把數(shù)據(jù)的每個二進制位分配在幾個奇偶校驗組中。當某一位出錯后,就會引起有關(guān)的幾個校驗位的值發(fā)生變化,不但可以發(fā)現(xiàn)錯誤,還能指出是哪一位出錯,為進一步自動糾錯提供依據(jù)。2.編碼規(guī)則若海明碼最高位號為m,最低位號為1,即HmHm-1…H2H1,則海明碼的編碼規(guī)則是:(1)校驗位與數(shù)據(jù)位之和為m,每個校驗位Pi在海明碼中被分在位號2i-1的位置上,其余各位為數(shù)據(jù)位,并按從低向高逐位依次排列的關(guān)系分配各數(shù)據(jù)位。(2)海明碼的每一位位碼Hi(包括數(shù)據(jù)位和校驗位)由多個校驗位校驗,其關(guān)系是被校驗的每一位位號要等于校驗它的各校驗位的位號之和。12/22/2022602.7.2海明校驗碼(1/8)1.2.7.2海明校驗碼(2/8)3.增添校驗位

假設欲檢測的有效信息為n位,需增加的校驗位為k位,則校驗碼的長度為n+k位。校驗位的狀態(tài)組合,應當具有指出n+k位中任一位有錯或無錯的能力,即需要區(qū)別出n+k+1種狀態(tài)。應滿足以下關(guān)系式:2k≥n+k+1 這個關(guān)系式稱為海明不等式,若信息位長度n確定后,由此可得到校驗位k的最短長度。 確定校驗位后,就可以與信息位組成海明校驗位。假設數(shù)據(jù)位是7位二進制編碼,據(jù)上所述,校驗位的位數(shù)k為4,故海明碼的總位數(shù)為11。它們的排列關(guān)系可表示為:海明碼位號:H11H10H9H8H7H6H5H4H3H2H1海明碼:D7D6D5P4D4D3D2P3D1P2P1可知:每個校驗位由其本身校驗;每個數(shù)據(jù)位由若干校驗位校驗。12/22/2022612.7.2海明校驗碼(2/8)3.2.7.2海明校驗碼(3/8)4.校驗位校驗任務的分配:根據(jù)海明碼的編碼規(guī)則,每一位海明碼都有多個校驗位,且被校驗的每一位的位號等于參與校驗的幾個校驗位的位號之和。

占據(jù)各權(quán)位上的校驗位按權(quán)組成的8421碼,正好等于海明碼的位號,即海明碼的位號Hi正好等于要校驗它的校驗位所占權(quán)位權(quán)值之和。例如:H11=P4×23+P2×22+P1×21這說明了H11位將由P4、P2、P1進行校驗。校驗位P1可以校驗:H1、H3、H5、H7、H9、H11、H13、H15校驗位P2可以校驗:H2、H3、

H6、H7、H10、H11、H14、H15校驗位P3可以校驗:H4、H5、

H6、

H7、H12、H13、H14、H15校驗位P4可以校驗:H8、H9、

H10、H11、H12、H13、H14、H15根據(jù)校驗時采用奇校驗或偶校驗,可以寫出相應的校驗方程。12/22/2022622.7.2海明校驗碼(3/8)4.2.7.2海明校驗碼(4/8)例2-23設有一個7位信息碼位0110001,求它的海明碼。解:n=7,根據(jù)海明不等式,可求得校驗位最短長度k=4。其海明碼先表示如下:海明碼位號:H11H10H9H8H7H6H5H4H3H2H1海明碼:0

1

1P4000

P31P2P1按偶校驗寫出校驗方程為:H1H3H5H7H9H11=0(P1=H1)H2H3

H6H7H10H11=0(P2=H2)H4H5

H6H7=0(P3=H4)H8H9

H10H11=0(P4=H8)由此可得:P1=0、P2=0、P3=0、P4=0,所以0110001的海明碼為01100000100。12/22/2022632.7.2海明校驗碼(4/8)例22.7.2海明校驗碼(5/8)5.檢錯與糾錯方法:將錯了的碼字重新代入校驗方程校驗一次即可。假設上面例子中的海明碼01100000100傳送后,若H6位發(fā)生了錯誤,變成了01100100100,這時把它們代入上面的偶校驗校驗方程,如下:H1H3H5H7H9H11=010010=0=E1H2H3

H6H7H10H11=011010=1=E2H4H5

H6

H7=0010=1=E3H8H9

H10H11=0110=0=E4可以把E4E3E2E1=0110看成一個“指誤字”,因為其二進制碼為0110,說明H6出了錯,是H6錯成了1,所以要糾錯,糾錯時將H6位取反值,即讓它恢復到正確值0。這樣糾錯后,即可得到正確的海明碼01100000100。12/22/2022642.7.2海明校驗碼(5/8)5.2.7.2海明校驗碼(6/8)6.討論:設有效信息位n=4位,則根據(jù)海明不等式,可求得校驗位最短長度k=3。則:海明碼位號:

H7H6H5H4H3H2H1海明碼:

D4D3D2P3D1P2P1可以得到: P1參與D1、D2、D4的校驗;P2參與D1、D3、D4的校驗;P3參與D2、D3、D4的校驗。若采用偶校驗,則:P1=D1D2D4P2=D1D3D4P3=D2D3D4 上述編碼中,兩個正確碼之間若有一位有效信息不同,則由于該位至少參加兩組的奇偶校驗,故至少會影響到兩位校驗位的不同,所以這種碼距=3(可以檢測兩位錯,或檢測并糾正一位錯)12/22/2022652.7.2海明校驗碼(6/8)6.2.7.2海明校驗碼(7/8)若按下述關(guān)系對所得的海明碼進行偶校驗:S1=P1

D1D2D4S2=P2

D1D3D4S3=P3

D2D3D4則S3S2S1可以反映出錯情況:(1)若S3S2S1=000,無錯(2)若欲傳的海明碼=0101101,收到0111101,則S1=P1

D1D2D4=1110=1,S2=0,S3=1表明第5位(D2)出錯(3)若欲傳的海明碼=0101101,收到0110101,則S1=1,S2=0,S3=0表明有錯,但無法判斷是第1位出錯,還是4、5位同時出錯。上述編碼不能把兩位出錯和一位出錯區(qū)分開來。12/22/2022662.7.2海明校驗碼(7/8)若按2.7.2海明校驗碼(8/8)7.改進:增加一個校驗位S4=P4

P1P2P3D1D2D3D4P4=P1P2P3D1D2D3D4(1)S4=0,S3S2S1=000,無錯(2)S4=0,S3S2S1≠0,表明有兩位出錯(3)S4=1,S3S2S1≠0,可根據(jù)S3S2S1指出的值糾正一位錯。在這種情況下,因多增加一位校驗位,則前面的海明不等式改為:2k-1≥n+k稱為擴展海明碼,其碼距=4,可發(fā)現(xiàn)兩位錯并糾正一位錯。12/22/2022672.7.2海明校驗碼(8/8)7.2.7.3循環(huán)冗余校驗碼(1/7)1.CRC的編碼方法 n是有效數(shù)據(jù)信息位位數(shù),r是校驗位位數(shù)??傞Lk=n+r位,稱(k,n)碼。 設待編碼的有效信息以多項式M(x)表示,將M(x)左移r位得到多項式M(x)×Xr,使低r位二進制位全為零,以便與r位校驗位拼接。使用多項式M(x)×Xr除以生成多項式G(x),求得的余數(shù)即為校驗位。為了得到r位余數(shù)(校驗位),G(X)必須是r+1位的。12/22/2022682.7.3循環(huán)冗余校驗碼(1/7)1.CRC的編2.7.3循環(huán)冗余校驗碼(2/7)假設M(x)×Xr除以生成多項式G(x),求得的余數(shù)用表達式R(x)表示,商的表達式用Q(x)表示,它們之間的關(guān)系如下:

這時將r位余數(shù)R(X)與左移r位的M(x)×Xr相加,就得到n+r位的CRC編碼:M(x)×Xr+R(x)=Q(x)×G(x)+R(x)+R(x)因為“兩個相同數(shù)據(jù)的模2和為零”,即R(x)+R(x)=0,所以,M(x)×Xr+R(x)=Q(x)×G(x) 可以看出,所求得的CRC碼是一個可被G(X)表示的數(shù)碼除盡的數(shù)碼。12/22/2022692.7.3循環(huán)冗余校驗碼(2/7)假設2.7.3循環(huán)冗余校驗碼(3/7)例2-24設四位有效信息位是1100,選用生成多項式G(X)=1011,試求有效信息位1100的CRC編碼。解:(1)將有效信息位1100表示為多項式M(x) M(X)=X3+X2=1100(2)M(X)左移r=3位,得M(x)×X3

M(x)×X3=X6+X5=1100000(3)用r+1位的生成多項式G(X),對M(x)×Xr作“模2除” 1100000/1011=1110+010/1011(4)M(x)×X3與r位余數(shù)R(X)作“模2加”,即可求得它的CRC編碼 M(x)×X3+R(X)=1100000+010=1100010(模2加)因為k=7、n=4,所以編好的CRC碼又稱為(7,4)碼。12/22/2022702.7.3循環(huán)冗余校驗碼(3/7)例2-242.7.3循環(huán)冗余校驗碼(4/7)2.模2運算:不考慮借位和進位(1)模2加減:可用異或門實現(xiàn),即:0+0=0;0+1=1;1+0=1;1+1=0;0-0=0;0-1=1;1-0=1;1-1=0;(2)模2乘法:用模2加求部分積之和例如: 1011x11 1011+10111110112/22/2022712.7.3循環(huán)冗余校驗碼(4/7)2.模2運算:2.7.3循環(huán)冗余校驗碼(5/7)(3)模2除法:按模2減求部分余數(shù),每上一位商,部分余數(shù)要減少一位,上商規(guī)則是:只要余數(shù)最高位為1,則商1,否則為0。當部分余數(shù)的位數(shù)小于除數(shù)時,該余數(shù)為最后余數(shù)。例如: 111……………….商11(除數(shù))1000(被除數(shù))1110111011112/22/2022722.7.3循環(huán)冗余校驗碼(5/7)(3)模2除法2.7.3循環(huán)冗余校驗碼(6/7)3.CRC的譯碼及糾錯 CRC碼傳送到目標部件,用約定的多項式G(x)對收到的CRC碼進行“模2除”,若余數(shù)為0,則表明該CRC校驗碼正確;否則表明有錯,不同的出錯位,其余數(shù)是不同的。由余數(shù)具體指出是哪一位出了錯,然后加以糾正。

可以證明:更換不同的有效信息位,余數(shù)與出錯位的對應關(guān)系不會發(fā)生變化,只與碼制和生成多項式G(X)有關(guān)。12/22/2022732.7.3循環(huán)冗余校驗碼(6/7)3.CRC的譯2.7.3循環(huán)冗余校驗碼(7/7)4.關(guān)于生成多項式 不是任何一個(k+1)位多項式都能作為生成多項式,從檢錯、糾錯的要求來看,生成多項式應滿足下列要求:(1)任何一位發(fā)生錯誤,都應使余數(shù)不為零;(2)不同位發(fā)生錯誤,都應使余數(shù)不同;(3)用余數(shù)補零,繼續(xù)作“模2除”,應使余數(shù)循環(huán)。12/22/2022742.7.3循環(huán)冗余校驗碼(7/7)4.關(guān)于生成多

本章小結(jié)數(shù)據(jù)可區(qū)分為數(shù)值型數(shù)據(jù)和非數(shù)值型數(shù)據(jù)。根據(jù)基數(shù)和位的權(quán)數(shù)可將數(shù)據(jù)表示成二進制數(shù)(基數(shù)R為2),八進制數(shù)(基數(shù)R為8),十六進制數(shù)(基數(shù)R為16)等。數(shù)制之間可根據(jù)基數(shù)和位的權(quán)數(shù)實現(xiàn)相互之間的轉(zhuǎn)換。數(shù)的表示單位是位、字節(jié)和字。定點表示法和浮點表示法可實現(xiàn)數(shù)據(jù)的有效表示,可根據(jù)精度及表示范圍的不同采用不同的表示方法。帶符號數(shù)的表示要注意符號的表示方法和小數(shù)點的位置。計算機中數(shù)的表示方法有四種:原碼表示法、補碼表示法、反碼表示法、移碼表示法。十進制的數(shù)據(jù)表示方法有:有權(quán)碼(2421碼、4311碼、8421碼等)和無權(quán)碼(余3碼、格雷碼等)英文字符采用ASCII碼、EBCDIC碼等,但最常用的還是ASCII碼。漢字的編碼有輸入碼、內(nèi)碼、字型碼等。主要的數(shù)據(jù)校驗碼有:奇偶校驗碼、循環(huán)冗余校驗碼和海明校驗碼等。12/22/202275本章小結(jié)數(shù)據(jù)可區(qū)分為數(shù)值型數(shù)據(jù)和非數(shù)值型數(shù)據(jù)。12/19第2章計算機中的數(shù)據(jù)表示計算機組成原理(第二版)清華大學出版社教學目標教學重點教學過程12/22/202276第2章計算機中的數(shù)據(jù)表示計算機組成原理(第二版)教學目標數(shù)據(jù)在計算機中的表示方法及編碼形式掌握進位計數(shù)制和數(shù)制之間的轉(zhuǎn)換掌握數(shù)與字符的表示方法及校驗方法12/22/202277教學目標數(shù)據(jù)在計算機中的表示方法及編碼形式12/19/202教學重點進位計數(shù)制和數(shù)制之間的轉(zhuǎn)換定點數(shù)和浮點數(shù)帶符號數(shù)的表示方法字符編碼數(shù)據(jù)校驗碼12/22/202278教學重點進位計數(shù)制和數(shù)制之間的轉(zhuǎn)換12/19/20223教學過程2.1數(shù)據(jù)、信息和媒體2.2進位計數(shù)制2.3定點數(shù)和浮點數(shù)2.4帶符號數(shù)的表示方法2.5十進制數(shù)據(jù)表示2.6字符編碼2.7數(shù)據(jù)校驗碼2.8例題解析12/22/202279教學過程2.1數(shù)據(jù)、信息和媒體12/19/202242.1數(shù)據(jù)、信息和媒體(1/4)數(shù)據(jù):是對事實、概念或指令的一種特殊表達形式,可以用人工方式或自動化裝置進行通信、翻譯轉(zhuǎn)換或加工處理。數(shù)值型數(shù)據(jù):具有特定值的一類數(shù)據(jù),可用來表示數(shù)量的多少,可比較其大小。非數(shù)值型數(shù)據(jù):包括字符數(shù)據(jù)、邏輯數(shù)據(jù)、圖畫、聲音和活動圖像數(shù)據(jù)等。12/22/2022802.1數(shù)據(jù)、信息和媒體(1/4)數(shù)據(jù):是對事2.1數(shù)據(jù)、信息和媒體(2/4)信息:對人有用的數(shù)據(jù),這些數(shù)據(jù)可能影響到人們的行為和決策。

信息處理:通過數(shù)據(jù)的采集和輸入,有效地把數(shù)據(jù)組織到計算機中,由計算機系統(tǒng)對數(shù)據(jù)進行相應的處理加工(如:存儲、建庫、轉(zhuǎn)換、合并、分類、計算、統(tǒng)計、匯總、傳送等操作),最后向人們提供有用的信息的全過程。12/22/2022812.1數(shù)據(jù)、信息和媒體(2/4)信息:對人有2.1數(shù)據(jù)、信息和媒體(3/4)媒體:承載信息的載體。與計算機信息處理有關(guān)的媒體:感覺媒體:能使人聽覺、視覺、嗅覺、味覺和觸覺器官直接產(chǎn)生感覺的一類媒體,如聲音、文字、圖畫、氣味等,它們是人類使用信息的有效形式。表示媒體:為了使計算機有效地加工、處理、傳輸感覺媒體而在計算機內(nèi)部采用的特殊表示形式,即聲、文、圖、活動圖像的二進制編碼表示。存儲媒體:用于存放表示媒體以便計算機隨時加工處理的物理實體,如磁盤、光盤、半導體存儲器等。表現(xiàn)媒體:用于把感覺媒體轉(zhuǎn)換成表示媒體進而轉(zhuǎn)換為感覺媒體的物理設備,如計算機的輸入/輸出設備傳輸媒體:用來將表示媒體從一臺計算機傳遞到另一臺計算機的通信載體,如同軸電纜、光纖、電話線等12/22/2022822.1數(shù)據(jù)、信息和媒體(3/4)媒體:承載信2.1數(shù)據(jù)、信息和媒體(4/4)數(shù)字化編碼:用少量最簡單的基本符號,對大量復雜多樣的信息進行一定規(guī)律的組合。一切信息編碼的兩大要素基本符號的種類組合規(guī)則12/22/2022832.1數(shù)據(jù)、信息和媒體(4/4)數(shù)字化編碼:計算機內(nèi)部采用的二進制表示方式的原因1、二進制只有兩個數(shù)碼“0”和“1”,易于用物理器件表示。這些物理狀態(tài)都是不同的質(zhì)的變化,形象鮮明、易于區(qū)別,并且數(shù)的存儲、傳送和處理可靠性高。2、運算規(guī)則簡單,操作實現(xiàn)容易3、二進制加、減、乘、除運算,可以歸結(jié)為加、減、移位三種操作。4、理論和實踐證明,采用R=e=2.71828進制時,存儲設備最省,取3比取2更節(jié)省設備,但二進制比三進制易于表示5、二進制中的“1”和“0”與邏輯命題中的“真”、“假”相對應,為計算機實現(xiàn)邏輯運算和程序中的邏輯判斷創(chuàng)造了良好條件。12/22/202284計算機內(nèi)部采用的二進制表示方式的原因1、二進制只有兩個數(shù)碼2.2進位計數(shù)制2.2.1進位基數(shù)和位的權(quán)數(shù)2.2.2二進制數(shù)制2.2.3八進制數(shù)制2.2.4十六進制數(shù)制2.2.5數(shù)制之間的相互轉(zhuǎn)換12/22/2022852.2進位計數(shù)制2.2.1進位基數(shù)和位的權(quán)數(shù)12/19/2.2.1進位基數(shù)和位的權(quán)數(shù)基數(shù):計數(shù)制中用到的數(shù)碼的個數(shù),用R表示。位權(quán):以基數(shù)為底的指數(shù),指數(shù)的冪是數(shù)位的序號。對一個數(shù)S,其基數(shù)為R,則:12/22/2022862.2.1進位基數(shù)和位的權(quán)數(shù)基數(shù):計數(shù)制中用到的數(shù)碼的個數(shù)計算機常用各種進制數(shù)的表示進位制二進制八進制十進制十六進制規(guī)則逢二進一逢八進一逢十進一逢十六進一基數(shù)R=2R=8R=10R=16基本符號0,10,1,2,…,70,1,2,…,90,1,..,9,A,..,F權(quán)2i8i10i16i形式表示BODH12/22/202287計算機常用各種進制數(shù)的表示進位制二進制八進制十進制十六進制規(guī)2.2.5數(shù)制之間的相互轉(zhuǎn)換二、八、十六進制數(shù)轉(zhuǎn)換為十進制數(shù)十進制數(shù)轉(zhuǎn)換為二、八、十六進制數(shù)十進制數(shù)轉(zhuǎn)換為二進制十進制數(shù)轉(zhuǎn)換為八進制、十六進制數(shù)二進制數(shù)和八進制數(shù)、十六進制數(shù)的轉(zhuǎn)換二進制數(shù)轉(zhuǎn)換為八、十六進制數(shù)八、十六進制數(shù)轉(zhuǎn)換為二進制數(shù)12/22/2022882.2.5數(shù)制之間的相互轉(zhuǎn)換二、八、十六進制數(shù)轉(zhuǎn)換為十進制二、八、十六進制數(shù)轉(zhuǎn)換為十進制數(shù)(1/2)例2-1將(11011.11)2轉(zhuǎn)換為十進制數(shù)解:(11011.11)2=1×24+1×23+0×22+1×21+1×20+1×2-1+1×2-2=(27.75)1012/22/202289二、八、十六進制數(shù)轉(zhuǎn)換為十進制數(shù)(1/2)12/19/20二、八、十六進制數(shù)轉(zhuǎn)換為十進制數(shù)(2/2)例2-2將(732.6)8轉(zhuǎn)換為十進制數(shù)解:(732.6)8=7×82+3×81+2×80+6×8-1=(474.75)10例2-3將(A5C.B2)16轉(zhuǎn)換為十進制數(shù)解:(A5C.B2)16=10×162+5×161+12×160+11×16-1+2×16-2=(2652.6953125)1012/22/202290二、八、十六進制數(shù)轉(zhuǎn)換為十進制數(shù)(2/2)例2-2將(十進制轉(zhuǎn)換為二進制數(shù)(1/3)任一十進制數(shù)N,N=N整+N小。將這兩部分分開轉(zhuǎn)換①整數(shù)部分的轉(zhuǎn)換:采用“除2求余法”,轉(zhuǎn)換方法為:連續(xù)用2除,求得余數(shù)(1或0)分別為K0、K1、K2、…,直到商為0,所有余數(shù)排列Kn-1Kn-2…K2K1K0即為所轉(zhuǎn)換的二進制整數(shù)部分。②小數(shù)部分的轉(zhuǎn)換:采用“乘2取整法”。轉(zhuǎn)換方法為:連續(xù)用2乘,依次求得各整數(shù)位(0或1)K-1、K-2、…、K-m,直到乘積的小數(shù)部分為0。在小數(shù)轉(zhuǎn)換過程中,出現(xiàn)Fi恒不為0時,可按精度要求確定二進制小數(shù)的位數(shù)。

12/22/202291十進制轉(zhuǎn)換為二進制數(shù)(1/3)任一十進制數(shù)N十進制轉(zhuǎn)換為二進制數(shù)(2/3)例2-4求(43)10的二進制表示解:除以2 商Qi余數(shù)Ki43/2 21 K0=121/2 10 K1=110/2 5 K2=05/2 2 K3=12/2 1 K4=01/2 0 K5=1(43)10=(101011)212/22/202292十進制轉(zhuǎn)換為二進制數(shù)(2/3)例2-4求十進制轉(zhuǎn)換為二進制數(shù)(3/3)例2-5求(0.6875)20的二進制值解:乘以2 小數(shù)Fi 整數(shù)Ki0.6875×2 0.3750 K-1=10.3750×2 0.7500 K-2=00.7500×2 0.5000 K-3=10.5000×2 0.0000 K-4=1(0.6875)10=(0.1011)212/22/202293十進制轉(zhuǎn)換為二進制數(shù)(3/3)例2-5求十進制數(shù)轉(zhuǎn)換為八進制數(shù)、十六進制數(shù)將十進制數(shù)轉(zhuǎn)換為八進制數(shù)、十六進制數(shù)時,使用的方法與十進制數(shù)轉(zhuǎn)換成二進制數(shù)的方法基本相同,只是求整數(shù)部分時是用商除以8或16,取其余數(shù);小數(shù)部分改用乘以8或16,取其整數(shù)即可。12/22/202294十進制數(shù)轉(zhuǎn)換為八進制數(shù)、十六進制數(shù)將十進制數(shù)轉(zhuǎn)換為八進制數(shù)、二進制數(shù)與八進制、十六進制數(shù)間的轉(zhuǎn)換二進制轉(zhuǎn)化成八(十六)進制整數(shù)部分:從右向左按三(四)位分組,不足補零小數(shù)部分:從左向右按三(四)位分組,不足補零例2-9(001

011

010

110.101

011

100)2=(1326.534.)81326534例2-10(0101

1101.0101

1010)2=(5D.5A)165D5A12/22/202295二進制數(shù)與八進制、十六進制數(shù)間的轉(zhuǎn)換二進制轉(zhuǎn)化成八(十六)八進制、十六進制數(shù)與二進制數(shù)間的轉(zhuǎn)換八(十六)進制轉(zhuǎn)化成二進制一位八進制數(shù)對應三位二進制數(shù)一位十六進制數(shù)對應四位二進制數(shù)例2-11(247.63)8=(010

100

111.110

011)2例2-12(F5A.6B)16=(1111

0101

1010

0110.0110

1011)212/22/202296八進制、十六進制數(shù)與二進制數(shù)間的轉(zhuǎn)換八(十六)進制轉(zhuǎn)化成二進2.3定點數(shù)和浮點數(shù)數(shù)據(jù)的表示定點表示法浮點表示法任何一個二進制數(shù)N都可以表示為N=2E·S 其中E是一個二進制整數(shù),稱為數(shù)N的階碼,2為階碼的基數(shù),S是二進制小數(shù),稱為數(shù)N的尾數(shù)。E和S可正可負。尾數(shù)S表示數(shù)N的全部有效數(shù)據(jù),階碼E指明該數(shù)的小數(shù)點位置,表示數(shù)據(jù)的大小范圍。12/22/2022972.3定點數(shù)和浮點數(shù)數(shù)據(jù)的表示12/19/2022222.3.1定點數(shù)表示法階碼E保持不變?nèi)鬍=0,小數(shù)點固定在最高位之前,則該數(shù)是一個純小數(shù)或定點小數(shù)。例如N=20·0.110101001=0.110101001若E=n(n為尾數(shù)的位數(shù)),則把小數(shù)點定在尾數(shù)最末位之后,表示一個純整數(shù)(定點整數(shù))。例如N=27×0.1011010=0101101012/22/2022982.3.1定點數(shù)表示法階碼E保持不變12/19/202222.3.2浮點數(shù)的表示浮點數(shù)的格式

階碼位數(shù)m與尾數(shù)位數(shù)n之間有如下關(guān)系:2m-1≥n 即表示階碼的值應保證實際的小數(shù)點可以在整個尾數(shù)的位格中移動。浮點數(shù)的表示形式階碼階符尾數(shù)尾符12/22/2022992.3.2浮點數(shù)的表示浮點數(shù)的格式

階碼位數(shù)m與尾數(shù)位數(shù)2.3.2浮點數(shù)的表示規(guī)格化浮點數(shù) 所謂浮點數(shù)的規(guī)格化,就是通過移動尾數(shù),使尾數(shù)S的最高位數(shù)字為1。即S滿足1/2≤|S|<1時,這個浮點數(shù)就是規(guī)格化的數(shù),否則就不是。在字長一定的情況下,規(guī)格化的浮點數(shù)精度最高。12/22/20221002.3.2浮點數(shù)的表示規(guī)格化浮點數(shù)12/19/2022252.3.3定點數(shù)表示法和

溫馨提示

  • 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

提交評論