單片機(jī)技術(shù)及應(yīng)用第一章單片機(jī)基礎(chǔ)知識(shí)課件_第1頁(yè)
單片機(jī)技術(shù)及應(yīng)用第一章單片機(jī)基礎(chǔ)知識(shí)課件_第2頁(yè)
單片機(jī)技術(shù)及應(yīng)用第一章單片機(jī)基礎(chǔ)知識(shí)課件_第3頁(yè)
單片機(jī)技術(shù)及應(yīng)用第一章單片機(jī)基礎(chǔ)知識(shí)課件_第4頁(yè)
單片機(jī)技術(shù)及應(yīng)用第一章單片機(jī)基礎(chǔ)知識(shí)課件_第5頁(yè)
已閱讀5頁(yè),還剩61頁(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)介

單片機(jī)技術(shù)及應(yīng)用第1章單片機(jī)基礎(chǔ)知識(shí)第1章單片機(jī)基礎(chǔ)知識(shí)

1.1單片微型計(jì)算機(jī)

單片微型計(jì)算機(jī)是制作在一塊集成電路芯片上的計(jì)算機(jī),簡(jiǎn)稱單片機(jī)。它包括中央處理器(CPU),用RAM構(gòu)成的數(shù)據(jù)存儲(chǔ)器,用ROM構(gòu)成的程序存儲(chǔ)器,定時(shí)/計(jì)數(shù)器,各種輸入/輸出(I/O)接口和時(shí)鐘電路。

1.1.1單片機(jī)最小系統(tǒng)單片機(jī)最小系統(tǒng),或者稱為最小應(yīng)用系統(tǒng),是指用最少的元件組成的單片機(jī)可以工作的系統(tǒng)。對(duì)一般的51系列單片機(jī)來(lái)說(shuō),由單片機(jī)、晶振電路和復(fù)位電路,便組成了一個(gè)最小系統(tǒng).但是一般我們?cè)谠O(shè)計(jì)中總是喜歡把按鍵輸入、顯示輸出等加到上述電路中,成為最小系統(tǒng)。1.1.2單片機(jī)的基本知識(shí)

1.單片機(jī)單片機(jī)是微型計(jì)算機(jī)中的一種,是把微型計(jì)算機(jī)中的微處理器、存儲(chǔ)器、I/O接口、定時(shí)器/計(jì)數(shù)器、串行接口、中斷系統(tǒng)等電路集成在一塊集成電路芯片上形成的微型計(jì)算機(jī)。因而被稱為單片微型計(jì)算機(jī),簡(jiǎn)稱為單片機(jī)。2.單片機(jī)和單片機(jī)系統(tǒng)單片機(jī)只是一個(gè)芯片,而單片機(jī)系統(tǒng)則是在單片機(jī)芯片的基礎(chǔ)上擴(kuò)展其他電路或芯片構(gòu)成的具有一定應(yīng)用功能的計(jì)算機(jī)系統(tǒng)。通常所說(shuō)的單片機(jī)系統(tǒng)都是為實(shí)現(xiàn)某一控制應(yīng)用需要由用戶設(shè)計(jì)的,是一個(gè)圍繞單片機(jī)芯片而組建的計(jì)算機(jī)應(yīng)用系統(tǒng)。在單片機(jī)系統(tǒng)中,單片機(jī)處于核心地位,是構(gòu)成單片機(jī)系統(tǒng)的硬件和軟件基礎(chǔ)。

