第一章廣東海洋大學(xué)單片機(jī)課件.ppt_第1頁(yè)
第一章廣東海洋大學(xué)單片機(jī)課件.ppt_第2頁(yè)
第一章廣東海洋大學(xué)單片機(jī)課件.ppt_第3頁(yè)
第一章廣東海洋大學(xué)單片機(jī)課件.ppt_第4頁(yè)
第一章廣東海洋大學(xué)單片機(jī)課件.ppt_第5頁(yè)
已閱讀5頁(yè),還剩42頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、1.1 數(shù)制 數(shù)制是人們利用符號(hào)來(lái)記數(shù)的科學(xué)方法,計(jì)算機(jī)科學(xué)中經(jīng)常使用的數(shù)制有十進(jìn)制、二進(jìn)制、八進(jìn)制和十六進(jìn)制。 (1)十進(jìn)制(decimal system):有十個(gè)數(shù)碼09、逢十進(jìn)一。 十進(jìn)制是人們最熟悉的計(jì)數(shù)體制。 (2)二進(jìn)制(binary system):兩個(gè)數(shù)碼:0、1, 逢二進(jìn)一。 二進(jìn)制為計(jì)算機(jī)中的數(shù)據(jù)表示形式。 (3)八進(jìn)制(octave system)有八個(gè)數(shù)碼07、逢八進(jìn)一。 (4)十六進(jìn)制(hexadecimal system)十六個(gè)數(shù)碼:09, AF, 逢十六進(jìn)一。 不同進(jìn)位制數(shù)以下標(biāo)或后綴區(qū)別,十進(jìn)制數(shù)可不帶下標(biāo)。 如:101、101D、101B、101O、101H,

2、基與權(quán) 基:數(shù)制所使用的數(shù)碼的個(gè)數(shù) 權(quán):數(shù)制每一位所具有的值 十進(jìn)制:使用的數(shù)碼為0,1,2,3,4,5,6,7,8,9,共有10個(gè),它的基為10。十進(jìn)制各位的權(quán)是以10為底的冪。,一個(gè)十進(jìn)制數(shù)可以用它的按權(quán)展開(kāi)表達(dá)式為: 1234.5=1103 +2102 +3101 +4100 +510-1,二進(jìn)制數(shù)的展開(kāi): 1011.1010B=123+121+120+12-1+12-3 十六進(jìn)制數(shù)的展開(kāi): DFC.8H =13162+15161+12160+816-1,計(jì)數(shù)制數(shù)相互轉(zhuǎn)換,r進(jìn)制數(shù)轉(zhuǎn)換為十進(jìn)制數(shù),按照公式展開(kāi)求和,例1. 分別把二進(jìn)制數(shù)1011.1010和十六進(jìn)制數(shù)DFC.8用十進(jìn)制表示

3、,1011.1010B=123+121+120+12-1+12-3=11.625 DFC.8H =13162+15161+12160+816-1 = 3580.5,十進(jìn)制數(shù)轉(zhuǎn)換為r進(jìn)制數(shù),整數(shù)部分和小數(shù)部分分別進(jìn)行轉(zhuǎn)換,1.整數(shù)轉(zhuǎn)換法 “除基取余”:整數(shù)不斷除以轉(zhuǎn)換進(jìn)制基數(shù),直至商為0。每除一次取一個(gè)余數(shù),從低位排向高位。,2.小數(shù)轉(zhuǎn)換法 “乘基取整”:用轉(zhuǎn)換進(jìn)制的基數(shù)乘以小數(shù)部分,直至小數(shù)為0或達(dá)到轉(zhuǎn)換精度要求的位數(shù)。每乘一次取一次整數(shù),從最高位排到最低位。,39轉(zhuǎn)換成二進(jìn)制數(shù) 39 =100111B 2 39 1 ( b0) 2 19 1 ( b1) 2 9 1 ( b2) 2 4 0 (

4、 b3) 2 2 0 ( b4) 2 1 1 ( b5) 0,208轉(zhuǎn)換成十六進(jìn)制數(shù) 208 = D0H 16 208 0 16 13 13 = DH 0,0.625轉(zhuǎn)換成二進(jìn)制數(shù) 0.625 2 1.25 1 (b-1) 0.25 2 0.50 0 (b-2) 0.50 2 1.00 1 (b-3) 所以0.625 = 0.101B,例2. 分別把十進(jìn)制3580.5表示為二進(jìn)制和十六進(jìn)制。,3580.5=110111111100.1B,3580.5=DFC.8H,二進(jìn)制與八進(jìn)制、十六進(jìn)制的相互轉(zhuǎn)換,從二進(jìn)制轉(zhuǎn)換成十六進(jìn)制時(shí),從小數(shù)點(diǎn)位置開(kāi)始,整數(shù)部分向左,小數(shù)部分向右,每四位二進(jìn)制數(shù)為一組用

