自考工業(yè)用微型計算機(jī)復(fù)習(xí)_第1頁
已閱讀1頁,還剩6頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、一、無符號數(shù)的表示和運(yùn)算(一)進(jìn)位計數(shù)制后綴B表示二進(jìn)制;后綴H表示十進(jìn)制;后綴D表示十進(jìn)制(也可不加后綴)1二進(jìn)制和十六進(jìn)制間的相互轉(zhuǎn)換(1)十六進(jìn)制轉(zhuǎn)換為二進(jìn)制數(shù),不論是十六進(jìn)制的整數(shù)還是小數(shù),只要把每一位十六進(jìn)制的數(shù)用相應(yīng)的二進(jìn)制數(shù)來代替,就可以轉(zhuǎn)換為二進(jìn)制。即9BA6H=100110111010011B(2)二進(jìn)制轉(zhuǎn)換為十六進(jìn)制這種轉(zhuǎn)換,可分兩步進(jìn)行:對整部分,從小數(shù)點向左數(shù)每4位二進(jìn)制為一組,最后不足的前面補(bǔ)零。對小數(shù)部分,從

2、小數(shù)點向右數(shù),每4位一組,最后不足4位的后面補(bǔ)0,然后把每4位二進(jìn)制數(shù)用相應(yīng)的十六進(jìn)制數(shù)代替,即可轉(zhuǎn)換為十六進(jìn)制數(shù)。例如即10110111010101B=B754H(2)二進(jìn)制數(shù)轉(zhuǎn)換為十進(jìn)制數(shù),對所給的二進(jìn)制數(shù),只要按前述的式(2-2)展開,即可得到對應(yīng)的十進(jìn)制數(shù)。例如10111010B=123+121+120+120+1+1=1162512?32?(3)十進(jìn)制整數(shù)轉(zhuǎn)換為二進(jìn)制數(shù),把十進(jìn)制整數(shù)轉(zhuǎn)換為二進(jìn)制數(shù),一般采用除2取余法。(4)十

3、進(jìn)制整數(shù)轉(zhuǎn)換為十六進(jìn)制數(shù),同轉(zhuǎn)換為二進(jìn)制數(shù)的道理一樣,也可采用除16取余(二)原碼如上所示,正數(shù)的符號位用零表示,負(fù)數(shù)的符號位用1表示,符號位之后表示數(shù)值的大小這種表示方法稱為原碼。例如:x=114〔x〕原=01110010Bx=114〔x〕原=11110010B(三)反碼正數(shù)的反碼與原碼相同。最高位一定為0,代表符號,其余位為數(shù)值位。負(fù)數(shù)的反碼其符號位為1,與原碼相同,數(shù)值位是將其負(fù)數(shù)的原碼的數(shù)值位按位取反。例如:x=-4,〔x〕反=

4、11111011Bx=-0,〔x〕反=11111111Bx=-127,〔x〕反=10000000B顯然,反碼的0也有2個,X=+0,〔x〕反=0000000B(四)補(bǔ)碼正數(shù)的補(bǔ)碼表示與原碼相同,即最高位為符號位,用“0”表示,其余位為數(shù)值位。而負(fù)數(shù)的補(bǔ)碼為其反碼加1即在反碼的最低位加1形成補(bǔ)碼。例如:x=-4,〔x〕補(bǔ)=〔x〕反+1=11111011B+1=11111100B=FCH三、8位與16位二進(jìn)制數(shù)的表示范圍(一)8位二進(jìn)制的范

5、圍1)無符號數(shù)0~255(或用0~FFH表示)第三節(jié)微型計算機(jī)系統(tǒng)的組成一、微型計算機(jī)系統(tǒng)的構(gòu)成微型計算機(jī)系統(tǒng)是由硬件和軟件兩部分組成的,它的層次結(jié)構(gòu)如圖所示。(一)微型機(jī)硬件(1)微處理器,是微機(jī)系統(tǒng)的核心部件,簡稱為CPU,它包括運(yùn)算器、控制器和寄存器幾部分,運(yùn)算器也叫算邏單元ALU(ArithmeticLogicUnit)。(2)存儲器(Memy)又叫主存或內(nèi)存,是微機(jī)的存儲和記憶部件,用以存放程序代碼和運(yùn)算需要的數(shù)據(jù)。內(nèi)存通常使