3.單片機(jī)應(yīng)用系統(tǒng)和單片機(jī)開(kāi)發(fā)系統(tǒng)單片機(jī)應(yīng)用系統(tǒng)是為控制應(yīng)用而設(shè)計(jì)的,該系統(tǒng)與控制對(duì)象結(jié)合在一起使用,是單片機(jī)開(kāi)發(fā)應(yīng)用的成果。但由于軟硬件資源所限,單片機(jī)系統(tǒng)本身不能實(shí)現(xiàn)自我開(kāi)發(fā),要進(jìn)行系統(tǒng)開(kāi)發(fā)設(shè)計(jì),必須使用專門的單片機(jī)開(kāi)發(fā)系統(tǒng)。1.1.3單片機(jī)的發(fā)展概況目前國(guó)際市場(chǎng)上8位、16位單片機(jī)系列已有很多,但是,在國(guó)內(nèi)使用較多的系列是Intel公司的產(chǎn)品,其中又以MCS-51系列單片機(jī)應(yīng)用尤為廣泛,二十幾年經(jīng)久不衰,而且還在更進(jìn)一步發(fā)展完善,價(jià)格越來(lái)越低,性能越來(lái)越好。單片機(jī)技術(shù)正以驚人的速度向前發(fā)展,就市場(chǎng)上已出現(xiàn)的單片機(jī)而言,其技術(shù)革新與進(jìn)步主要表現(xiàn)在以下幾個(gè)方面:1.CPU的發(fā)展2.片內(nèi)存儲(chǔ)器的發(fā)展(1)片內(nèi)存儲(chǔ)器的發(fā)展(2)片內(nèi)EPROM開(kāi)始E2PROM化(3)閃速存儲(chǔ)器(4)串行存儲(chǔ)器(5)片內(nèi)程序的保密措施3.片內(nèi)輸入輸出接口功能單片機(jī)在工藝上的提高5.片內(nèi)固化應(yīng)用軟件和系統(tǒng)軟件1.1.4單片機(jī)主要品種簡(jiǎn)介

1.4位單片機(jī)高檔8位單片機(jī)的巨大產(chǎn)量擠占了部分4位機(jī)的市場(chǎng)。為了保住自己的領(lǐng)地,4位機(jī)的結(jié)構(gòu)和功能也發(fā)生了很大的改進(jìn)。其一是增強(qiáng)片內(nèi)I/O功能,把應(yīng)用系統(tǒng)所需的LED、LCD、VFD(FIP)顯示器驅(qū)動(dòng)電路都集成在單片機(jī)芯片內(nèi),使其成為“單片”控制器。目前8位單片機(jī)和16位單片機(jī)還很少做到這點(diǎn)。其二是提高指令執(zhí)行速度,新型的4位單片機(jī)采用1.5μmCOMS工藝,其指令執(zhí)行速度小于1μs。其三是增大片內(nèi)ROM、RAM,有的ROM已達(dá)到32KB,RAM已達(dá)到1K×4位。其四是低壓低功耗,有的在2.2V下也能正常工作,有的甚至在μA級(jí)電流時(shí)也能正常工作。其實(shí)有的4位單片機(jī)性能已不低于8位單片機(jī)。

3.16位單片機(jī)16位單片機(jī)目前產(chǎn)量只占整個(gè)單片機(jī)市場(chǎng)的5%。16位單片機(jī)的性能都較高,有乘除指令、快速I/O功能。有的還有DMA傳送,可支持C或者FORTH語(yǔ)言等等。其主要機(jī)型是Intel的8096。美國(guó)國(guó)家半導(dǎo)體公司的HPC單片機(jī)性能價(jià)格比較高,已占CMOS工藝16位單片機(jī)銷售量的首位。日本Hitachi公司的H8/500單片機(jī)的性能目前最高,其指令執(zhí)行速度為200ns,片內(nèi)FPROM/ROM達(dá)62K字節(jié),片內(nèi)RAM為2K字節(jié),A/D為10位,轉(zhuǎn)換時(shí)間為13.8μs,還有DMA功能。4.32位單片機(jī)32位單片機(jī)更多地稱作32位嵌入式控制器。它主要應(yīng)用于機(jī)器人、光盤、激光打印機(jī)等的控制器。這些控制器的地址線為24~32位,尋址能力為16~400MB,并且都有很高的指令執(zhí)行速度和快速運(yùn)算能力。例如,Intel公司的80960KB在20MHz時(shí)鐘下,其指令速度為7.5MIPS,在它內(nèi)部還有IEEE-754標(biāo)準(zhǔn)的80位浮點(diǎn)運(yùn)算部件,在25MHz時(shí)鐘下,可以達(dá)到5.2Mwhetstones/s.這些控制器都能直接支持高級(jí)語(yǔ)言和實(shí)時(shí)多任務(wù)處理。1.1.5單片機(jī)的應(yīng)用單片機(jī)是在一塊芯片上集成了一臺(tái)微型計(jì)算機(jī)所需的CPU、存儲(chǔ)器、輸入/輸出部件和時(shí)鐘電路等。因此它具有體積小,使用靈活、成本低、易于產(chǎn)品化、抗干擾能力強(qiáng),可在各種惡劣環(huán)境下可靠地工作等特點(diǎn)。特別是它應(yīng)用面廣,控制能力強(qiáng),使它在工業(yè)控制、智能儀表、外設(shè)控制、家用電器、機(jī)器人、軍事裝置等方面得到了廣泛的應(yīng)用。