5、一位十六進(jìn)制的數(shù)字來(lái)表示,不足四位的用0補(bǔ)足,就是相應(yīng)十六進(jìn)制的表示。 從二進(jìn)制轉(zhuǎn)換成八進(jìn)制時(shí),從小數(shù)點(diǎn)位置開(kāi)始,整數(shù)部分向左,小數(shù)部分向右,每三位二進(jìn)制數(shù)為一組用一位八進(jìn)制的數(shù)字來(lái)表示,不足三位的用0補(bǔ)足,就是相應(yīng)八進(jìn)制的表示。,合三為一,合四為一,反之,拆一為四 或 拆一為三,3580.5=1101 1111 1100.1000B,3580.5=DFC.8H,計(jì)算機(jī)內(nèi)部采用二進(jìn)制的原因 計(jì)算機(jī)作為一種電子計(jì)算工具,是由大量的電子器件組成的,而具有兩種不同穩(wěn)定狀態(tài)的元件是容易實(shí)現(xiàn)的,電路通常也是有兩種穩(wěn)態(tài),只要規(guī)定一種狀態(tài)表示1,另一種狀態(tài)表示0,就可以表示二進(jìn)制數(shù)。這樣,數(shù)碼的存儲(chǔ)、分析和

6、傳輸,就可以用最簡(jiǎn)單而可靠的方式進(jìn)行。,采用十六進(jìn)制的原因:簡(jiǎn)化書(shū)寫(xiě),便于記憶。,1.2 計(jì)算機(jī)中數(shù)的表示方法,定點(diǎn)數(shù) 和 浮點(diǎn)數(shù),在計(jì)算機(jī)中,小數(shù)和整數(shù)都是以二進(jìn)制形式表示的,但對(duì)于小數(shù)點(diǎn)通常有定點(diǎn)和浮點(diǎn)兩種表示。,定點(diǎn)數(shù):小數(shù)點(diǎn)位置固定不變的,浮點(diǎn)數(shù):小數(shù)點(diǎn)不是固定的。,定點(diǎn)整數(shù):小數(shù)點(diǎn)固定在數(shù)值位之后,大多數(shù)計(jì)算機(jī)都采用定點(diǎn)整數(shù)法,MCS-51也是定點(diǎn)計(jì)算機(jī)。 因此:MCS-51只能對(duì)二進(jìn)制整數(shù)進(jìn)行直接運(yùn)算和處理,它在遇到二進(jìn)制小數(shù)時(shí),必須把該小數(shù)按比例擴(kuò)大成二進(jìn)制整數(shù)后進(jìn)行處理,并在處理完畢后再按照同樣比例縮小后進(jìn)行輸出。,浮點(diǎn)數(shù),一個(gè)浮點(diǎn)數(shù)N兩個(gè)數(shù)P和S來(lái)表示:N = S bP。b為

7、記數(shù)系統(tǒng)的基,S為尾數(shù),P為指數(shù),如果S的第一位是非0,則S稱為規(guī)格化的。,單片機(jī)浮點(diǎn)數(shù)表示: 二進(jìn)制浮點(diǎn)數(shù) 十進(jìn)制浮點(diǎn)數(shù),一.二進(jìn)制浮點(diǎn)數(shù)(基為2) 用三個(gè)字節(jié)表示,第一個(gè)字節(jié)的最高位為符號(hào)位,其余七位為階碼(補(bǔ)碼形式),第二字節(jié)為尾數(shù)的高字節(jié),第三字節(jié)為尾數(shù)的低字節(jié),尾數(shù)用雙字節(jié)純小數(shù)(原碼)來(lái)表示。當(dāng)尾數(shù)的最高位為時(shí),便稱為規(guī)格化浮點(diǎn)數(shù),簡(jiǎn)稱操作數(shù)。 -6.000 二進(jìn)制浮點(diǎn)數(shù)表示為 1100000 0000 00000.110 0000 0000 000023 階碼為3,尾數(shù)1100 0000 0000 0000 83C000H,二十進(jìn)制浮點(diǎn)數(shù)(基為10) 用三個(gè)字節(jié)表示,第一個(gè)字節(jié)的