6、用半導(dǎo)體存儲器。1)內(nèi)存容量,以8086/8088CPU為例,其地址總線為20根,尋址內(nèi)存的范圍為220=1MB。這里B是字節(jié)(Byte),即每個內(nèi)存單元內(nèi)部存放的是一個字節(jié)(8位二進(jìn)制)程序代碼或數(shù)據(jù),其形式均為二進(jìn)制數(shù)(機(jī)器數(shù))。因為8086的地址總線是20根,其尋址范圍為1024KB,寫成十六進(jìn)制時就是5位,其地址范圍為00000H~FFFFFH。2)內(nèi)存的操作對內(nèi)存的操作是讀(?。┖蛯懀ù鎯Γ?)內(nèi)存的分類按存儲器的工作性質(zhì)可

7、將內(nèi)存分為只讀存儲器(ROM)和隨機(jī)讀寫存儲器(RAM)兩大類。(3)輸入輸出接口(I/OInterface)和外部設(shè)備CPU要與很多外部設(shè)備進(jìn)行數(shù)據(jù)傳送,必須通過“I/O接口”,所以輸入輸出接口是CPU與外設(shè)之間的橋梁。(4)總線由上面敘述可以看到微型計算機(jī)主要是由微處理器、存儲器、I/O接口和I/O設(shè)備所組成,這些部件是用系統(tǒng)總線連接起來的。(二)微型計算機(jī)軟件微型機(jī)的軟件是為運(yùn)行、管理和測試維護(hù)而編制的各種程序的總和,沒有軟件的計

8、算機(jī)只是裸機(jī),計算機(jī)就無法工作。計算機(jī)軟件分為系統(tǒng)軟件和應(yīng)用軟件,系統(tǒng)軟件包括操作系統(tǒng)(DOS及WINDOWS、UNIX、LINUX等)和系統(tǒng)應(yīng)用程序。三、微型計算機(jī)的外圍設(shè)備一、Intel80868088微處理器(一)8086/8088的功能結(jié)構(gòu)微處理器8086/8088微處理器結(jié)構(gòu)類似,都由算術(shù)邏輯單元ALU、累加器、專用和通用寄存器、指令寄存器、指令譯碼器、定時器控制器等組成,后四部分相當(dāng)于控制器。不過按功能可以分為兩大部分—總線

9、接口單元BIU(BusInterfaceUnit)和執(zhí)行單元EU(ExecutionUnit)。(二)8086/8088的內(nèi)部寄存器8086/8088內(nèi)部有14個16位寄存器,編程時都要用到,所以必須識記。按其功能,可分為三大類:第一類是通過寄存器(8個),第二類是段寄存器(4個),第三類是控制寄存器(2個)。通用寄存器包括數(shù)據(jù)寄存器、地址寄存器和變址寄存器。1數(shù)據(jù)寄存器AX、BX、CX、DX2地址指針寄存器SP、BP3變址寄存器SI、

10、DI4段寄存器CS、SS、DS、ES5控制寄存器IP、FLAGSCF進(jìn)位標(biāo)志位。加減法運(yùn)算時。最高位發(fā)生進(jìn)位或錯位,則CF=1,否則CF=0;PF奇偶標(biāo)志位邏輯運(yùn)算結(jié)果中“1”的個數(shù)為偶數(shù)時,PF=1;為奇數(shù)時,PF=0。AF輔助進(jìn)位位。在816位加法操作中,低48位有進(jìn)位、借位發(fā)生時,AF=1,否則AF=0;ZF零標(biāo)志位。當(dāng)運(yùn)算結(jié)果為零時,ZF=1。否則ZF=0;SF符號標(biāo)志位。當(dāng)運(yùn)算結(jié)果的最高位為1(即為負(fù)數(shù))時,SF=1,否則SF

