




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第2章計(jì)算機(jī)基礎(chǔ)知識(shí)
2.1計(jì)算機(jī)的運(yùn)算基礎(chǔ)2.2命題邏輯與邏輯代數(shù)基礎(chǔ)2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理2.4程序設(shè)計(jì)基礎(chǔ)2.5算法基礎(chǔ)2.6數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)2.7本章小結(jié)第2章計(jì)算機(jī)基礎(chǔ)知識(shí)2.1計(jì)算機(jī)的運(yùn)算基礎(chǔ)基本要求:掌握數(shù)制間的轉(zhuǎn)換方法以及數(shù)據(jù)在計(jì)算機(jī)內(nèi)部的表示形式理解邏輯代數(shù)、計(jì)算機(jī)的工作原理、程序設(shè)計(jì)以及算法與數(shù)據(jù)結(jié)構(gòu)的基本知識(shí),為學(xué)習(xí)本書的以下各章和后續(xù)課程打好基礎(chǔ)基本要求:計(jì)算機(jī)中的數(shù)制數(shù)值型數(shù)據(jù)的表示字符型數(shù)據(jù)的編碼表示漢字的編碼表示2.1計(jì)算機(jī)的運(yùn)算基礎(chǔ)計(jì)算機(jī)中的數(shù)制2.1計(jì)算機(jī)的運(yùn)算基礎(chǔ)2.1.1計(jì)算機(jī)中的數(shù)制不同數(shù)制的表示在計(jì)算機(jī)內(nèi)部用二進(jìn)制形式表示和存儲(chǔ)數(shù)據(jù)。
人們習(xí)慣于用十進(jìn)制記數(shù)。為了書寫簡(jiǎn)單方便也使用八進(jìn)制和十六進(jìn)制。用加后綴或角標(biāo)的形式區(qū)別不同進(jìn)制數(shù)據(jù)。B—表示二進(jìn)制數(shù)。O或Q—表示八進(jìn)制數(shù)。D—表示十進(jìn)制數(shù)(D可省略)。H—表示十六進(jìn)制數(shù)。2.1.1計(jì)算機(jī)中的數(shù)制不同數(shù)制的表示2.1.1計(jì)算機(jī)中的數(shù)制二進(jìn)制轉(zhuǎn)換成其他進(jìn)制二進(jìn)制數(shù)轉(zhuǎn)換成十進(jìn)制數(shù),按權(quán)展開相加即可。二進(jìn)制數(shù)轉(zhuǎn)換成八進(jìn)制數(shù)時(shí),以小數(shù)點(diǎn)為界,分別向左向右分成3位一組,不夠3位補(bǔ)0,分完組后對(duì)應(yīng)成八進(jìn)制數(shù)即可。二進(jìn)制數(shù)轉(zhuǎn)換成十六進(jìn)制數(shù)時(shí),以小數(shù)點(diǎn)為界,分別向左向右分成4位一組,不夠4位補(bǔ)0,分完組后對(duì)應(yīng)成十六進(jìn)制數(shù)即可。2.1.1計(jì)算機(jī)中的數(shù)制二進(jìn)制轉(zhuǎn)換成其他進(jìn)制2.1.1計(jì)算機(jī)中的數(shù)制二進(jìn)制轉(zhuǎn)換成其他進(jìn)制示例
(1011001.10111)2
=1×26+1×24+1×23+1×20+1×2-1+1×2-3+1×2-4+1×2-5=64+16+8+1+0.5+0.125+0.0625+0.03125+0.015625=(99.734375)10
(1011001.10111)2
=(001011001.101110)2=(131.56)8
(1011001.10111)2
=(01011001.10111000)2=(59.B8)162.1.1計(jì)算機(jī)中的數(shù)制二進(jìn)制轉(zhuǎn)換成其他進(jìn)制示例2.1.1計(jì)算機(jī)中的數(shù)制其他進(jìn)制轉(zhuǎn)換成二進(jìn)制十進(jìn)制數(shù)轉(zhuǎn)換成二進(jìn)制數(shù),先把十進(jìn)制數(shù)分解成若干個(gè)數(shù)相加,每個(gè)數(shù)都是2的若干次冪,然后對(duì)應(yīng)成二進(jìn)制數(shù)。八進(jìn)制數(shù)轉(zhuǎn)換成二進(jìn)制數(shù)時(shí),每一個(gè)八進(jìn)制位展開成3個(gè)二進(jìn)制位即可。十六進(jìn)制數(shù)轉(zhuǎn)換成二進(jìn)制數(shù)時(shí),每一個(gè)十六進(jìn)制位展開成4個(gè)二進(jìn)制位即可。2.1.1計(jì)算機(jī)中的數(shù)制其他進(jìn)制轉(zhuǎn)換成二進(jìn)制2.1.1數(shù)據(jù)表示其他進(jìn)制轉(zhuǎn)換成二進(jìn)制示例
(98.75)10
=64+32+2+0.5+0.25=(1100010.11)2
(276.15)8=(010111110.001101)2=(10111110.001101)2
(3AC.1E)16
=(001110101100.00011110)2=(1110101100.0001111)22.1.1數(shù)據(jù)表示其他進(jìn)制轉(zhuǎn)換成二進(jìn)制示例2.1.2數(shù)值型數(shù)據(jù)的表示無符號(hào)數(shù)據(jù)的表示按一定規(guī)則把無符號(hào)整數(shù)轉(zhuǎn)換成二進(jìn)制形式在計(jì)算機(jī)內(nèi)部表示和存儲(chǔ)。帶符號(hào)數(shù)據(jù)的表示帶符號(hào)數(shù)中的正負(fù)號(hào)及小數(shù)中的小數(shù)點(diǎn)都以二進(jìn)制形式表示。需要考慮的因素機(jī)器數(shù)的范圍。機(jī)器數(shù)的符號(hào)。機(jī)器數(shù)中小數(shù)點(diǎn)的位置。2.1.2數(shù)值型數(shù)據(jù)的表示無符號(hào)數(shù)據(jù)的表示2.1.2數(shù)值型數(shù)據(jù)的表示機(jī)器數(shù)的范圍機(jī)器數(shù)的表示范圍由CPU中的寄存器決定。對(duì)于無符號(hào)數(shù),8位寄存器的表示范圍是0~255,16位寄存器的表示范圍是0~65535。對(duì)于帶符號(hào)數(shù),8位寄存器的表示范圍是-128~+127,16位寄存器的表示范圍是-32768~+32767。2.1.2數(shù)值型數(shù)據(jù)的表示機(jī)器數(shù)的范圍2.1.2數(shù)值型數(shù)據(jù)的表示機(jī)器數(shù)的符號(hào)在計(jì)算機(jī)內(nèi)部,任何數(shù)據(jù)(符號(hào))都只能用二進(jìn)制的兩個(gè)數(shù)碼0和1來表示。帶符號(hào)數(shù)的表示,除了用0和1的組合來表示數(shù)值的絕對(duì)值大小外,其正負(fù)號(hào)也必須用0和1來表示。最高位為符號(hào)位,并用0表示正,用1表示負(fù)。有原碼/反碼/補(bǔ)碼等表示形式。2.1.2數(shù)值型數(shù)據(jù)的表示機(jī)器數(shù)的符號(hào)2.1.2數(shù)值型數(shù)據(jù)的表示機(jī)器數(shù)示例無符號(hào)十進(jìn)制數(shù)57的機(jī)器數(shù)表示。57的二進(jìn)制形式為111001。[+57]原=00111001(正數(shù)的原碼最高位為0,數(shù)值位補(bǔ)足7位)[-57]原=
10111001(負(fù)數(shù)的原碼最高位為1,數(shù)值位補(bǔ)足7位)
[+57]反=
00111001(正數(shù)的反碼與其原碼相同)
[-57]反=
11000110(負(fù)數(shù)的反碼,符號(hào)位不變,數(shù)值位為原碼數(shù)值位取反)[+57]補(bǔ)=00111001(正數(shù)的補(bǔ)碼與其原碼相同)[-57]補(bǔ)=11000111(負(fù)數(shù)的補(bǔ)碼在其反碼的末尾加1)2.1.2數(shù)值型數(shù)據(jù)的表示機(jī)器數(shù)示例2.1.2數(shù)值型數(shù)據(jù)的表示機(jī)器數(shù)中小數(shù)點(diǎn)的位置定點(diǎn)數(shù)(定點(diǎn)整數(shù)/定點(diǎn)小數(shù))浮點(diǎn)數(shù)0000000110000011h數(shù)值部分符號(hào)位小數(shù)點(diǎn)位置11010000000000
00
h數(shù)值部分符號(hào)位小數(shù)點(diǎn)位置2.1.2數(shù)值型數(shù)據(jù)的表示機(jī)器數(shù)中小數(shù)點(diǎn)的位置0000002.1.3字符型數(shù)據(jù)的編碼表示基本含義對(duì)于字符型數(shù)據(jù),沒有相應(yīng)的轉(zhuǎn)換規(guī)則可以使用。需要人們規(guī)定出每個(gè)字符對(duì)應(yīng)的二進(jìn)制編碼形式。常用的字符型數(shù)據(jù)編碼ASCII碼(美國標(biāo)準(zhǔn)信息交換碼的簡(jiǎn)稱)使用一個(gè)字節(jié)表示一個(gè)ASCII碼字符。主要用于小型機(jī)和微型機(jī)。EBCDIC碼(擴(kuò)展BCD碼)BCD碼又稱二—十進(jìn)制編碼,用二進(jìn)制編碼形式表示十進(jìn)制數(shù)。在BCD碼的基礎(chǔ)上,又增加了一些符號(hào)和英文字母的表示。主要用于超級(jí)計(jì)算機(jī)和大型計(jì)算機(jī)。2.1.3字符型數(shù)據(jù)的編碼表示基本含義BCD碼與ASCII碼BCD碼:是一種二-十進(jìn)制的編碼,使用四位二進(jìn)制數(shù)表示一位十進(jìn)制數(shù)。十進(jìn)制數(shù)與BCD碼之間的轉(zhuǎn)換:可按位(或四位二進(jìn)制數(shù)組)直接進(jìn)行。ASCII(AmericanStandardsCommitteeofIformation)碼:是由美國信息交換標(biāo)準(zhǔn)委員會(huì)制定的、國際上使用最廣泛的字符編碼方案。ASCII碼的編碼方案:采用7位二進(jìn)制數(shù)表示一個(gè)字符,把7位二進(jìn)制數(shù)分為高三位(b7b6b5)和低四位(b4b3b2b1)7位ASCII編碼表:如表2-5所示,利用該表可以查找數(shù)字、運(yùn)算符、標(biāo)點(diǎn)符號(hào)以及控制符等字符與ASCII碼之間的對(duì)應(yīng)關(guān)系。BCD碼與ASCII碼數(shù)據(jù)校驗(yàn)碼奇偶校驗(yàn)碼:在表示數(shù)據(jù)的N位代碼中增加一位奇偶校驗(yàn)位,使N+1位中“1”的個(gè)數(shù)為奇數(shù)(奇校驗(yàn))或偶數(shù)(偶校驗(yàn))。海明校驗(yàn)碼:在有效信息代碼中增加校驗(yàn)位,用來校驗(yàn)代碼中“1”的個(gè)數(shù)是奇數(shù)(奇校驗(yàn))還是偶數(shù)(偶校驗(yàn)),通過奇偶校驗(yàn)可以發(fā)現(xiàn)代碼傳輸過程中的錯(cuò)誤并自動(dòng)校正。應(yīng)用:用于計(jì)算機(jī)各部件之間信息傳輸以及計(jì)算機(jī)網(wǎng)絡(luò)的信息傳輸。數(shù)據(jù)校驗(yàn)碼2.1.4漢字的編碼表示與漢字處理有關(guān)的幾種編碼漢字輸入碼數(shù)字碼:國標(biāo)區(qū)位碼。拼音碼:全拼輸入法/紫光輸入法/智能ABC輸入法。字形碼:五筆字型編碼。漢字機(jī)內(nèi)碼(一個(gè)漢字占用2個(gè)字節(jié),最高位置1)。計(jì)算機(jī)內(nèi)部使用的漢字代碼。漢字交換碼:在不同信息處理系統(tǒng)之間進(jìn)行信息交換。國標(biāo)碼。BIG5碼。漢字字形碼(用于顯示和打?。?.1.4漢字的編碼表示與漢字處理有關(guān)的幾種編碼2.2邏輯代數(shù)基礎(chǔ)命題命題公式命題公式的等價(jià)律邏輯函數(shù)的化簡(jiǎn)
2.2邏輯代數(shù)基礎(chǔ)命題命題邏輯基礎(chǔ)命題:有具體意義且能夠判斷真假的陳述句。命題的真值:命題所具有的值“真”(true,簡(jiǎn)記為T)或“假”(false,簡(jiǎn)記為F)稱為其真值。命題標(biāo)識(shí)符:表示命題的符號(hào),該標(biāo)識(shí)符稱為命題常量。原子命題:不能分解為更為簡(jiǎn)單的陳述句的命題;復(fù)合命題:將原子命題用連接詞和標(biāo)點(diǎn)符號(hào)復(fù)合而成的命題。2.2邏輯代數(shù)基礎(chǔ)命題邏輯基礎(chǔ)2.2邏輯代數(shù)基礎(chǔ)連接詞“與”(∧)“與”(∧):兩個(gè)命題A和B的“與”(又稱為A和B的“合取”)是一個(gè)復(fù)合命題,記為A∧B。當(dāng)且僅當(dāng)A和B同時(shí)為真時(shí)A∧B為真,在其他的情況下A∧B的真值均為假。
A∧B的真值表:
A
B
A∧B
T
T
T
T
F
F
F
T
F
F
F
F2.2邏輯代數(shù)基礎(chǔ)連接詞“與”(∧)
A B連接詞“或”(∨)“或”(∨):兩個(gè)命題A和B的“或”(又稱為A和B的“析取”)是一個(gè)復(fù)合命題,記為A∨B。當(dāng)且僅當(dāng)A和B同時(shí)為假時(shí)A∨B為假,在其他的情況下A∨B的真值均為真。A∨B的真值表:
A
B
A∨B
T
T
T
T
F
T
F
T
T
F
F
F2.2邏輯代數(shù)基礎(chǔ)連接詞“或”(∨)A B連接詞“非”(┑)“非”(┑):命題A的“非”(又稱為A的“否定”)是一個(gè)復(fù)合命題,記為┑A(chǔ)。若A為真,則┑A(chǔ)為假;若A為假,則┑A(chǔ)為真。┑A(chǔ)的真值表:
A┑A(chǔ)TFFT2.2邏輯代數(shù)基礎(chǔ)連接詞“非”(┑)A┑A(chǔ)TFFT2.2邏輯代數(shù)基礎(chǔ)連接詞“異或”(⊕)“異或”(⊕):兩個(gè)命題的A和B的“異或”(又稱為A和B的“不可兼或”)是一個(gè)復(fù)合命題,記為A⊕B。當(dāng)且僅當(dāng)A和B同時(shí)為真或者同時(shí)為假時(shí)A⊕B為假,在其他的情況下A⊕B的真值為真。A⊕B的真值表:
A
B
A⊕B
T
T
F
T
F
T
F
T
T
F
F
F2.2邏輯代數(shù)基礎(chǔ)連接詞“異或”(⊕)A B連接詞“條件”(→)“條件”(→):兩個(gè)命題的A和B的“條件”是一個(gè)復(fù)合命題,記為
A→B,讀作“如果A,則B”。當(dāng)且僅當(dāng)A的真值為真,B的真值為假時(shí),A→B為假,在其他的情況下A→B的真值均為真。A→B的真值表:
A
B
A→B
T
T
T
T
F
F
F
T
T
F
F
T2.2邏輯代數(shù)基礎(chǔ)連接詞“條件”(→)A B連接詞“雙條件”()
“雙條件”():兩個(gè)命題的A和B的“雙條件”(又稱為A當(dāng)且僅當(dāng)B)是一個(gè)復(fù)合命題,記為AB,讀作“A當(dāng)且僅當(dāng)B”。當(dāng)且僅當(dāng)A的真值與B的真值相同時(shí),AB為真,否則AB的真值均為假。AB的真值表:
A
B
AB
T
T
T
T
F
F
F
T
T
F
F
T2.2邏輯代數(shù)基礎(chǔ)連接詞“雙條件”()
“雙條件”(命題公式命題公式:由命題變?cè)?、連接詞和括號(hào)組成的合式的式子稱為命題公式。命題公式等價(jià):如果兩個(gè)不同的命題公式P和Q,無論其命題變?cè)∈裁粗邓鼈兊恼嬷刀枷嗤?,則稱該兩個(gè)命題公式等價(jià),記為P=Q?!祭?-25〗證明┑(A→B)與A∧┑B是等價(jià)的。AB┑(A→B)A∧┑BTT
F
FT
FTT
FT
F
F
F
F
F
F2.2邏輯代數(shù)基礎(chǔ)命題公式AB┑(A→B)A∧┑BTTFFTFTT命題公式的等價(jià)律其中A、B、C等為命題變?cè)?,T表示“真”,F(xiàn)表示“假”零律:A∨F=A A∧F=F幺律:A∨T=T A∧T=A冪等律:A∨A=A A∧A=A求補(bǔ)律:A∨┓A=TA∧┓A=F交換律:A∨B=B∨AA∧B=B∧A2.2邏輯代數(shù)基礎(chǔ)命題公式的等價(jià)律2.2邏輯代數(shù)基礎(chǔ)命題公式的等價(jià)律(續(xù))結(jié)合律:A∨(B∨C)=(A∨B)∨C A∧(B∧C)=(A∧B)∧C分配律:A∧(B∨C)=A∧B∨A∧CA∨B∧C=(A∨B)∧(A∨C)吸收律:A∧B∨A∧┓B=A
(A∨B)∧(A∨┓B)=A 狄-摩根定律:┓(A∨B)=┓A∧┓B ┓(A∧B)=┓A∨┓B雙重否定律:┓┓A=A2.2邏輯代數(shù)基礎(chǔ)命題公式的等價(jià)律(續(xù))2.2邏輯代數(shù)基礎(chǔ)證明狄-摩根定律〖例2-26〗證明狄-摩根定律之一:┓(A∧B)=┓A∨┓B。AB
A∧B┓(A∧B)┓A┓B┓A∨┓BTTTFFFFTFFTFTTFTFTTFTFFFTTTT2.2邏輯代數(shù)基礎(chǔ)證明狄-摩根定律ABA∧B┓(A∧B)┓A┓B┓A∨┓BT邏輯代數(shù)的等價(jià)律零律:A+0=A A0=0幺律:A+1=1 A1=A冪等律:A+A=A AA=A求補(bǔ)律:A+ā=1 A?。?2.2邏輯代數(shù)基礎(chǔ)邏輯代數(shù)的等價(jià)律2.2邏輯代數(shù)基礎(chǔ)邏輯代數(shù)的等價(jià)律(續(xù))BBBB(A+B)
A
(AB)交換律:A+B=B+A AB=BA結(jié)合律:A+(B+C)=(A+B)+CA(BC)=(AB)C分配律:A(B+C)=AB+ACA+BC=(A+B)(A+C)吸收律:AB+A=A
(A+B)(A+)=A 狄-摩根定律:=ā
=?。p重否定律:
=A
A2.2邏輯代數(shù)基礎(chǔ)邏輯代數(shù)的等價(jià)律(續(xù))BBBB(A+B)A(AB)交換邏輯函數(shù)的化簡(jiǎn)〖例2-27〗試將邏輯函數(shù)F=A+āB化簡(jiǎn)。解:F=A+āB
=(A+?。?A+B) (分配律) =1(A+B) (求補(bǔ)律)=A+B (幺律)〖例2-28〗試將邏輯函數(shù)F=AB+A+āB+化簡(jiǎn)。解:F=AB+A+āB+=A(B+)+?。˙+) (分配律)=A+ā
(求補(bǔ)律)=1 (求補(bǔ)律)BBBB
(AB)
(AB)2.2邏輯代數(shù)基礎(chǔ)邏輯函數(shù)的化簡(jiǎn)〖例2-27〗試將邏輯函數(shù)F=A+āB化簡(jiǎn)。2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理
輔助存儲(chǔ)器內(nèi)存儲(chǔ)器運(yùn)算器控制器輸入設(shè)備輸出設(shè)備
程序原始數(shù)據(jù)運(yùn)算結(jié)果控制信息數(shù)據(jù)2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理輔助存儲(chǔ)器內(nèi)存儲(chǔ)器運(yùn)運(yùn)算器運(yùn)算器:對(duì)二進(jìn)制數(shù)進(jìn)行運(yùn)算的部件。它在控制器的控制下執(zhí)行程序中的指令,完成各種算術(shù)運(yùn)算、邏輯運(yùn)算、比較運(yùn)算、移位運(yùn)算以及字符運(yùn)算等。運(yùn)算器的組成:算術(shù)邏輯部件(ALU)完成加、減、乘、除等四則運(yùn)算以及與、或、非、移位等邏輯運(yùn)算;寄存器用來暫存參加運(yùn)算的操作數(shù)或中間結(jié)果,常用的寄存器有累加寄存器、暫存寄存器、標(biāo)志寄存器和通用寄存器等。運(yùn)算器的主要技術(shù)指標(biāo):運(yùn)算速度,其單位是MIPS(百萬指令/秒),通常是按照一定的頻度執(zhí)行各類指令的統(tǒng)計(jì)值。2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理
運(yùn)算器2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理存儲(chǔ)器存儲(chǔ)器:用來存儲(chǔ)數(shù)據(jù)和程序的部件。存儲(chǔ)單位:“位”(bit)、“字節(jié)”(byte)、“字”和“字長(zhǎng)”存儲(chǔ)容量:存儲(chǔ)器所包含的存儲(chǔ)單元的總數(shù),其單位為K
(1K=210=1024)。存儲(chǔ)器的分類:內(nèi)存儲(chǔ)器:又稱為主存儲(chǔ)器,簡(jiǎn)稱為內(nèi)存或主存,用來存放現(xiàn)行程序的指令和數(shù)據(jù)。包括隨機(jī)存取存儲(chǔ)器(RAM)和只讀存儲(chǔ)器(ROM)等。外存儲(chǔ)器:又稱為輔助存儲(chǔ)器,簡(jiǎn)稱為外存或輔存,用來存放需要長(zhǎng)期保存的信息。2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理
存儲(chǔ)器2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理控制器控制器:是指揮計(jì)算機(jī)的各個(gè)部件按照指令的功能要求協(xié)調(diào)工作的部件。控制器的組成:程序計(jì)數(shù)器(PC):用來對(duì)程序中的指令進(jìn)行計(jì)數(shù),使控制器能依次讀取指令;指令寄存器(IR):在指令執(zhí)行期間暫時(shí)保存正在執(zhí)行的指令。指令譯碼器(ID):用來識(shí)別指令的功能,分析指令的操作要求。時(shí)序控制電路:用來生成時(shí)序信號(hào),以協(xié)調(diào)在指令執(zhí)行周期內(nèi)各部件的工作。微操作控制電路:用來產(chǎn)生各種控制操作命令。2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理
控制器2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理輸入/輸出設(shè)備輸入/輸出設(shè)備:簡(jiǎn)稱為I/O設(shè)備,是外部與計(jì)算機(jī)交換信息的渠道。輸入設(shè)備:用于輸入程序、數(shù)據(jù)、操作命令、圖形、圖像以及聲音等信息。常用的輸入設(shè)備有鍵盤、鼠標(biāo)器、掃描儀、光筆、數(shù)字化儀以及語音輸入裝置等。輸出設(shè)備:用于顯示或打印程序、運(yùn)算結(jié)果、文字、圖形、圖像等,也可以播放聲音。常用的輸出設(shè)備有顯示器、打印機(jī)、XY繪圖儀以及聲音播放裝置等。2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理
輸入/輸出設(shè)備2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理計(jì)算機(jī)的指令系統(tǒng)指令:能被計(jì)算機(jī)識(shí)別并執(zhí)行的二進(jìn)制代碼,它規(guī)定了計(jì)算機(jī)能完成的某一種操作。指令系統(tǒng):一臺(tái)計(jì)算機(jī)能執(zhí)行的所有指令的集合。指令的格式:一條指令由操作碼和地址碼組成。操作碼規(guī)定了該指令進(jìn)行的操作種類;地址碼給出了操作數(shù)、結(jié)果以及下一條指令的地址。指令的分類:數(shù)據(jù)傳送型指令數(shù)據(jù)處理型指令輸入輸出型指令硬件控制指令2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理
計(jì)算機(jī)的指令系統(tǒng)2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理計(jì)算機(jī)的工作原理見教材52頁圖2-6指令的執(zhí)行過程2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理
計(jì)算機(jī)的工作原理2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理指令的執(zhí)行過程取指令:即按照指令計(jì)數(shù)器中的地址,從內(nèi)存儲(chǔ)器中取出指令,并送往指令寄存器中。分析指令:即對(duì)指令寄存器中存放的指令進(jìn)行分析,由操作碼確定執(zhí)行什么操作,由地址碼確定操作數(shù)的地址。執(zhí)行指令:即根據(jù)分析的結(jié)果,由控制器發(fā)出完成該操作所需要的一系列控制信息,去完成該指令所要求的操作。上述步驟完成后,指令計(jì)數(shù)器加1,為執(zhí)行下一條指令做好準(zhǔn)備。如果遇到轉(zhuǎn)移指令,則將轉(zhuǎn)移地址送入指令計(jì)數(shù)器。2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理
指令的執(zhí)行過程2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理計(jì)算機(jī)組織與系統(tǒng)結(jié)構(gòu)領(lǐng)域的一些主要技術(shù)1精簡(jiǎn)指令集技術(shù)在指令系統(tǒng)中僅包含(1)使用頻率高的指令;(2)支持操作系統(tǒng)和高級(jí)語言的程序設(shè)計(jì)的指令。精簡(jiǎn)指令計(jì)算機(jī)(reducedinstructionset
computer,RISC)復(fù)雜指令計(jì)算機(jī)(complexinstructionset
computer,CISC)2高速緩沖存儲(chǔ)技術(shù)(cache)為使慢速的RAM與快速的CPU相匹配,采用cache技術(shù)。方法:將CPU從RAM某一地址讀取數(shù)據(jù),自動(dòng)將該地址相近的整批數(shù)據(jù)讀入cache中。2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理
計(jì)算機(jī)組織與系統(tǒng)結(jié)構(gòu)領(lǐng)域的一些主要技術(shù)2.3計(jì)算機(jī)的基本結(jié)3虛擬存儲(chǔ)技術(shù)利用硬盤的支持以小的物理內(nèi)存模擬大的內(nèi)存,從而程序能夠使用整個(gè)內(nèi)存地址空間的技術(shù)。4指令流水線技術(shù)
CPU可以在完成一條指令之前將開始執(zhí)行另外一條指令,以加快計(jì)算機(jī)的處理速度。5并行處理技術(shù)把一個(gè)程序劃分為多個(gè)能夠并行地有單獨(dú)處理器執(zhí)行的進(jìn)程,多個(gè)處理機(jī)協(xié)同地并行工作,達(dá)到甚至超過了巨型機(jī)的高性能。
并行計(jì)算機(jī)系統(tǒng)有:
SISD(單指令流但數(shù)據(jù)流)、SIMD、MISD、MIMD2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理
3虛擬存儲(chǔ)技術(shù)2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理機(jī)器語言匯編語言高級(jí)語言結(jié)構(gòu)化程序設(shè)計(jì)語言面向?qū)ο蟪绦蛟O(shè)計(jì)語言可視化程序設(shè)計(jì)語言人工智能程序設(shè)計(jì)語言學(xué)習(xí)語言是設(shè)計(jì)程序的基礎(chǔ)2.4程序設(shè)計(jì)基礎(chǔ)機(jī)器語言學(xué)習(xí)語言是設(shè)計(jì)程序的基礎(chǔ)2.4程序設(shè)計(jì)基礎(chǔ)2.4.1機(jī)器語言機(jī)器語言的特點(diǎn)
由二進(jìn)制編碼指令構(gòu)成的語言。是一種依附于機(jī)器硬件的語言。機(jī)器語言程序可以直接執(zhí)行。機(jī)器語言程序片段0001010101101100//把地址為01101100的內(nèi)存單元中的數(shù)裝入0101號(hào)寄存器0001011001101101//把地址為01101101的內(nèi)存單元中的數(shù)裝入0110號(hào)寄存器0101000001010110//把01101100和01101101中的數(shù)相加,結(jié)果存入0000號(hào)寄存器0011000001101110//把0000號(hào)寄存器中的數(shù)存入地址為01101110的內(nèi)存單元中2.4.1機(jī)器語言機(jī)器語言的特點(diǎn)2.4.2匯編語言匯編語言的特點(diǎn)由助記符指令構(gòu)成的語言。也是一種依附于機(jī)器硬件的語言。匯編語言源程序需要匯編后才能執(zhí)行。匯編語言程序片段
MOVR5,X//把內(nèi)存單元X中的數(shù)裝入R5寄存器
ADDR5,Y//把R5中的數(shù)與Y單元中的數(shù)相加,結(jié)果存入R5
MOVZ,R5//把R5中的數(shù)存入Z單元中
2.4.2匯編語言匯編語言的特點(diǎn)2.4.3高級(jí)語言高級(jí)語言的特點(diǎn)
由自然語言和數(shù)學(xué)公式表示的語言。是一種獨(dú)立于機(jī)器硬件的語言。高級(jí)語言程序需要編譯后才能執(zhí)行。高級(jí)語言程序片段
Z=X+Y
//把內(nèi)存單元X中的數(shù)與Y中的數(shù)相加,結(jié)果存入Z單元
2.4.3高級(jí)語言高級(jí)語言的特點(diǎn)2.4.3高級(jí)語言常用高級(jí)語言
FORTRAN語言FORTRAN是FORmulaTRANslator(公式翻譯器)的縮寫。主要用于復(fù)雜的科學(xué)計(jì)算領(lǐng)域。ALGOL語言ALGOL是ALGOrithmLanguage(算法語言)的縮寫。主要用于數(shù)學(xué)與科學(xué)計(jì)算。2.4.3高級(jí)語言常用高級(jí)語言2.4.3高級(jí)語言常用高級(jí)語言
COBOL語言
COBOL是COmmonBusiness-OrientedLanguage(面向商業(yè)的通用語言)的縮寫。主要用于企業(yè)管理和事務(wù)處理。BASIC語言
BASIC是Beginner’sAll-purposeSymbolicInstructionCode(初學(xué)者通用符號(hào)指令碼)的縮寫。主要用于初學(xué)者和較小規(guī)模的程序開發(fā)。2.4.3高級(jí)語言常用高級(jí)語言2.4.4結(jié)構(gòu)化程序設(shè)計(jì)語言早期程序設(shè)計(jì)方法的不足注重功能的實(shí)現(xiàn)/注重內(nèi)存的節(jié)省/注重執(zhí)行效率的提高。不注重程序結(jié)構(gòu)的清晰性。不注重程序的可理解性和可修改性。結(jié)構(gòu)化程序設(shè)計(jì)語言的特點(diǎn)
注重程序結(jié)構(gòu)的清晰性。注重程序的可理解性和可修改性。采用模塊化程序設(shè)計(jì)方法。2.4.4結(jié)構(gòu)化程序設(shè)計(jì)語言早期程序設(shè)計(jì)方法的不足結(jié)構(gòu)化程序設(shè)計(jì)結(jié)構(gòu)化程序設(shè)計(jì):采用自頂向下逐步求精的設(shè)計(jì)方法和單入口單出口的控制成分(順序、分支和循環(huán))。TFTF條件AAB(a)順序結(jié)構(gòu)(b)選擇型分支結(jié)構(gòu)(c)循環(huán)結(jié)構(gòu)AB條件2.4.4結(jié)構(gòu)化程序設(shè)計(jì)語言結(jié)構(gòu)化程序設(shè)計(jì)TFTF條件AAB(a良好的程序設(shè)計(jì)風(fēng)格標(biāo)識(shí)符:按意命名、保留字用大寫字母、使用統(tǒng)一的縮寫規(guī)則。表達(dá)式:使用括號(hào)、使用庫函數(shù)、條件化簡(jiǎn)、函數(shù)與過程模塊化:模塊的獨(dú)立性(高內(nèi)聚、低耦合)、模塊的規(guī)模適中。程序行的排列格式:排列格式美觀、層次分明、使用統(tǒng)一的縮進(jìn)格式,同一嵌套深度并列的語句對(duì)齊。注釋:添加必要的注釋,以說明程序、過程和語句等的功能及注意事項(xiàng)。2.4.4結(jié)構(gòu)化程序設(shè)計(jì)語言良好的程序設(shè)計(jì)風(fēng)格2.4.4結(jié)構(gòu)化程序設(shè)計(jì)語言2.4.4結(jié)構(gòu)化程序設(shè)計(jì)語言常用結(jié)構(gòu)化程序設(shè)計(jì)語言
PASCAL語言
是在ALGOL語言的基礎(chǔ)上發(fā)展起來的。以法國著名科學(xué)家帕斯卡的名字命名。嚴(yán)格的語法格式與結(jié)構(gòu)化形式。C語言
是在ALGOL60語言的基礎(chǔ)上發(fā)展起來的。兼具低級(jí)語言和高級(jí)語言的特點(diǎn)。是最為流行的程序設(shè)計(jì)語言之一。2.4.4結(jié)構(gòu)化程序設(shè)計(jì)語言常用結(jié)構(gòu)化程序設(shè)計(jì)語言2.4.5面向?qū)ο蟪绦蛟O(shè)計(jì)語言結(jié)構(gòu)化程序設(shè)計(jì)方法的不足
面向過程的設(shè)計(jì)方法與人們習(xí)慣的思維方式仍然存在一定的距離,所以很難自然、準(zhǔn)確地反映真實(shí)世界,因而用編寫出來的程序,特別是規(guī)模比較大的程序,其質(zhì)量是難以保證的。強(qiáng)調(diào)了要實(shí)現(xiàn)功能的操作方法(模塊),而被操作的數(shù)據(jù)(變量)處于實(shí)現(xiàn)功能的從屬地位,即程序模塊和數(shù)據(jù)結(jié)構(gòu)是松散地耦合在一起,當(dāng)程序復(fù)雜度較高時(shí),容易出錯(cuò),而且錯(cuò)誤難以查找和修改。2.4.5面向?qū)ο蟪绦蛟O(shè)計(jì)語言結(jié)構(gòu)化程序設(shè)計(jì)方法的不足2.4.5面向?qū)ο蟪绦蛟O(shè)計(jì)語言面向?qū)ο蟪绦蛟O(shè)計(jì)語言的特點(diǎn)
將問題分解為對(duì)象。對(duì)象將自己的屬性和方法封裝成一個(gè)整體,供程序設(shè)計(jì)者使用。對(duì)象之間的相互作用則通過消息傳遞來實(shí)現(xiàn)。使人們對(duì)復(fù)雜系統(tǒng)的認(rèn)識(shí)過程與程序設(shè)計(jì)過程盡可能一致。2.4.5面向?qū)ο蟪绦蛟O(shè)計(jì)語言面向?qū)ο蟪绦蛟O(shè)計(jì)語言的特點(diǎn)2.4.5面向?qū)ο蟪绦蛟O(shè)計(jì)語言常用面向?qū)ο蟪绦蛟O(shè)計(jì)語言
Simula67
發(fā)布于1967年,是面向?qū)ο笳Z言的鼻祖。C++
發(fā)布于1983年,是在C語言的基礎(chǔ)上發(fā)展起來的。C++是得到廣泛應(yīng)用的一種面向?qū)ο笳Z言。目前常用的版本有VisualC++,C#,VisualC++.Net等。Java發(fā)布于1995年,適合于網(wǎng)絡(luò)程序設(shè)計(jì)。也是目前得到廣泛應(yīng)用的一種面向?qū)ο蟪绦蛟O(shè)計(jì)語言。2.4.5面向?qū)ο蟪绦蛟O(shè)計(jì)語言常用面向?qū)ο蟪绦蛟O(shè)計(jì)語言2.4.6可視化程序設(shè)計(jì)語言可視化程序設(shè)計(jì)語言的特點(diǎn)
以圖形化的編程方式將面向?qū)ο蠹夹g(shù)的特性體現(xiàn)出來。使開發(fā)軟件這一原本枯燥、難以理解的工作變得相對(duì)輕松快捷。常用可視化程序設(shè)計(jì)語言VisualC++功能強(qiáng)大,比較適合專業(yè)人員使用。VisualBasic易于學(xué)習(xí)和掌握,比較適合非專業(yè)人員和初學(xué)者使用。2.4.6可視化程序設(shè)計(jì)語言可視化程序設(shè)計(jì)語言的特點(diǎn)2.4.7人工智能程序設(shè)計(jì)語言人工智能程序設(shè)計(jì)語言的特點(diǎn)
適合于知識(shí)表示和邏輯推理。
常用人工智能程序設(shè)計(jì)語言LISP
LISP是LIStProcessing(表處理)的縮寫??梢越鉀Q人工智能中的符號(hào)處理問題。
PROLOG
是PROgramminginLOGic(邏輯程序設(shè)計(jì))的縮寫。自動(dòng)實(shí)現(xiàn)模式匹配、自動(dòng)回溯這兩種人工智能中常用的基本操作。2.4.7人工智能程序設(shè)計(jì)語言人工智能程序設(shè)計(jì)語言的特點(diǎn)良好的程序設(shè)計(jì)風(fēng)格標(biāo)識(shí)符:按意命名、保留字用大寫字母、使用統(tǒng)一的縮寫規(guī)則。表達(dá)式:使用括號(hào)、使用庫函數(shù)、條件化簡(jiǎn)、函數(shù)與過程模塊化:模塊的獨(dú)立性(高內(nèi)聚、低耦合)、模塊的規(guī)模適中。程序行的排列格式:排列格式美觀、層次分明、使用統(tǒng)一的縮進(jìn)格式,同一嵌套深度并列的語句對(duì)齊。注釋:添加必要的注釋,以說明程序、過程和語句等的功能及注意事項(xiàng)。2.4程序設(shè)計(jì)基礎(chǔ)良好的程序設(shè)計(jì)風(fēng)格2.4程序設(shè)計(jì)基礎(chǔ)算法算法:是由一系列規(guī)則組成的過程,這些規(guī)則確定了一個(gè)操作的順序,以便能在有限步驟內(nèi)得到特定問題的解。算法的性質(zhì):確定性通用性有限性算法的描述工具:自然語言流程圖決策表算法描述語言2.5算法基礎(chǔ)算法2.5算法基礎(chǔ)歐幾里德算法(Euclid’sAlgorithm)例2-32〗若給定兩個(gè)正整數(shù)m和n,試寫出求它們的最大公因子的算法。 該算法的步驟用文字表述如下: 第1步:讀入兩個(gè)正整數(shù)m和n(設(shè)m>n)。 第2步:求m和n的余數(shù)r=mod(m,n)。 第3步:用n的值取代m,用r的值取代n。 第4步:判別r的值是否為零,如果r=0,則m為最大公因子;否則返回第2步。 第5步:輸出m的值,即為最大公因子。2.5算法基礎(chǔ)歐幾里德算法(Euclid’sAlgorithm)2.52.5算法基礎(chǔ)歐幾里德算法(算法描述語言表示)PROCEDUREEuclid;
BEGINREAD(m,n);REPEAT;r:=MOD(m,n);m:=n;n:=r;UNTILr=0; WRITE(m)
END2.5算法基礎(chǔ)歐幾里德算法(算法描述語言表示)歐幾里德算法(流程圖表示)
m=n
BEGIN
READm,n
r=mod(m,n)n=rWRITEmr≠0ENDYN2.5算法基礎(chǔ)歐幾里德算法(流程圖表示)m=nBEGIN線性表線性表:是n個(gè)數(shù)據(jù)元素的有限序列。線性表的運(yùn)算:設(shè)L為一個(gè)線性表置空表SETNULL(L)求表的長(zhǎng)度LENGTH(L)取表元素GET(L,i)在表中查找特定元素LOCATE(L,x)插入新元素INSERT(L,i,b)刪除表元素DELETE(L,i)線性表的存儲(chǔ)結(jié)構(gòu):順序存儲(chǔ)結(jié)構(gòu)鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)2.6數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)線性表2.6數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)堆棧堆棧(stack):是一種受限的線性表,即只能在表的一端(表尾)進(jìn)行插入和刪除操作。進(jìn)棧和退棧操作按“后進(jìn)先出”(LastInFirstOut,LIFO)的原則進(jìn)行。堆棧的運(yùn)算:設(shè)S為一個(gè)堆棧置空棧SETNULL(S)進(jìn)棧PUSH(S,x)退棧POP(S)取棧頂元素TOP(S)判斷堆棧是否為空EMPTY(S)堆棧的存儲(chǔ)結(jié)構(gòu):順序存儲(chǔ)結(jié)構(gòu)2.6數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)堆棧2.6數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)3.7本章小結(jié)隊(duì)列隊(duì)列(queue):也是一種受限的線性表,只能在表的一端(隊(duì)尾)進(jìn)行插入,在表的另一端(隊(duì)首)進(jìn)行刪除操作。進(jìn)、出隊(duì)列操作按“先進(jìn)先出”(FirstInFirstOut,F(xiàn)IFO)的原則進(jìn)行。隊(duì)列的運(yùn)算:設(shè)Q為一個(gè)隊(duì)列置空隊(duì)列SETNULL(Q)進(jìn)入隊(duì)列ADDQUEUE(Q,x)退出隊(duì)列DELQUEUE(Q)取隊(duì)首元素FRONTQUE(Q)判斷隊(duì)列是否為空EMPTY(Q)隊(duì)列的存儲(chǔ)結(jié)構(gòu):鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu),一個(gè)鏈隊(duì)列需要設(shè)置隊(duì)首指針和隊(duì)尾指針。3.7本章小結(jié)隊(duì)列本章小結(jié)本章介紹了計(jì)算機(jī)的一些基本知識(shí),包括:數(shù)制與碼制、數(shù)的定點(diǎn)與浮點(diǎn)表示、信息的編碼;邏輯代數(shù)與邏輯電路基礎(chǔ);計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理;程序設(shè)計(jì)語言、結(jié)構(gòu)化程序設(shè)計(jì)、程序設(shè)計(jì)風(fēng)格;以及算法與數(shù)據(jù)結(jié)構(gòu)的基礎(chǔ)知識(shí)。通過本章的學(xué)習(xí),應(yīng)掌握數(shù)據(jù)在計(jì)算機(jī)內(nèi)部的表示形式及數(shù)制間的轉(zhuǎn)換方法,理解邏輯代數(shù)、邏輯電路、計(jì)算機(jī)的結(jié)構(gòu)、程序設(shè)計(jì)語言、結(jié)構(gòu)化程序設(shè)計(jì)方法以及算法與數(shù)據(jù)結(jié)構(gòu)的基本知識(shí),為進(jìn)一步學(xué)習(xí)本書的以下各章和后繼課程打好基礎(chǔ)。本章小結(jié)第2章計(jì)算機(jī)基礎(chǔ)知識(shí)
2.1計(jì)算機(jī)的運(yùn)算基礎(chǔ)2.2命題邏輯與邏輯代數(shù)基礎(chǔ)2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理2.4程序設(shè)計(jì)基礎(chǔ)2.5算法基礎(chǔ)2.6數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)2.7本章小結(jié)第2章計(jì)算機(jī)基礎(chǔ)知識(shí)2.1計(jì)算機(jī)的運(yùn)算基礎(chǔ)基本要求:掌握數(shù)制間的轉(zhuǎn)換方法以及數(shù)據(jù)在計(jì)算機(jī)內(nèi)部的表示形式理解邏輯代數(shù)、計(jì)算機(jī)的工作原理、程序設(shè)計(jì)以及算法與數(shù)據(jù)結(jié)構(gòu)的基本知識(shí),為學(xué)習(xí)本書的以下各章和后續(xù)課程打好基礎(chǔ)基本要求:計(jì)算機(jī)中的數(shù)制數(shù)值型數(shù)據(jù)的表示字符型數(shù)據(jù)的編碼表示漢字的編碼表示2.1計(jì)算機(jī)的運(yùn)算基礎(chǔ)計(jì)算機(jī)中的數(shù)制2.1計(jì)算機(jī)的運(yùn)算基礎(chǔ)2.1.1計(jì)算機(jī)中的數(shù)制不同數(shù)制的表示在計(jì)算機(jī)內(nèi)部用二進(jìn)制形式表示和存儲(chǔ)數(shù)據(jù)。
人們習(xí)慣于用十進(jìn)制記數(shù)。為了書寫簡(jiǎn)單方便也使用八進(jìn)制和十六進(jìn)制。用加后綴或角標(biāo)的形式區(qū)別不同進(jìn)制數(shù)據(jù)。B—表示二進(jìn)制數(shù)。O或Q—表示八進(jìn)制數(shù)。D—表示十進(jìn)制數(shù)(D可省略)。H—表示十六進(jìn)制數(shù)。2.1.1計(jì)算機(jī)中的數(shù)制不同數(shù)制的表示2.1.1計(jì)算機(jī)中的數(shù)制二進(jìn)制轉(zhuǎn)換成其他進(jìn)制二進(jìn)制數(shù)轉(zhuǎn)換成十進(jìn)制數(shù),按權(quán)展開相加即可。二進(jìn)制數(shù)轉(zhuǎn)換成八進(jìn)制數(shù)時(shí),以小數(shù)點(diǎn)為界,分別向左向右分成3位一組,不夠3位補(bǔ)0,分完組后對(duì)應(yīng)成八進(jìn)制數(shù)即可。二進(jìn)制數(shù)轉(zhuǎn)換成十六進(jìn)制數(shù)時(shí),以小數(shù)點(diǎn)為界,分別向左向右分成4位一組,不夠4位補(bǔ)0,分完組后對(duì)應(yīng)成十六進(jìn)制數(shù)即可。2.1.1計(jì)算機(jī)中的數(shù)制二進(jìn)制轉(zhuǎn)換成其他進(jìn)制2.1.1計(jì)算機(jī)中的數(shù)制二進(jìn)制轉(zhuǎn)換成其他進(jìn)制示例
(1011001.10111)2
=1×26+1×24+1×23+1×20+1×2-1+1×2-3+1×2-4+1×2-5=64+16+8+1+0.5+0.125+0.0625+0.03125+0.015625=(99.734375)10
(1011001.10111)2
=(001011001.101110)2=(131.56)8
(1011001.10111)2
=(01011001.10111000)2=(59.B8)162.1.1計(jì)算機(jī)中的數(shù)制二進(jìn)制轉(zhuǎn)換成其他進(jìn)制示例2.1.1計(jì)算機(jī)中的數(shù)制其他進(jìn)制轉(zhuǎn)換成二進(jìn)制十進(jìn)制數(shù)轉(zhuǎn)換成二進(jìn)制數(shù),先把十進(jìn)制數(shù)分解成若干個(gè)數(shù)相加,每個(gè)數(shù)都是2的若干次冪,然后對(duì)應(yīng)成二進(jìn)制數(shù)。八進(jìn)制數(shù)轉(zhuǎn)換成二進(jìn)制數(shù)時(shí),每一個(gè)八進(jìn)制位展開成3個(gè)二進(jìn)制位即可。十六進(jìn)制數(shù)轉(zhuǎn)換成二進(jìn)制數(shù)時(shí),每一個(gè)十六進(jìn)制位展開成4個(gè)二進(jìn)制位即可。2.1.1計(jì)算機(jī)中的數(shù)制其他進(jìn)制轉(zhuǎn)換成二進(jìn)制2.1.1數(shù)據(jù)表示其他進(jìn)制轉(zhuǎn)換成二進(jìn)制示例
(98.75)10
=64+32+2+0.5+0.25=(1100010.11)2
(276.15)8=(010111110.001101)2=(10111110.001101)2
(3AC.1E)16
=(001110101100.00011110)2=(1110101100.0001111)22.1.1數(shù)據(jù)表示其他進(jìn)制轉(zhuǎn)換成二進(jìn)制示例2.1.2數(shù)值型數(shù)據(jù)的表示無符號(hào)數(shù)據(jù)的表示按一定規(guī)則把無符號(hào)整數(shù)轉(zhuǎn)換成二進(jìn)制形式在計(jì)算機(jī)內(nèi)部表示和存儲(chǔ)。帶符號(hào)數(shù)據(jù)的表示帶符號(hào)數(shù)中的正負(fù)號(hào)及小數(shù)中的小數(shù)點(diǎn)都以二進(jìn)制形式表示。需要考慮的因素機(jī)器數(shù)的范圍。機(jī)器數(shù)的符號(hào)。機(jī)器數(shù)中小數(shù)點(diǎn)的位置。2.1.2數(shù)值型數(shù)據(jù)的表示無符號(hào)數(shù)據(jù)的表示2.1.2數(shù)值型數(shù)據(jù)的表示機(jī)器數(shù)的范圍機(jī)器數(shù)的表示范圍由CPU中的寄存器決定。對(duì)于無符號(hào)數(shù),8位寄存器的表示范圍是0~255,16位寄存器的表示范圍是0~65535。對(duì)于帶符號(hào)數(shù),8位寄存器的表示范圍是-128~+127,16位寄存器的表示范圍是-32768~+32767。2.1.2數(shù)值型數(shù)據(jù)的表示機(jī)器數(shù)的范圍2.1.2數(shù)值型數(shù)據(jù)的表示機(jī)器數(shù)的符號(hào)在計(jì)算機(jī)內(nèi)部,任何數(shù)據(jù)(符號(hào))都只能用二進(jìn)制的兩個(gè)數(shù)碼0和1來表示。帶符號(hào)數(shù)的表示,除了用0和1的組合來表示數(shù)值的絕對(duì)值大小外,其正負(fù)號(hào)也必須用0和1來表示。最高位為符號(hào)位,并用0表示正,用1表示負(fù)。有原碼/反碼/補(bǔ)碼等表示形式。2.1.2數(shù)值型數(shù)據(jù)的表示機(jī)器數(shù)的符號(hào)2.1.2數(shù)值型數(shù)據(jù)的表示機(jī)器數(shù)示例無符號(hào)十進(jìn)制數(shù)57的機(jī)器數(shù)表示。57的二進(jìn)制形式為111001。[+57]原=00111001(正數(shù)的原碼最高位為0,數(shù)值位補(bǔ)足7位)[-57]原=
10111001(負(fù)數(shù)的原碼最高位為1,數(shù)值位補(bǔ)足7位)
[+57]反=
00111001(正數(shù)的反碼與其原碼相同)
[-57]反=
11000110(負(fù)數(shù)的反碼,符號(hào)位不變,數(shù)值位為原碼數(shù)值位取反)[+57]補(bǔ)=00111001(正數(shù)的補(bǔ)碼與其原碼相同)[-57]補(bǔ)=11000111(負(fù)數(shù)的補(bǔ)碼在其反碼的末尾加1)2.1.2數(shù)值型數(shù)據(jù)的表示機(jī)器數(shù)示例2.1.2數(shù)值型數(shù)據(jù)的表示機(jī)器數(shù)中小數(shù)點(diǎn)的位置定點(diǎn)數(shù)(定點(diǎn)整數(shù)/定點(diǎn)小數(shù))浮點(diǎn)數(shù)0000000110000011h數(shù)值部分符號(hào)位小數(shù)點(diǎn)位置11010000000000
00
h數(shù)值部分符號(hào)位小數(shù)點(diǎn)位置2.1.2數(shù)值型數(shù)據(jù)的表示機(jī)器數(shù)中小數(shù)點(diǎn)的位置0000002.1.3字符型數(shù)據(jù)的編碼表示基本含義對(duì)于字符型數(shù)據(jù),沒有相應(yīng)的轉(zhuǎn)換規(guī)則可以使用。需要人們規(guī)定出每個(gè)字符對(duì)應(yīng)的二進(jìn)制編碼形式。常用的字符型數(shù)據(jù)編碼ASCII碼(美國標(biāo)準(zhǔn)信息交換碼的簡(jiǎn)稱)使用一個(gè)字節(jié)表示一個(gè)ASCII碼字符。主要用于小型機(jī)和微型機(jī)。EBCDIC碼(擴(kuò)展BCD碼)BCD碼又稱二—十進(jìn)制編碼,用二進(jìn)制編碼形式表示十進(jìn)制數(shù)。在BCD碼的基礎(chǔ)上,又增加了一些符號(hào)和英文字母的表示。主要用于超級(jí)計(jì)算機(jī)和大型計(jì)算機(jī)。2.1.3字符型數(shù)據(jù)的編碼表示基本含義BCD碼與ASCII碼BCD碼:是一種二-十進(jìn)制的編碼,使用四位二進(jìn)制數(shù)表示一位十進(jìn)制數(shù)。十進(jìn)制數(shù)與BCD碼之間的轉(zhuǎn)換:可按位(或四位二進(jìn)制數(shù)組)直接進(jìn)行。ASCII(AmericanStandardsCommitteeofIformation)碼:是由美國信息交換標(biāo)準(zhǔn)委員會(huì)制定的、國際上使用最廣泛的字符編碼方案。ASCII碼的編碼方案:采用7位二進(jìn)制數(shù)表示一個(gè)字符,把7位二進(jìn)制數(shù)分為高三位(b7b6b5)和低四位(b4b3b2b1)7位ASCII編碼表:如表2-5所示,利用該表可以查找數(shù)字、運(yùn)算符、標(biāo)點(diǎn)符號(hào)以及控制符等字符與ASCII碼之間的對(duì)應(yīng)關(guān)系。BCD碼與ASCII碼數(shù)據(jù)校驗(yàn)碼奇偶校驗(yàn)碼:在表示數(shù)據(jù)的N位代碼中增加一位奇偶校驗(yàn)位,使N+1位中“1”的個(gè)數(shù)為奇數(shù)(奇校驗(yàn))或偶數(shù)(偶校驗(yàn))。海明校驗(yàn)碼:在有效信息代碼中增加校驗(yàn)位,用來校驗(yàn)代碼中“1”的個(gè)數(shù)是奇數(shù)(奇校驗(yàn))還是偶數(shù)(偶校驗(yàn)),通過奇偶校驗(yàn)可以發(fā)現(xiàn)代碼傳輸過程中的錯(cuò)誤并自動(dòng)校正。應(yīng)用:用于計(jì)算機(jī)各部件之間信息傳輸以及計(jì)算機(jī)網(wǎng)絡(luò)的信息傳輸。數(shù)據(jù)校驗(yàn)碼2.1.4漢字的編碼表示與漢字處理有關(guān)的幾種編碼漢字輸入碼數(shù)字碼:國標(biāo)區(qū)位碼。拼音碼:全拼輸入法/紫光輸入法/智能ABC輸入法。字形碼:五筆字型編碼。漢字機(jī)內(nèi)碼(一個(gè)漢字占用2個(gè)字節(jié),最高位置1)。計(jì)算機(jī)內(nèi)部使用的漢字代碼。漢字交換碼:在不同信息處理系統(tǒng)之間進(jìn)行信息交換。國標(biāo)碼。BIG5碼。漢字字形碼(用于顯示和打?。?.1.4漢字的編碼表示與漢字處理有關(guān)的幾種編碼2.2邏輯代數(shù)基礎(chǔ)命題命題公式命題公式的等價(jià)律邏輯函數(shù)的化簡(jiǎn)
2.2邏輯代數(shù)基礎(chǔ)命題命題邏輯基礎(chǔ)命題:有具體意義且能夠判斷真假的陳述句。命題的真值:命題所具有的值“真”(true,簡(jiǎn)記為T)或“假”(false,簡(jiǎn)記為F)稱為其真值。命題標(biāo)識(shí)符:表示命題的符號(hào),該標(biāo)識(shí)符稱為命題常量。原子命題:不能分解為更為簡(jiǎn)單的陳述句的命題;復(fù)合命題:將原子命題用連接詞和標(biāo)點(diǎn)符號(hào)復(fù)合而成的命題。2.2邏輯代數(shù)基礎(chǔ)命題邏輯基礎(chǔ)2.2邏輯代數(shù)基礎(chǔ)連接詞“與”(∧)“與”(∧):兩個(gè)命題A和B的“與”(又稱為A和B的“合取”)是一個(gè)復(fù)合命題,記為A∧B。當(dāng)且僅當(dāng)A和B同時(shí)為真時(shí)A∧B為真,在其他的情況下A∧B的真值均為假。
A∧B的真值表:
A
B
A∧B
T
T
T
T
F
F
F
T
F
F
F
F2.2邏輯代數(shù)基礎(chǔ)連接詞“與”(∧)
A B連接詞“或”(∨)“或”(∨):兩個(gè)命題A和B的“或”(又稱為A和B的“析取”)是一個(gè)復(fù)合命題,記為A∨B。當(dāng)且僅當(dāng)A和B同時(shí)為假時(shí)A∨B為假,在其他的情況下A∨B的真值均為真。A∨B的真值表:
A
B
A∨B
T
T
T
T
F
T
F
T
T
F
F
F2.2邏輯代數(shù)基礎(chǔ)連接詞“或”(∨)A B連接詞“非”(┑)“非”(┑):命題A的“非”(又稱為A的“否定”)是一個(gè)復(fù)合命題,記為┑A(chǔ)。若A為真,則┑A(chǔ)為假;若A為假,則┑A(chǔ)為真。┑A(chǔ)的真值表:
A┑A(chǔ)TFFT2.2邏輯代數(shù)基礎(chǔ)連接詞“非”(┑)A┑A(chǔ)TFFT2.2邏輯代數(shù)基礎(chǔ)連接詞“異或”(⊕)“異或”(⊕):兩個(gè)命題的A和B的“異或”(又稱為A和B的“不可兼或”)是一個(gè)復(fù)合命題,記為A⊕B。當(dāng)且僅當(dāng)A和B同時(shí)為真或者同時(shí)為假時(shí)A⊕B為假,在其他的情況下A⊕B的真值為真。A⊕B的真值表:
A
B
A⊕B
T
T
F
T
F
T
F
T
T
F
F
F2.2邏輯代數(shù)基礎(chǔ)連接詞“異或”(⊕)A B連接詞“條件”(→)“條件”(→):兩個(gè)命題的A和B的“條件”是一個(gè)復(fù)合命題,記為
A→B,讀作“如果A,則B”。當(dāng)且僅當(dāng)A的真值為真,B的真值為假時(shí),A→B為假,在其他的情況下A→B的真值均為真。A→B的真值表:
A
B
A→B
T
T
T
T
F
F
F
T
T
F
F
T2.2邏輯代數(shù)基礎(chǔ)連接詞“條件”(→)A B連接詞“雙條件”()
“雙條件”():兩個(gè)命題的A和B的“雙條件”(又稱為A當(dāng)且僅當(dāng)B)是一個(gè)復(fù)合命題,記為AB,讀作“A當(dāng)且僅當(dāng)B”。當(dāng)且僅當(dāng)A的真值與B的真值相同時(shí),AB為真,否則AB的真值均為假。AB的真值表:
A
B
AB
T
T
T
T
F
F
F
T
T
F
F
T2.2邏輯代數(shù)基礎(chǔ)連接詞“雙條件”()
“雙條件”(命題公式命題公式:由命題變?cè)⑦B接詞和括號(hào)組成的合式的式子稱為命題公式。命題公式等價(jià):如果兩個(gè)不同的命題公式P和Q,無論其命題變?cè)∈裁粗邓鼈兊恼嬷刀枷嗤?,則稱該兩個(gè)命題公式等價(jià),記為P=Q?!祭?-25〗證明┑(A→B)與A∧┑B是等價(jià)的。AB┑(A→B)A∧┑BTT
F
FT
FTT
FT
F
F
F
F
F
F2.2邏輯代數(shù)基礎(chǔ)命題公式AB┑(A→B)A∧┑BTTFFTFTT命題公式的等價(jià)律其中A、B、C等為命題變?cè)?,T表示“真”,F(xiàn)表示“假”零律:A∨F=A A∧F=F幺律:A∨T=T A∧T=A冪等律:A∨A=A A∧A=A求補(bǔ)律:A∨┓A=TA∧┓A=F交換律:A∨B=B∨AA∧B=B∧A2.2邏輯代數(shù)基礎(chǔ)命題公式的等價(jià)律2.2邏輯代數(shù)基礎(chǔ)命題公式的等價(jià)律(續(xù))結(jié)合律:A∨(B∨C)=(A∨B)∨C A∧(B∧C)=(A∧B)∧C分配律:A∧(B∨C)=A∧B∨A∧CA∨B∧C=(A∨B)∧(A∨C)吸收律:A∧B∨A∧┓B=A
(A∨B)∧(A∨┓B)=A 狄-摩根定律:┓(A∨B)=┓A∧┓B ┓(A∧B)=┓A∨┓B雙重否定律:┓┓A=A2.2邏輯代數(shù)基礎(chǔ)命題公式的等價(jià)律(續(xù))2.2邏輯代數(shù)基礎(chǔ)證明狄-摩根定律〖例2-26〗證明狄-摩根定律之一:┓(A∧B)=┓A∨┓B。AB
A∧B┓(A∧B)┓A┓B┓A∨┓BTTTFFFFTFFTFTTFTFTTFTFFFTTTT2.2邏輯代數(shù)基礎(chǔ)證明狄-摩根定律ABA∧B┓(A∧B)┓A┓B┓A∨┓BT邏輯代數(shù)的等價(jià)律零律:A+0=A A0=0幺律:A+1=1 A1=A冪等律:A+A=A AA=A求補(bǔ)律:A+?。? A?。?2.2邏輯代數(shù)基礎(chǔ)邏輯代數(shù)的等價(jià)律2.2邏輯代數(shù)基礎(chǔ)邏輯代數(shù)的等價(jià)律(續(xù))BBBB(A+B)
A
(AB)交換律:A+B=B+A AB=BA結(jié)合律:A+(B+C)=(A+B)+CA(BC)=(AB)C分配律:A(B+C)=AB+ACA+BC=(A+B)(A+C)吸收律:AB+A=A
(A+B)(A+)=A 狄-摩根定律:=ā
=?。p重否定律:
=A
A2.2邏輯代數(shù)基礎(chǔ)邏輯代數(shù)的等價(jià)律(續(xù))BBBB(A+B)A(AB)交換邏輯函數(shù)的化簡(jiǎn)〖例2-27〗試將邏輯函數(shù)F=A+āB化簡(jiǎn)。解:F=A+āB
=(A+?。?A+B) (分配律) =1(A+B) (求補(bǔ)律)=A+B (幺律)〖例2-28〗試將邏輯函數(shù)F=AB+A+āB+化簡(jiǎn)。解:F=AB+A+āB+=A(B+)+ā(B+) (分配律)=A+ā
(求補(bǔ)律)=1 (求補(bǔ)律)BBBB
(AB)
(AB)2.2邏輯代數(shù)基礎(chǔ)邏輯函數(shù)的化簡(jiǎn)〖例2-27〗試將邏輯函數(shù)F=A+āB化簡(jiǎn)。2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理
輔助存儲(chǔ)器內(nèi)存儲(chǔ)器運(yùn)算器控制器輸入設(shè)備輸出設(shè)備
程序原始數(shù)據(jù)運(yùn)算結(jié)果控制信息數(shù)據(jù)2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理輔助存儲(chǔ)器內(nèi)存儲(chǔ)器運(yùn)運(yùn)算器運(yùn)算器:對(duì)二進(jìn)制數(shù)進(jìn)行運(yùn)算的部件。它在控制器的控制下執(zhí)行程序中的指令,完成各種算術(shù)運(yùn)算、邏輯運(yùn)算、比較運(yùn)算、移位運(yùn)算以及字符運(yùn)算等。運(yùn)算器的組成:算術(shù)邏輯部件(ALU)完成加、減、乘、除等四則運(yùn)算以及與、或、非、移位等邏輯運(yùn)算;寄存器用來暫存參加運(yùn)算的操作數(shù)或中間結(jié)果,常用的寄存器有累加寄存器、暫存寄存器、標(biāo)志寄存器和通用寄存器等。運(yùn)算器的主要技術(shù)指標(biāo):運(yùn)算速度,其單位是MIPS(百萬指令/秒),通常是按照一定的頻度執(zhí)行各類指令的統(tǒng)計(jì)值。2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理
運(yùn)算器2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理存儲(chǔ)器存儲(chǔ)器:用來存儲(chǔ)數(shù)據(jù)和程序的部件。存儲(chǔ)單位:“位”(bit)、“字節(jié)”(byte)、“字”和“字長(zhǎng)”存儲(chǔ)容量:存儲(chǔ)器所包含的存儲(chǔ)單元的總數(shù),其單位為K
(1K=210=1024)。存儲(chǔ)器的分類:內(nèi)存儲(chǔ)器:又稱為主存儲(chǔ)器,簡(jiǎn)稱為內(nèi)存或主存,用來存放現(xiàn)行程序的指令和數(shù)據(jù)。包括隨機(jī)存取存儲(chǔ)器(RAM)和只讀存儲(chǔ)器(ROM)等。外存儲(chǔ)器:又稱為輔助存儲(chǔ)器,簡(jiǎn)稱為外存或輔存,用來存放需要長(zhǎng)期保存的信息。2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理
存儲(chǔ)器2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理控制器控制器:是指揮計(jì)算機(jī)的各個(gè)部件按照指令的功能要求協(xié)調(diào)工作的部件。控制器的組成:程序計(jì)數(shù)器(PC):用來對(duì)程序中的指令進(jìn)行計(jì)數(shù),使控制器能依次讀取指令;指令寄存器(IR):在指令執(zhí)行期間暫時(shí)保存正在執(zhí)行的指令。指令譯碼器(ID):用來識(shí)別指令的功能,分析指令的操作要求。時(shí)序控制電路:用來生成時(shí)序信號(hào),以協(xié)調(diào)在指令執(zhí)行周期內(nèi)各部件的工作。微操作控制電路:用來產(chǎn)生各種控制操作命令。2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理
控制器2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理輸入/輸出設(shè)備輸入/輸出設(shè)備:簡(jiǎn)稱為I/O設(shè)備,是外部與計(jì)算機(jī)交換信息的渠道。輸入設(shè)備:用于輸入程序、數(shù)據(jù)、操作命令、圖形、圖像以及聲音等信息。常用的輸入設(shè)備有鍵盤、鼠標(biāo)器、掃描儀、光筆、數(shù)字化儀以及語音輸入裝置等。輸出設(shè)備:用于顯示或打印程序、運(yùn)算結(jié)果、文字、圖形、圖像等,也可以播放聲音。常用的輸出設(shè)備有顯示器、打印機(jī)、XY繪圖儀以及聲音播放裝置等。2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理
輸入/輸出設(shè)備2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理計(jì)算機(jī)的指令系統(tǒng)指令:能被計(jì)算機(jī)識(shí)別并執(zhí)行的二進(jìn)制代碼,它規(guī)定了計(jì)算機(jī)能完成的某一種操作。指令系統(tǒng):一臺(tái)計(jì)算機(jī)能執(zhí)行的所有指令的集合。指令的格式:一條指令由操作碼和地址碼組成。操作碼規(guī)定了該指令進(jìn)行的操作種類;地址碼給出了操作數(shù)、結(jié)果以及下一條指令的地址。指令的分類:數(shù)據(jù)傳送型指令數(shù)據(jù)處理型指令輸入輸出型指令硬件控制指令2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理
計(jì)算機(jī)的指令系統(tǒng)2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理計(jì)算機(jī)的工作原理見教材52頁圖2-6指令的執(zhí)行過程2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理
計(jì)算機(jī)的工作原理2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理指令的執(zhí)行過程取指令:即按照指令計(jì)數(shù)器中的地址,從內(nèi)存儲(chǔ)器中取出指令,并送往指令寄存器中。分析指令:即對(duì)指令寄存器中存放的指令進(jìn)行分析,由操作碼確定執(zhí)行什么操作,由地址碼確定操作數(shù)的地址。執(zhí)行指令:即根據(jù)分析的結(jié)果,由控制器發(fā)出完成該操作所需要的一系列控制信息,去完成該指令所要求的操作。上述步驟完成后,指令計(jì)數(shù)器加1,為執(zhí)行下一條指令做好準(zhǔn)備。如果遇到轉(zhuǎn)移指令,則將轉(zhuǎn)移地址送入指令計(jì)數(shù)器。2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理
指令的執(zhí)行過程2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理計(jì)算機(jī)組織與系統(tǒng)結(jié)構(gòu)領(lǐng)域的一些主要技術(shù)1精簡(jiǎn)指令集技術(shù)在指令系統(tǒng)中僅包含(1)使用頻率高的指令;(2)支持操作系統(tǒng)和高級(jí)語言的程序設(shè)計(jì)的指令。精簡(jiǎn)指令計(jì)算機(jī)(reducedinstructionset
computer,RISC)復(fù)雜指令計(jì)算機(jī)(complexinstructionset
computer,CISC)2高速緩沖存儲(chǔ)技術(shù)(cache)為使慢速的RAM與快速的CPU相匹配,采用cache技術(shù)。方法:將CPU從RAM某一地址讀取數(shù)據(jù),自動(dòng)將該地址相近的整批數(shù)據(jù)讀入cache中。2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理
計(jì)算機(jī)組織與系統(tǒng)結(jié)構(gòu)領(lǐng)域的一些主要技術(shù)2.3計(jì)算機(jī)的基本結(jié)3虛擬存儲(chǔ)技術(shù)利用硬盤的支持以小的物理內(nèi)存模擬大的內(nèi)存,從而程序能夠使用整個(gè)內(nèi)存地址空間的技術(shù)。4指令流水線技術(shù)
CPU可以在完成一條指令之前將開始執(zhí)行另外一條指令,以加快計(jì)算機(jī)的處理速度。5并行處理技術(shù)把一個(gè)程序劃分為多個(gè)能夠并行地有單獨(dú)處理器執(zhí)行的進(jìn)程,多個(gè)處理機(jī)協(xié)同地并行工作,達(dá)到甚至超過了巨型機(jī)的高性能。
并行計(jì)算機(jī)系統(tǒng)有:
SISD(單指令流但數(shù)據(jù)流)、SIMD、MISD、MIMD2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理
3虛擬存儲(chǔ)技術(shù)2.3計(jì)算機(jī)的基本結(jié)構(gòu)與工作原理機(jī)器語言匯編語言高級(jí)語言結(jié)構(gòu)化程序設(shè)計(jì)語言面向?qū)ο蟪绦蛟O(shè)計(jì)語言可視化程序設(shè)計(jì)語言人工智能程序設(shè)計(jì)語言學(xué)習(xí)語言是設(shè)計(jì)程序的基礎(chǔ)2.4程序設(shè)計(jì)基礎(chǔ)機(jī)器語言學(xué)習(xí)語言是設(shè)計(jì)程序的基礎(chǔ)2.4程序設(shè)計(jì)基礎(chǔ)2.4.1機(jī)器語言機(jī)器語言的特點(diǎn)
由二進(jìn)制編碼指令構(gòu)成的語言。是一種依附于機(jī)器硬件的語言。機(jī)器語言程序可以直接執(zhí)行。機(jī)器語言程序片段0001010101101100//把地址為01101100的內(nèi)存單元中的數(shù)裝入0101號(hào)寄存器0001011001101101//把地址為01101101的內(nèi)存單元中的數(shù)裝入0110號(hào)寄存器0101000001010110//把01101100和01101101中的數(shù)相加,結(jié)果存入0000號(hào)寄存器0011000001101110//把0000號(hào)寄存器中的數(shù)存入地址為01101110的內(nèi)存單元中2.4.1機(jī)器語言機(jī)器語言的特點(diǎn)2.4.2匯編語言匯編語言的特點(diǎn)由助記符指令構(gòu)成的語言。也是一種依附于機(jī)器硬件的語言。匯編語言源程序需要匯編后才能執(zhí)行。匯編語言程序片段
MOVR5,X//把內(nèi)存單元X中的數(shù)裝入R5寄存器
ADDR5,Y//把R5中的數(shù)與Y單元中的數(shù)相加,結(jié)果存入R5
MOVZ,R5//把R5中的數(shù)存入Z單元中
2.4.2匯編語言匯編語言的特點(diǎn)2.4.3高級(jí)語言高級(jí)語言的特點(diǎn)
由自然語言和數(shù)學(xué)公式表示的語言。是一種獨(dú)立于機(jī)器硬件的語言。高級(jí)語言程序需要編譯后才能執(zhí)行。高級(jí)語言程序片段
Z=X+Y
//把內(nèi)存單元X中的數(shù)與Y中的數(shù)相加,結(jié)果存入Z單元
2.4.3高級(jí)語言高級(jí)語言的特點(diǎn)2.4.3高級(jí)語言常用高級(jí)語言
FORTRAN語言FORTRAN是FORmulaTRANslator(公式翻譯器)的縮寫。主要用于復(fù)雜的科學(xué)計(jì)算領(lǐng)域。ALGOL語言ALGOL是ALGOrithmLanguage(算法語言)的縮寫。主要用于數(shù)學(xué)與科學(xué)計(jì)算。2.4.3高級(jí)語言常用高級(jí)語言2.4.3高級(jí)語言常用高級(jí)語言
COBOL語言
COBOL是COmmonBusiness-OrientedLanguage(面向商業(yè)的通用語言)的縮寫。主要用于企業(yè)管理和事務(wù)處理。BASIC語言
BASIC是Beginner’sAll-purposeSymbolicInstructionCode(初學(xué)者通用符號(hào)指令碼)的縮寫。主要用于初學(xué)者和較小規(guī)模的程序開發(fā)。2.4.3高級(jí)語言常用高級(jí)語言2.4.4結(jié)構(gòu)化程序設(shè)計(jì)語言早期程序設(shè)計(jì)方法的不足注重功能的實(shí)現(xiàn)/注重內(nèi)存的節(jié)省/注重執(zhí)行效率的提高。不注重程序結(jié)構(gòu)的清晰性。不注重程序的可理解性和可修改性。結(jié)構(gòu)化程序設(shè)計(jì)語言的特點(diǎn)
注重程序結(jié)構(gòu)的清晰性。注重程序的可理解性和可修改性。采用模塊化程序設(shè)計(jì)方法。2.4.4結(jié)構(gòu)化程序設(shè)計(jì)語言早期程序設(shè)計(jì)方法的不足結(jié)構(gòu)化程序設(shè)計(jì)結(jié)構(gòu)化程序設(shè)計(jì):采用自頂向下逐步求精的設(shè)計(jì)方法和單入口單出口的控制成分(順序、分支和循環(huán))。TFTF條件AAB(a)順序結(jié)構(gòu)(b)選擇型分支結(jié)構(gòu)(c)循環(huán)結(jié)構(gòu)AB條件2.4.4結(jié)構(gòu)化程序設(shè)計(jì)語言結(jié)構(gòu)化程序設(shè)計(jì)TFTF條件AAB(a良好的程序設(shè)計(jì)風(fēng)格標(biāo)識(shí)符:按意命名、保留字用大寫字母、使用統(tǒng)一的縮寫規(guī)則。表達(dá)式:使用括號(hào)、使用庫函數(shù)、條件化簡(jiǎn)、函數(shù)與過程模塊化:模塊的獨(dú)立性(高內(nèi)聚、低耦合)、模塊的規(guī)模適中。程序行的排列格式:排列格式美觀、層次分明、使用統(tǒng)一的縮進(jìn)格式,同一嵌套深度并列的語句對(duì)齊。注釋:添加必要的注釋,以說明程序、過程和語句等的功能及注意事項(xiàng)。2.4.4結(jié)構(gòu)化程序設(shè)計(jì)語言良好的程序設(shè)計(jì)風(fēng)格2.4.4結(jié)構(gòu)化程序設(shè)計(jì)語言2.4.4結(jié)構(gòu)化程序設(shè)計(jì)語言常用結(jié)構(gòu)化程序設(shè)計(jì)語言
PASCAL語言
是在ALGOL語言的基礎(chǔ)上發(fā)展起來的。以法國著名科學(xué)家帕斯卡的名字命名。嚴(yán)格的語法格式與結(jié)構(gòu)化形式。C語
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 水閣楊梅山施工方案
- 廣告門頭施工方案
- 石材粘接施工方案
- 火燒板臺(tái)階施工方案
- 橋梁亮化工程施工方案
- 室外管道安裝施工方案
- TSJNX 002-2024 西安市水平衡測(cè)試報(bào)告編制規(guī)范
- 二零二五年度物流信息承運(yùn)合同模板
- 二零二五年度承攬合同中增值稅稅率變動(dòng)應(yīng)對(duì)策略
- 二零二五年度交通事故人傷賠償公益援助協(xié)議
- 搟筋課件教學(xué)課件
- 城市污水處理廠改造施工方案
- 八項(xiàng)規(guī)定解讀
- 醫(yī)院工程改造工程施工組織設(shè)計(jì)方案
- 英語人稱代詞和物主代詞練習(xí)題(附答案)
- 2024年高等教育法學(xué)類自考-00369警察倫理學(xué)考試近5年真題集錦(頻考類試題)帶答案
- 社交媒體對(duì)消費(fèi)者行為的影響調(diào)研報(bào)告
- 計(jì)算機(jī)一級(jí)考試WPS試題及答案
- 快樂讀書吧《孤獨(dú)的小螃蟹》整本書閱讀指導(dǎo)課教學(xué)設(shè)計(jì)-2023-2024學(xué)年語文二年級(jí)上冊(cè)統(tǒng)編版
- 生豬屠宰獸醫(yī)衛(wèi)生檢驗(yàn)人員理論考試題庫及答案
- 《Windows server操作系統(tǒng)》Windows Server 2019全套教學(xué)課件
評(píng)論
0/150
提交評(píng)論