8、最高位為數(shù)符,其余七位為階碼(二進(jìn)制補(bǔ)碼形式),第二字節(jié)為尾數(shù)的高字節(jié),第三字節(jié)為尾數(shù)的低字節(jié),尾數(shù)用雙字節(jié)碼純小數(shù)(原碼)來(lái)表示。 當(dāng)十進(jìn)制數(shù)的絕對(duì)值大于時(shí),階碼就等于整數(shù)部分的位數(shù),如 876.5 的階碼是03H;當(dāng)十進(jìn)制數(shù)的絕對(duì)值小于1 時(shí),階碼就等于 80H 減去小數(shù)點(diǎn)后面零的個(gè)數(shù),例如 0.00382 的階碼是 7EH。,0.003820.38210-2 階碼為-2 尾數(shù)為3820 則十進(jìn)制浮點(diǎn)數(shù)表示為 FE 38 20,876.5 表示為十進(jìn)制浮點(diǎn)數(shù)為 876.50.8765103 階碼為3 尾數(shù)為8765 則十進(jìn)制浮點(diǎn)數(shù)為 03 87 65,編碼方案:原碼、反碼、補(bǔ)碼。 ASCI

9、I碼 BCD碼,1.3 計(jì)算機(jī)中數(shù)的表示形式,1、原碼 原碼:用最高位表示符號(hào),其中:0-正、1-負(fù),其它位表示數(shù)值的絕對(duì)值。,【例】有符號(hào)數(shù)的原碼表示。 X=45=00101101B X原= 00101101B X=-45, X原=10101101B,0的表示形式(8位) +0原=00000000 -0原=10000000,特點(diǎn) A、原碼與真值的對(duì)應(yīng)關(guān)系簡(jiǎn)單。 B、0的編碼不唯一,處理運(yùn)算不方便。 C、8位二進(jìn)制數(shù),原碼可表示的范圍:+127-127,2、反碼 正數(shù)的反碼與原碼相同,符號(hào)位用0表示,數(shù)值位值不變。 負(fù)數(shù)的反碼符號(hào)位用1表示, 數(shù)值位由原碼數(shù)值位按位取反形成,即0變1、1變0。

10、 【例】有符號(hào)數(shù)的反碼表示。 X=45=00101101B, X反=00101101B X=-45, X反=11010010B A、0的表示有兩種形式(8位) +0反 = 0000 0000 -0反 = 1111 1111 B、8位二進(jìn)制數(shù),反碼可表示的范圍:+127-127,3、補(bǔ)碼 正數(shù)的補(bǔ)碼和原碼相同。 負(fù)數(shù)的補(bǔ)碼=反碼+1。 【例】有符號(hào)數(shù)的補(bǔ)碼表示。 X=45=00101101B X補(bǔ)=00101101B X=-45 X補(bǔ)=11010011B,注: A、0補(bǔ)=+0補(bǔ)=-0補(bǔ)=00000000 B、8位二進(jìn)制數(shù)表示的數(shù)值范圍是:+127-128 C、知道補(bǔ)碼求原碼:X補(bǔ)補(bǔ) = X原,例

11、:用補(bǔ)碼進(jìn)行下列運(yùn)算 已知X=+18 Y=-15,求X+Y X+Y補(bǔ)=X補(bǔ)+Y補(bǔ),解 0001 0010B +18補(bǔ) + 1111 0001B -15補(bǔ) 10000 0011B +3補(bǔ) 符號(hào)位的進(jìn)位,舍棄,減法運(yùn)算變?yōu)榧臃ㄟ\(yùn)算,減去一個(gè)數(shù)等于加上這個(gè)數(shù)的補(bǔ)碼,已知X=+6、 Y=25,求X-Y X-Y補(bǔ)=X補(bǔ)+-Y補(bǔ),解 0000 0110B +6補(bǔ) + 1110 0111B -25補(bǔ) 1110 1101B -19補(bǔ),溢出問(wèn)題,運(yùn)算結(jié)果超出了所能表示的數(shù)據(jù)范圍,就會(huì)產(chǎn)生溢出。,溢出檢測(cè)方法,單符號(hào)位檢測(cè)法,2.最高有效位產(chǎn)生進(jìn)位而符號(hào)位無(wú)進(jìn)位時(shí),發(fā)生上溢。,最高有效位無(wú)進(jìn)位而符號(hào)位產(chǎn)生進(jìn)位時(shí),