11、=0;OF溢出標(biāo)志位。當(dāng)算術(shù)運(yùn)算的結(jié)果超出了帶符號數(shù)的范圍,即溢出時,OF=1,否則OF=0。8位帶符號數(shù)范圍是-128~+127,16位帶符號數(shù)的范圍是-32768~+32767。下面三個是控制標(biāo)志位??刂茦?biāo)志位被設(shè)置后便對其后的操作產(chǎn)生控制作用。TF跟蹤標(biāo)志位。TF=1使CPU處于單步執(zhí)行指令的工作方式。這種方式便于進(jìn)行程序的調(diào)試。每執(zhí)行一條指令后,便自動產(chǎn)生一次內(nèi)部中斷,從而使用戶能逐條地檢查程序。IF中斷允許標(biāo)志位。IF=1使C

12、PU可以響應(yīng)可屏蔽中斷請求。IF=0使CPU禁止響應(yīng)可屏蔽中斷請求。IF的狀態(tài)對不可屏蔽中斷及內(nèi)部中斷沒有影響。DF方向標(biāo)志位。DF=1使串操作按減地址方向進(jìn)行,也就是說,從高位地址開始,每操作一次地址減小一次。DF=0使串操作按增地址方向進(jìn)行。(四)8086/8088的工作方式8086/8088有兩種工作方式:最小和最大模式,最小模式是單處理器模式,最大模式是多處理器模式,一般接入8087協(xié)調(diào)處理器?,F(xiàn)在,用戶使用的大部分都是486以

13、上微處理器,均為最大模式。第二章知識點第一節(jié)指令系統(tǒng)計算機(jī)的指令系統(tǒng)??梢苑譃榱箢悾孩贁?shù)據(jù)傳送指令;②算術(shù)傳送指令;③邏輯運(yùn)算和移位指令;④串操作指令;⑤控制轉(zhuǎn)移指令;⑥處理器控制指令。一、指令格式指令是以二進(jìn)制代碼形式表示的操作命令,這種二進(jìn)制代碼稱為機(jī)器碼。尋址方式,通常是指CPU指令中規(guī)定的尋找操作數(shù)所在地址的方式,8086/8088CPU內(nèi)部設(shè)置了多個有關(guān)地址的寄存器,如各種地址指針寄存器以及變址寄存器等,因而使8086/80

14、88的基本尋址方式有以下七種。二、立即尋址(ImmediateAddrssing)例如:MOVCL,28HMOVAX,3189H三、寄存器尋址(RegisterAddrssing)指令中指定某些CPU寄存器存放操作數(shù)。上述寄存器可能是通用寄存器(8位或16位)、地址指針或變址寄存器,以及段寄存器。例如:MOVSS,AX四、直接尋址(DirectAddrssing)直接尋址指令在指令的操作碼后面直接給出操作數(shù)的16位偏移地址。這個偏移地址

15、也稱為有效地址EA(EffectiveAddress)它與指令的操作碼一起,存放在內(nèi)存的代碼段,也是低8位在前,高8位在后。但是,操作數(shù)本身一般存放在內(nèi)存的數(shù)據(jù)段。例如:MOVAX,〔3100H〕五、寄存器間接尋址六、變址尋址(IndexedAddressing)變址尋址指令將規(guī)定的變址寄存器的內(nèi)容加上指令中給出的位移量,得到操作數(shù)的有效地址。8086/8088CPU中變址寄存器有兩個:源變址寄存器SI和目的變址寄存器DI。位移可以是8

16、位或16位二進(jìn)制數(shù),一般情況下操作數(shù)在內(nèi)存的數(shù)據(jù)段,但也允許段超越。下面是一條變址尋址指令的例子。MOVBX,〔SI+1003H〕七、基址尋址(BasedAddrssing)基址與變址相類似,不同之處在于指令中使用基址寄存器BX或基址指針寄存器BP,而不是變址寄存器SI和DI。JUMP指令的操作是無條件地將控制轉(zhuǎn)移到指令中規(guī)定的目的地址。另外,目標(biāo)地址可以用直接的方式給出,也可以用間接的方式給出,JMP指令對標(biāo)志位沒有影響。(1)段內(nèi)直

