微機(jī)原理與接口技術(shù)知識(shí)點(diǎn)總結(jié)整理_第1頁(yè)
微機(jī)原理與接口技術(shù)知識(shí)點(diǎn)總結(jié)整理_第2頁(yè)
微機(jī)原理與接口技術(shù)知識(shí)點(diǎn)總結(jié)整理_第3頁(yè)
微機(jī)原理與接口技術(shù)知識(shí)點(diǎn)總結(jié)整理_第4頁(yè)
微機(jī)原理與接口技術(shù)知識(shí)點(diǎn)總結(jié)整理_第5頁(yè)
已閱讀5頁(yè),還剩68頁(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ù)》復(fù)習(xí)參考資料概述一、計(jì)算機(jī)中的數(shù)制1、無(wú)符號(hào)數(shù)的表達(dá)方法:(1)十進(jìn)制計(jì)數(shù)的表達(dá)法特點(diǎn):以十為底,逢十進(jìn)一;共有0-9十個(gè)數(shù)字符號(hào)。(2)二進(jìn)制計(jì)數(shù)表達(dá)方法:特點(diǎn):以2為底,逢2進(jìn)位;只有0和1兩個(gè)符號(hào)。(3)十六進(jìn)制數(shù)的表達(dá)法:特點(diǎn):以16為底,逢16進(jìn)位;有0--9及A—F(表達(dá)10~15)共16個(gè)數(shù)字符號(hào)。2、各種數(shù)制之間的轉(zhuǎn)換(1)非十進(jìn)制數(shù)到十進(jìn)制數(shù)的轉(zhuǎn)換按相應(yīng)進(jìn)位計(jì)數(shù)制的權(quán)表達(dá)式展開(kāi),再按十進(jìn)制求和。(見(jiàn)書(shū)本1.2.3,1.2.4)(2)十進(jìn)制數(shù)制轉(zhuǎn)換為二進(jìn)制數(shù)制十進(jìn)制→二進(jìn)制的轉(zhuǎn)換: 整數(shù)部分:除2取余;小數(shù)部分:乘2取整。十進(jìn)制→十六進(jìn)制的轉(zhuǎn)換:整數(shù)部分:除16取余;小數(shù)部分:乘16取整。以小數(shù)點(diǎn)為起點(diǎn)求得整數(shù)和小數(shù)的各個(gè)位。(3)二進(jìn)制與十六進(jìn)制數(shù)之間的轉(zhuǎn)換用4位二進(jìn)制數(shù)表達(dá)1位十六進(jìn)制數(shù)3、無(wú)符號(hào)數(shù)二進(jìn)制的運(yùn)算(見(jiàn)教材P5)4、二進(jìn)制數(shù)的邏輯運(yùn)算特點(diǎn):按位運(yùn)算,無(wú)進(jìn)借位(1)與運(yùn)算只有A、B變量皆為1時(shí),與運(yùn)算的結(jié)果就是1(2)或運(yùn)算A、B變量中,只要有一個(gè)為1,或運(yùn)算的結(jié)果就是1(3)非運(yùn)算(4)異或運(yùn)算A、B兩個(gè)變量只要不同,異或運(yùn)算的結(jié)果就是1二、計(jì)算機(jī)中的碼制1、對(duì)于符號(hào)數(shù),機(jī)器數(shù)常用的表達(dá)方法有原碼、反碼和補(bǔ)碼三種。數(shù)X的原碼記作[X]原,反碼記作[X]反,補(bǔ)碼記作[X]補(bǔ)。注意:對(duì)正數(shù),三種表達(dá)法均相同。它們的差別在于對(duì)負(fù)數(shù)的表達(dá)。(1)原碼定義:符號(hào)位:0表達(dá)正,1表達(dá)負(fù);數(shù)值位:真值的絕對(duì)值。注意:數(shù)0的原碼不唯一(2)反碼定義:若X>0,則[X]反=[X]原若X<0,則[X]反=相應(yīng)原碼的符號(hào)位不變,數(shù)值部分按位求反注意:數(shù)0的反碼也不唯一(3)補(bǔ)碼定義:若X>0,則[X]補(bǔ)=[X]反=[X]原若X<0,則[X]補(bǔ)=[X]反+1注意:機(jī)器字長(zhǎng)為8時(shí),數(shù)0的補(bǔ)碼唯一,同為000000002、8位二進(jìn)制的表達(dá)范圍:原碼:-127~+127反碼:-127~+127補(bǔ)碼:-128~+1273、特殊數(shù)10000000該數(shù)在原碼中定義為:-0在反碼中定義為:-127在補(bǔ)碼中定義為:-128對(duì)無(wú)符號(hào)數(shù):(10000000)2=128三、信息的編碼十進(jìn)制數(shù)的二進(jìn)制數(shù)編碼用4位二進(jìn)制數(shù)表達(dá)一位十進(jìn)制數(shù)。有兩種表達(dá)法:壓縮BCD碼和非壓縮BCD碼。(1)壓縮BCD碼的每一位用4位二進(jìn)制表達(dá),0000~1001表達(dá)0~9,一個(gè)字節(jié)表達(dá)兩位十進(jìn)制數(shù)。(2)非壓縮BCD碼用一個(gè)字節(jié)表達(dá)一位十進(jìn)制數(shù),高4位總是0000,低4位的0000~1001表達(dá)0~9字符的編碼計(jì)算機(jī)采用7位二進(jìn)制代碼對(duì)字符進(jìn)行編碼(1)數(shù)字0~9的編碼是0110000~0111001,它們的高3位均是011,后4位正好與其對(duì)應(yīng)的二進(jìn)制代碼(BCD碼)相符。(2)英文字母A~Z的ASCII碼從1000001(41H)開(kāi)始順序遞增,字母a~z的ASCII碼從1100001(61H)開(kāi)始順序遞增,這樣的排列對(duì)信息檢索十分有利。微機(jī)組成原理第一節(jié)、微機(jī)的結(jié)構(gòu)1、計(jì)算機(jī)的經(jīng)典結(jié)構(gòu)——馮.諾依曼結(jié)構(gòu)(1)計(jì)算機(jī)由運(yùn)算器、控制器、輸入設(shè)備和輸出設(shè)備五大部分組成(運(yùn)算器和控制器又稱為CPU)(2)數(shù)據(jù)和程序以二進(jìn)制代碼形式不加區(qū)分地存放在存儲(chǔ)器總,存放位置由地址指定,數(shù)制為二進(jìn)制。(3)控制器是根據(jù)存放在存儲(chǔ)器中的指令序列來(lái)操作的,并由一個(gè)程序計(jì)數(shù)器控制指令的執(zhí)行。系統(tǒng)總線的分類(1)數(shù)據(jù)總線(DataBus),它決定了解決器的字長(zhǎng)。(2)地址總線(AddressBus),它決定系統(tǒng)所能直接訪問(wèn)的存儲(chǔ)器空間的容量。(3)控制總線(ControlBus)第二節(jié)、8086微解決器1、8086是一種單片微解決芯片,其內(nèi)部數(shù)據(jù)總線的寬度是16位,外部數(shù)據(jù)總線寬度也是16位,片內(nèi)包具有控制計(jì)算機(jī)所有功能的各種電路。8086地址總線的寬度為20位,有1MB(220)尋址空間。8086CPU由總線接口部件BIU和執(zhí)行部件EU組成。BIU和EU的操作是異步的,為8086取指令和執(zhí)行指令的并行操作體統(tǒng)硬件支持。8086解決器的啟動(dòng)4、寄存器結(jié)構(gòu)8086微解決器包具有13個(gè)16位的寄存器和9位標(biāo)志位。4個(gè)通用寄存器(AX,BX,CX,DX)4個(gè)段寄存器(CS,DS,SS,ES)4個(gè)指針和變址寄存器(SP,BP,SI,DI)指令指針(IP)1)、通用寄存器(1)8086含4個(gè)16位數(shù)據(jù)寄存器,它們又可分為8個(gè)8位寄存器,即:AXAH,ALBXBH,BLCXCH,CLDXDH,DL常用來(lái)存放參與運(yùn)算的操作數(shù)或運(yùn)算結(jié)果(2)數(shù)據(jù)寄存器特有的習(xí)慣用法AX:累加器。多用于存放中間運(yùn)算結(jié)果。所有I/O指令必須都通過(guò)AX與接口傳送信息;BX:基址寄存器。在間接尋址中用于存放基地址;CX:計(jì)數(shù)寄存器。用于在循環(huán)或串操作指令中存放循環(huán)次數(shù)或反復(fù)次數(shù);DX:數(shù)據(jù)寄存器。在32位乘除法運(yùn)算時(shí),存放高16位數(shù);在間接尋址的I/O指令中存放I/O端口地址。2)、指針和變址寄存器SP:堆棧指針寄存器,其內(nèi)容為棧頂?shù)钠频刂?;BP:基址指針寄存器,常用于在訪問(wèn)內(nèi)存時(shí)存放內(nèi)存單元的偏移地址。SI:源變址寄存器DI:目的變址寄存器變址寄存器常用于指令的間接尋址或變址尋址。3)、段寄存器CS:代碼段寄存器,代碼段用于存放指令代碼DS:數(shù)據(jù)段寄存器ES:附加段寄存器,數(shù)據(jù)段和附加段用來(lái)存放操作數(shù)SS:堆棧段寄存器,堆棧段用于存放返回地址,保存寄存器內(nèi)容,傳遞參數(shù)4)、指令指針(IP)16位指令指針寄存器,其內(nèi)容為下一條要執(zhí)行的指令的偏移地址。5)、標(biāo)志寄存器(1)狀態(tài)標(biāo)志:進(jìn)位標(biāo)志位(CF):運(yùn)算結(jié)果的最高位有進(jìn)位或有借位,則CF=1輔助進(jìn)位標(biāo)志位(AF):運(yùn)算結(jié)果的低四位有進(jìn)位或借位,則AF=1溢出標(biāo)志位(OF):運(yùn)算結(jié)果有溢出,則OF=1零標(biāo)志位(ZF):反映指令的執(zhí)行是否產(chǎn)生一個(gè)為零的結(jié)果符號(hào)標(biāo)志位(SF):指出該指令的執(zhí)行是否產(chǎn)生一個(gè)負(fù)的結(jié)果奇偶標(biāo)志位(PF):表達(dá)指令運(yùn)算結(jié)果的低8位“1”個(gè)數(shù)是否為偶數(shù)(2)控制標(biāo)志位中斷允許標(biāo)志位(IF):表達(dá)CPU是否可以響應(yīng)外部可屏蔽中斷請(qǐng)求跟蹤標(biāo)志(TF):CPU單步執(zhí)行5、8086的引腳及其功能(重點(diǎn)掌握以下引腳)AD15~AD0:雙向三態(tài)的地址總線,輸入/輸出信號(hào)INTR:可屏蔽中斷請(qǐng)求輸入信號(hào),高電平有效。可通過(guò)設(shè)立IF的值來(lái)控制。NMI:非屏蔽中斷輸入信號(hào)。不能用軟件進(jìn)行屏蔽。RESET:復(fù)位輸入信號(hào),高電平有效。復(fù)位的初始狀態(tài)見(jiàn)P21MN/MX:最小最大模式輸入控制信號(hào)。第三章8086指令系統(tǒng)8086尋址方式一、數(shù)據(jù)尋址方式1、立即尋址操作數(shù)(為一常數(shù))直接由指令給出(此操作數(shù)稱為立即數(shù))立即尋址只能用于源操作數(shù)例:MOVAX,1C8FHMOVBYTEPTR[2A00H],8FH錯(cuò)誤例:×MOV2A00H,AX;錯(cuò)誤!指令操作例:MOVAX,3102H;AX3102H執(zhí)行后,(AH)=31H,(AL)=02H2、寄存器尋址(1)操作數(shù)放在某個(gè)寄存器中(2)源操作數(shù)與目的操作數(shù)字長(zhǎng)要相同(3)寄存器尋址與段地址無(wú)關(guān)例:MOVAX,BXMOV[3F00H],AXMOVCL,AL錯(cuò)誤例:×MOVAX,BL;字長(zhǎng)不同×MOVES:AX,DX;寄存器與段無(wú)關(guān)3、直接尋址(1)指令中直接給出操作數(shù)的16位偏移地址偏移地址也稱為有效地址(EA,EffectiveAddress)(2)默認(rèn)的段寄存器為DS,但也可以顯式地指定其他段寄存器——稱為段超越前綴(3)偏移地址也可用符號(hào)地址來(lái)表達(dá),如ADDR、VAR例:MOVAX,[2A00H]MOVDX,ES:[2A00H]MOVSI,TABLE_PTR4、間接尋址操作數(shù)的偏移地址(有效地址EA)放在寄存器中只有SI、DI、BX和BP可作間址寄存器例:MOVAX,[BX]MOVCL,CS:[DI]錯(cuò)誤例:×MOVAX,[DX]×MOVCL,[AX]5、寄存器相對(duì)尋址EA=間址寄存器的內(nèi)容加上一個(gè)8/16位的位移量例:MOVAX,[BX+8]MOVCX,TABLE[SI]MOVAX,[BP];默認(rèn)段寄存器為SS指令操作例:MOVAX,DATA[BX]若(DS)=6000H,(BX)=1000H,DATA=2A00H,(63A00H)=66H,(63A01H)=55H則物理地址=60000H+1000H+2A00H=63A00H指令執(zhí)行后:(AX)=5566H6、基址變址尋址若操作數(shù)的偏移地址:由基址寄存器(BX或BP)給出——基址尋址方式由變址寄存器(SI或DI)給出——變址尋址方式由一個(gè)基址寄存器的內(nèi)容和一個(gè)變址寄存器的內(nèi)容相加而形成操作數(shù)的偏移地址,稱為基址-變址尋址。EA=(BX)+(SI)或(DI);EA=(BP)+(SI)或(DI)同一組內(nèi)的寄存器不能同時(shí)出現(xiàn)。注意:除了有段跨越前綴的情況外,當(dāng)基址寄存器為BX時(shí),操作數(shù)應(yīng)當(dāng)存放在數(shù)據(jù)段DS中,當(dāng)基址寄存器為BP時(shí),操作數(shù)應(yīng)放在堆棧段SS中。例:MOVAX,[BX][SI]MOVAX,[BX+SI]MOVAX,DS:[BP][DI]錯(cuò)誤例:×MOVAX,[BX][BP]×MOVAX,[DI][SI]指令操作例:MOVAX,[BX][SI]假定:(DS)=8000H,(BX)=2023H,SI=1000H則物理地址=80000H+2023H+1000H=83000H指令執(zhí)行后:(AL)=[83000H](AH)=[83001H]7、相對(duì)基址變址尋址在基址-變址尋址的基礎(chǔ)上再加上一個(gè)相對(duì)位移量EA=(BX)+(SI)或(DI)+8位或16位位移量;EA=(BP)+(SI)或(DI)+8位或16位位移量指令操作例:MOVAX,DATA[DI][BX]若(DS)=8000H,(BX)=2023H,(DI)=1000H,DATA=200H則指令執(zhí)行后(AH)=[83021H],(AL)=[83020H]寄存器間接、寄存器相對(duì)、基址變址、相對(duì)基址變址四種尋址方式的比較:尋址方式指令操作數(shù)形式寄存器間接只有一個(gè)寄存器(BX/BP/SI/DI之一)寄存器相對(duì)一個(gè)寄存器加上位移量基址—變址兩個(gè)不同類別的寄存器相對(duì)基址-變址兩個(gè)不同類別的寄存器加上位移量二、地址尋址方式(了解有4類,能判斷)簡(jiǎn)要判斷依據(jù)(指令中間的單詞):段內(nèi)直接short,near段內(nèi)間接word段間直接far段間間接dword8086指令系統(tǒng)一、數(shù)據(jù)傳送指令1、通用傳送指令(1)MOVdest,src;dest←src傳送的是字節(jié)還是字取決于指令中涉及的寄存器是8位還是16位。具體來(lái)說(shuō)可實(shí)現(xiàn):MOVmem/reg1,mem/reg2指令中兩操作數(shù)中至少有一個(gè)為寄存器②MOVreg,data;立即數(shù)送寄存器③MOVmem,data;立即數(shù)送存儲(chǔ)單元④MOVacc,mem;存儲(chǔ)單元送累加器⑤MOVmem,acc;累加器送存儲(chǔ)單元⑥MOVsegreg,mem/reg;存儲(chǔ)單元/寄存器送段寄存器⑦M(jìn)OVmem/reg,segreg;段寄存器送存儲(chǔ)單元/寄存器MOV指令的使用規(guī)則①IP不能作目的寄存器②不允許mem←mem③不允許segreg←segreg④立即數(shù)不允許作為目的操作數(shù)⑤不允許segreg←立即數(shù)⑥源操作數(shù)與目的操作數(shù)類型要一致⑦當(dāng)源操作數(shù)為單字節(jié)的立即數(shù),而目的操作數(shù)為間址、變址、基址+變址的內(nèi)存數(shù)時(shí),必須用PTR說(shuō)明數(shù)據(jù)類型。如:MOV[BX],12H是錯(cuò)誤的。(2)、堆棧指令什么是堆棧?按“后進(jìn)先出(LIFO)”方式工作的存儲(chǔ)區(qū)域。堆棧以字為單位進(jìn)行壓入彈出操作。規(guī)定由SS指示堆棧段的段基址,堆棧指針SP始終指向堆棧的頂部,SP的初值規(guī)定了所用堆棧區(qū)的大小。堆棧的最高地址叫棧底。壓棧指令PUSHPUSHsrc ;src為16位操作數(shù)例:PUSH AX ;將AX內(nèi)容壓棧執(zhí)行操作:(SP)-1←高字節(jié)AH(SP)-2←低字節(jié)AL(SP)←(SP)-2注意進(jìn)棧方向是高地址向低地址發(fā)展。`彈出指令POPPOP dest例:POP BX ;將棧頂內(nèi)容彈至BX執(zhí)行操作:(BL)←(SP)(BH)←(SP)+1(SP)←(SP)+2堆棧指令在使用時(shí)需注意的幾點(diǎn):堆棧操作總是按字進(jìn)行不能從棧頂彈出一個(gè)字給CS堆棧指針為SS:SP,SP永遠(yuǎn)指向棧頂④SP自動(dòng)進(jìn)行增減量(-2,+2)(3)、互換指令XCHG格式:XCHGreg,mem/reg功能:互換兩操作數(shù)的內(nèi)容。規(guī)定:兩操作數(shù)中必須有一個(gè)在寄存器中;操作數(shù)不能為段寄存器和立即數(shù);源和目地操作數(shù)類型要一致。舉例:XCHG AX,BXXCHG [2023],CL(4)查表指令XLAT執(zhí)行的操作:AL←[(BX)+(AL)]又叫查表轉(zhuǎn)換指令,它可根據(jù)表項(xiàng)序號(hào)查出表中相應(yīng)代碼的內(nèi)容。執(zhí)行時(shí)先將表的首地址(偏移地址)送到BX中,表項(xiàng)序號(hào)存于AL中。2、輸入輸出指令只限于用累加器AL或AX來(lái)傳送信息。功能:(累加器)←→I/O端口輸入指令I(lǐng)N格式:INacc,PORT;PORT端標(biāo)語(yǔ)0~255HINacc,DX;DX表達(dá)的端口范圍達(dá)64K例:INAL,80H;(AL)←(80H端口)INAL,DX;(AL)←((DX))(2)輸出指令OUT格式:OUTport,accOUTDX,acc例:OUT68H,AX;(69H,68H)←(AX)OUTDX,AL;((DX))←(AL)在使用間接尋址的IN/OUT指令時(shí),要事先用傳送指令把I/O端標(biāo)語(yǔ)設(shè)立到DX寄存器如:MOVDX,220HINAL,DX;將220H端口內(nèi)容讀入AL3、目的地址傳送指令LEA傳送偏移地址格式:LEAreg,mem;將指定內(nèi)存單元的偏移地址送到指定寄存器規(guī)定:源操作數(shù)必須是一個(gè)存儲(chǔ)器操作數(shù);目的操作數(shù)必須是一個(gè)16位的通用寄存器。例:LEA BX,[SI+10H]設(shè):(SI)=1000H則執(zhí)行該指令后,(BX)=1010H注意以下二條指令差別:LEABX,BUFFERMOVBX,BUFFER前者表達(dá)將符號(hào)地址為BUFFER的存儲(chǔ)單元的偏移地址取到BX中;后者表達(dá)將BUFFER存儲(chǔ)單元中的內(nèi)容取到BX中。下面兩條指令等效:LEABX,BUFFERMOVBX,OFFSETBUFFER其中OFFSETBUFFER表達(dá)存儲(chǔ)器單元BUFFER的偏移地址。兩者都可用于取存儲(chǔ)器單元的偏移地址,但LEA指令可以取動(dòng)態(tài)的地址,OFFSET只能取靜態(tài)的地址。二、算術(shù)運(yùn)算指令加法指令不帶進(jìn)位的加法指令A(yù)DD格式:ADD acc,dataADD mem/reg,dataADDmem/reg1,mem/reg2實(shí)例:ADD AL,30HADD SI,[BX+20H]ADD CX,SIADD [DI],200H?ADD指令對(duì)6個(gè)狀態(tài)標(biāo)志均產(chǎn)生影響。例:已知(BX)=D75FH指令A(yù)DDBX,8046H執(zhí)行后,狀態(tài)標(biāo)志各是多少?D75FH=11100111010111118046H=10000000010001101111110110011110100101結(jié)果:C=1,Z=0,P=0,A=1,O=1,S=0判斷溢出與進(jìn)位從硬件的角度:默認(rèn)參與運(yùn)算的操作數(shù)都是有符號(hào)數(shù),當(dāng)兩數(shù)的符號(hào)位相同,而和的結(jié)果相異時(shí)有溢出,則OF=1,否則OF=0帶進(jìn)位的加法ADCADC指令在形式上和功能上與ADD類似,只是相加時(shí)還要涉及進(jìn)位標(biāo)志CF的內(nèi)容,例如:ADCAL,68H;AL←(AL)+68H+(CF)ADCAX,CX;AX←(AX)+(CX)+(CF)ADCBX,[DI];BX←(BX)+[DI+1][DI]+(CF)(3)加1指令I(lǐng)NC格式:INCreg/mem功能:類似于C語(yǔ)言中的++操作:對(duì)指定的操作數(shù)加1例:INCALINCSIINCBYTEPTR[BX+4]注:本指令不影響CF標(biāo)志。(4)非壓縮BCD碼加法調(diào)整指令A(yù)AAAAA指令的操作:假如AL的低4位>9或AF=1,則:①AL←(AL)+6,(AH)←(AH)+1,AF←1②AL高4位清零③CF←AF否則AL高4位清零(5)壓縮BCD碼加法調(diào)整指令DAA兩個(gè)壓縮BCD碼相加結(jié)果在AL中,通過(guò)DAA調(diào)整得到一個(gè)對(duì)的的壓縮BCD碼.指令操作(調(diào)整方法):若AL的低4位>9或AF=1則(AL)←(AL)+6,AF←1若AL的高4位>9或CF=1則(AL)←(AL)+60H,CF←1除OF外,DAA指令影響所有其它標(biāo)志。DAA指令應(yīng)緊跟在ADD或ADC指令之后。減法指令(1)不考慮借位的減法指令SUB格式:SUBdest,src操作:dest←(dest)-(src)注:1.源和目的操作數(shù)不能同時(shí)為存儲(chǔ)器操作數(shù)2.立即數(shù)不能作為目的操作數(shù)指令例子:SUBAL,60HSUB[BX+20H],DXSUBAX,CX(2)考慮借位的減法指令SBBSBB指令重要用于多字節(jié)的減法。格式:SBBdest,src操作:dest←(dest)-(src)-(CF)指令例子:SBBAX,CXSBBWORDPTR[SI],2080HSBB[SI],DX(3)減1指令DEC作用類似于C語(yǔ)言中的”--”操作符。格式:DECopr操作:opr←(opr)-1指令例子:DECCLDECBYTEPTR[DI+2]DECSI(4)求補(bǔ)指令NEG格式:NEGopr操作:opr←0-(opr)對(duì)一個(gè)操作數(shù)取補(bǔ)碼相稱于用0減去此操作數(shù),故運(yùn)用NEG指令可得到負(fù)數(shù)的絕對(duì)值。例:若(AL)=0FCH,則執(zhí)行NEGAL后,(AL)=04H,CF=1(5)比較指令CMP格式:CMPdest,src操作:(dest)-(src)CMP也是執(zhí)行兩個(gè)操作數(shù)相減,但結(jié)果不送目的操作數(shù),其結(jié)果只反映在標(biāo)志位上。指令例子:CMPAL,0AHCMPCX,SICMPDI,[BX+03](6)非壓縮BCD碼減法調(diào)整指令A(yù)AS對(duì)AL中由兩個(gè)非壓縮的BCD碼相減的結(jié)果進(jìn)行調(diào)整。調(diào)整操作為:若AL的低4位>9或AF=1,則:①AL←(AL)-6,AH←(AH)-1,AF←1②AL的高4位清零③CF←AF否則:AL的高4位清零(7)壓縮BCD碼減法調(diào)整指令DAS對(duì)AL中由兩個(gè)壓縮BCD碼相減的結(jié)果進(jìn)行調(diào)整。調(diào)整操作為:若AL的低4位>9或AF=1,則:AL←(AL)-6,且AF←1若AL的高4位>9或CF=1,則:AL←(AL)-60H,且CF←1DAS對(duì)OF無(wú)定義,但影響其余標(biāo)志位。DAS指令規(guī)定跟在減法指令之后。乘法指令進(jìn)行乘法時(shí):8位*8位→16位乘積16位*16位→32位乘積(1)無(wú)符號(hào)數(shù)的乘法指令MUL(MEM/REG)格式:MULsrc操作:字節(jié)操作數(shù)(AX)←(AL)×(src)字操作數(shù)(DX,AX)←(AX)×(src)指令例子:MULBL;(AL)×(BL),乘積在AX中MULCX;(AX)×(CX),乘積在DX,AX中MULBYTEPTR[BX](2)有符號(hào)數(shù)乘法指令I(lǐng)MUL格式與MUL指令類似,只是規(guī)定兩操作數(shù)均為有符號(hào)數(shù)。指令例子:IMULBL;(AX)←(AL)×(BL)IMULWORDPTR[SI];(DX,AX)←(AX)×([SI+1][SI])注意:MUL/IMUL指令中●AL(AX)為隱含的乘數(shù)寄存器;●AX(DX,AX)為隱含的乘積寄存器;●SRC不能為立即數(shù);●除CF和OF外,對(duì)其它標(biāo)志位無(wú)定義。4、除法指令進(jìn)行除法時(shí):16位/8位→8位商32位/16位→16位商對(duì)被除數(shù)、商及余數(shù)存放有如下規(guī)定:被除數(shù)商余數(shù)字節(jié)除法AXALAH字除法DX:AXAXDX(1)無(wú)符號(hào)數(shù)除法指令DIV格式:DIVsrc操作:字節(jié)操作(AL)←(AX)/(SRC)的商(AH)←(AX)/(SRC)的余數(shù)字操作(AX)←(DX,AX)/(SRC)的商(DX)←(DX,AX)/(SRC)的余數(shù)指令例子:DIVCLDIVWORDPTR[BX](2)有符號(hào)數(shù)除法指令I(lǐng)DIV格式:IDIVsrc操作與DIV類似。商及余數(shù)均為有符號(hào)數(shù),且余數(shù)符號(hào)總是與被除數(shù)符號(hào)相同。注意:對(duì)于DIV/IDIV指令A(yù)X(DX,AX)為隱含的被除數(shù)寄存器。AL(AX)為隱含的商寄存器。AH(DX)為隱含的余數(shù)寄存器。src不能為立即數(shù)。對(duì)所有條件標(biāo)志位均無(wú)定關(guān)于除法操作中的字長(zhǎng)擴(kuò)展問(wèn)題?除法運(yùn)算規(guī)定被除數(shù)字長(zhǎng)是除數(shù)字長(zhǎng)的兩倍,若不滿足則需對(duì)被除數(shù)進(jìn)行擴(kuò)展,否則產(chǎn)生錯(cuò)誤。?對(duì)于無(wú)符號(hào)數(shù)除法擴(kuò)展,只需將AH或DX清零即可。?對(duì)有符號(hào)數(shù)而言,則是符號(hào)位的擴(kuò)展。可使用前面介紹過(guò)的符號(hào)擴(kuò)展指令CBW和CWD三、邏輯運(yùn)算和移位指令1、邏輯運(yùn)算指令(1)邏輯與AND對(duì)兩個(gè)操作數(shù)進(jìn)行按位邏輯“與”操作。格式:ANDdest,src用途:保存操作數(shù)的某幾位,清零其他位。例1:保存AL中低4位,高4位清0。ANDAL,0FH(2)邏輯或OR對(duì)兩個(gè)操作數(shù)進(jìn)行按位邏輯”或”操作。格式:ORdest,src用途:對(duì)操作數(shù)的某幾位置1;對(duì)兩操作數(shù)進(jìn)行組合。例1:把AL中的非壓縮BCD碼變成相應(yīng)十進(jìn)制數(shù)的ASCII碼。ORAL,30H(3)邏輯非NOT對(duì)操作數(shù)進(jìn)行按位邏輯”非”操作。格式:NOTmem/reg例:NOTCXNOTBYTEPTR[DI](4)邏輯異或XOR對(duì)兩個(gè)操作數(shù)按位進(jìn)行”異或”操作。格式:XORdest,src用途:對(duì)reg清零(自身異或)把reg/mem的某幾位變反(與’1’異或)例1:把AX寄存器清零。①M(fèi)OVAX,0②XORAX,AX③ANDAX,0④SUBAX,AX(5)測(cè)試指令TEST操作與AND指令類似,但不將”與”的結(jié)果送回,只影響標(biāo)志位。TEST指令常用于位測(cè)試,與條件轉(zhuǎn)移指令一起用。例:測(cè)試AL的內(nèi)容是否為負(fù)數(shù)。TESTAL,80H;檢查AL中D7=1? JNZMINUS;是1(負(fù)數(shù)),轉(zhuǎn)MINUS……;否則為正數(shù)2、移位指令(1)非循環(huán)移位指令算術(shù)左移指令SAL(ShiftArithmeticLeft)算術(shù)右移指令SAR(ShiftArithmeticRight)邏輯左移指令SHL(ShiftLeft)邏輯右移指令SHR(ShiftRight)這4條指令的格式相同,以SAL為例:CL;移位位數(shù)大于1時(shí)SALmem/reg;移位位數(shù)等于1時(shí)算術(shù)移位——把操作數(shù)看做有符號(hào)數(shù);邏輯移位——把操作數(shù)看做無(wú)符號(hào)數(shù)。移位位數(shù)放在CL寄存器中,假如只移1位,也可以直接寫(xiě)在指令中。例如: MOVCL,4 SHRAL,CL;AL中的內(nèi)容右移4位影響C,P,S,Z,O標(biāo)志。結(jié)果未溢出時(shí):左移1位≡操作數(shù)*2右移1位≡操作數(shù)/2例:把AL中的數(shù)x乘10由于10=8+2=23+21,所以可用移位實(shí)現(xiàn)乘10操作。程序如下: MOVCL,3 SALAL,1;2x MOVAH,AL SALAL,1;4xSALAL,1;8xADDAL,AH;8x+2x=10x四、控制轉(zhuǎn)移指令轉(zhuǎn)移指令(1)無(wú)條件轉(zhuǎn)移指令JMP格式:JMPlabel本指令無(wú)條件轉(zhuǎn)移到指定的目的地址,以執(zhí)行從該地址開(kāi)始的程序段。(2)條件轉(zhuǎn)移指令(補(bǔ)充內(nèi)容)①根據(jù)單個(gè)標(biāo)志位設(shè)立的條件轉(zhuǎn)移指令JB/JC;低于,或CF=1,則轉(zhuǎn)移JNB/JNC/JAE;高于或等于,或CF=0,則轉(zhuǎn)移JP/JPE;奇偶標(biāo)志PF=1(偶),則轉(zhuǎn)移JNP/JPO;奇偶標(biāo)志PF=0(奇),則轉(zhuǎn)移JZ/JE;結(jié)果為零(ZF=1),則轉(zhuǎn)移JNZ/JNE;結(jié)果不為零(ZF=0),則轉(zhuǎn)移JS;SF=1,則轉(zhuǎn)移JNS;SF=0,則轉(zhuǎn)移JO ;OF=1,則轉(zhuǎn)移JNO ;OF=0,則轉(zhuǎn)移②根據(jù)組合條件設(shè)立的條件轉(zhuǎn)移指令這類指令重要用來(lái)判斷兩個(gè)數(shù)的大小?!锱袛酂o(wú)符號(hào)數(shù)的大小JA高于則轉(zhuǎn)移條件為:CF=0∧ZF=0,即A>BJNA/JBE低于或等于則轉(zhuǎn)移條件為:CF=1∨ZF=1,即A≤BJBA<B則轉(zhuǎn)移JNBA≥B則轉(zhuǎn)移★判斷有符號(hào)數(shù)的大小JG;大于則轉(zhuǎn)移(A>B)條件為:(SF⊕OF=0)∧ZF=0JGE;大于或等于則轉(zhuǎn)移(A≥B)條件為:(SF⊕OF=0)∨ZF=1JLE;小于或等于則轉(zhuǎn)移(A≤B)條件為:(SF⊕OF=1)∨ZF=1JL;小于則轉(zhuǎn)移(A<B=條件為:(SF⊕OF=1)∧ZF=02、循環(huán)控制指令用在循環(huán)程序中以擬定是否要繼續(xù)循環(huán)。循環(huán)次數(shù)通常置于CX中。轉(zhuǎn)移的目的應(yīng)在距離本指令-128~+127的范圍之內(nèi)。循環(huán)控制指令不影響標(biāo)志位。(1)LOOP格式:LOOPlabel操作:(CX)-1→CX;若(CX)≠0,則轉(zhuǎn)至label處執(zhí)行;否則退出循環(huán),執(zhí)行LOOP后面的指令。LOOP指令與下面的指令段等價(jià): DECCX JNZlabel3、過(guò)程調(diào)用指令(1)調(diào)用指令CALL一般格式:CALLsub;sub為子程序的入口4、中斷指令(1)INTn執(zhí)行類型n的中斷服務(wù)程序,N=0~255五、解決器控制指令1、標(biāo)志位操作(1)CF設(shè)立指令CLC0→CFSTC1→CFCMCCF變反(2)DF設(shè)立指令CLD0→DF(串操作的指針移動(dòng)方向從低到高)STD1→DF(串操作的指針移動(dòng)方向從高到低)(3)IF設(shè)立指令 CLI0→IF(嚴(yán)禁INTR中斷) STI1→IF(開(kāi)放INTR中斷)HLT(halt)執(zhí)行HLT指令后,CPU進(jìn)入暫停狀態(tài)。第四章8086匯編語(yǔ)言程序設(shè)計(jì)偽指令CPU指令與偽指令之間的區(qū)別:(1)CPU指令是給CPU的命令,在運(yùn)營(yíng)時(shí)由CPU執(zhí)行,每條指令相應(yīng)CPU的一種特定的操作。而偽指令是給匯編程序的命令,在匯編過(guò)程中由匯編程序進(jìn)行解決。(2)匯編以后,每條CPU指令產(chǎn)生一一相應(yīng)的目的代碼;而偽指令則不產(chǎn)生與之相應(yīng)的目的代碼。1、數(shù)據(jù)定義偽指令(1)數(shù)據(jù)定義偽指令的一般格式為:[變量名]偽指令操作數(shù)[,操作數(shù)…]DB 用來(lái)定義字節(jié)(BYTE)DW 用來(lái)定義字(WORD)DD 用來(lái)定義雙字(DWORD)(2)操作數(shù)的類型可以是:①常數(shù)或常數(shù)表達(dá)式例如:DATA_BYTEDB10,5,10HDATA_WORDDW100H,100,-4DATA_DWDD2*30,0FFFBH②可認(rèn)為字符串(定義字符串最佳使用DB)例如:char1DB‘AB’③可認(rèn)為變量④可認(rèn)為?號(hào)操作符例如:XDB5,?,6?號(hào)只是為了給變量保存相應(yīng)的存儲(chǔ)單元,而不賦予變量某個(gè)擬定的初值。⑤反復(fù)次數(shù):NDUP(初值[,初值…])例如:ZERODB2DUP(3,5)XYZDB2DUP(0,2DUP(1,3),5)⑥在偽操作的操作數(shù)字段中若使用$,則表達(dá)的是地址計(jì)數(shù)器的當(dāng)前值。2、補(bǔ)充內(nèi)容:(1)類型PTR地址表達(dá)式例如:MOVBYTEPTR[BX],12HINCBYTEPTR[BX]注意:?jiǎn)尾僮鲾?shù)指令,當(dāng)操作數(shù)為基址、變址、基+變的時(shí)候必須定義3、符號(hào)定義偽指令(1)EQU格式:名字EQU表達(dá)式EQU偽指令將表達(dá)式的值賦予一個(gè)名字,以后可用這個(gè)名字來(lái)代替上述表達(dá)式。例:CONSTANTEQU100NEW_PORTEQUPORT_VAL+1(2)=(等號(hào))與EQU類似,但允許重新定義例: ┇ EMP=7 ;值為7 ┇ EMP=EMP+1 ;值為8(3)LABELLABEL偽指令的用途是定義標(biāo)號(hào)或變量的類型格式:名字LABEL類型變量的類型可以是BYTE,WORD,DWORD。標(biāo)號(hào)的類型可以是NEAR或FAR4、段定義偽指令與段有關(guān)的偽指令有:SEGMENT、ENDS、ASSUME、ORG(1)段定義偽指令的格式如下:段名SEGMENT[定位類型][組合類型][’類別’]┇段名ENDSSEGMENT和ENDS這兩個(gè)偽指令總是成對(duì)出現(xiàn),兩者前面的段名一致。兩者之間的刪節(jié)部分,對(duì)數(shù)據(jù)段、附加段及堆棧段,一般是符號(hào)、變量定義等偽指令。對(duì)于代碼段則是指令及偽指令。此外,還必須明確段和段寄存器的關(guān)系,這可由ASSUME語(yǔ)句來(lái)實(shí)現(xiàn)。(2)ASSUME格式:ASSUME段寄存器名:段名[,段寄存器名:段名[,…]]ASSUME偽指令告訴匯編程序,將某一個(gè)段寄存器設(shè)立為某一個(gè)邏輯段址,即明確指出源程序中邏輯段與物理段之間的關(guān)系。(3)ORG偽指令ORG規(guī)定了段內(nèi)的起始地址或偏移地址,其格式為:ORG <表達(dá)式>表達(dá)式的值即為段內(nèi)的起始地址或偏移地址,從此地址起連續(xù)存放程序或數(shù)據(jù)。5、匯編程序的一般結(jié)構(gòu)(記?。〥ATASEGMENT…DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATABGN:MOVAX,DATAMOVDS,AX….MOVAH,4CHINT21HCODEENDSENDBGN第三節(jié)程序設(shè)計(jì)順序程序的設(shè)計(jì)(略)分支程序的設(shè)計(jì)典型例題:1X>0Y=0X=0-1X<0程序?yàn)椋篗OVAL,XCMPAL,0JGEBIGMOVY,-1JMPEXITBIG:JEEQULMOVY,1JMPEXITEQUL:MOVY,0EXIT:….循環(huán)程序見(jiàn)講義。用計(jì)數(shù)控制循環(huán)第一章計(jì)算機(jī)基礎(chǔ)知識(shí)本章的重要內(nèi)容為不同進(jìn)位計(jì)數(shù)制計(jì)數(shù)方法、不同進(jìn)位制數(shù)之間互相轉(zhuǎn)換的方法、數(shù)和字符在計(jì)算機(jī)中的表達(dá)方法、簡(jiǎn)樸的算術(shù)運(yùn)算以及計(jì)算機(jī)系統(tǒng)的組成。下邊將本章的知識(shí)點(diǎn)作了歸類,圖1為本章的知識(shí)要點(diǎn)圖,圖1.2為計(jì)算機(jī)系統(tǒng)組成的示意圖。本章知識(shí)要點(diǎn)本章知識(shí)要點(diǎn)數(shù)制二進(jìn)制數(shù)(B)八進(jìn)制數(shù)(Q)十六進(jìn)制數(shù)(H)十進(jìn)制數(shù)(D)B)碼制帶符號(hào)數(shù)編碼奇偶校驗(yàn)碼字符編碼原碼反碼補(bǔ)碼奇校驗(yàn)碼偶校驗(yàn)碼ASCII碼BCD碼數(shù)字編碼規(guī)則字母編碼規(guī)則壓縮BCD碼非壓縮BCD碼計(jì)算機(jī)系統(tǒng)組成計(jì)算機(jī)系統(tǒng)組成硬件主機(jī)外部設(shè)備中央解決器(CPU)半導(dǎo)體存儲(chǔ)器控制器運(yùn)算器ROMRAM輸入設(shè)備輸出設(shè)備軟件系統(tǒng)軟件應(yīng)用軟件操作系統(tǒng):如DOS、Windows、Unix、Linux等其他系統(tǒng)軟件用戶應(yīng)用軟件其他應(yīng)用軟件各種計(jì)算機(jī)語(yǔ)言解決軟件:如匯編、解釋、編譯等軟件8086微解決器本章要從應(yīng)用角度上理解8086CPU的內(nèi)部組成、編程結(jié)構(gòu)、引腳信號(hào)功能、最小工作模式的系統(tǒng)配置、8086的存儲(chǔ)器組織、基本時(shí)序等概念。下面這一章知識(shí)的結(jié)構(gòu)圖。本章知識(shí)要點(diǎn)本章知識(shí)要點(diǎn)Intel8086微解決器時(shí)鐘發(fā)生器(8284)地址鎖存器(74LS373、8282)存儲(chǔ)器組織存儲(chǔ)器邏輯分段存儲(chǔ)器分體三總線(DB、AB、CB)時(shí)序時(shí)鐘周期(T狀態(tài))基本讀總線周期系統(tǒng)配置(最小模式)8086CPU數(shù)據(jù)收發(fā)器(8286、74LS245)邏輯地址物理地址奇地址存儲(chǔ)體(BHE)偶地址存儲(chǔ)體(A0)總線周期指令周期基本寫(xiě)總線周期復(fù)位操作時(shí)序中斷響應(yīng)時(shí)序寄存器的復(fù)位值執(zhí)行單元EU(AX、BX、CX、DX、SP、BP、SI、DI、標(biāo)志寄存器)執(zhí)行單元EU(AX、BX、CX、DX、SP、BP、SI、DI、標(biāo)志寄存器)內(nèi)部組成內(nèi)部組成總線接口單元BIU(CS、DS、SS、ES、IP)總線接口單元BIU(CS、DS、SS、ES、IP)地址/數(shù)據(jù)地址/數(shù)據(jù)控制負(fù)責(zé)地址BHE/S7、ALE引腳功能(最小模式)地址/狀態(tài)數(shù)據(jù)允許和收發(fā)DEN、DT/R負(fù)責(zé)讀寫(xiě)RD、WR、M/IO負(fù)責(zé)中斷INTR、NMI、INTA負(fù)責(zé)總線HOLD、HLDA協(xié)調(diào)CLK、READY、TEST模式選擇MN/MX=5V8086的指令系統(tǒng)本章重點(diǎn)是8086CPU指令的尋址方式,每條指令的格式、功能及標(biāo)志的影響;同時(shí)還涉及到存儲(chǔ)器單元的物理地址計(jì)算、標(biāo)志位填寫(xiě)和堆棧操作。下圖為本章知識(shí)結(jié)構(gòu)圖。立即數(shù)尋址、寄存器尋址、存儲(chǔ)器尋址……立即數(shù)尋址、寄存器尋址、存儲(chǔ)器尋址…….操作數(shù)尋址方式本章知識(shí)要點(diǎn)邏輯地址、物理地址本章知識(shí)要點(diǎn)邏輯地址、物理地址指令功能指令格式指令功能指令格式對(duì)標(biāo)志位影響對(duì)標(biāo)志位影響填寫(xiě)標(biāo)志位填寫(xiě)標(biāo)志位堆棧操作(入棧、出棧)堆棧指針(SP)堆棧結(jié)構(gòu)(后進(jìn)先出)堆棧操作(入棧、出棧)堆棧指針(SP)堆棧結(jié)構(gòu)(后進(jìn)先出)直接尋址立即數(shù)尋址直接尋址立即數(shù)尋址寄存器間接尋址寄存器尋址寄存器間接尋址寄存器尋址寄存器相對(duì)尋址存儲(chǔ)器尋址尋址方式寄存器相對(duì)尋址存儲(chǔ)器尋址尋址方式基址變址尋址基址變址尋址串操作尋址串操作尋址相對(duì)基址變址尋址I/O端口尋址 相對(duì)基址變址尋址I/O端口尋址隱含尋址隱含尋址指令功能指令功能數(shù)據(jù)傳送類(通用數(shù)據(jù)傳送指令、堆棧指令、互換指令、I/O傳送指令、換碼指令、有效地址傳送指令、標(biāo)志寄存器傳送指令)算術(shù)運(yùn)算類指令(加法指令,減法指令,乘法指令,除法指令,BCD碼調(diào)整指令)邏輯類指令(邏輯運(yùn)算指令、邏輯移位操作指令)串操作類指令(串傳送、比較、掃描、串存和取指令)控制轉(zhuǎn)移類指令(條件和無(wú)條件轉(zhuǎn)移、子程序調(diào)用和返回指令、子程序調(diào)用和返回、中斷)、)解決器控制類指令其他應(yīng)用軟件用戶應(yīng)用軟件應(yīng)用軟件其他應(yīng)用軟件用戶應(yīng)用軟件應(yīng)用軟件第四章匯編語(yǔ)言程序設(shè)計(jì)本章重要內(nèi)容是匯編語(yǔ)言類別、偽指令語(yǔ)句格式和作用、基本程序結(jié)構(gòu)、調(diào)用程序和被調(diào)用程序之間數(shù)據(jù)傳遞途徑以及匯編源程序上機(jī)調(diào)試過(guò)程。本章重點(diǎn)是閱讀程序和編寫(xiě)程序。下邊是本章的知識(shí)結(jié)構(gòu)圖。匯編語(yǔ)言語(yǔ)句類別匯編語(yǔ)言語(yǔ)句類別程序基本結(jié)構(gòu)順序結(jié)構(gòu)本章知識(shí)要點(diǎn)實(shí)指令語(yǔ)句分支結(jié)構(gòu)循環(huán)結(jié)構(gòu)過(guò)程(子程序)偽指令語(yǔ)句宏指令語(yǔ)句參數(shù)傳遞途徑寄存器約定存儲(chǔ)器約定堆棧傳遞程序開(kāi)發(fā)環(huán)節(jié):編輯匯編鏈接調(diào)試運(yùn)營(yíng)符號(hào)定義偽指令EQU、=符號(hào)定義偽指令EQU、=偽指令語(yǔ)句數(shù)據(jù)定義偽指令DB、DW、DD……段定義偽指令SEGMENT……ENDS過(guò)程定義偽指令PROC、ENDP段指派偽指令A(yù)SSUME程序定位偽指令ORG匯編結(jié)束偽指令END其他偽指令…….第五章半導(dǎo)體存儲(chǔ)器半導(dǎo)體存儲(chǔ)器是用半導(dǎo)體器件作為存儲(chǔ)介質(zhì)的存儲(chǔ)器。本章討論半導(dǎo)體存儲(chǔ)器芯片的類型、存儲(chǔ)原理、引腳功能、如何與CPU(或系統(tǒng)總線)連接等問(wèn)題。本章知識(shí)結(jié)構(gòu)圖如下。只存放二進(jìn)制數(shù)存放程序和數(shù)據(jù)只存放二進(jìn)制數(shù)存放程序和數(shù)據(jù)SRAMSRAMRAMRAMDRAM存儲(chǔ)器作用DRAM存儲(chǔ)器作用本章知識(shí)要點(diǎn)掩模ROM半導(dǎo)體存儲(chǔ)器芯片分類本章知識(shí)要點(diǎn)掩模ROM半導(dǎo)體存儲(chǔ)器芯片分類PROMROMPROMROM線譯碼部分譯碼與系統(tǒng)連接地址分派、片選邏輯、控制選擇全譯碼計(jì)算芯片數(shù)主存儲(chǔ)器設(shè)計(jì)引腳功能存儲(chǔ)容量存儲(chǔ)器芯片EEROMEPROMPROM`線譯碼部分譯碼與系統(tǒng)連接地址分派、片選邏輯、控制選擇全譯碼計(jì)算芯片數(shù)主存儲(chǔ)器設(shè)計(jì)引腳功能存儲(chǔ)容量存儲(chǔ)器芯片EEROMEPROMPROM第六章輸入輸出接口本章討論輸入/輸出接口的基本概念,涉及輸入/輸出接口的作用、內(nèi)部結(jié)構(gòu)、傳送信息的分析、IO端口編址以及主機(jī)通過(guò)接口與外設(shè)之間數(shù)據(jù)傳送的方式。下邊是本章的知識(shí)結(jié)構(gòu)圖。IO接口概念I(lǐng)O接口概念主機(jī)通過(guò)接口與外設(shè)數(shù)據(jù)傳送方式本章知識(shí)要點(diǎn)接口作用接口傳送信息的種類IO端口數(shù)據(jù)傳送方式程序控制方式控制信息狀態(tài)信息數(shù)據(jù)信息(開(kāi)關(guān)量、脈沖量、數(shù)據(jù)量、模擬量)IO端口編址方式單獨(dú)編址統(tǒng)一編址IO端標(biāo)語(yǔ)簡(jiǎn)樸的I/O芯片的使用中斷控制方式直接存儲(chǔ)器存取控制方式(DMA)無(wú)條件傳送有條件傳送(查詢)中斷與中斷控制器本章重要內(nèi)容:中斷的基本概念、CPU響應(yīng)中斷的條件、中斷響應(yīng)過(guò)程、中斷服務(wù)程序的執(zhí)行;8086/8088中斷系統(tǒng);可編程中斷控制器8259A的引腳功能、編程結(jié)構(gòu)以及工作工程。中斷概念中斷概念本章知識(shí)要點(diǎn)實(shí)現(xiàn)中斷與返回中斷請(qǐng)求中斷優(yōu)先級(jí)控制軟件查詢中斷源中斷源的中斷優(yōu)先級(jí)別中斷判優(yōu)中斷響應(yīng)中斷服務(wù)中斷返回中斷系統(tǒng)功能實(shí)現(xiàn)中斷優(yōu)先級(jí)控制中斷優(yōu)先級(jí)排隊(duì)中斷嵌套(高級(jí)中斷請(qǐng)求能中斷低檔中斷服務(wù))硬件查詢(菊花鏈)可編程中斷控制器(PIC)8259A的中斷管理方式實(shí)現(xiàn)中斷與返回中斷屏蔽方式優(yōu)先級(jí)設(shè)立方式實(shí)現(xiàn)中斷優(yōu)先級(jí)控制全嵌套方式優(yōu)先級(jí)自動(dòng)循環(huán)方式優(yōu)先級(jí)特殊循環(huán)方式特殊全嵌套方式中斷結(jié)束方式自動(dòng)EOI結(jié)束方式普通EOI結(jié)束方式特殊EOI結(jié)束方式中斷請(qǐng)求引入方式邊沿觸發(fā)方式電平觸發(fā)方式中斷查詢方式第八章定期器/計(jì)數(shù)器8253及應(yīng)用本章重要內(nèi)容是定期器/計(jì)算器的應(yīng)用場(chǎng)合;如何實(shí)現(xiàn)定期/計(jì)數(shù);可編程計(jì)數(shù)器/定期器8253芯片的內(nèi)部結(jié)構(gòu)、引腳功能、計(jì)數(shù)原理、6種工作方式下的工作條件和輸出波形特性。下邊是知識(shí)要點(diǎn)圖。軟件:延時(shí)子程序軟件:延時(shí)子程序硬件:數(shù)字邏輯電路定期/計(jì)數(shù)的實(shí)現(xiàn)下硬件:數(shù)字邏輯電路定期/計(jì)數(shù)的實(shí)現(xiàn)下本章知識(shí)要點(diǎn)采用可編程定期器/計(jì)數(shù)器本章知識(shí)要點(diǎn)采用可編程定期器/計(jì)數(shù)器引腳功能引腳功能通道的編程結(jié)構(gòu)通道的6種工作方式可編程定期器/計(jì)數(shù)器8253通道的編程結(jié)構(gòu)通道的6種工作方式可編程定期器/計(jì)數(shù)器8253芯片的使用:硬件連線、軟件編程芯片的使用:硬件連線、軟件編程方式0:計(jì)數(shù)結(jié)束中斷方式方式0:計(jì)數(shù)結(jié)束中斷方式方式1:可重新觸發(fā)單穩(wěn)態(tài)輸出方式方式1:可重新觸發(fā)單穩(wěn)態(tài)輸出方式方式2:分頻器方式方式2:分頻器方式方式3:方波發(fā)生器方式方式3:方波發(fā)生器方式方式4:軟件選通觸發(fā)方式8253的工作方式方式4:軟件選通觸發(fā)方式8253的工作方式方式5:硬件選通觸發(fā)方式方式5:硬件選通觸發(fā)方式第九章A/D和D/A轉(zhuǎn)換本章重點(diǎn)是A/D轉(zhuǎn)換的任務(wù)和轉(zhuǎn)換原理,D/A轉(zhuǎn)換的任務(wù)和轉(zhuǎn)換原理,常用A/D轉(zhuǎn)換器(ADC)集成芯片和D/A轉(zhuǎn)換器(DAC)集成芯片的外部引腳功能、內(nèi)部結(jié)構(gòu)、工作過(guò)程、性能指標(biāo)以及實(shí)際應(yīng)用。數(shù)字量A/D:模擬量數(shù)字量A/D:模擬量轉(zhuǎn)換任務(wù)轉(zhuǎn)換任務(wù)D/A:數(shù)字量模擬量D/A:數(shù)字量模擬量基準(zhǔn)電壓、權(quán)電阻解碼網(wǎng)絡(luò)基準(zhǔn)電壓、權(quán)電阻解碼網(wǎng)絡(luò)A/D基準(zhǔn)電壓、T型電阻解碼網(wǎng)絡(luò)轉(zhuǎn)換原理本章知識(shí)要點(diǎn)A/D基準(zhǔn)電壓、T型電阻解碼網(wǎng)絡(luò)轉(zhuǎn)換原理本章知識(shí)要點(diǎn)常用方法常用方法逐次逼近式,計(jì)數(shù)器式D/A逐次逼近式,計(jì)數(shù)器式D/A積分式,并聯(lián)式積分式,并聯(lián)式硬件連線:同微機(jī)系統(tǒng)總線的連接硬件連線:同微機(jī)系統(tǒng)總線的連接集成芯片使用集成芯片使用軟件編程:控制轉(zhuǎn)換,控制數(shù)字量傳送軟件編程:控制轉(zhuǎn)換,控制數(shù)字量傳送ADC:將CPU解決后的數(shù)字量轉(zhuǎn)換為模擬量ADC:將CPU解決后的數(shù)字量轉(zhuǎn)換為模擬量將CPU解決后的數(shù)字量轉(zhuǎn)換為模擬量,送控制現(xiàn)場(chǎng)集成芯片應(yīng)用場(chǎng)合將CPU解決后的數(shù)字量轉(zhuǎn)換為模擬量,送控制現(xiàn)場(chǎng)集成芯片應(yīng)用場(chǎng)合DACDAC與運(yùn)算放大器一起組成各種波形發(fā)生器與運(yùn)算放大器一起組成各種波形發(fā)生器如下圖所示,以8088微解決器為核心的IBMPC/XT機(jī)與DAC0832連接,實(shí)現(xiàn)波形發(fā)生器。IBMPC/XT機(jī)使用10根地址線A0~A9尋址I/O端口,AEN為地址允許信號(hào),低電平時(shí)選中端口。DAC0832的參考電壓VREF=-5V,VREF的范圍為0~5V,計(jì)算式為,其中,N是由DAC0832轉(zhuǎn)換的數(shù)字量相應(yīng)的十進(jìn)制值。Vout的輸出范圍是-5V~5V。根據(jù)下圖一所示的DAC0832的硬件連接,說(shuō)明其工作方式。假如DAC0832端口地址為140H,請(qǐng)?jiān)谙聢D一中畫(huà)出相應(yīng)的譯碼電路?,F(xiàn)有1ms的延時(shí)子程序DELAY,請(qǐng)編寫(xiě)程序片段實(shí)現(xiàn)輸出右圖二的所示波形。什么是中斷?什么是中斷向量?中斷向量表的地址范圍?答:中斷就是CPU在執(zhí)行當(dāng)前程序時(shí)由于內(nèi)外部事件引起CPU暫時(shí)停止當(dāng)前正在執(zhí)行的程序而轉(zhuǎn)向執(zhí)行請(qǐng)求CPU暫時(shí)停止的內(nèi)外部事件的服務(wù)程序,該程序解決完后又返回繼續(xù)執(zhí)行被停止的程序;中斷向量是中斷解決子程序的入口地址;地址范圍是00000H-003FFH。微機(jī)系統(tǒng)的硬件由哪幾部分組成?答:微型計(jì)算機(jī)(微解決器,存儲(chǔ)器,I/0接口,系統(tǒng)總線),外圍設(shè)備,電源。什么是微機(jī)的總線,分為哪三組?答:是傳遞信息的一組公用導(dǎo)線。分三組:地址總線,數(shù)據(jù)總線,控制總線。8086/8088CPU的內(nèi)部結(jié)構(gòu)分為哪兩大模塊,各自的重要功能是什么?答:總線接口部件(BIU)功能:根據(jù)執(zhí)行單元EU的請(qǐng)求完畢CPU與存儲(chǔ)器或IO設(shè)備之間的數(shù)據(jù)傳送。執(zhí)行部件(EU),作用:從指令對(duì)列中取出指令,對(duì)指令進(jìn)行譯碼,發(fā)出相應(yīng)的傳送數(shù)據(jù)或算術(shù)的控制信號(hào)接受由總線接口部件傳送來(lái)的數(shù)據(jù)或把數(shù)據(jù)傳送到總線接口部件進(jìn)行算術(shù)運(yùn)算。8086指令隊(duì)列的作用是什么?答:作用是:在執(zhí)行指令的同時(shí)從內(nèi)存中取了一條指令或下幾條指令,取來(lái)的指令放在指令隊(duì)列中這樣它就不需要象以往的計(jì)算機(jī)那樣讓CPU輪番進(jìn)行取指和執(zhí)行的工作,從而提高CPU的運(yùn)用率。8086的存儲(chǔ)器空間最大可認(rèn)為多少?如何用16位寄存器實(shí)現(xiàn)對(duì)20位地址的尋址?完畢邏輯地址到物理地址轉(zhuǎn)換的部件是什么?答:8086的存儲(chǔ)器空間最大可認(rèn)為2^20(1MB);8086計(jì)算機(jī)引入了分段管理機(jī)制,當(dāng)CPU尋址某個(gè)存儲(chǔ)單元時(shí),先將段寄存器內(nèi)的內(nèi)容左移4位,然后加上指令中提供的16位偏移地址形成20位物理地址。段寄存器CS=1200H,指令指針寄存器IP=FF00H,此時(shí),指令的物理地址為多少?指向這一物理地址的CS值和IP值是唯一的嗎?答:指令的物理地址為21F00H;CS值和IP值不是唯一的,例如:CS=2100H,IP=0F00H。設(shè)存儲(chǔ)器的段地址是4ABFH,物理地址為50000H,其偏移地址為多少?答:偏移地址為54100H。(物理地址=段地址*16+偏移地址)8086/8088CPU有哪幾個(gè)狀態(tài)標(biāo)志位,有哪幾個(gè)控制標(biāo)志位?其意義各是什么?答:狀態(tài)標(biāo)志位有6個(gè):ZF,SF,CF,OF,AF,PF。其意思是用來(lái)反映指令執(zhí)行的特性,通常是由CPU根據(jù)指令執(zhí)行結(jié)果自動(dòng)設(shè)立的;控制標(biāo)志位有3個(gè):DF,IF,TF。它是由程序通過(guò)執(zhí)行特定的指令來(lái)設(shè)立的,以控制指令的操作方式。8086CPU的AD0~AD15是什么引腳?答:數(shù)據(jù)與地址引腳INTR、INTA、NMI、ALE、HOLD、HLDA引腳的名稱各是什么?答:INTR是可屏蔽請(qǐng)求信號(hào),INTA中斷響應(yīng)信號(hào),NMI是不可屏蔽中斷請(qǐng)求信號(hào),ALE是地址鎖存允許信號(hào),HOLD總線請(qǐng)求信號(hào),HLDA總線請(qǐng)求響應(yīng)信號(hào)。虛擬存儲(chǔ)器有哪兩部分組成?答:有主存儲(chǔ)器和輔助存儲(chǔ)器。在80x86中,什么是邏輯地址、線性地址、物理地址?答:線性地址是連續(xù)的不分段的地址;邏輯地址是由程序提供的地址;物理地址是內(nèi)存單元的實(shí)際地址。