2.智能儀表中的應(yīng)用用單片機(jī)制作的測(cè)量、控制儀表,能使儀表向數(shù)字化、智能化、多功能化、柔性化發(fā)展,并使監(jiān)測(cè)、處理、控制等功能一體化,使儀表重量大大減輕,便于攜帶和使用,同時(shí)降低了成本,提高了性能價(jià)格比。如數(shù)字式RLC測(cè)量?jī)x、智能轉(zhuǎn)速表、計(jì)時(shí)器等。3.智能產(chǎn)品

單片機(jī)與傳統(tǒng)的機(jī)械產(chǎn)品結(jié)合,使傳統(tǒng)機(jī)械產(chǎn)品結(jié)構(gòu)簡(jiǎn)化、控制智能化,構(gòu)成新型的機(jī)、電、儀一體化產(chǎn)品。如數(shù)控車床、智能電動(dòng)玩具、各種家用電器和通信設(shè)備等。

4.在智能計(jì)算機(jī)外設(shè)中的應(yīng)用在計(jì)算機(jī)應(yīng)用系統(tǒng)中,除通用外部設(shè)備(鍵盤、顯示器、打印機(jī))外,還有許多用于外部通信、數(shù)據(jù)采集、多路分配管理、驅(qū)動(dòng)控制等接口。如果這些外部設(shè)備和接口全部由主機(jī)管理,勢(shì)必造成主機(jī)負(fù)擔(dān)過(guò)重、運(yùn)行速度降低,并且不能提高對(duì)各種接口的管理水平。如果采用單片機(jī)專門對(duì)接口進(jìn)行控制和管理,則主機(jī)和單片機(jī)就能并行工作,這不僅大大提高系統(tǒng)的運(yùn)算速度,而且單片機(jī)還可對(duì)接口信息進(jìn)行預(yù)處理,以減少主機(jī)和接口間的通信密度、提高接口控制管理的水平。如繪圖儀控制器,磁帶機(jī)、打印機(jī)的控制器等等。一、計(jì)算機(jī)中數(shù)和字符的存放

數(shù)據(jù)存放于存儲(chǔ)器或寄存器中。數(shù)據(jù)按字長(zhǎng)一般分為:

8位(字節(jié)BYTE,簡(jiǎn)寫為B)

16位(字WORD)

32位(雙字DWORD)

64位、128位、256位概述二、數(shù)制及其轉(zhuǎn)換

1、數(shù)制 十進(jìn)制(Decimal)后綴加“D”

例如:25D或25(后綴可略) 二進(jìn)制(Binary)后綴加“B”

例如:11010001B 八進(jìn)制(Octonary)后綴加“O”或“Q”

例如:76Q 十六進(jìn)制(Hexadecimal)后綴加“H”

例如:0F6H(字符開(kāi)頭的數(shù)前需加“0”)2、數(shù)制之間的轉(zhuǎn)換任意進(jìn)制轉(zhuǎn)換為十進(jìn)制

例如:10101101B=27+25+23+22+20=1794F.8H=4*161+15*160+8*16-1=79.5十進(jìn)制轉(zhuǎn)換為任意進(jìn)制 整數(shù)部分:連續(xù)除以基數(shù)取余倒計(jì)法小數(shù)部分:連續(xù)乘以基數(shù)取整順計(jì)法加法運(yùn)算:11010011

+101011111

進(jìn)位

減法運(yùn)算:-1借位三、二進(jìn)制數(shù)的運(yùn)算

1、二進(jìn)制數(shù)的算術(shù)運(yùn)算特點(diǎn):按一定字長(zhǎng)進(jìn)行,運(yùn)算結(jié)果超過(guò)字長(zhǎng)則產(chǎn)生進(jìn)位、借位或自動(dòng)丟失。1)邏輯乘(與)AND

AND110000012)邏輯加(或)OR

OR11110011

2、二進(jìn)制數(shù)的邏輯運(yùn)算特點(diǎn):按位進(jìn)行,無(wú)進(jìn)位或借位

4)邏輯異或XOR

XOR 001101003)邏輯反(非)NOT NOT11010011=00101100

