




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第1頁,共112頁。第2頁,共112頁。第3頁,共112頁。目錄concents數(shù)制與編碼定點數(shù)的表示浮點數(shù)的表示常見問題和易混淆知識點第4頁,共112頁。數(shù)制與編碼第5頁,共112頁。計算機的基本功能是對信息進行加工處理。信息包括數(shù)據(jù)、文字、聲音、圖形和圖像等。數(shù)據(jù)有兩類,一類是數(shù)值數(shù)據(jù),如+123,26等,有“量”的概念;另一類是非數(shù)值數(shù)據(jù),如各種字母和符號,又稱符號數(shù)據(jù)。無論是數(shù)值數(shù)據(jù)還是非數(shù)值數(shù)據(jù),在計算機中都是用二進制數(shù)碼表示的。而文字、聲音、圖形和圖像等信息要在計算機中處理,都要事先數(shù)字化,即把聲音、圖形、圖像等信息轉(zhuǎn)換為二進制數(shù)碼。在計算機內(nèi)部,各種信息都必須采用數(shù)字化編碼的形式
2、才能傳送、存儲和處理加工。第6頁,共112頁。所謂編碼,是用來將信息從一種形式轉(zhuǎn)變?yōu)榱硪环N形式的符號系統(tǒng),通常選用少量最簡單的基本符號和一定的組合規(guī)則,以表示出大量復(fù)雜多樣的信息。信息的數(shù)字化編碼,是指用二進制數(shù)碼(0或1),并選用一定的組合規(guī)則,來表示數(shù)據(jù)、文字、聲音、圖形和圖像等各種復(fù)雜的信息。第7頁,共112頁。2.1.1 常用的進位計數(shù)制及其相互轉(zhuǎn)換進位計數(shù)制是用一組固定的符號和統(tǒng)一的規(guī)則來表示數(shù)值的方法。01進位計數(shù)制第8頁,共112頁。按照進位計數(shù)制的方法表示數(shù),不同的數(shù)制均涉及兩個基本概念:基數(shù)和權(quán)?;鶖?shù)進位計數(shù)制中所具有的數(shù)字符號的個數(shù)。權(quán)每位數(shù)字的值等于數(shù)字乘以所在位數(shù)的相關(guān)
3、常數(shù),這個常數(shù)就是權(quán)。第9頁,共112頁。任意一個r進制數(shù)N,設(shè)整數(shù)部分為n位,小數(shù)部分為m位,則N代表的實際值可表示為: 其中,Di是位序號為i的位上的數(shù)字符號。(2-1)第10頁,共112頁。其中高級語言的發(fā)展真正促進了軟件的發(fā)展。高級語言的發(fā)展又經(jīng)歷了幾個階段:第一階段代表語言是適用于科學(xué)計算和工程計算的FORTRAN語言第二階段結(jié)構(gòu)化程序設(shè)計階段,其代表語言是PASCAL第三階段面向?qū)ο蟪绦蛟O(shè)計階段,其代表語言是C+第11頁,共112頁。近年來隨著網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,又出現(xiàn)了可適應(yīng)網(wǎng)絡(luò)環(huán)境的面向?qū)ο笳Z言JAVA等。與此同時,直接影響計算機系統(tǒng)性能提升的各種系統(tǒng)軟件也有了長足的發(fā)展,特別
4、是操作系統(tǒng),如Windows,Linux,UNIX等。第12頁,共112頁。在計算機領(lǐng)域中,用于表示數(shù)值的進位計數(shù)制主要有4種:(1)十進制(Decimal,用D表示,可省略)有10個不同的數(shù)字符號(0,1,2,3,4,5,6,7,8,9),低位向高位進位的規(guī)律是“逢十進一”。例如:879=8102+7101+9100其中,10稱為十進制的基數(shù),102,101,100稱為各數(shù)位的權(quán)。第13頁,共112頁。(2)二進制(Binary,用B表示)有2個不同的數(shù)字符號(0和1),其進位規(guī)律是“逢二進一”。例如:1101.1011B=(1101.1011)2=123+122+021+120+121+0
5、22+123+124其中,2稱為二進制的基數(shù),23,22,21,20,21,22,23,24稱為各數(shù)位的權(quán)。第14頁,共112頁。(3)八進制(Octal,用O表示)有8個不同的數(shù)字符號(0,1,2,3,4,5,6,7),其進位規(guī)律是“逢八進一”。例如:678O=(678)8=682+781+880其中,8稱為八進制的基數(shù),82,81,80稱為各數(shù)位的權(quán)。第15頁,共112頁。(4)十六進制(Hexadecimal,用H表示)有16個不同的數(shù)字符號(09,AF),其進位規(guī)律是“逢十六進一”。例如:2AB.1CH=(2AB.1C)16=2162+A161+B160+1161+C162其中,16稱
6、為十六進制的基數(shù),162,161,160,161,162稱為各數(shù)位的權(quán)。第16頁,共112頁。(1)其他進制轉(zhuǎn)換為十進制。方法是:將其他進制數(shù)按權(quán)展開,然后各項相加,就得到相應(yīng)的十進制數(shù)。02常用進位計數(shù)制間的相互轉(zhuǎn)換第17頁,共112頁。例2-1將二進制數(shù)轉(zhuǎn)換成十進制數(shù)。按權(quán)展開(10110.101)2 =124+023+122+121+020+121+022+123 =(22.625)10第18頁,共112頁。例2-2將八進制數(shù)轉(zhuǎn)換成十進制數(shù)。按權(quán)展開(654.23)8 =682+581+480+281+382=384+40+4+0.25+0.046 875=(428.296 875)10
7、第19頁,共112頁。例2-3將十六進制數(shù)轉(zhuǎn)換成十進制數(shù)。按權(quán)展開(3A6E.5)16=3163+10162+6161+14160+5161 =12 288+2 560+96+14+0.312 5 =(14 958.312 5)10第20頁,共112頁。(2)十進制轉(zhuǎn)換為二進制。整數(shù)部分的轉(zhuǎn)換采用“除2取余法”,即整數(shù)部分不斷除以2,并記下每次所得余數(shù),所有余數(shù)按倒序排列即為相應(yīng)的二進制數(shù)。小數(shù)部分的轉(zhuǎn)換則采用“乘2取整法”,并將所得整數(shù)按順序排列。第21頁,共112頁。4322222211052120取余數(shù)整數(shù)部分110101小數(shù)部分取整數(shù)0.6252=1.25 10.252=0.5 00.
8、52=1 1例2-4將十進制數(shù)轉(zhuǎn)換成二進制數(shù)。將的整數(shù)部分和小數(shù)部分分開做如下處理,所以,(43.625)10=(101011.101)2。第22頁,共112頁。(3)二進制、八進制、十六進制之間的轉(zhuǎn)換。根據(jù)它們之間存在特殊的關(guān)系:81=23,161=24,即1位八進制數(shù)相當于3位二進制數(shù),1位十六進制數(shù)相當于4位二進制數(shù),對照下表進行轉(zhuǎn)換即可。十進制二進制八進制十六進制00001111210223113341004451015561106671117781000108十進制二進制八進制十六進制9100111910101012A11101113B12110014C13110115D141110
9、16E15111117F1610000201017100012111第23頁,共112頁。二進制與八進制的相互轉(zhuǎn)換。以小數(shù)點為中心,整數(shù)部分自右向左,每3位為1組,最后1組不滿3位時高位補0;小數(shù)部分自左向右,每3位為1組,最后1組不滿3位時低位補0,將每組二進制數(shù)轉(zhuǎn)換為八進制數(shù)即可。相反,八進制轉(zhuǎn)換成二進制時,將1位的八進制數(shù)轉(zhuǎn)換成3位的二進制數(shù)即可。第24頁,共112頁。例2-5將二進制數(shù)10101011.110101轉(zhuǎn)換成八進制數(shù)。 (010 101 011.110 101)2 (整數(shù)高位補0) 所以,(010101011.110101)2=(253.65)8。 2 5 3 . 6 5
10、第25頁,共112頁。例2-6將八進制數(shù)162.52轉(zhuǎn)換成二進制數(shù)。 (1 6 2 . 5 2)8 所以,(162.52)8=(1110010.10101)2。001 110 010 . 101 010第26頁,共112頁。二進制與十六進制的相互轉(zhuǎn)換。以小數(shù)點為中心,整數(shù)部分自右向左,每4位為1組,最后1組不滿4位時高位補0;小數(shù)部分自左向右,每4位為1組,最后1組不滿4位時低位補0,將每組二進制數(shù)轉(zhuǎn)換為十六進制數(shù)即可。相反,十六進制轉(zhuǎn)換成二進制時,將1位的十六進制數(shù)轉(zhuǎn)換成4位的二進制數(shù)即可。第27頁,共112頁。例2-7將二進制數(shù)10101011.110101轉(zhuǎn)換成十六進制數(shù)。 (1010
11、1011.1101 0100)2(小數(shù)低位補0)所以,(10101011.110101)2=(AB.D4)16。A B. D 4第28頁,共112頁。例2-8將十六進制數(shù)A6.3C轉(zhuǎn)換成二進制數(shù)。 (A 6 . 3 C)16 所以,(A6.3C)16=(10100110.001111)2。1010 0110 . 0011 1100第29頁,共112頁。2.1.2 BCD碼為了使計算機能識別和存儲十進制數(shù),并能直接用十進制數(shù)形式進行運算,需要對十進制數(shù)進行編碼,即用0和1的不同組合形式來表示十進制數(shù)的各個數(shù)位上的數(shù)字,進而表示一個十進制數(shù)。將十進制數(shù)表示為二進制編碼的形式,稱為十進制數(shù)的二進制編
12、碼,簡稱二十進制編碼或BCD(Binary Coded Decimal)碼。第30頁,共112頁。BCD碼有多種編碼方法,常用的有8421碼,如表所示。8421碼是將十進制數(shù)碼09中的每個數(shù)分別用4位二進制編碼表示,比較直觀。十進制數(shù)8421碼00000100012001030011401005010160110701118100091001十進制數(shù)8421碼1000010000110001000112000100101300010011140001010015000101011600010110170001011118000110001900011001第31頁,共112頁。2.1.3 字符
13、與字符串由于計算機內(nèi)部只能識別和處理二進制代碼,所以字符都必須按照一定的規(guī)則用一組二進制編碼來表示。第32頁,共112頁。字符編碼采用國際通用的美國標準信息交換碼(American Standard Code for Information Interchange,ASCII),每個ASCII碼以1個字節(jié)(Byte)存儲,從數(shù)字0到數(shù)字127代表不同的常用字符。01ASCII碼第33頁,共112頁。常用字符與ASCII碼值對照關(guān)系如表所示。碼值字符0NUL1SOH2STX3ETX4EOT5ENQ6ACK7BEL8BS9HT碼值字符10LF11VT12FF13CR14SO15SI16DLE17D
14、C118DC219DC3碼值字符20DC421NAK22SYN23ETB24CAN25EM26SUB27ESC28FS29GS碼值字符30RS31US32SP33!3435#36$37%38&39碼值字符40(41)42*43+44,45-46.47/480491碼值字符50251352453554655756857958:59;碼值字符6063?6465A66B67C68D69E第34頁,共112頁。碼值字符70F71G72H73I74J75K76L77M78N79O碼值字符80P81Q82R83S84T85U86V87W88X89Y碼值字符90Z9192939495_9697a98b99c
15、碼值字符100d101e102f103g104h105i106j107k108l109m碼值字符110n111o112p113q114r115s116t117u118v119w碼值字符120 x121y122z123124|125126127DEL第35頁,共112頁。字符串是指連續(xù)的一串字符,通常情況下,占用主存中連續(xù)的多個字節(jié),每個字節(jié)存儲一個字符。主存字(主存單元)由2個或4個字節(jié)組成時,在同一個主存字中,既可按先存儲低位字節(jié)、后存儲高位字節(jié)的順序存放字符串的內(nèi)容(又稱小端模式),也可按先存儲高位字節(jié)、后存儲低位字節(jié)的順序存放字符串的內(nèi)容(又稱大端模式)。這兩種存放方式都是常用方式,不同
16、計算機可以選用其中任何一種(甚至是同時采用)。02字符串的存放第36頁,共112頁。例如,字符串“IF_AB_THEN_READ(C)_”(其中“_”代表空格),它從高位字節(jié)到低位字節(jié)依次存放在主存中,如圖所示。IF空AB空THEN空READ(C)空其中主存字長度為4個字節(jié)。每個字節(jié)中存放相應(yīng)字符的ASCII碼值,注意空格“_”也占一個字節(jié)的位置。因此,每個字節(jié)分別存放十進制的73,70,32,65,62,66,32,84,72,69,78,32,82,69,65,68,40,67,41,32。第37頁,共112頁。2.1.4 漢字編碼漢字的編碼比較特殊,漢字編碼可分為機內(nèi)碼和機外碼兩類,機內(nèi)
17、碼是在計算機內(nèi)部使用的用二進制代碼表示的漢字編碼,用于在計算機內(nèi)部存儲、交換、處理加工漢字信息;而機外碼是指不在計算機內(nèi)使用的漢字編碼,主要是指漢字輸入碼,此外還有供輸出的漢字字模碼。第38頁,共112頁。國標碼是指1981年我國公布的“中華人民共和國國家標準信息交換漢字編碼”,是一種國家標準編碼,代號為GB 23121980。它以94個可顯示的ASCII碼字符為基集,由兩個字節(jié)構(gòu)成。國標碼與ASCII碼屬同一制式,可以認為國標碼是擴展的ASCII碼。01國標碼第39頁,共112頁。GB 23121980規(guī)定,所有的國標漢字與符號組成一個9494的矩陣。在此矩陣中,每一行稱為一個“區(qū)”,每一列
18、稱為一個“位”。因此,該矩陣分成94個區(qū)(區(qū)號為0194),每區(qū)有94個位(位號為0194),一個漢字所在的區(qū)號和位號組合在一起就構(gòu)成了該漢字的“國標區(qū)位碼”,簡稱國標碼。國標碼用連續(xù)的兩個字節(jié)表示,高位字節(jié)為區(qū)號,低位字節(jié)為位號,因此,總共可表示9494=8 836個漢字或符號。第40頁,共112頁。19區(qū)非漢字的各種字母、數(shù)字符和圖符1655區(qū)一級漢字區(qū)(最常用漢字),按漢語拼音排序5687區(qū)二級漢字區(qū)(次常用漢字),按偏旁部首排序1015區(qū)和8894區(qū)空白區(qū),專供用戶自定義專用符號和自造漢字字型及填充一、二級漢字中沒有的漢字使用國標碼用兩個字節(jié)的十六進制數(shù)表示,如漢字“文”的國標碼是“4
19、E44H”。第41頁,共112頁。計算機系統(tǒng)中用來表示中文或西文信息的代碼稱為機內(nèi)碼。ASCII碼是一種西文機內(nèi)碼,在計算機系統(tǒng)內(nèi)部用來表示漢字的編碼稱為漢字機內(nèi)碼。我國現(xiàn)在計算機系統(tǒng)中所采用的機內(nèi)碼是以國標碼為基礎(chǔ)的編碼。機內(nèi)碼也是用連續(xù)的兩個字節(jié)來表示,將漢字國標碼編碼的每個字節(jié)的最高位置1。既和國標碼有緊密聯(lián)系,又和ASCII碼嚴格相區(qū)別,不會發(fā)生混淆。02漢字機內(nèi)碼第42頁,共112頁。漢字機內(nèi)碼與國標碼的關(guān)系為:國標碼高位字節(jié)80H漢字機內(nèi)碼高位字節(jié)國標碼低位字節(jié)80H漢字機內(nèi)碼低位字節(jié)第43頁,共112頁。漢字輸入碼是指直接從鍵盤輸入的各種漢字輸入方法的編碼,屬于外碼。漢字輸入碼有
20、數(shù)字碼、音碼和形碼,還有以漢字的音和形相結(jié)合的音形碼和形音碼。03漢字輸入碼第44頁,共112頁。字模碼是用點陣表示的漢字字形代碼,是漢字的輸出形式。根據(jù)漢字輸出的要求不同,點陣的多少也不同。簡易型漢字為1616點陣,提高型漢字為2424點陣、3232點陣,甚至更高。因此,字模點陣的信息量是很大的,所占存儲空間也很大。04漢字字模碼第45頁,共112頁。以1616點陣為例,每個漢字要占用32個字節(jié),國標兩級漢字要占用256千字節(jié)。因此,字模點陣只能用來構(gòu)成漢字庫,而不能用于機內(nèi)存儲。字庫中存儲了每個漢字的點陣代碼,當顯示輸出或打印輸出時才檢索字庫,輸出字模點陣,得到字形。例如,“華”字的161
21、6點陣字形如圖所示。第46頁,共112頁。2.1.5 校驗碼校驗碼是指能夠發(fā)現(xiàn)或自動糾正錯誤的數(shù)據(jù)編碼,也稱為檢錯/糾錯編碼。校驗碼的原理是通過增加一些冗余碼,來檢驗或糾錯編碼。第47頁,共112頁。奇偶校驗是最簡單的校驗方法,其編碼方法為:在n位有效信息位的最高位或最低位增加一位二進制校驗位P,使其形成n+1位校驗碼。校驗碼中1的個數(shù)為奇數(shù)(偶數(shù)),則稱為奇校驗(偶校驗)。01奇偶校驗碼第48頁,共112頁。設(shè)n位有效信息位XnXn1X2X1,其后增加一位二進制校驗位P,那么P可定義為: 奇校驗 (2-2) 偶校驗 (2-3)例如,8位二進制信息00101011,在其最低位增加一位二進制校驗
22、位P,那么奇校驗碼為001010111,偶校驗碼為001010110。第49頁,共112頁。奇偶校驗碼的校驗方法:如果奇校驗碼中1的個數(shù)為偶數(shù),或者偶校驗碼中1的個數(shù)為奇數(shù),則表示編碼出錯了。即校驗方程為: 奇校驗 (2-4) 偶校驗 (2-5)如果E=0,表示編碼正確;如果E=1,則表示編碼出錯。第50頁,共112頁。海明碼是由Richard Hamming于1950年提出的一種碼制,是一種糾錯碼。是由數(shù)據(jù)與校驗位組合而成的,其組合規(guī)則為:將數(shù)據(jù)與校驗位(奇偶校驗)自左向右進行編碼,其中編號為2的冪的位均為校驗位,其余為數(shù)據(jù)位,如圖所示。02海明校驗碼編號R1R2dR3dddR4ddd1 (
23、20) 2(21) 34(22) 5678(23) 91011第51頁,共112頁。采用二進制數(shù)來表示海明碼每一位位置序號。例如,第1位用0001表示,第2位用0010表示,第3位用0011表示,以此類推,得到所有位置序號的二進制數(shù)。海明碼的每個校驗位的值都是一組數(shù)據(jù)的奇偶校驗位。第52頁,共112頁。校驗位R1,R2,R3,R4分別是4組不同數(shù)據(jù)位的奇偶校驗位:(1)校驗位R1對位置序號二進制數(shù)的最低位為1的位進行校驗,即對第1,3,5,7,位進行校驗。(2)校驗位R2對位置序號二進制數(shù)的次低位為1的位進行校驗,即對第2,3,6,7,位進行校驗。(2)校驗位R3對位置序號二進制數(shù)的倒數(shù)第三位
24、為1的位進行校驗,即對第4,5,6,7,位進行校驗第53頁,共112頁。例2-9已知原信息為1001101,求其海明校驗碼(校驗位采用偶校驗)。解將數(shù)據(jù)位與校驗位(偶校驗)自左向右進行編碼,并將位置序號用二進制數(shù)表示,如圖所示。R1R21R3001R4101000100100011010001010110011110001001101010111 (20)2(21)34(22)5678(23)91011第54頁,共112頁。校驗位R1是對第1,3,5,7,9,11這6位作偶校驗得到,即R1=0;校驗位R2是對第2,3,6,7,10,11這6位作偶校驗得到,即R2=1;校驗位R3是對第4,5,6
25、,7這4位作偶校驗得到,即R3=1;校驗位R4是對第8,9,10,11這4位作偶校驗得到,即R4=0。所以,最后得到海明校驗碼為。第55頁,共112頁。海明碼檢錯與糾錯過程如下。(1)將出錯計數(shù)器置為0。(2)依次對每個校驗位進行奇偶校驗,如果有錯,將校驗位所對應(yīng)的位置序號值加入計數(shù)器中,直到所有校驗位檢查完為止。(3)檢查出錯計數(shù)器的值,如果為0,則數(shù)據(jù)傳輸無錯;如果不為0,則數(shù)據(jù)傳輸有錯,且出錯計數(shù)器的值即為出錯數(shù)據(jù)位的位置序號。(4)將出錯數(shù)據(jù)位的數(shù)據(jù)取反即可。第56頁,共112頁。例2-10已知數(shù)據(jù)“11001100”的海明碼是“”(這里采用偶校驗),若接收到的數(shù)據(jù)被改為“”,即第3位
26、出錯,分析海明碼檢錯與糾錯過程。第57頁,共112頁。解按照上述海明碼檢錯與糾錯過程可得:依次對每個校驗位與其所負責的數(shù)據(jù)位進行偶校驗,此時出錯計數(shù)器的值為3。首先將出錯計數(shù)器置為0。由于其余校驗位與第3位數(shù)據(jù)無關(guān),因此等所有的校驗位檢驗結(jié)束后,出錯計數(shù)器的值仍為3,故可知海明碼的第3位數(shù)據(jù)出錯。將第3位數(shù)據(jù)取反即可。第58頁,共112頁。循環(huán)冗余校驗碼又稱CRC碼(Cyclic Redundancy Check),簡稱循環(huán)碼。CRC碼檢錯能力強,且容易實現(xiàn),是目前使用最廣泛的檢錯碼之一。CRC碼的編碼過程涉及二進制多項式和模2運算知識。例如,比特串B4B3B2B1B0的二進制多項式形式是B4
27、x4+B3x3+B2x2+B1x1+B0 x0,若比特串取值為10101110,則該比特串可被表示成二進制多項式x7+x5+x3+x2+x。03循環(huán)冗余校驗碼第59頁,共112頁。采用CRC碼校驗時,發(fā)送方和接收方須事先約定一個生成多項式G(x),并且G(x)的最高項和最低項的系數(shù)必須為1。CRC碼的編碼過程如下。相除:用移位后的式子模2除以生成多項式G(x)(也可看成二進制數(shù)),得到的余數(shù)R(x)(r位)就是校驗碼。移位:將原信息碼(k位)左移r位(k+r=n位),即在信息碼的末尾加上r個0,r為G(x)的最高次冪。構(gòu)成發(fā)送序列:將余數(shù)R(x)加到原信息碼后面即得到完整的CRC碼,構(gòu)成發(fā)送序
28、列(n位)。第60頁,共112頁。接收端檢錯過程如下。若余數(shù)為0,表示收到的編碼正確,編碼的后r位即為校驗碼。設(shè)接收端收到的CRC碼多項式為T(x),將T(x)模2除以G(x)得到余數(shù)R(x)。若余數(shù)不為0,則表示收到的編碼錯誤。第61頁,共112頁。例2-11設(shè)有二進制數(shù)據(jù)11001011,采用的生成多項式G(x)=x4+x3+x+1,試求應(yīng)添加在二進制數(shù)據(jù)后面的余數(shù),并給出該數(shù)據(jù)完整的CRC碼。解G(x)的二進制形式為11011,其最高次冪為4。因此,首先在原數(shù)據(jù)后面添加4個0將其作為被除數(shù),然后用模2除以G(x),求得4位余數(shù)R(x),計算過程如圖所示。求得余數(shù)R(x)=0010,因此,
29、該數(shù)據(jù)完整的CRC碼為。第62頁,共112頁。例2-12設(shè)生成多項式G(x)=x4+x3+1,接收方接收到的編碼字為1100111001,請問收到的信息有錯嗎?如沒錯,請還原原信息碼。解G(x)為11001,用收到的編碼1100111001模2除以G(x),得余數(shù)R(x)=0,因此收到的信息沒有錯誤,計算過程如圖所示。G(x)的最高次冪為4,即r=4,因此,編碼的后4位為校驗碼,去掉后4位后即為原信息碼:110011。第63頁,共112頁。2.1.6 真值和機器數(shù)在計算機中,通常采用數(shù)的符號和數(shù)值一起編碼的方法來表示數(shù)據(jù)。常用的有原碼、反碼、補碼和移碼表示法。這幾種表示法都將數(shù)據(jù)的符號數(shù)字化,
30、通常用0表示“正”,用1表示“負”,如0101表示+5。這種把符號“數(shù)字化”的數(shù)稱為機器數(shù)。真值是機器數(shù)所代表的實際值。第64頁,共112頁。定點數(shù)的表示第65頁,共112頁。在計算機中,小數(shù)點不用專門的器件表示,而是按約定的方式標出。計算機中共有兩種方法約定小數(shù)點的存在,一種方法約定所有數(shù)據(jù)的小數(shù)點位置固定不變,即定點表示;另一種方法約定小數(shù)點的位置是可以浮動的,即浮點表示。它們表示的數(shù)分別稱為定點數(shù)和浮點數(shù)。第66頁,共112頁。2.2.1 無符號數(shù)和有符號數(shù)的表示有符號數(shù)在計算機中將數(shù)的符號數(shù)碼化。一般規(guī)定二進制的最高位為符號位,最高位為0表示該數(shù)為正數(shù),最高位為1表示該數(shù)為負數(shù)。根據(jù)符
31、號位和數(shù)值位的編碼方法不同,有符號數(shù)的機器數(shù)可分為原碼、補碼、反碼和移碼等。無符號數(shù)機器字長的全部位數(shù)均用來表示數(shù)值的大小,相當于數(shù)的絕對值。對于字長為n位的無符號數(shù)的表示范圍為02n1。例如,機器字長為8位,則數(shù)的表示范圍為0000000011111111(0255)。第67頁,共112頁。2.2.2 機器數(shù)的定點表示01定點小數(shù)定點小數(shù)是純小數(shù),若約定小數(shù)點固定于機器數(shù)數(shù)值位的左邊,符號位的右邊,則機器數(shù)表示純小數(shù)。若數(shù)據(jù)X的形式為 , ,其中, 為符號位, 是數(shù)值的有效部分,也稱為尾數(shù), 為最高有效位,則定點小數(shù)的格式如圖所示。 小數(shù)點位置(隱含) 數(shù)值部分 符號位第68頁,共112頁。
32、02定點整數(shù)定點整數(shù)是純整數(shù),若約定小數(shù)點固定于機器數(shù)最低位的右邊,則機器數(shù)表示純整數(shù)。若數(shù)據(jù)X的形式為 ,其中, 為符號位, 是數(shù)值的有效部分,也稱為尾數(shù), 為最低有效位,則定點整數(shù)的格式如圖所示。 數(shù)值部分 小數(shù)點位置(隱含) 符號位第69頁,共112頁。2.2.3 數(shù)的機器碼表示01原碼表示法原碼是一種比較簡單、直觀的機器數(shù)表示法,用機器數(shù)的最高位表示數(shù)的符號,其余的各位表示數(shù)的絕對值。第70頁,共112頁。(1)當X為純小數(shù)即 ,原碼定義為: 第71頁,共112頁。例2-13求X的原碼X原,字長為8位。 X=+0.1001 X=解 X=+0.1001 X原 X=0.1001 X原=1機
33、器中實際保存時并不保存小數(shù)點。第72頁,共112頁。(2)當X為純整數(shù)即 ,則原碼定義為:第73頁,共112頁。例2-14求X的原碼X原,字長為8位。 X=+1001 X=1001解 X=+1001 X原=00001001 X=1001 X原=27X=10000000+1001=10001001第74頁,共112頁。原碼的特點:原碼表示直觀、易懂,與真值的轉(zhuǎn)換容易;用原碼實現(xiàn)乘、除運算的規(guī)則很簡單,但實現(xiàn)加減運算比較復(fù)雜。第75頁,共112頁。02補碼表示法原碼表示法的加減法操作比較復(fù)雜,對于兩個不同符號數(shù)的加法(或同符號數(shù)的減法),先要比較兩個數(shù)的絕對值大小,然后絕對值大的數(shù)減去絕對值小的數(shù)
34、,最后還要給結(jié)果選擇合適的符號。而補碼表示法中的加減法則可統(tǒng)一采用加法操作實現(xiàn)。第76頁,共112頁。補碼的編碼思路是利用模運算中的補數(shù)來表示負數(shù)。模運算系統(tǒng)中,模是指計量器的容量(計數(shù)范圍)。例如,大家所熟悉的鐘表,是以12為計數(shù)循環(huán)的,模M=12;一個4位的二進制計數(shù)器,計數(shù)范圍為015,模M=16。運算時只計量小于模的部分,其余部分被丟棄,這種運算稱為模運算,或模M運算。第77頁,共112頁。模運算的典型特征是同余,同余是指兩個整數(shù)A和B除以同一正整數(shù)M,所得余數(shù)相同。這時稱A和B對M同余,即A和B在以M為模時是相等的,可寫成A=B(mod M)。例如,鐘表中模M=12,故3點和15點、
35、5點和17點是同余的,它們可以寫作:3=15(mod 12)5=17(mod 12)第78頁,共112頁。(1)當X為純小數(shù)即 ,補碼定義為: (mod 2)第79頁,共112頁。例2-15求X的補碼X補,字長為8位。 X=+0.1001 X=解 X=+0.1001 X補 X=0.1001 X補機器中實際保存時并不保存小數(shù)點。第80頁,共112頁。(2)當X為純整數(shù)即 ,則補碼定義為: (mod )第81頁,共112頁。例2-16求X的補碼X補,字長為8位。 X=+1101 X=1101 解 X=+1101 X補=00001101 X=1101 X補=28+X=1000000001101=11
36、110011第82頁,共112頁。例2-17求X=1101的補碼,字長為8位。解根據(jù)上面的小技巧解題步驟如下:1 1 1 1 0 0 1 1 X=1101X的真值 0 0 0 1 1 0 11 1 1 1 0 0 1 01X的補碼最低位+1按位取反第83頁,共112頁。例2-18X補=11010101,求X補。解X補=11010101,連符號位一起各位取反后為00101010,再在末尾加1后得00101011,即X補=00101011。第84頁,共112頁。03反碼表示法反碼通常用來作為由原碼求補碼或者由補碼求原碼的中間過渡。由真值求反碼的規(guī)則如下。(1)符號位:0表示正號“+”,1表示負號“
37、”。(2)數(shù)值部分:正數(shù),數(shù)值部分與真值形式相同; 負數(shù),將真值的數(shù)值部分按位取反。第85頁,共112頁。例2-19求X的反碼X反,字長為8位。 X=+0.1101 X= X=+1101 X=1101解 X=+0.1101 X反 X=0.1101 X反 X=+1101 X反=00001101 X=1101 X反=11110010第86頁,共112頁。04移位表示法移碼常用來表示浮點數(shù)的階碼,它只能表示整數(shù)。設(shè)X為n位的二進制數(shù),真值為 ,純整數(shù)移碼的定義為:X移=2n+X 2n X2n(其中機器字長為n+1)第87頁,共112頁。移碼就是在真值的基礎(chǔ)上加一個常數(shù)(2n),這個常數(shù)稱為偏移值,相
38、當于X在數(shù)軸上向正方向偏移了若干單位,如圖所示。02n2n+112n02n1X移真值第88頁,共112頁。移碼表示法中,數(shù)的最高位(符號位):如果為0,表示該數(shù)為負數(shù);如果為1,表示該數(shù)為正數(shù)。例2-20求X的移碼X移,字長為8位。 X=+1101 X=1101解 X=+1101 X移=27+X=10000000+1101=10001101 X=1101 X移=27+X=100000001101=01110011第89頁,共112頁。綜上所述,對于真值、原碼、補碼、反碼和移碼的轉(zhuǎn)換規(guī)律如圖所示。第90頁,共112頁。例2-21將十進制真值127,1,0,+1,+127表示成二進制數(shù)并求其原碼、
39、反碼、補碼和移碼的值(字長為8位)。解二進制真值及其諸碼值列于表中,其中0在原碼和反碼中有兩種表示方式。十進制真值二進制真值原碼表示反碼表示補碼表示移碼表示12711111111111111110000000100000010000000110000001100000011111111011111111011111110+00000000000000000000000000000001000000000000001000000011111111+1+000000100000001000000010000000110000001+127+11111110111111101111111011111
40、1111111111第91頁,共112頁。浮點數(shù)的表示第92頁,共112頁。2.3.1 浮點數(shù)的表示格式點數(shù)是指小數(shù)點位置可隨比例因子的不同而浮動的數(shù)據(jù),通常以下式表示:N=MREN浮點數(shù)M尾數(shù),用定點小數(shù)表示E階碼,用定點整數(shù)表示R“階的基數(shù)(底)”,為常數(shù),一般為2,8或16第93頁,共112頁。階碼和尾數(shù)可以采用原碼、補碼、反碼中任意一種編碼方法來表示。另外,階碼還可以采用移碼方式表示(通常采用移碼方式)。由上式可見,浮點數(shù)由階碼和尾數(shù)兩部分組成,如圖所示。EsE(m位)MsM(n位)階符階碼數(shù)值數(shù)符尾數(shù)數(shù)值第94頁,共112頁。Es階碼的符號位,安排在最高位E階碼,緊跟階符位之后,占m
41、位Ms尾數(shù)的符號位,在尾數(shù)之前的一位M尾數(shù),在低位部分,占n位第95頁,共112頁。2.3.2 規(guī)格化浮點數(shù)用浮點表示法表示一個數(shù)時,表示形式不唯一。例如:X=+0.011001012101=+0.110010102110=+0.0011001012100如果尾數(shù)M滿足 |M|1,則該浮點數(shù)為規(guī)格化浮點數(shù),否則稱其為非規(guī)格化浮點數(shù)。例如,0.1101210,0.1101210是規(guī)格化浮點數(shù);而0.0110211,0.0110211是非規(guī)格化浮點數(shù)。第96頁,共112頁。例2-22將非規(guī)格化的浮點數(shù)N=0.0110211規(guī)格化。解把浮點數(shù)N的尾數(shù)向左移一位(即尾數(shù)的小數(shù)點右移一位),變?yōu)椋瑫r,
42、階碼遞減1,得到N=0.1100210即為規(guī)格化浮點數(shù)。第97頁,共112頁。例2-23解將十進制數(shù) 轉(zhuǎn)換成規(guī)格化浮點數(shù)表示。假設(shè)浮點數(shù)表示格式中,階碼占5位(包括階符位),尾數(shù)占11位(包括數(shù)符位),尾數(shù)用補碼表示,階碼用移碼表示。( )10=( )2=+0.1101211。+0.1101補=0.1101000000,即尾數(shù)為01101000000;11移=01101,即階碼為01101。因此,其浮點數(shù)為01101 0110100000。第98頁,共112頁。例2-24假設(shè)浮點數(shù)格式中,階碼占5位(包括階符位),尾數(shù)占8位(包括數(shù)符位),階碼用移碼表示,當尾數(shù)用補碼表示時,寫出浮點數(shù)1110
43、1 11101000B的規(guī)格化數(shù)。解依題意,尾數(shù)M補=11101000,即M原=10011000,即真值M=,則尾數(shù)左移2位后,M=,M補=10100000。階碼E移=11101,左規(guī)后E移=11011。因此,規(guī)格化數(shù)為11011 10100000B。第99頁,共112頁。2.3.3 IEEE 754標準按照IEEE 754標準,常用的浮點數(shù)格式如圖所示。SEM數(shù)符階碼,用移碼表示尾數(shù)數(shù)值位,用原碼表示第100頁,共112頁。(1)(2)單精度浮點數(shù)(32位),階碼8位,尾數(shù)24位(內(nèi)含1位符號位)。雙精度浮點數(shù)(64位),階碼11位,尾數(shù)53位(內(nèi)含1位符號位)。根據(jù)IEEE 754國際標準,常用的浮點數(shù)有兩種格式:第101頁,共112頁。由于IEEE 754標準約定在小數(shù)點左部有一位隱含位,從而實際使得尾數(shù)的有效值變?yōu)?。例如?13)10=(1101)2,將它規(guī)格化后結(jié)果為1.1012011,其中整數(shù)部分的1將不存儲在23位尾數(shù)內(nèi)。以單精度浮點數(shù)為例,最高位為數(shù)符位;其后是8位階碼,以2為底,用移碼表示,移碼的偏置值為281=127;其后23位是原碼表示的尾數(shù)數(shù)值位。對于規(guī)格化的二進制浮點數(shù),數(shù)值的最高位總是1,為了能使尾數(shù)
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 年度財務(wù)報表及審計結(jié)果
- 河南省駐馬店市部分學(xué)校2024-2025學(xué)年高三下學(xué)期3月月考地理試題(含答案)
- 基于區(qū)塊鏈技術(shù)的農(nóng)業(yè)溯源體系構(gòu)建方案
- 服裝設(shè)計與制造業(yè)務(wù)外包合作協(xié)議
- 個性化培訓(xùn)計劃實施效果分析表
- 網(wǎng)絡(luò)優(yōu)化服務(wù)升級合作協(xié)議
- 汽車采購銷售合同書及保修條款
- 智能醫(yī)療項目合作協(xié)議
- 企業(yè)危機管理機制構(gòu)建與運行
- 交通行業(yè)交通事故處理保障預(yù)案
- 2025年河南交通職業(yè)技術(shù)學(xué)院單招職業(yè)適應(yīng)性測試題庫參考答案
- 2025年中國土木工程集團有限公司招聘筆試參考題庫含答案解析
- 2025廣西壯族自治區(qū)考試錄用公務(wù)員(4368人)高頻重點提升(共500題)附帶答案詳解
- 神經(jīng)病 《神經(jīng)病學(xué)》習(xí)題集學(xué)習(xí)課件
- 2025年四川綿陽市科技城新區(qū)下屬國有企業(yè)新投集團招聘筆試參考題庫附帶答案詳解
- 教科版三年級下冊科學(xué)全冊單元教材分析
- 2025年國家鐵路局工程質(zhì)量監(jiān)督中心招聘歷年高頻重點提升(共500題)附帶答案詳解
- 藥品經(jīng)營使用和質(zhì)量監(jiān)督管理辦法2024年宣貫培訓(xùn)課件
- 2024年無錫科技職業(yè)學(xué)院高職單招(英語/數(shù)學(xué)/語文)筆試歷年參考題庫含答案解析
- 沖壓件,汽車表面零件缺陷及原因分析
- 電熔旁通鞍型
評論
0/150
提交評論