段描述符分為哪幾種?答:分為三大類,程序段描述符,系統(tǒng)段描述符,門描述符。RAM有幾種,各有什么特點(diǎn)?ROM有幾種,各有什么特點(diǎn)?答:RAM有兩種,SRAM(靜態(tài)RAM),它采用觸發(fā)器電路構(gòu)成一個(gè)二進(jìn)制位信息的存儲(chǔ)單元,這種觸發(fā)器一般由6個(gè)晶體管組成,它讀出采用單邊讀出的原理,寫(xiě)入采用雙邊寫(xiě)入原理;DRAM(動(dòng)態(tài)RAM),它集成度高,內(nèi)部存儲(chǔ)單元按矩陣形式排列成存儲(chǔ)體,通常采用行,列地址復(fù)合選擇尋址法。ROM有5種,固定掩摸編程ROM,可編程PROM,紫外光檫除可編程EPROM,電可檫除的可編程EPROM,閃速存儲(chǔ)器。若用4K*1位的RAM芯片組成8K*8為的存儲(chǔ)器,需要多少芯片?A19—A0地址線中哪些參與片內(nèi)尋址,哪些用做芯片組的片選信號(hào)?答:需要16片芯片;其中A11-A0參與片內(nèi)尋址;A12做芯片組的片選信號(hào)。若系統(tǒng)分別使用512K*8、1K*4、16K*8、64K*1的RAM,各需要多少條地址線進(jìn)行尋址,各需要多少條數(shù)據(jù)線?答:512K*8需要19條地址線,8條數(shù)據(jù)線。1K*4需要10條地址線,4條數(shù)據(jù)線。16K*8需要14條地址線,8條數(shù)據(jù)線。64K*1需要14條地址線,1條數(shù)據(jù)線。某微機(jī)系統(tǒng)的RAM容量為8K*8,若首地址為4800H,則最后一個(gè)單元的地址是多少?答:最后一個(gè)單元的地址是:4800H+2^13-1什么是總線,微機(jī)中的總線通常分為哪幾類?答:是一組信號(hào)線的集合,是一種在各模塊間傳送信息的公共通路;有四類,片內(nèi)總線,微解決器總線,系統(tǒng)總線,外總線。微解決器為什么需要用接口和外設(shè)相連接?答:由于許多接口設(shè)備中,在工作原理,驅(qū)動(dòng)方式,信息格式以及工作速度方面彼此相差很大,因此為了進(jìn)行速度和工作方式的匹配,并協(xié)助完畢兩者之間數(shù)據(jù)傳送控制任務(wù)。一般的I/O接口電路有哪四種寄存器,它們各自的作用是什么?答:數(shù)據(jù)輸入寄存器,數(shù)據(jù)輸入寄存器,狀態(tài)寄存器和控制寄存器。數(shù)據(jù)端口能對(duì)傳送數(shù)據(jù)提供緩沖,隔離,寄存的作用;狀態(tài)寄存器用來(lái)保存外設(shè)或接口的狀態(tài);控制寄存器用來(lái)寄存CPU通過(guò)數(shù)據(jù)總線發(fā)來(lái)的命令。8086最多可有多少級(jí)中斷?按照產(chǎn)生中斷的方法分為哪兩大類?答:有8級(jí);按照產(chǎn)生中斷的方法可分為硬件中斷和軟件中斷。什么是中斷?什么是中斷向量?中斷向量表的地址范圍?答:中斷就是CPU在執(zhí)行當(dāng)前程序時(shí)由于內(nèi)外部事件引起CPU暫時(shí)停止當(dāng)前正在執(zhí)行的程序而轉(zhuǎn)向執(zhí)行請(qǐng)求CPU暫時(shí)停止的內(nèi)外部事件的服務(wù)程序,該程序解決完后又返回繼續(xù)執(zhí)行被停止的程序;中斷向量是中斷解決子程序的入口地址;地址范圍是00000H-003FFH。中斷向量表的功能是什么?若中斷向量號(hào)分別為1AH和20H,則它們的中斷向量在中斷向量表的什么位置上?答:中斷向量表的功能是當(dāng)中斷源發(fā)出中斷請(qǐng)求時(shí),即可查找該表,找出其中斷向量,就可轉(zhuǎn)入相應(yīng)的中斷服務(wù)子程序。1AH在中斷向量表的位置是1AH*4=68H在中斷向量表0000:0068處;20H在中斷向量表的位置是80H在中斷向量表0000:0080處。通常,解決中斷優(yōu)先級(jí)的方法有哪幾種?答:3種,軟件查詢擬定優(yōu)先級(jí),硬件優(yōu)先級(jí)排隊(duì)電路擬定優(yōu)先級(jí),具體中斷屏蔽的接口電路。8259A通過(guò)級(jí)聯(lián)的方式可以由幾片構(gòu)成最多多少級(jí)優(yōu)先權(quán)的中斷源。答:8259A通過(guò)級(jí)聯(lián)的方式由9片構(gòu)成最多64級(jí)優(yōu)先權(quán)的中斷源。簡(jiǎn)述中斷控制器8259A的內(nèi)部結(jié)構(gòu)和重要功能。答:8259A的內(nèi)部結(jié)構(gòu)有數(shù)據(jù)總線緩沖器,讀寫(xiě)邏輯電路,級(jí)聯(lián)緩沖比較器,中斷請(qǐng)求寄存器(IRR),中斷屏蔽寄存器(IMR),中斷服務(wù)寄存器(ISR),優(yōu)先權(quán)判別器(PR),控制邏輯。8259A的內(nèi)部寄存器中IRR、IMR、ISR三個(gè)寄存器的作用是什么?答:見(jiàn)課本153頁(yè)。8259A有哪些中斷結(jié)束方式,分別合用于哪些場(chǎng)合。答:8259A有2種中斷結(jié)束方式:中斷自動(dòng)結(jié)束方式,中斷非自動(dòng)結(jié)束方式(一般中斷和特殊中斷);中斷自動(dòng)結(jié)束方式只適合有一塊8259A,并且各中斷不發(fā)生嵌套的情況。中斷非自動(dòng)結(jié)束方式只能適合與全嵌套方式下不能用與循環(huán)優(yōu)先級(jí)方式。8259A對(duì)優(yōu)先級(jí)的管理方式有哪幾種,各是什么含義?答:有4種,普通全嵌套方式,特殊全嵌套方式,自動(dòng)循環(huán)方式,優(yōu)先級(jí)特殊循環(huán)方式(具體見(jiàn)課本P159和P160)8259A的初始化命令字和操作命令字有哪些,其功能是什么;哪些應(yīng)寫(xiě)入奇地址,哪些應(yīng)寫(xiě)入偶地址。答:8259A的初始化命令字ICW1,ICW2,ICW3,ICW4;操作命令字OCW1,OCW2,OCW3。(見(jiàn)課本P155到P158);ICW2,ICW3,ICW4,OCW1寫(xiě)如奇地址,ICW1,OCW2,OCW3為偶地址。簡(jiǎn)述8259A的初始化過(guò)程。答:8259A的初始化編程,需要CPU向它輸出一個(gè)2—4字節(jié)的初始化命令字,輸出初始化命令字的流程如圖所示,其中ICW1和ICW2是必須的,而ICW3和ICW4需根據(jù)具體的情況來(lái)加以選擇。各初始化命令字的安排與作用分?jǐn)⑷缦拢?253有幾個(gè)計(jì)數(shù)通道,每條計(jì)數(shù)通道有哪些信號(hào)線,其作用是什么?答:8253有三個(gè)計(jì)數(shù)通道,每個(gè)計(jì)數(shù)通道有3條信號(hào)線:CLK:計(jì)數(shù)輸入用于輸入定期基準(zhǔn)脈沖或計(jì)數(shù)脈沖.OUT:輸出信號(hào)以相應(yīng)的電平指示計(jì)數(shù)的完畢或輸出脈沖的波型.GATA:選通輸入用于啟動(dòng)或嚴(yán)禁計(jì)數(shù)器的操作,以使計(jì)數(shù)器和計(jì)數(shù)輸入信號(hào)同步。8253有幾種工作方式,其特點(diǎn)是什么?答:六種方式(見(jiàn)課本P224)8253的內(nèi)部寄存器及各位的意義是什么?答:8253的內(nèi)部寄存器有四個(gè),8位的控制寄存器:初始化時(shí),將控制字寫(xiě)入該寄存器;16位的計(jì)數(shù)器初值寄存器,初始化是寫(xiě)入該計(jì)數(shù)器的初始值,其最大初始值為0000H;16位的減一計(jì)數(shù)器,計(jì)數(shù)器的初值由計(jì)數(shù)初值寄存器送入減法計(jì)數(shù)器,當(dāng)計(jì)數(shù)輸入端輸入一個(gè)計(jì)數(shù)脈沖時(shí),減法計(jì)數(shù)器內(nèi)容減一;16位的輸出鎖存器用來(lái)鎖存計(jì)數(shù)脈沖時(shí),減法計(jì)數(shù)器內(nèi)容減一。8255A的功能是什么,有哪幾個(gè)控制字,各位的意義是什么?答:8255A是一種通用的可編程程序并行I/O接口芯片.它有兩個(gè)控制字,一個(gè)是方式選擇控制字,它的作用是實(shí)現(xiàn)對(duì)8255A的各個(gè)端口的選擇。一個(gè)是對(duì)C口進(jìn)行置位或復(fù)位控制字.它的作用是能實(shí)現(xiàn)對(duì)端口C的每一位進(jìn)行控制。8255A的A口、B口、C口有哪幾種工作方式,其特點(diǎn)是什么?C口有哪些使用特點(diǎn)?答:8255A的A口可以工作在3種工作方式的任何一種,B口只能工作在方式0或方式1,C口則經(jīng)常配合端口A和端口B工作,為這兩個(gè)端口的輸入/輸出傳輸提供控制信號(hào)和狀態(tài)信號(hào)。同步通信、異步通信的幀格式各是什么?什么是奇、偶校驗(yàn)?答:異步通信的幀格式是用一個(gè)起始位表達(dá)傳送字符的開(kāi)始,用1-2個(gè)停止位表達(dá)字符結(jié)束。起始位與停止位之間是數(shù)據(jù)位,數(shù)據(jù)位后是校驗(yàn)位,數(shù)據(jù)的最底位緊跟起始位,其他各位順序傳送;同步通信的幀格式是在每組字符之前必須加上一個(gè)或多個(gè)同步字符做為一個(gè)信息幀的起始位。什么是波特率?若在串行通信中的波特率是1200b/s,8位數(shù)據(jù)位,1個(gè)停止位,無(wú)校驗(yàn)位,傳輸1KB的文獻(xiàn)需要多長(zhǎng)時(shí)間?答:波特率是單位時(shí)間內(nèi)通信系統(tǒng)所傳送的信息量。需要多長(zhǎng)時(shí)間=1024/(1200/10)=8.53s對(duì)8255A進(jìn)行初始化,規(guī)定端口A工作于方式1,輸入;端口B工作于方式0,輸出;端口C的高4位配合端口A工作,低4位為輸入。設(shè)控制口的地址為006CH。答:由題知應(yīng)為10111001H(B9H)MOVAL,B9HMOVDX,006CHOUTDX,AL設(shè)8255A的四個(gè)端口地址分別為00C0H、00C2H、00C4H和00C6H,規(guī)定用置0、置1的方法對(duì)PC6置1,對(duì)PC4置0。答:MOVDX,00C0H;端口地址MOVAL,00001101;對(duì)PC6置1OUTDX,ALMOVAL,00001000;對(duì)PC4置0OUTDX,AL試按照如下規(guī)定對(duì)8259A進(jìn)行初始化:系統(tǒng)中只有一片8259A,中斷請(qǐng)求信號(hào)用電平觸發(fā)方式,下面要用ICW4,中斷類型碼為60H、61H、62H……67H,用全嵌套方式,不用緩沖方式,采用中斷自動(dòng)結(jié)束方式。設(shè)8259A的端口地址為94H和95H。答:MOVDX,94H;偶地址MOVAL,00011011B;ICW1OUTDX,ALMOVAL,10011111B;ICW2,中斷源在IR7MOVDX,95H;奇地址OUTDX,ALMOVAL,00000011B;ICW4OUTDX,AL試編程對(duì)8253初始化啟動(dòng)其工作。規(guī)定計(jì)數(shù)器0工作于模式1,初值為3000H;計(jì)數(shù)器1工作于模式3,初值為100H;計(jì)數(shù)器2工作于模式4,初值為4030H。設(shè)端口地址為40H、41H、42H和43H。答:MOVAL,00011110H;控制字OUT43H,ALMOVAL,3000H;計(jì)數(shù)初值OUT40H,ALMOVAL,01010110H;計(jì)數(shù)器1OUT43H,ALMOVAL,100HOUT41H,ALMOVAL,10011000H;計(jì)數(shù)器2OUT43H,ALMOVAL,4030HOUT42H,AL模擬試題一一、簡(jiǎn)答題:1.簡(jiǎn)述USB總線的特點(diǎn)。答:1)具有即插即用特性,為USB接口設(shè)計(jì)的驅(qū)動(dòng)程序和應(yīng)用程序可自動(dòng)啟動(dòng)、成本低,節(jié)省空間,為開(kāi)放性的不具有專利版權(quán)的抱負(fù)工業(yè)標(biāo)準(zhǔn)。:2)可動(dòng)態(tài)連接和重新配置外設(shè),支持熱插拔功能;3)允許多臺(tái)設(shè)備同時(shí)工作;4)可以向USB總線上的設(shè)備供電,總線上的設(shè)備可以自備電源;5)通訊協(xié)議支持等時(shí)數(shù)據(jù)傳輸和異步消息傳輸?shù)幕旌夏J剑?)支持實(shí)時(shí)語(yǔ)音、音頻、和視頻數(shù)據(jù)傳輸。2.什么是中斷類型碼?什么叫中斷向量?什么叫中斷向量表?它們之間有什么聯(lián)系答:8086/8088系統(tǒng)可以解決256種中斷,為了區(qū)別每一種中斷,為每個(gè)中斷安排一個(gè)號(hào)碼,稱為中斷類型碼。每一種中斷服務(wù)程序在內(nèi)存中的起始地址稱為中斷向量,以32位邏輯地址表達(dá),即為CS:IP。把所有中斷向量存儲(chǔ)在內(nèi)存中的某一個(gè)連續(xù)區(qū)中,這個(gè)連續(xù)的存儲(chǔ)區(qū)稱為中斷向量表。中斷向量CS:IP在中斷向量表中的位置為:中斷向量表中偏移量為(中斷類型碼×4)的單元中存放IP的值,偏移量為(中斷類型碼×4+2)的單元中存放CS的值。3.簡(jiǎn)述高速緩沖存儲(chǔ)器Cache為什么可以實(shí)現(xiàn)高速的數(shù)據(jù)存?。看穑焊咚倬彌_存儲(chǔ)器Cache是根據(jù)程序局部性原理來(lái)實(shí)現(xiàn)高速的數(shù)據(jù)存取。即在一個(gè)較小的時(shí)間間隔內(nèi),程序所要用到的指令或數(shù)據(jù)的地址往往集中在一個(gè)局部區(qū)域內(nèi),因而對(duì)局部范圍內(nèi)的存儲(chǔ)器地址頻繁訪問(wèn),而對(duì)范圍外的地址則范圍甚少的現(xiàn)象稱為程序訪問(wèn)的局部性原理。假如把正在執(zhí)行的指令地址附近的一小部分指令或數(shù)據(jù),即當(dāng)前最活躍的程序或數(shù)據(jù)從主存成批調(diào)入Cache,供CPU在一段時(shí)間內(nèi)隨時(shí)使用,就一定能大大減少CPU訪問(wèn)主存的次數(shù),從而加速程序的運(yùn)營(yíng)。有一個(gè)由20個(gè)字組成的數(shù)據(jù)區(qū),其起始地址為3500H:0320H。試寫(xiě)出數(shù)據(jù)區(qū)首末單元的實(shí)際地址。答:數(shù)據(jù)區(qū)首地址=3500H×10H+0320H=33320H數(shù)據(jù)區(qū)末地址=33320H+28H-1=33347H設(shè)有一個(gè)具有16位地址和8位數(shù)據(jù)的存儲(chǔ)器,問(wèn):(1)該存儲(chǔ)器能存書(shū)多少個(gè)字節(jié)的信息?(2)假如存儲(chǔ)器由8K×4位RAM芯片組成,需要多少片?(3)需要地址多少位做芯片選擇?答:(1)由于8位二進(jìn)制數(shù)為1個(gè)字節(jié),所以16位地址能存儲(chǔ)216=64KB個(gè)字節(jié)的信息;(2)需要64K×8/8K×4=16片RAM(3)由于需要16片來(lái)構(gòu)成存儲(chǔ)器,而16片需要4位地址線進(jìn)行譯碼輸出,故需要4位做芯片選擇。定性分析微型計(jì)算機(jī)總線的性能指標(biāo)。答:微型計(jì)算機(jī)總線的重要職能是負(fù)責(zé)計(jì)算機(jī)各模塊間的數(shù)據(jù)傳輸,對(duì)總線性能的衡量也是圍繞這一性能而進(jìn)行的。性能中最重要的是數(shù)據(jù)傳輸率,此外,可操作性、兼容性和性能價(jià)格比也是很重要的技術(shù)特性。具體來(lái)說(shuō),總線的重要性能指標(biāo)有以下幾項(xiàng):(1)總線寬度:以位數(shù)表達(dá)。(2)標(biāo)準(zhǔn)傳輸率Mb/s:是總線工作頻率與總線寬度的字節(jié)數(shù)之積。(3)時(shí)鐘同步/異步:總線中與時(shí)鐘同步工作的稱為同步總線;與時(shí)鐘不同步工作的稱為異步總線。這取決于數(shù)據(jù)傳輸時(shí)源模塊與目的模塊間的協(xié)議約定。(4)信號(hào)線數(shù):這是地址總線、數(shù)據(jù)總線和控制總線線數(shù)的總和。信號(hào)線數(shù)和系統(tǒng)的復(fù)雜限度成正比關(guān)系。(5)負(fù)載能力:以系統(tǒng)中可以連接的擴(kuò)展電路板數(shù)表達(dá)。(6)總線控制方法:涉及突發(fā)傳輸、并發(fā)工作、自動(dòng)配置、仲裁方式、邏輯方式、中斷方式等項(xiàng)內(nèi)容。(7)擴(kuò)展板尺寸:這項(xiàng)指標(biāo)對(duì)電路板生產(chǎn)廠家很重要。(8)其他指標(biāo):電源是5V還是3V,能否擴(kuò)展64位寬度等。任何系統(tǒng)的研制和外圍模塊的開(kāi)發(fā),都必須服從其采用的總線規(guī)范。虛擬存儲(chǔ)器的含義是什么?答:虛擬存儲(chǔ)器是以存儲(chǔ)器訪問(wèn)的局部性為基礎(chǔ),建立在主存-輔存物理體系結(jié)構(gòu)上的存儲(chǔ)管理技術(shù)。在存儲(chǔ)系統(tǒng)中,由于主存容量不能滿足用戶的需要,因而引入輔存作為后援。即輔存做主存用,擴(kuò)大編程者的使用空間。二、編程及綜合題1.已知8255A的地址為0060H~0063H,A組設(shè)立方式1,端口A作為輸入,PC6PC7作為輸出,B組設(shè)立方式1,端口B作為輸入,編制初始化程序.。答案:MOVDX,0063HMOVAL,00110111BOUTDX,AL2編寫(xiě)8253初始化程序。如下圖所示(注意端口地址),規(guī)定3個(gè)計(jì)數(shù)通道分別完畢以下功能:(1)通道0工作于方式3,輸出頻率為2KHZ的方波;(2)通道1產(chǎn)生寬度為480us的單脈沖;(3)通道2用硬件方式觸發(fā),輸出負(fù)脈沖,時(shí)間常數(shù)為26。(提醒:8253的端口地址分別為:0310H、0312H、0314H、0316H)答案:編寫(xiě)8253的初始化程序1.擬定端口地址:0310H、0312H、0314H、0316H2.擬定工作方式:通道0,方式3通道1,方式1通道2,方式53.擬定計(jì)數(shù)值:通道0:N0=1MHz/2KHz=500通道1:N1=480us/(1/1mhz)=480通道2:N2=264.?dāng)M定控制字:通道0:00110111B通道1:01110011B通道2:10011011B對(duì)3個(gè)通道的初始化程序如下:;通道0初始化程序MOVDX,316HMOVAL,00110111BOUTDX,ALMOVDX,310HMOVAL,00HOUTDX,ALMOVAL,05HOUTDX,AL;通道1的初始化程序MOVDX,316HMOVAL,BOUTDX,ALMOVDX,312HMOVAL,80HOUTDX,ALMOVAL,04HOUTDX,AL;通道2初始化程序MOVDX,316HMOVAL,10011011BOUTDX,ALMOVDX,314HMOVAL,26HOUTDX,AL模式試題二一、