計(jì)算機(jī)中數(shù)和字符的表示1.概述2.無(wú)符號(hào)數(shù)的表示3.有符號(hào)數(shù)的表示4.定點(diǎn)數(shù)和浮點(diǎn)數(shù)5.計(jì)算機(jī)中的二進(jìn)制編碼當(dāng)n=8時(shí),可表示的無(wú)符號(hào)數(shù)的范圍為0~255,當(dāng)n=16時(shí),可表示的無(wú)符號(hào)數(shù)的范圍為0~65535。

在計(jì)算機(jī)中最常用的無(wú)符號(hào)整數(shù)是表示地址的數(shù)

無(wú)符號(hào)數(shù)的表示機(jī)器字長(zhǎng)的所有位都參與表示數(shù)值。若計(jì)算機(jī)的字長(zhǎng)為n位,則n位無(wú)符號(hào)數(shù)可表示的數(shù)X的范圍是0≤X≤2

-1n

計(jì)算機(jī)中數(shù)和字符的表示1.概述2.無(wú)符號(hào)數(shù)的表示3.有符號(hào)數(shù)的表示4.定點(diǎn)數(shù)和浮點(diǎn)數(shù)5.計(jì)算機(jī)中的二進(jìn)制編碼1.機(jī)器數(shù)與真值計(jì)算機(jī)中的數(shù)是用二進(jìn)制表示的,數(shù)的符號(hào)也是用二進(jìn)制表示的。通常一個(gè)數(shù)的最高位為符號(hào)位,為0表示正數(shù),為1表示負(fù)數(shù)。若字長(zhǎng)為8位的計(jì)算機(jī),則D7為符號(hào)位,D6~D0為數(shù)值位。

D7D6D5D4D3D2D1D0符號(hào)位數(shù)值位有符號(hào)數(shù)的表示這種符號(hào)數(shù)碼化的數(shù)稱為機(jī)器數(shù)。機(jī)器數(shù)所代表的實(shí)際數(shù)值稱為真值。若計(jì)算機(jī)的字長(zhǎng)為n位,則n位有符號(hào)數(shù)可表示的數(shù)X的范圍是-2n-1≤X≤+(2n-1–1)當(dāng)n=8時(shí),可表示的有符號(hào)數(shù)的范圍為-128~127,當(dāng)n=16時(shí),可表示的有符號(hào)數(shù)的范圍為-32768~32767。

機(jī)器數(shù)可以用不同的碼制來(lái)表示,常用的有原碼和補(bǔ)碼表示法。2.原碼表示法

最高位為符號(hào)位,0表示正數(shù),1表示負(fù)數(shù),其余各位為數(shù)值位,這種表示法稱為原碼表示法。

例:若X=+97則[X]原=01100001B

若X=-97則[X]原=11100001B

原碼表示數(shù)0有兩種表示形式:

[+0]原=00000000B[-0]原=10000000B注意:n位原碼可表示的數(shù)X的范圍是:-2n-1+1≤X≤+2n-1-13.反碼表示法反碼表示法中,正數(shù)的反碼和原碼相同;負(fù)數(shù)的反碼可由其原碼除符號(hào)位,保持不變外,其余各位按位取反,即0變1、1變0

。例:若X=+45,

[X]反=00101101BX=-45,[X]反=11010010B

4.補(bǔ)碼表示法

補(bǔ)碼表示法中,正數(shù)的補(bǔ)碼和原碼相同;負(fù)數(shù)的補(bǔ)碼可由其原碼除符號(hào)位,保持不變外,其余各位按位取反,再在最末位加1而形成。

例:假設(shè)機(jī)器字長(zhǎng)為8位,則[X]原=01100001B則[+97]補(bǔ)=01100001B[X]原=11100001B則[-97]補(bǔ)=10011111B

10011110B+1補(bǔ)碼具有以下特點(diǎn):①[+0]補(bǔ)=[-0]補(bǔ)=00000000B②n位二進(jìn)制補(bǔ)碼所能表示的數(shù)值范圍為:-2n-1≤X≤+2n-1-1若n=8,則8位二進(jìn)制補(bǔ)碼所能表示的數(shù)值范圍為-128~+127。③對(duì)于一個(gè)用補(bǔ)碼表示的負(fù)數(shù),如果將[X]補(bǔ)再求一次補(bǔ),即將[X]補(bǔ)除符號(hào)位外取反并在最末位加1就可得到[X]原。用下式表示為:[[X]補(bǔ)]補(bǔ)=[X]原[[-15]補(bǔ)]補(bǔ)=[[10001111B]補(bǔ)]補(bǔ)=[11110001B]補(bǔ)