12、發(fā)生下溢。,最高有效位的進(jìn)位與符號(hào)位的進(jìn)位值相異時(shí)發(fā)生溢出。,1.同符號(hào)數(shù)相加,運(yùn)算結(jié)果符號(hào)與加數(shù)符號(hào)相異,發(fā)生溢出。,雙符號(hào)位檢測(cè)法(變形補(bǔ)碼),運(yùn)算結(jié)果的兩符號(hào)位相異時(shí)發(fā)生溢出。,1 0 1 0 1 1 0 1 + 1 0 0 1 1 1 0 1 1 0 1 0 0 1 0 1 0,1 0 1 0 1 1 0 1 + 0 1 1 1 1 1 0 1 1 0 0 1 0 1 0 1 0,沒(méi)有溢出,溢出,數(shù)的表示方法,PS:計(jì)算機(jī)里的有符號(hào)數(shù)都是以補(bǔ)碼的形式來(lái)表示 的,引入原碼和反碼的概念只是加深大家對(duì)補(bǔ)碼的 理解。,常用的字符編碼方式為美國(guó)標(biāo)準(zhǔn)信息交換(American Standard C

13、ard for Information Interchange,ASCII碼)。 標(biāo)準(zhǔn)ASCII碼用7位二進(jìn)制數(shù)編碼,共有128個(gè)。 計(jì)算機(jī)存儲(chǔ)器基本單位為8位,ASCII碼的最高位通常為0,通信時(shí),最高位用作奇偶校驗(yàn)位。 ASCII碼表中的前33個(gè)和最后1個(gè)編碼是不能顯示的控制字符,用于表示某種操作。 ASCII碼表中20H后的94個(gè)編碼是可顯示和打印的字符,其中包括數(shù)碼09,英文字母,標(biāo)點(diǎn)符號(hào)等。,2、ASCII碼,高位b6b5b4,低位b3b2b1b0,7位ASCII碼編碼表,3、BCD碼 雖然二進(jìn)制數(shù)實(shí)現(xiàn)容易,但不符合人們的使用習(xí)慣,且書(shū)寫(xiě)閱讀不方便,所以在計(jì)算機(jī)輸入輸出時(shí)通常還是采用

14、十進(jìn)制來(lái)表示數(shù),這就需要實(shí)現(xiàn)十進(jìn)制與二進(jìn)制間的轉(zhuǎn)換。為了轉(zhuǎn)換方便,常采用二進(jìn)制編碼的十進(jìn)制,簡(jiǎn)稱為BCD碼。,BCD碼是一種用4位二進(jìn)制數(shù)字來(lái)表示一位十進(jìn)制數(shù)字的編碼,也成為二進(jìn)制編碼表示的十進(jìn)制數(shù)(Binary Code Decimal),簡(jiǎn)稱BCD碼。下表示出了十進(jìn)制數(shù)0-9的BCD碼。,表 十進(jìn)制數(shù)字的8421BCD碼,BCD碼有兩種格式: (1)壓縮BCD碼格式,也叫組合式BCD碼 用4個(gè)二進(jìn)制位表示一個(gè)十進(jìn)制位,就是用0000B-1001B來(lái)表示十進(jìn)制數(shù)0-8。 例如:十進(jìn)制數(shù)4256的壓縮BCD碼表示為:0100 0010 0101 0110 B (即4256H) (2)非壓縮BC

15、D碼格式,也叫分離式BCD碼 用8個(gè)二進(jìn)制位表示一個(gè)十進(jìn)制位,其中,高四位無(wú)意義,我們一般用xxxx表示,低四位和壓縮BCD碼相同。,例如:十進(jìn)制數(shù)4256的非壓縮BCD碼表示為: xxxx0100 xxxx0010 xxxx0101 xxxx0110 B 有時(shí),要求非壓縮BCD碼的高4位為0,這時(shí),4256(10)的非壓縮BCD碼為04020506H。,1.4.2 漢字的編碼,國(guó)標(biāo)碼(GB 2312),國(guó)標(biāo)碼共收集6763個(gè)漢字,還收集有202個(gè)一般字符,序號(hào),數(shù)字等,共7445個(gè)圖形字符。 7445個(gè)圖形采用14位二進(jìn)制來(lái)編碼,14位中的高7位占一個(gè)字節(jié)(最高位不用),為第一字節(jié);低7位占