填空:1、設(shè)字長(zhǎng)為八位,有x=-1,y=124,則有:[x+y]補(bǔ)=01111011[x-y]補(bǔ)=10000011;2、數(shù)制轉(zhuǎn)換:247.86=H=______________BCD;3、在8086CPU中,由于BIU和EU分開(kāi),所以_____和_____可以重疊操作,提高了CPU的運(yùn)用率;4、8086的中斷向量表位于內(nèi)存的_______區(qū)域,它可以容納____個(gè)中斷向量,每一個(gè)向量占____個(gè)字節(jié);5、8086系統(tǒng)中,地址FFFF0H是___________________地址;6、8086CPU的MN/MX引腳的作用是____________________;7、8251芯片中設(shè)立了_____、_____和______三種犯錯(cuò)標(biāo)志;8、8086CPU中典型總線周期由____個(gè)時(shí)鐘周期組成,其中T1期間,CPU輸出______信息;如有必要時(shí),可以在__________兩個(gè)時(shí)鐘周期之間插入1個(gè)或多個(gè)TW等待周期。9、8259A共有___個(gè)可編程的寄存器,它們分別用于接受CPU送來(lái)的______命令字和________命令字。

二、簡(jiǎn)答題:1、什么是信號(hào)的調(diào)制與解調(diào)?為什么要進(jìn)行調(diào)制和解調(diào)?試舉出一種調(diào)制的方式。串行長(zhǎng)距離通信時(shí),需要運(yùn)用模擬信道來(lái)傳輸數(shù)字信號(hào),由于信道的頻帶窄,一般為300~3400HZ,而數(shù)字信號(hào)的頻帶相稱寬,故傳輸時(shí)必須進(jìn)行調(diào)制,以免發(fā)生畸變而導(dǎo)致傳輸犯錯(cuò)。(3分)調(diào)制是將數(shù)字信號(hào)?模擬信號(hào)。而解調(diào)則是相反。例如FSK制(調(diào)頻制或稱數(shù)字調(diào)頻)可將數(shù)字“1”和“0”分別調(diào)制成2400HZ和1200HZ的正弦波信號(hào)。(2分)已有AX=E896H,BX=3976H,若執(zhí)行ADDBX,AX指令,則結(jié)果BX,AX,標(biāo)志位CF,OF,ZF各為什么值?BX=220CH(1分)AX=E896H(1分)CF=1(1分)OF=0(1分)ZF=0(1分)三、閱讀程序與接口芯片初始化:1、源程序如下:MOVCL,4 MOVAX,[2023H]