=10001111B=[-15]原注意:[10000000]補(bǔ)=[-128]原=10000000B二進(jìn)制數(shù)碼無(wú)符號(hào)數(shù)原碼反碼補(bǔ)碼00000000 0 +0 +0 +000000001 1 +1 +1 +100000010 2 +2 +2 +2 :01111110 126+126 +126 +12601111111 127+127 +127 +12710000000 128-0 -127 -12810000001 129-1 -126 -12710000010 130-2-125 -126 :11111110 254-126 -1 -211111111 255-127 -0 -15.補(bǔ)碼的加減運(yùn)算(1)補(bǔ)碼的加法運(yùn)算規(guī)則是:[X+Y]補(bǔ)=[X]補(bǔ)+[Y]補(bǔ)

該式表明,當(dāng)有符號(hào)的兩個(gè)數(shù)采用補(bǔ)碼形式表示時(shí),進(jìn)行加法運(yùn)算可以把符號(hào)位和數(shù)值位一起進(jìn)行運(yùn)算(若符號(hào)位有進(jìn)位,則丟掉),結(jié)果為兩數(shù)之和的補(bǔ)碼形式。例:用補(bǔ)碼進(jìn)行下列運(yùn)算:(+33)+(+15);(+33)+(-15)

解:(2)補(bǔ)碼的減法運(yùn)算規(guī)則是:[X-Y]補(bǔ)=[X]補(bǔ)+[-Y]補(bǔ)

該式表明,求[X-Y]補(bǔ)可以用[X]補(bǔ)與[-Y]補(bǔ)相加來(lái)實(shí)現(xiàn)[-Y]補(bǔ)是對(duì)減數(shù)進(jìn)行求負(fù)操作。一般稱已知[Y]補(bǔ)求得[-Y]補(bǔ)的過(guò)程叫變補(bǔ)或求負(fù)。變補(bǔ)運(yùn)算(NEG)——已知[+X]補(bǔ)求[-X]補(bǔ)規(guī)則:全部位(含符號(hào)位)按位取反后再加1例:已知[+15]補(bǔ)=00001111B則[-15]補(bǔ)=11110000B+1=11110001B或:0-[+15]補(bǔ)=0-00001111B=11110001B解:若X=+33,Y=+15[X]補(bǔ)=00100001B[Y]補(bǔ)=00001111B[-Y]補(bǔ)=11110001B

00100001B[X]

補(bǔ)

+11110001B[-Y]補(bǔ)

自然丟失100010010B[+18]

補(bǔ)

例:用補(bǔ)碼進(jìn)行X-Y運(yùn)算若X=-33Y=-15

則[-33]補(bǔ)=11011111B[-15]補(bǔ)=11110001B[+15]補(bǔ)=00001111B

11011111B[-33]

補(bǔ)

+00001111B[+15]補(bǔ)

11101110[-18]補(bǔ)

補(bǔ)碼的作用:1、引入補(bǔ)碼后,將減法運(yùn)算轉(zhuǎn)化為易于實(shí)現(xiàn)的加法運(yùn)算,且符號(hào)位也當(dāng)作數(shù)據(jù)相加,從而可簡(jiǎn)化運(yùn)算器的結(jié)構(gòu),提高運(yùn)算速度。因此,在微型計(jì)算機(jī)中,有符號(hào)數(shù)通常都用補(bǔ)碼表示,得到的是補(bǔ)碼表示的結(jié)果。2、當(dāng)字長(zhǎng)由8位擴(kuò)展到16位時(shí),對(duì)于用補(bǔ)碼表示的數(shù),正數(shù)的符號(hào)擴(kuò)展應(yīng)該在前面補(bǔ)0,而負(fù)數(shù)的符號(hào)擴(kuò)展應(yīng)該在前面補(bǔ)1。例:機(jī)器字長(zhǎng)為8位,[+46]補(bǔ)=00101110B,[-46]=11010010B,從8位擴(kuò)展到16位[+46]補(bǔ)=0000000000101110B=002EH[-46]補(bǔ)=1111111111010010B=FFD2H6.有符號(hào)數(shù)運(yùn)算時(shí)的溢出問(wèn)題當(dāng)兩個(gè)有符號(hào)數(shù)進(jìn)行加減運(yùn)算時(shí),如果運(yùn)算結(jié)果超出可表示的有符號(hào)數(shù)的范圍時(shí),就會(huì)發(fā)生溢出,使計(jì)算結(jié)果出錯(cuò)。顯然,只有兩個(gè)同符號(hào)數(shù)相加或兩個(gè)異號(hào)數(shù)相減時(shí),才會(huì)產(chǎn)生溢出。例:設(shè)機(jī)器字長(zhǎng)為8位,以下運(yùn)算都會(huì)發(fā)生溢出(+88)+(+65)=+153>127(+88)-(-65)=+153>127(-83)-(+80)=-163<-128(1)無(wú)符號(hào)數(shù)的溢出——最高位的進(jìn)位位CFCF=CYD7(MOD28)或CF=CYD15(MOD216);例如,250=11111010B+50=00110010B44=100101100B(進(jìn)位CF=CYD7=1丟失)(2)帶符號(hào)數(shù)的溢出——OFOF=CYD7