17、接轉(zhuǎn)移指令格式及操作:JMPnear_label轉(zhuǎn)移到近標(biāo)號,(IP)←(IP)+disp(16位)例:在內(nèi)存的數(shù)據(jù)段中存放了若干個8位帶符號數(shù),數(shù)據(jù)塊的長度為COUNT(不超過255),首地址為TABLE,試統(tǒng)計其中正元素、負(fù)元素及零元素的個數(shù),并分別將個數(shù)存入PLUS、MINUS和ZERO單元。為了統(tǒng)計正元素。負(fù)元素和零元素的個數(shù),可先將PLUS、MINUS和ZERO三個單元清零,然后將數(shù)據(jù)表中帶符號數(shù)逐個取入AL寄存器并使其影響標(biāo)

18、志位,再利用前面介紹的JS、JZ等條件轉(zhuǎn)移指令測試該數(shù)是一個負(fù)數(shù)、零還是正數(shù),然后分別在相應(yīng)的單元中進(jìn)行計數(shù)。程序如下:XAL,AL;(AL)←0MOVPLUS,AL;清PLUS單元MOVMINUS,AL;清MINUS單元MOVZERO,AL;清ZERO單元LEASI,TABLE;(SI)←數(shù)據(jù)表首址MOVCX,COUNT;(CX)←數(shù)據(jù)表長度CLD;清標(biāo)志位DFCHECK:LODSB;取一個數(shù)據(jù)到AL中AL,AL;使數(shù)據(jù)影響標(biāo)志位JS

19、XI;如為負(fù),轉(zhuǎn)X1JZX2;如為零,轉(zhuǎn)X2INCPLUS;否則為正,PLUS單元加1JMPNEXTX1:INCMINUS;MINUS單元加1JMPNEXTX2:INCZERO;ZERO單元加1NEXT:LOOPCHECK;CX減1,不為零,轉(zhuǎn)CHECKINT3上面的程序中LOOP指令是一條循環(huán)控制指令,它的操作是先將1←(CX)-1,然后判斷是否CX的內(nèi)容為0?如果不等于0,則轉(zhuǎn)移到所指的標(biāo)號CHECK,如果(CX)=0,則執(zhí)行下一條

20、指令。DEBUG調(diào)試程序的簡單應(yīng)用DEBUG調(diào)試程序的功能DEBUGCOM或DEBUGEXE是隨DOS操作系統(tǒng)提供的。鍵入該程序(DEBUG)后,出現(xiàn)提示符-,它具有如下命令:A為匯編命令;U為反匯編命令;T為跟蹤命令;D為顯示內(nèi)存命令;E為修改內(nèi)存命令;F為填充命令;R為檢查和修改寄存器命令;G為執(zhí)行程序命令;L為裝入內(nèi)存命令;N為給程序命名的命令;I為輸入,O為輸出命令;M為傳送內(nèi)存命令;W為存盤命令,Q為結(jié)束DEBUG,回到DOS

21、命令。第三章知識點第一節(jié)程序設(shè)計語言概述目前,有三種不同層次的計算機(jī)語言,這就是機(jī)器語言、匯編語言和高級語言。一、機(jī)器語言在機(jī)器語言(MachineLanguage)中,用二進(jìn)制數(shù)表示指令和數(shù)據(jù),它的缺點是不直觀,很難理解和記憶。因此不用它編程。但是,機(jī)器語言程序是唯一能夠被計算機(jī)直接理解和執(zhí)行的程序,具有執(zhí)行速度快,占用內(nèi)存少等優(yōu)點。二、匯編語言一般來說,有兩種匯編程序,一種通常稱為匯編(ASM),另一種稱為宏匯編(MASM)。后者的

22、功能更強(qiáng)。三、高級語言高級語言(HighlevelLanguage)這針對某個具體的計算機(jī),所以通用性強(qiáng)。第二節(jié)匯編語言源程序的格式一、分段結(jié)構(gòu)匯編語言源程序的結(jié)構(gòu)是分段結(jié)構(gòu)形式。一個匯編語言源程序由幾個段(Segment)組成,每個段都以SEGMENT語句開始,以ENDS結(jié)束,而整個源程序是以END語句結(jié)尾。匯編語言源程序中的語句主要有以下兩種類型:①指令性語句;②指示性語句。指令性語句主要由CPU指令組成,編譯時能夠生成二進(jìn)制機(jī)器代