16、一個(gè)字節(jié)(最高位不用),為第二字節(jié)。采用4位十六進(jìn)制數(shù)來(lái)表示一個(gè)漢字。,2. 區(qū)位碼及其向國(guó)標(biāo)碼的替換,區(qū)位碼和國(guó)標(biāo)碼的區(qū)別不大,共用一張編碼表,用4位十進(jìn)制區(qū)號(hào)和位來(lái)表示一個(gè)漢字。,1.4.3 校驗(yàn)碼編碼,在計(jì)算機(jī)中信息的傳遞或存儲(chǔ)常常由于某種干擾而發(fā)生錯(cuò)誤,為了確保信息的可靠性,希望能對(duì)存儲(chǔ)器中讀出的信息或接收端收到的信息自動(dòng)作出判斷,并加以糾錯(cuò)。因此,引入了對(duì)校驗(yàn)碼的編碼和解碼問(wèn)題。 校驗(yàn)碼編碼發(fā)生在信息發(fā)送之前,校驗(yàn)碼解碼發(fā)生在信息被接收后進(jìn)行。校驗(yàn)位的位數(shù)越多,其查錯(cuò)和糾錯(cuò)能力越強(qiáng)。,奇偶校驗(yàn)碼編碼,只有一個(gè)校驗(yàn)位。 奇校驗(yàn):編碼后的校驗(yàn)碼中1的個(gè)數(shù)(包括有效信息位和奇校驗(yàn)位)保持為

17、奇數(shù); 偶校驗(yàn):編碼后的校驗(yàn)碼中1的個(gè)數(shù)(包括有效信息位和奇校驗(yàn)位)保持為偶數(shù);,奇校驗(yàn)位 有效信息 1 100 0001 0 100 0011,發(fā)送:校驗(yàn)位的狀態(tài)由發(fā)送端的奇偶校驗(yàn)電路自動(dòng)根據(jù)發(fā)送的數(shù)據(jù)信息中1的個(gè)數(shù)來(lái)確定 接收:接收端只要判斷每個(gè)字節(jié)是否有奇數(shù)個(gè)1(包括奇偶校驗(yàn)位)就可以知道信息在傳輸?shù)倪^(guò)程中是否出錯(cuò)。,2 海明碼編碼,海明碼即能發(fā)現(xiàn)錯(cuò)誤又能糾正錯(cuò)誤的校驗(yàn)碼。,校驗(yàn)位的位數(shù),n為有效信息的位數(shù),k為校驗(yàn)位位數(shù),n和k要滿足關(guān)系:,海明碼結(jié)構(gòu),編碼中規(guī)定:位號(hào)等于2的權(quán)值的那些位(即第1、2、4、8等位)均可以作為校驗(yàn)位,并命名為P1、P2、P3、P4,余下的為有效信息位。,

18、海明碼位號(hào),第i位由校驗(yàn)位位號(hào)之和等于i的那些校驗(yàn)位所校驗(yàn),P1(1):負(fù)責(zé)3、5、7、9、11位的校驗(yàn) P2(2):負(fù)責(zé)3、6、7、10、11位的校驗(yàn) P3(4):負(fù)責(zé)5、6、7位的校驗(yàn) P4(8):負(fù)責(zé)9、10、11位的校驗(yàn),海明碼的編碼原理(采用偶校驗(yàn)),在發(fā)送端,根據(jù)有效信息位確定P1、P2、P3、P4的值,并填入對(duì)應(yīng)海明碼的碼位上 例如:62H(1100010B),P1:3、5、7、9、11位對(duì)應(yīng)為11000,偶校驗(yàn)結(jié)果為0 P2:3、6、7、10、11位對(duì)應(yīng)為10010,偶校驗(yàn)結(jié)果為0 P3:5、6、7位對(duì)應(yīng)為100,偶校驗(yàn)結(jié)果為1 P4:9、10、11位對(duì)應(yīng)為010,偶校驗(yàn)結(jié)果為1 最中海明碼為00111001010B,海明碼的解碼和糾錯(cuò),有四個(gè)校驗(yàn)位則分四組校驗(yàn),每組產(chǎn)生一位檢錯(cuò)信息,四組共四位檢錯(cuò)信息,構(gòu)成一個(gè)錯(cuò)誤字E4E3E2E1,E1:1、3、5、7、9、11位,進(jìn)行偶校驗(yàn) E2:2、3、6、7、10、11位,進(jìn)行偶校驗(yàn) E3:4、5

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論