CYD6(MOD28)或OF=CYD15

CYD14(MOD216)例:[+65]補(bǔ)=01000001+[-15]補(bǔ)=11110001[+50]補(bǔ)=100110010OF=CYD7

CYD6=11=0(無(wú)溢出,結(jié)果正確)[+96]補(bǔ)=01100000+[+65]補(bǔ)=01000001[-95]補(bǔ)=010100001OF=CYD7

CYD6=01=1(有溢出,結(jié)果錯(cuò)誤)CYD6=1CYD7=1

計(jì)算機(jī)中數(shù)和字符的表示1.概述2.無(wú)符號(hào)數(shù)的表示3.有符號(hào)數(shù)的表示4.定點(diǎn)數(shù)和浮點(diǎn)數(shù)5.計(jì)算機(jī)中的二進(jìn)制編碼

在計(jì)算機(jī)中,數(shù)值數(shù)據(jù)有兩種表示法:定點(diǎn)表示法和浮點(diǎn)表示法。分別稱為定點(diǎn)數(shù)和浮點(diǎn)數(shù)。1.定點(diǎn)數(shù)

定點(diǎn)數(shù)是指小數(shù)點(diǎn)在數(shù)中的位置是固定不變的,常用的定點(diǎn)數(shù)有純小數(shù)和純整數(shù)兩種。純小數(shù):小數(shù)點(diǎn)固定在符號(hào)位之后,如1.1100111B,此時(shí)機(jī)器中所有數(shù)均為小數(shù)。純整數(shù);小數(shù)點(diǎn)固定在最低位之后,如111001l1.B,此時(shí)機(jī)器中所有數(shù)均為整數(shù)。定點(diǎn)數(shù)和浮點(diǎn)數(shù)2.浮點(diǎn)數(shù)

浮點(diǎn)數(shù)由階碼和尾數(shù)兩部分組成。對(duì)任意一個(gè)有符號(hào)的二進(jìn)制數(shù)N的普遍形式可表示為

N=2E×M式中E稱為N的階碼,是一個(gè)有符號(hào)的可變整數(shù)。設(shè)E=ejek-1……e0ej為階符:若ej=0,則E是正數(shù);若ej=1,則E為負(fù)數(shù)。ek-1…e0是階值。式中M稱為N的尾數(shù),是一個(gè)有符號(hào)的純小數(shù)。設(shè)M=mjm1……mnmj為尾符:若mj=0,則M為正數(shù);若mj=1,則M為負(fù)數(shù)。尾數(shù)M的符號(hào)就是浮點(diǎn)數(shù)N的符號(hào)。m1…mn是尾值。例:科學(xué)計(jì)數(shù)法:3.14159=0.314159×10+1高級(jí)語(yǔ)言中的格式:+0.314159E+01

尾符尾數(shù)階符階碼浮點(diǎn)數(shù)N在計(jì)算機(jī)內(nèi)的表示形式如下所示。

ek-1ek-2…e0ejmjek-1ek-2…e0m1m2…mn一位階符m位階值一位尾符n位尾值3.規(guī)格化數(shù)與溢出