23、碼;指示性語句又稱偽操作語句,主要由偽操作組成,編譯時并不生成二進(jìn)制機(jī)器代碼。那么,為什么還需要偽指令呢?這是因為偽操作語句是給匯編使用的。一般情況下,匯編語言的語句可以有1~4個組成部分,如下所示:[名字]操作碼/偽操作[操作數(shù)][;注釋]第三節(jié)常用偽操作宏匯編程序MASM提供了大約幾十種偽操作,根據(jù)偽操作的功能,大致可以分以下幾類:①處理器方式偽操作②數(shù)據(jù)定義偽操作③符號定義偽操作④段定義偽操作⑤過程定義白偽操作⑥模塊定義白與連接偽

24、操作⑦宏處理偽操作⑧條件偽操作⑨列表偽操作⑩其它偽操作一、段定義偽操作匯編語言程序的結(jié)構(gòu)是分段的形式,一個匯編語言源程序若干個邏輯段組成,所有的指令、變量等都分別存放在各個邏輯段內(nèi)。段定義偽操作的用途是在匯編語言源程序中定義邏輯段。常用的段定義偽操作有SEGMENT、ENDS和ASSUME等。(一個)SEGMENT/ENDS格式:段名SEGMENT[定位類型][組合類型][‘類別’]?段名ENDS二、數(shù)據(jù)定義偽操作數(shù)據(jù)定義偽操作的用途是

25、定義一個變量的龐大給存儲器賦初值,或者僅僅給變量分別存儲單元,而不賦予特定的值。下面介紹幾種常用的、簡單的數(shù)據(jù)定義偽操作。常用的數(shù)據(jù)定義偽操作有下列5種。BD定義字節(jié)DW定義字(2個字節(jié))DD定義雙字(4個字節(jié))SQ定義四字(8字節(jié))DT定義十字節(jié)(10個字節(jié))上述5種數(shù)據(jù)定義偽操作的一般格式為[變量名]偽操作操作數(shù)[,操作數(shù)…]三、符號定義偽操作符號定義偽操作的用途是給一個符號重新命名,或定義新的類型屬性等。常用的符號偽操作有:EQU

26、、=(等號)和LABEL等。(一)EQU格式:名字EQU表達(dá)式四、過程定義偽操作PROC/ENDP格式過程名PROC[NEAR/FAR]?RET?過程名ENDP五、模塊定義與連接偽操作在編寫規(guī)模比較大的匯編語言程序時,可以將整個程序劃分成為幾個獨(dú)立的源程序(或稱為模塊),然后將各個模塊分別匯編,生成各自的目標(biāo)程序,最后再連接成一個完整的可執(zhí)行程序各個模塊之間可進(jìn)行符號訪問,也就是說,在一個模塊中定義的符號可被另一個模塊引用。這類符號稱為

27、外部符號而將那些在一個模塊中定義,且只在同一模塊中引用的符號稱為局部符號。為了進(jìn)行連接以及這些將要連接在一起的模塊之間實現(xiàn)相互的符號訪問,以便進(jìn)行變量傳送,常使用以下偽操作:NAME、END、PUBLIC、EXTRN。(一)NAME偽操作該偽操作用于給源文件匯編以后得到的目標(biāo)程序指定一個模塊名,連接時要使用它。格式為NAME模塊名第四節(jié)匯編語言程序設(shè)計程序設(shè)計步驟(一)程序設(shè)計的基本步驟對于給定的課題進(jìn)行程序設(shè)計,一般應(yīng)按如下步驟進(jìn)行:

28、⑴分析課題分析課題就是對課題任務(wù)有明確認(rèn)識,對復(fù)雜題目應(yīng)進(jìn)行抽象簡化,建立數(shù)學(xué)模型。并弄清已知條件、原始數(shù)據(jù)和應(yīng)得到的結(jié)果,以及課題任務(wù)對程序的功能、運(yùn)算精度、執(zhí)行速度等方面的要求。⑵確定算法確定算法就是選擇解決問題的途徑和方法,對于一個具體問題,算法可能有多種,應(yīng)該選取簡單、高效,能在計算機(jī)上易于實現(xiàn)的算法。⑶畫流程圖流程圖是算法的一種圖形描述,由邏輯框和流程線組成。關(guān)于流程圖的畫法已經(jīng)在C語言部分講述。對于復(fù)雜的問題可分解為若干個程

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論