SHLAL,CL

SHRAX,CLMOV[2023H],AX試問(wèn):j若程序執(zhí)行前,數(shù)據(jù)段內(nèi)(2023H)=09H,(2023H)=03H,則執(zhí)行后有(2023H)=_____,(2023H)=______。k本程序段的功能_________________________。2、源程序如下:MOVAL,0B7H

ANDAL,0DDH

XORAL,81H

ORAL,33HJPLAB1JMPLAB2試問(wèn):j執(zhí)行程序后AL=_______;k程序?qū)⑥D(zhuǎn)到哪一個(gè)地址執(zhí)行:__________。3、源程序如下:MOVCX,9MOVAL,01HMOVSI,1000HNEXT:MOV[SI],ALINCSISHLAL,1LOOPNEXT

試問(wèn):j執(zhí)行本程序后有:AL=_____;SI=______;CX=______;k本程序的功能是______________________________。4、某系統(tǒng)中8253占用地址為100H~103H。初始化程序如下:MOVDX,103HMOVAL,16HOUTDX,ALSUBDX,3OUTDX,AL試問(wèn):j此段程序是給8253的哪一個(gè)計(jì)數(shù)器初始化?安排工作在哪種工作方式?__________________;k若該計(jì)數(shù)器的輸入脈沖的頻率為1MHZ,則其輸出脈沖的頻率為:___________。5、已知某8255A在系統(tǒng)中占用88~8BH號(hào)端口地址,現(xiàn)欲安排其PA,PB,PC口所有為輸出,PA,PB口均工作于方式0模式,并將PC6置位,使PC3復(fù)位,試編寫(xiě)出相應(yīng)的初始化程序:模式試題二參考答案一、填空題2、F7.DCH.10000110BCD3、取指令執(zhí)行指令4、00000H~003FFH區(qū)256個(gè)4個(gè)5、CPU復(fù)位以后執(zhí)行第一條指令的地址6、決定CPU工作在什么模式(最小/最大)7、奇/偶錯(cuò)幀格式錯(cuò)溢犯錯(cuò)8、4個(gè)地址T3和T49、7個(gè)初始化操作三、閱讀程序與接口芯片初始化:1、(2023H)=39H(2023H)=00H將(2023H),(2023H)兩相鄰單元中存放的未組合型BCD碼壓縮成組合型BCD碼,并存入(2023H)單

溫馨提示

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