為了便于浮點(diǎn)數(shù)的運(yùn)算,數(shù)采用規(guī)格化表示。對(duì)尾數(shù)規(guī)格化作如下定義:若mj≠m1,則稱尾數(shù)M為規(guī)格化數(shù);若mj=m1,則稱尾數(shù)M為非規(guī)格化數(shù)。例如,N=2011×0.0010100,顯然尾數(shù)0.001010為非規(guī)格化數(shù)。如果尾數(shù)不是規(guī)格化數(shù),那么要用移位手段把它變?yōu)橐?guī)格化數(shù)。尾數(shù)每左移一位,階碼就減1,尾數(shù)每右移一位,階碼就加1,直至mj≠m1為止。以左移操作實(shí)現(xiàn)尾數(shù)的規(guī)格化稱為左規(guī),以右移實(shí)現(xiàn)規(guī)格化稱為右規(guī)。如上例中的N為非規(guī)格化數(shù),則將0.0010100左移兩位后,變成0.1010000,此數(shù)已是規(guī)格化數(shù),不再左移,從階碼011中減去010,得001。所以規(guī)格化后的N應(yīng)為2001×0.1010000。

存儲(chǔ)在計(jì)算機(jī)中的數(shù)一定是規(guī)格化數(shù)。兩數(shù)的運(yùn)算結(jié)果也應(yīng)為規(guī)格化數(shù),如果不是,那么必須通過(guò)移位方式把它變?yōu)橐?guī)格化數(shù)。

當(dāng)浮點(diǎn)數(shù)超出機(jī)器所能表示數(shù)的范圍時(shí),我們稱為溢出。對(duì)規(guī)格化的浮點(diǎn)數(shù),當(dāng)階碼小于機(jī)器所能表示的最小數(shù)時(shí),稱為下溢,此時(shí)機(jī)器將把此數(shù)作0處理;若階碼大于機(jī)器所能表示的最大范圍時(shí),稱為上溢。溢出發(fā)生時(shí),機(jī)器就產(chǎn)生溢出中斷,進(jìn)入中斷處理。浮點(diǎn)表示法比定點(diǎn)表示法所表示的數(shù)的范圍大,精度高,但運(yùn)算規(guī)則比較復(fù)雜,成本較高。早期的微型計(jì)算機(jī)采用定點(diǎn)表示,機(jī)器中數(shù)均為整數(shù),沒(méi)有處理浮點(diǎn)數(shù)的指令。為了彌補(bǔ)這方面的不足,專門設(shè)計(jì)了相應(yīng)的數(shù)值協(xié)處理器(8087、80287、80387等)來(lái)實(shí)現(xiàn)對(duì)浮點(diǎn)數(shù)的運(yùn)算。80486、80586的數(shù)值協(xié)處理器已集成在CPU芯片內(nèi)部。在本教材中,若無(wú)特別說(shuō)明,數(shù)據(jù)均采用純整數(shù)定點(diǎn)表示。

計(jì)算機(jī)中數(shù)和字符的表示1.概述2.無(wú)符號(hào)數(shù)的表示3.有符號(hào)數(shù)的表示4.定點(diǎn)數(shù)和浮點(diǎn)數(shù)5.計(jì)算機(jī)中的二進(jìn)制編碼

1.BCD碼(BinaryCodedDecimal)

BCD碼是以四位二進(jìn)制的不同組合表示十進(jìn)制數(shù)十個(gè)數(shù)碼的方法,又稱二—十進(jìn)制編碼。常用的BCD碼為8421BCD碼,即每位十進(jìn)制數(shù)碼用四位二進(jìn)制數(shù)來(lái)表示,四位二進(jìn)制數(shù)從高到低的權(quán)值分別為23、22、21、20即8421。8421BCD碼如表所示。

計(jì)算機(jī)中的二進(jìn)制編碼表:8421BCD碼十進(jìn)制數(shù)

8421BCD碼

十進(jìn)制數(shù)8421BCD碼00000501011000160110200107011130011810004010091001例:十進(jìn)制數(shù)和BCD碼相互轉(zhuǎn)換。將十進(jìn)制數(shù)86.5轉(zhuǎn)換為BCD碼:86.5=(10000110.0101)BCD將BCD碼10010111.0100轉(zhuǎn)換為十進(jìn)制數(shù):(10010111.0100)BCD=97.4根據(jù)在存儲(chǔ)器中的不同存放格式,BCD碼又分為壓縮型BCD碼:一個(gè)字節(jié)中存放兩個(gè)十進(jìn)制數(shù)碼非壓縮型BCD碼:每個(gè)字節(jié)只存放一

溫馨提示

  • 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)論