




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1—1簡述計算機和微型計算機通過了哪些重要發(fā)展階段?1—2什么叫微解決器?什么叫微型計算機?什么叫微型計算機系統(tǒng)?1—3寫出下列機器數(shù)的真值:
(1)01101110
(2)10001101
(3)01011001
(4)110011101—4寫出下列二進(jìn)制數(shù)的原碼、反碼和補碼(設(shè)字長為8位)
(1)+010111
(2)+101011
(3)-101000
(4)-1111111—5當(dāng)下列各二進(jìn)制數(shù)分別代表原碼、反碼和補碼時,其等效的十進(jìn)制數(shù)值為多少?
(1)00001110
(2)11111111
(3)10000000
(4)100000011—6已知x(l)=+0010100,y(1)=+0100001,x(2)=-0010100,y(2)=-0100001,試計算下列各式(字長8位)
(1)[x(l)+y(1)]補
(2)[x(l)-y(2)]補
(3)[x(2)-y(2)]補
(4)[x(2)+y(2)]補
(5)[x(l)+2y(2)])L
(6)[x(2)+y(2)/8]補1—7用補碼來完畢下列計算,并判斷有無溢出產(chǎn)生(字長為8位):
(1)85+60
(2)-85+60
(3)85-60
(4)-85-601—8在微型計算機中存放兩個補碼數(shù),試用補碼加法完畢下列計算,并判斷有無溢出:
(1)[x]補+[y]補=01001010+0ll00001
(2)[x]補一[y]補=01101—9試將下列各數(shù)轉(zhuǎn)換成BCD碼:
(1)(30)十進(jìn)制
(2)(127)十進(jìn)制
(3)00100010B
(4)74Hl—10試查看下列各數(shù)代表什么ASCII字符
(1)41H
(2)72H
(3)65H
(4)20H1—11試寫出下列字符的ASCII碼:9,*,=,$,!1—12若加上偶校驗,題1—11字符的ASCII又是什么?1—13假定微型計算機中用10位二進(jìn)制數(shù)來表達(dá)數(shù),對定點數(shù)用1位(MSB)表達(dá)數(shù)符,9位表達(dá)數(shù)值,對浮點數(shù)
用4位表達(dá)階碼(其中MSB為階符),6位表達(dá)尾數(shù)(其中MSB為數(shù)符)。試問這樣定義的定點數(shù)和浮點數(shù)能
表達(dá)數(shù)的范圍分別是多少?1—14試將下列數(shù)表達(dá)成浮點的規(guī)格化數(shù)。設(shè)階碼(含階符)為4位,尾數(shù)(含數(shù)符)為8
(1)69.57
(2)-8.405
(3)-0.25
(4)+0.008341—15試將上題(1),(2),(3)表達(dá)成單精度浮點數(shù)。1—16下面是Pentium解決器的一個單精度浮點數(shù)(32位)和一個雙精度浮點數(shù)(64位),該兩個浮點數(shù)實際數(shù)值
為多少?
(1)00000000
(2)406CD25179FCED82H1—17通用微型計算機硬件系統(tǒng)結(jié)構(gòu)是如何的?請用示意圖表達(dá)。說明各部分作用。1—18通用微型計算機軟件涉及哪些內(nèi)容?1—19典型微機有哪幾種總線?它們傳送的是什么信息?1—20什么是指令?什么是程序?1—21試用示意圖說明內(nèi)存儲器的結(jié)構(gòu)和讀、寫操作。1—22簡述評估通用微型計算機重要技術(shù)指標(biāo)。2—18086/8088為什么要分為EU和BIU兩部分?每個部分又由哪幾部分組成?2—2簡述8086/8088指令隊列作用及工作過程。2—3在執(zhí)行指令期間,EU能直接訪問存儲器嗎?為什么?2—48086/8088CPU中,供使用匯編語言的程序員使用的寄存器有哪些?2—5試述SP、IP、BP、SI和DI寄存器名稱的由來。它們能否作為通用寄存器?2—6為什么要設(shè)立段寄存器?8086/8088有幾個段寄存器?2—78086/8088有幾位狀態(tài)位?有幾位控制位?其含義各是什么?2—88086/8088CPU使用的存儲器為什么要分段?如何分段?2—9簡述A0與BHE在8086系統(tǒng)中的作用。2—108086/8088CPU系統(tǒng)中為什么要采用地址鎖存器8282/8283?2—118086與8088CPU重要區(qū)別有哪些?2—128086/8088單CPU和多CPU系統(tǒng)各自重要特點是什么?差別在哪里?2—13簡述指令隊列狀態(tài)線QSl和QSO的含義。2—148086構(gòu)成系統(tǒng)分為哪兩個存儲體?它們?nèi)绾闻c地址、數(shù)據(jù)總線連接?2—15什么是邏輯地址?什么是物理地址?它們之間有什么聯(lián)系?各用在何處?2—16什么是基地址?什么是偏移量?它們之間有何聯(lián)系?2—17若CS為A000H,試說明現(xiàn)行代碼段可尋址的存儲空間的范圍。2—18設(shè)現(xiàn)行數(shù)據(jù)段位于存儲器B0000H到BFFFFH存儲單元,DS段寄存器內(nèi)容為多少?2—19設(shè)雙字節(jié)12345678H的起始地址是A001H,試說明這個雙字在存儲器中如何存放?2—20已知堆棧段寄存器SS=A000H,堆棧指示器SP=0100H,試將數(shù)據(jù)1234ABCDH推人堆棧,畫出進(jìn)棧示意圖。
最后棧頂SP=?2—21試求出下列運算后的各個狀態(tài)標(biāo)志,并說明進(jìn)位標(biāo)志和溢出標(biāo)志的區(qū)別。
(1)1278H+3469H
(2)54E3H-27AOH
(3)3881H+3597H
(4)01E3H一01E3H2—228088CPU工作在最小模式(單CPU)和最大模式(多CPU)重要特點是什么?有何區(qū)別?2—23在8088CPU工作在最小模式時。
(1)當(dāng)CPU訪問存儲器時,要運用哪些信號?
(2)當(dāng)CPU訪問I/O時,要運用哪些信號?
(3)當(dāng)HOLD有效并得到響應(yīng)時,CPU的哪些信號置高阻?2—24什么是時鐘周期?機器周期?總線周期?什么是指令周期?2—25為什么要了解8086/8088CPU時序?2—26試?yán)L出8086單CPU系統(tǒng)訪問I/O端口總線周期的時序圖。2—27試說明WMTC(10WC)與AWMC(AIOW)異同。2—28在8086/8088多CPU系統(tǒng)中,存儲器讀總線周期中,RD可以從CPU發(fā)出,也可以從8288發(fā)出(MRDC),試
比較其異同?2—29什么情況下插入Tw等待周期?插入Tw多少,取決什么因素?2—30什么情況會出現(xiàn)總線空閑周期?2—31試用表格列出8088單CPU方式下,IO/M、DT/R、DEN、RD及WR讀/寫存儲器狀態(tài)。例如讀存儲器
RD=0。2—32簡述80386、80486和PentiumCPU基本組成與各部分作用。2—33什么是實地址模式?什么是保護(hù)模式?什么是虛擬8086模式?試列出三者重要特點。2—34試說明80386、80486和Pentium控制寄存器的作用。2—35CS寄存器在保護(hù)模式下叫什么名字?DS寄存器呢?2—36選擇符中三個域的名字和大小各是多少?2—37T1等1意味著什么?2—38假如GDT寄存器值為FFH,裝入LDTR的選擇符為0040H,試問裝入緩存LDT描述符的起始地址是
多少?2—39NT代表什么意思?RF呢?2—40假如標(biāo)志寄存器的IOPL位為10,那么I/O指令的特權(quán)級為多少?2—4180386、80486和Pentium虛擬地址空間有多大?2—42虛擬地址的兩部分各叫什么名字?2—43數(shù)據(jù)段能有多大?能有多小?2—4480386、80486和Pentium虛擬地址空間最多能放多少個段?2—45全局存儲器地址空間有多大?它能包含多少個段?2—46假如允許分頁,那么80386、80486和Pentium的地址空間可映射到多少頁?頁有多大?2—47頁轉(zhuǎn)換產(chǎn)生的線性地址的三部分各是什么?給出每個部分的大小。2—48設(shè)立轉(zhuǎn)換檢測緩沖器的目的是什么?2—49頁幀有多大?什么選擇頁幀的存放位置?2—50描述符中有多少個字節(jié)?試給出每一個域名及大小?2—51段描述符與什么寄存器相聯(lián)?系統(tǒng)段描述符呢?2—52選擇符022416裝入了數(shù)據(jù)段寄存器,該值指向局部描述符表中從地址00100220H開始的段描述符。假如
該描述符的字為:
[00100220H]=0110H
[00100222H]=0000H
[00100224H]=1A20H
[00100226H]=0000H
那么Limit和Base各為多少?2—53頁目錄或頁表項中最左20位表達(dá)什么?2—54某一頁幀的保護(hù)頁模式是用戶級訪問權(quán),管理員級可讀/寫,那么R/W和U/S的設(shè)立是什么?2—55某一頁幀的頁表項中P=0,那么試圖訪問該頁幀時會發(fā)生什么情況?2—56頁目錄項中的D位代表什么意思?2—57試說明Pentium微解決器、PentiumPro、PⅡ、PⅢ微解決器基本特點。2—58什么是PⅢ解決器系列代號?使用系列代號的優(yōu)缺陷是什么?
3—1什么叫尋址方式?一般微解決器有哪幾類尋址方式?各類尋址方式的基本特性是什么3—2對于80X86/Pentium系列微解決器,存儲器尋址的有效地址EA和實際地址PA有什么區(qū)別?
3—380X86/Pentium的有效地址EA由哪四個分量組成?它們可優(yōu)化組合出哪些存儲器尋址方式?試討論各種存
儲器尋址方式與EA計算公式的關(guān)系。3—4設(shè)BX=637DH,SI=2A9BH,位移量D=7237H,試求下列尋址下有效地址EA=?
(1)直接尋址
(2)基址尋址
(3)使用BX的間接尋址3—5分別指出下列指令中源操作數(shù)和目的操作數(shù)的尋址方式若是存儲器尋址,試用表達(dá)式表達(dá)出EA=?PA=?
(1)MOVSI,2100H
(2)MOVCX,DISP[BX]
(3)MOV[S1],AX
(4)ADCAX,[BX][S1]
(5)ANDAX,DX
(6)MOVAX,[BX+10H]
(7)MOVAX,ES:[BX](8)MOVAX,[BX+SI+20H]
(9)MOV[BP],CX
(10)PUSHDS3—6指出下列指令的源操作數(shù)字段是什么尋址方式?
(1)MOVEAX,EBX
(2)MOVEAX,[ECX][EBX]
(3)MOVEAX,[ESl)[EDXX2]
(4)MOVEAX,[ESIX8]3—7分析下列指令在語法上是否有錯,如有錯,請指犯錯誤之所在(針對8086/8088微解決器)。
(1)SUBAX,[BX+BP]
(2)ADDVALUEl,VALUE2
(3)MOVDS,1000H
(4)MOVCS,AX
(5)CMP1000H,BX
(6)MOVVALUEl,CX
(7)MOVDS,ES
(8)ROL[BX][DI],3
(9)NOTBX,DX
(10)PUSHCS
(11)PUSH2A00H
(12)IN100H,AL
(13)LEABX,4300H
(14)MOVAX,[CX]3—8若SP=2023H,AX=3355H,BX=4466H,試指出下列指令或程序段執(zhí)行后有關(guān)寄存器的內(nèi)容。
(1)PUSHAX執(zhí)行后,AX=?SP=?
(2)PUSHAX
PUSHBX
POPDX
執(zhí)行后,AX=?,DX=?,SP=?3—9設(shè)BX=6F30H,BP=0200H,SI=0046H,SS=2F00H,[2F246H]=4154H,試求執(zhí)行XCHGBX,[BP+S1)后,
BX=?,[2F246H]=?3—10設(shè)BX=0400H,SI=003CH,執(zhí)行LEABX,[BX+SI+0F62H]后,BX=?3—11設(shè)DS=C000H,[C0010H]=0180H,[C0012H]=2023H,執(zhí)行LDSSI,[10H]后SI=?,DS=?3—12已知DS=091DH,SS=1E4AH,AX=1234H,BX=0024H,CX=5678H,BP=0024H,SI=0012H,DI=
0032H,[09226H]=00F6H,[09228H]=1E40H,[1E4F6H]=09lDH,試求單獨執(zhí)行下列指令后的結(jié)果
(1)MOVCL,20H[BX][SI];CL=?
(2)MOV[BP][DI],CX;[1E4F6H]=?
(3)LEABX,20H[BX][SI];BX=?
MOVAX,2[BX];AX=?
(4)LDSSI,[BX][DI]
MOV[SI],BX;SI=?[SI]=?
(5)XCHGCX,32H[BX];
XCHG20H[BX][SI],AX;AX=?[09226H]=?3—13執(zhí)行下列指令后,標(biāo)志寄存器中AF、CF、OF、SF、ZF標(biāo)志位分別是什么狀態(tài)?
MOVAX,84AOH
ADDAX,9460H3—14按下列規(guī)定寫出相應(yīng)的指令或程序段
(1)寫出兩條使AX寄存器內(nèi)容為0的指令。
(2)使BL寄存器中的高、低4位互換。
(3)現(xiàn)有二個有符號數(shù)分別在N1、N2變量中,求N1/N2,商和余數(shù)分別送變量M1、M2中。
(4)屏蔽BX寄存器的b4、b6、b11位。
(5)將AX寄存器的b5、b14位取反,其他位不變。
(6)測試DX寄存器的b0、b9位是否為“1"。
(7)使CX寄存器中的整數(shù)變?yōu)槠鏀?shù)(如本來已是奇數(shù),則不變)。3—15寫出把首地址為BLOCK的字?jǐn)?shù)組的第六個字送人AX的指令,規(guī)定使用下列尋址方式:
(1)寄存器間接尋址
(2)基址尋址
(3)相對基址變址尋址(4)直接尋址3—16已知AX=8060H,DX=580H,端口PORTl的地址為40H,內(nèi)容為4FH,端口PORT2的地址為45H,指出執(zhí)行
下列指令后的結(jié)果在哪兒?為多少?
(1)OUTDX,AL
(2)OUTDX,AX
(3)INAL,PORTl
(4)INAX,40H
(5)OUTPORT2,AL
(6)OUTPORT2,AX3—17已知數(shù)據(jù)如題圖3—1所示,數(shù)據(jù)是低位在前,按下列規(guī)定編寫程序段:
(1)完畢NUMl和NUM2的兩個字?jǐn)?shù)據(jù)相加,和存放在NUMl中。
(2)完畢NUMl單元開始的連續(xù)4個字節(jié)數(shù)據(jù)相加,和不超過一字節(jié),放在RES單元。
(3)完畢NUMl單元開始的連續(xù)8個字節(jié)數(shù)據(jù)相加,和為16位數(shù),放在RES和RES+1兩單元中(用循環(huán))。
(4)完畢NUMl和NUM2的雙倍精度字?jǐn)?shù)據(jù)相加,和放在NUM2開始的雙字單元中。3—18已知的BCD數(shù)如題圖3—1所示,低位在前,按下列規(guī)定編寫計算BCD數(shù)據(jù)(為壓縮型BCD)的程序段。
M
├───┤
NUM1│
48H│
├───┤
│
41H│
├───┤
│
16H│
├───┤
│
28H│
├───|
NUM2│
58H│
├───┤
│
22H│
├───|
│
52H│
├───┤
│
84H│
├───┤
RES│
│
├───┤
│
│
題圖3—1
(1)完畢從NUMl單元開始的連續(xù)8個壓縮BCD數(shù)相加,和(超過一字節(jié))放在RES和
RES+1兩單元中。
(2)完畢NUMl單元和NUM2單元的BCD數(shù)相減,其差存人RES單元,差=?,CF=?3—19已知數(shù)據(jù)如題圖3—1所示,低位在前,按下列規(guī)定編寫程序段:
(1)NUMl和NUM2兩個數(shù)據(jù)相乘(均為無符號數(shù)),乘積放在RES開始的單元。
(2)NUMl和NUM2兩個字?jǐn)?shù)據(jù)相乘(均為帶符號數(shù)),乘積放在RES開始的單元。
(3)NUMl單元的字節(jié)數(shù)據(jù)除以46(均為無符號數(shù)),商和余數(shù)依次放人RES開始的
兩個字節(jié)單元。
(4)NUMl字單元的字?jǐn)?shù)據(jù)除以NUM2字單元的字,商和余數(shù)依次放人RES開始的兩
個字單元。3—20使用移位指令來做乘以2和除以2是很方便的。試把+53與一49分別乘以2,它們
各應(yīng)用什么指令,得到的結(jié)果各是什么?若除以2呢?3—21令BX=00E3H,變量VALUE的內(nèi)容為?9H,下列指令單獨執(zhí)行后BX寄存器的
內(nèi)容為多少?
(1)XORBX,VALUE
(2)ANDBX,VALUE
(3)RORBX,1
(4)ORBX,10F4H
(5)NOTBX3—22若CPU中各寄存器及RAM參數(shù)如題圖3—2所示,試求獨立執(zhí)行如下指令后,CPU中寄存器及RAM相應(yīng)內(nèi)存
單元的內(nèi)容為多少?
RAM20506H20507H20508H20509H2050AH2050BH2050CH
(1)MOVDX,[BX]2;DX=BX=
CPUCPU
CS
3000HFFFEH
CXDS
2050H0004H
BXSS
50A0H2023H
SPES
0FFFH17C6H
DXIP
0000H8094H
AXDI
000AH1403H
BPSI
0008H1
CF執(zhí)行前執(zhí)行后06H
00H
87H
15H
37H
C5H
2FH
題圖3—2
(2)PUSHCX;SP=[SP]
(3)MOVCX,BX;CX=BX=
(4)TESTAX,0l;AX=CF=
(5)MOVAL,[S1];AL=
(6)ADCAL,[DI];AL=CF=DAA;AL=
(7)INCSI;SI=
(8)DECDI;DI=
(9)MOV[D1),AL;[DI]=
(10)XCHGAX,DX;AX=DX=
(11)XORAH,BL;AH=BL=
(12)JMPDX;IP=3—23分別指出以下兩個程序段的功能。
(1)MOVCX,10
(2)CLD
LEASI,F(xiàn)IRST
LEADI,[0404H]
IEADI,SECOND
MOVCX,0080H
REPMOVSB
XORAX,AX
REPSTOSW3—24試編制完畢AX*5/2的程序段。3—25若AL=FFH,BL:03H,指出下列各指令執(zhí)行后標(biāo)志OF,SF,PF,CF的狀態(tài).
(1)ADDBL,AL
(2)INCBL
(3)SUBBL,AL
(4)NEGBL
(5)CMPBL,AL
(6)MULBL
(7)ANDBL,AI
(8)IMULBL
(9)ORBL,AL
(10)SHLBL,1
(11)XORBL,BL
(12)SARAL,1
(13)SHRAL,13—26已知一個關(guān)于0~9的數(shù)字的ASCⅡ碼表首址是當(dāng)前數(shù)據(jù)段的0A80H,現(xiàn)要找出數(shù)字5的ASCII碼,試寫出
用指令XLAT進(jìn)行翻譯的指令序列。3—27設(shè)DS=2023H,BX=1256H,SI=528FH,位移量TABLE=20A1H,[232F7H]=3280H,[264E5H]=2450H,
執(zhí)行下述指令:
(1)JMPBX
;IP=?
(2)JMPTABLE[BX]
;IP=?
(3)JMP[BX][SI]
;IP=?3—28設(shè)IP=3D8FH,CS=4050H,SP=0F17CH,當(dāng)執(zhí)行CALL2023:009AH后,試指出IP、CS、SP、[SP]、
[SP+1]、[SP+2]和[SP+3]的內(nèi)容。3—29試編寫程序段,根據(jù)AL中的內(nèi)容決定程序的走向:若位0是1,其他位為0,轉(zhuǎn)向LABl;若位1是1,其他
位為0,則轉(zhuǎn)向LAB2;若位2為1,其他位為0,則轉(zhuǎn)向LAB3;若位0至位2都是0,則順序執(zhí)行。假定所有
的轉(zhuǎn)移都是短轉(zhuǎn)移。3—30試比較無條件轉(zhuǎn)移指令、條件轉(zhuǎn)移指令、調(diào)用指令和中斷指令有什么異同。3—31設(shè)X、Y變量中均為16位操作數(shù),先判斷X是否大于50,如大于則轉(zhuǎn)移到N—HIGH,否則做X—Y。相減后
如溢出則轉(zhuǎn)移到OVERFLOW去執(zhí)行,否則求(X—Y)的絕對值,并把結(jié)果存人RESULT中。3—32寫出以下計算的指令序列,其中X、Y、Z、R、W均為存放16位無符號數(shù)單元的地址(不考慮進(jìn)位與借位
):
(1)Z←W—(Z十X)
(2)Z←W十(X+6)—(R十9)
(3)Z(商)←(WXX)/(Y+6),R←余數(shù)4—1寫出在BLOCK開始的連續(xù)八個單元中依次存放數(shù)據(jù)20H、30H、40H、50H、60H、70H、80H、90H的數(shù)據(jù)定
義語句(分別用DB、DW、DD偽指令)。4—2以圖示說明下列語句實現(xiàn)內(nèi)存分派和預(yù)置數(shù)據(jù):
VARlDB12,-12H,3DUP(0,F(xiàn)FH)
VAR2DB100DUP(0,2DUP(1,2),0,3)
VAR3DB‘WELCOMETO’
VAR4DWVAR3+6
VAR5DDVAR34—3寫出具有下列功能的偽指令語句(序列):
(1)將字?jǐn)?shù)據(jù)2786H、23H、1A24H存放在定義為字節(jié)變量DATAl的存儲區(qū)中。
(2)將字節(jié)數(shù)據(jù)30H、oB4H、62H、10H存放在定義為字變量DATA2的存儲單元中(規(guī)定不改變字節(jié)數(shù)據(jù)存
放順序)。
(3)在DATA3為起始地址的存儲單元中連續(xù)存放以下字節(jié)數(shù)據(jù):4個20H,20,0,6個(1,2)4—4對于下列數(shù)據(jù)定義,在括號內(nèi)寫出各指令語句獨立執(zhí)行后的結(jié)果:
NUM—BDB2DUP(?)
NUM—WDW10DUP(42H)
ARRAY—BDB‘DISP—IMAGE’
(1)MOVBX,TYPENUM—W
;BX=()
(2)MOVAL,LENGTHNUM
;AL=()
(3)MOVCX,SIZEARRAY—B
;CX=()
(4)MOVDL,LENGTHNUM—W
;DL=()4—5設(shè)某數(shù)據(jù)段定義如下:
D—SEG
SEGMENTPARA‘DATA’
ORG30H
DATA1
EQU10H
DATA2
EQUDATAl十20H
VARl
DB10DUP(?)
VAR2
DW‘AB’,2,2023H
CNT
EQU$-VARl
D—SEG
ENDS
試回答:(1)VARl、VAR2的偏移量是多少?
(2)符號常量CNT的值=?
(3)VAR2+2單元的內(nèi)容為多少?4—6代碼段中開始的一段程序有通用性,試將此段定義為一條宏指令。4—7請定義一條宏指令,它可以實現(xiàn)任一數(shù)據(jù)塊的傳送(假設(shè)無地址重迭),只要給出源和目的數(shù)據(jù)塊的首地
址以及數(shù)據(jù)塊的長度即可。4—8下列語句中,那些是無效的匯編語言指令?并指出無效指令中的錯誤。
(1)MOV
SP,AL
(2)MOV
WORD—OP[BX+4X3][SI],SP
(3)MOV
VARl,VAR2
(4)MOV
CS,AX
(5)MOV
DS,BP
(6)MOV
SP,SS:DATA
(7)MOV
AX,[BX—S1)
(8)INC
[BX]
(9)MOV
25,[BX]
(10)MOV
[8-BX],254—9若數(shù)組ARRAY在數(shù)據(jù)段中已作如下定義:
ARRAYDW100DUP(?)
試指出下列語句中各操作符的作用,指令執(zhí)行后有關(guān)寄存器產(chǎn)生了什么變化?
......
MOV
BX,OFFSETARRAY
MOV
CX,LENGTHARRAY
MOV
SI,0
.....
ADD
SI,TYPEARRAY4—10設(shè)x、y、z已定義為字節(jié)變量。若x和y各存放一個32位(四字節(jié))的無符號數(shù),存放順序是低位字節(jié)在先
,試寫出將x和y相加、結(jié)果存入2的程序段。4—11若題10中,x,y各存放一個32位的有符號數(shù)(低字節(jié)數(shù)在前),試編寫x—y、結(jié)果存入z的程序段。同時
判斷運算結(jié)果是否發(fā)生溢出,若不溢出使DL清零,否則(溢出)以一1作為標(biāo)志存人DL中。4—12某軟件共可接受10個鍵盤命令(分別為A,B,C,…,J),完畢這10個命令的程序分別為過程P0,P1,
…,P9。編程序從鍵盤接受命令,并轉(zhuǎn)到相應(yīng)的過程去執(zhí)行。規(guī)定用兩種方法:
(1)用比較、轉(zhuǎn)移指令實現(xiàn)。
(2)用跳轉(zhuǎn)表實現(xiàn)。4—13若已定義以下數(shù)據(jù)段:
DATA
SEGMENT
BUF
DB100DUP(?)
GOOD
DB?
PASS
DB?
BAD
DB?
AVRG
DB?
DATA
ENDS
若已將某年級100名學(xué)生電路分析的成績以壓縮BCD數(shù)形式存人變量BUF中,試編寫程序段記錄成績高
于85分、低于60分和界于60分至85分的學(xué)生人數(shù),仍以壓縮BCD數(shù)形式存GOOD\BAD和PASS變量中(假
定任一檔的人數(shù)都不達(dá)成100人),并計算全年級平均成績,也以壓縮BCD形式存人變量AVRG中(假定平均
成績低于100分,且舍去小數(shù)點以后的數(shù))。4—14試編寫一程序段,完畢兩個以壓縮BCD格式表達(dá)的16位十進(jìn)制數(shù)(8個字節(jié))的加法運算,相加的兩數(shù)J
和y可定義為字節(jié)變量,并假定高位在前,和數(shù)SUM也同樣定義為字節(jié)變量。4—15從nRST開始的100個單元中存放著一個字符串,結(jié)束符為‘$’。編寫一個程序,記錄該字符串中字母
‘A’的個數(shù)。4—16試編寫記錄AX中0、1個數(shù)的程序。0的個數(shù)存人CH,1的個數(shù)存人CL中。4—17試編制一程序,記錄DATA—W字?jǐn)?shù)組中正數(shù)、負(fù)數(shù)和零的個數(shù),并分別保存在變量COUTl、COUT2、
COUT3中。4—18試找出無符號字節(jié)數(shù)組ARRAY中的最大和最小數(shù)組元素,最大數(shù)組元素送MAX單元,最小數(shù)組元素送
MIN單元。4—19從BLOCK開始,存放著256個字節(jié)的帶符號數(shù),編寫程序從這些數(shù)中找出絕對值最大的數(shù),將其存人
MAX單元中。4—20編寫一個程序,將變量ABC中的16位無符號數(shù)用“連續(xù)除10取余”的方法轉(zhuǎn)換成十進(jìn)制數(shù),規(guī)定結(jié)果
用壓縮BCD碼保存在RESULT開始的單元中。4—21假定有一個由100個元素組成的字節(jié)數(shù)組(且是無符號數(shù)),該數(shù)組已在數(shù)據(jù)段中定義為字節(jié)變量
TABLE。試編寫一段程序,把出現(xiàn)次數(shù)最多的數(shù)存人CH中,其出現(xiàn)次數(shù)存人CL中。4—22假定有一最大長度為80個字符的字符串已定義為字節(jié)變量STRING,試編寫一程序段,找出第一個空格
的位置(00H至4FH表達(dá))并存人CL中,若該串無空格符,則以一1存入CL中。4—23對題22,若該字符串以回車符結(jié)束,試編寫一程序段,記錄該串的實際長度(不涉及回車符),記錄結(jié)
果存入CH中。4—24假定在數(shù)據(jù)段中已知字符串和未知字符串的定義如下:
STRING1
DB‘MESSAGEANDPROCCESS’
STRING2
DB20DUP(?)
使用串操作指令編寫完畢下列功能的程序段(設(shè)DS和ES重疊)
(1)從左到右把STRINGl中字符串搬到STRING2中;
(2)從右到左把STRINGl中字符串搬到STRING2中;
(3)搜索STRINGl字符串中是否有空格。如有,記下第一個空格的地址,并放人BX中;
(4)比較STRINGl和STRING2字符串是否相同。4—25設(shè)在模塊MODULE——1中定義了字變量VARl和標(biāo)號LABEL—1,它們將由模塊MODULE—2和MODULE—3調(diào)用
;在模塊MODULE—2定義了雙字變量VAR3和標(biāo)號LABEL—2,VAR3被MODULE_1引用,LABEL—2被
MODULE—3引用;在MODULE—3中定義了標(biāo)號LABEL—3,在MODULE—2中要引用到它。根據(jù)上述訪問關(guān)
系,試寫出每個模塊必要的的EXTRN和PUBLIC說明。4—26用模塊化編程方法實現(xiàn)顯示字符串“ASSEMBLER”,規(guī)定模塊1為主程序,負(fù)責(zé)數(shù)據(jù)初始化工作;模塊
2中定義了子程序DISPLAY顯示字符串;主程序與子程序DISPLAY在不同的代碼段中。4—27編寫一個程序從鍵盤輸入4位十六進(jìn)制數(shù)的ASCⅡ碼,并將其轉(zhuǎn)換成4位十六進(jìn)制數(shù)存入DX寄存器中。4—28寫出符合下列規(guī)定的指令序列:
(1)在屏幕上顯示當(dāng)前光標(biāo)位置的坐標(biāo)值;
(2)在屏幕中央以反相屬性顯示‘ABC’;
(3)屏幕向上滾動5行,100列;
(4)在640×350、16色方式下,畫一矩形框,框左上角坐標(biāo)(X1,Y1)和右下角坐標(biāo)(X2,Y2)分別為
(100,50)和(400,200)。4—29讀取系統(tǒng)日期并顯示。4—30已知某數(shù)據(jù)段定義如下:
D—SEG
SEGMENT
PARA
NUM1
DB
26H
NUM2
DW
168AH
VAR
DB
8,16
ASCBUF
DB
32DUP(0)
TABLE
DW
3DUP(0)
D—SEG
ENDS
編程將二進(jìn)制數(shù)NUMl、NUM2轉(zhuǎn)換為二進(jìn)制數(shù)的ASCH碼(轉(zhuǎn)換過程以子程序形式),用地址表和堆棧兩種
方式進(jìn)行參數(shù)傳遞。4—31在有序表中插入一個元素,使新表仍有序。4—32編程實現(xiàn)BCD碼的加法運算。規(guī)定:①從鍵盤輸入兩個6位的十進(jìn)制數(shù)。②將鍵盤輸入的ASCⅡ碼轉(zhuǎn)換成
壓縮BCD碼格式。③兩個BCD碼相加。④將壓縮BCD碼轉(zhuǎn)換成ASCH碼形式。⑤顯示計算結(jié)果。5—1存儲器是如何分類的?內(nèi)存和外存各有什么特點?5—2RAM和ROM各有何特點?靜態(tài)RAM和動態(tài)RAM各有何特點?5—3如何判斷有無地址重疊?有地址重疊時會出現(xiàn)什么問題?軟件上應(yīng)如何配合?5—4若存儲空間的首地址為1000H,寫出存儲器容量分別為1K*8,2K*8,4K*8和8K*8時所相應(yīng)的末地址。5—5試設(shè)計一片容量為32K*8的EPROM芯片與8088CPU的連接。寫出此EPROM芯片所占地址空間(設(shè)起始地址
20230H)。5—6某系統(tǒng)的存儲器中配備有兩種芯片;容量分別為2K*8的EPROM和容量為1K*8的RAM。它采用74LSl38譯碼
器產(chǎn)生片選信號:Y0,Y1,Y2,直接到三片EPROM(1#,2#,3#);Y4,Y5,則通過一組門電路產(chǎn)生四個片
選信號接到四片RAM(4#,5#,6#,和7#)。如題圖5—1,試擬定每一片存儲器的尋址范圍。5—7試用HM6116芯片(SRAM,2K*8)組成8K*8的RAM,規(guī)定畫出它與8088CPU的連線圖。設(shè)起始地址80000H。5—8試設(shè)計62256(32K*8)與8088CPU相連接,繪出連線圖,設(shè)起始地址為40000H。5—9了解IBMPC/XT的存儲器子系統(tǒng)的構(gòu)成。6—1I/O接口的重要功能涉及:______。在8086/8088系統(tǒng)中,I/O端口的編址方式為______,
_______種尋址方式,其具體形式是:_________6—2一般的I/O接口電路安排有哪三類寄存器?它們各自的作用是什么?6—3基本的輸入/輸出方式有哪幾種?各有什么特點?6—4參看圖6—8,若采用無條件傳送方式,編程實現(xiàn)以下操作:若K。鍵單獨按下,發(fā)光二極管LEDo~
LED7,將依次點亮,每個維持200ms;若K1鍵單獨按下,發(fā)光二極管LEDo~LED7將反向依次點亮,每個
也維持200ms;其他情況下LED不點亮(設(shè)延時200ms的子程序DELAY已知、可直接調(diào)用)。6—5已知CPU與打印機的連接如圖6—13所示,打印機收到一個數(shù)據(jù)時,BUSY信號變高,打印完以后,BUSY自
動變低。試編一程序,用查詢方式將內(nèi)存中從STRING開始的一個字符串輸出到打印機,字符串的結(jié)束標(biāo)
志為回車符。回車符也要輸出。6—6參看圖6—10,試編一程序,用查詢方式從外設(shè)取100個數(shù)據(jù),順序存放在從DATABUF開始的單元內(nèi)。6—7什么是中斷?簡述一個中斷的全過程。6—88086/8088的中斷系統(tǒng)分為哪幾類?各類中斷的產(chǎn)生條件是什么?6—98086/8088的中斷服務(wù)程序人口地址是如何得到的?6—10中斷向量表的作用是什么?如何設(shè)立中斷向量表,常用的方法有哪些?6—11中斷服務(wù)程序的人口處為什么通常要使用開中斷指令?6—12在8088系統(tǒng)中,從中斷申請到中斷服務(wù),哪些環(huán)境將由系統(tǒng)自動進(jìn)行保護(hù)?哪些環(huán)境需由用戶來進(jìn)行
保護(hù)?8088的中斷返回指令I(lǐng)RET和子程序返回指令RET其操作內(nèi)容有何不同?6—13已知SP=0100H,SS=0300H,PSW=0240H,00020H至00023H單元的內(nèi)容分別是40H,00H,00H,01H。
同時還已知INT8的偏移量00AOH,在段基值為0900H的代碼段內(nèi),試指出在執(zhí)行INT8指令并進(jìn)入該指
令相應(yīng)的中斷例程時SP,SS,IP,CS,PSW和堆棧最上面三個字的內(nèi)容。用圖表達(dá)。6—14簡述825gA的重要功能。PC/AT中主8259A和從8259A的地址分別是什么?6—158259A中IRR、IMR和ISR三個寄存器的作用是什么?6—16某時刻8259A的IRR內(nèi)容是08H,說明_______。某時刻8259A的ISR內(nèi)容是08H,說明_________。在兩片
8259A級聯(lián)的中斷電路中,主片的第5級IR5作為從片的中斷請求輸入,則初始化主、從片時,ICW3的控
制字分別是_______和________。6—178259A僅占用兩個I/O地址,它是如何區(qū)別4條ICW命令和3條OCW命令的?在地址引腳AO=1是讀出的是什
么?6—18某一8086CPU系統(tǒng)中,采用一片8259A進(jìn)行中斷管理。設(shè)定8259A工作在普通全嵌套方式,發(fā)送EOI命令
結(jié)束中斷,采用邊沿觸發(fā)方式請求中斷,IRO相應(yīng)的中斷類型碼為90H。假設(shè)8259A在系統(tǒng)中的I/O地址
是FFDCH(A0=0)和FFDDH(AO=1)。請編寫8259A的初始化程序段。6—198259A的中斷請求有哪兩種觸發(fā)方式,它們分別對請求信號有什么規(guī)定?XT機中采用哪種方式?6—20XT機執(zhí)行了下面兩條指令后,會產(chǎn)生什么控制狀態(tài)?
MOVAL,0BCH
OUT21H,AL
6—21編程實現(xiàn)將XT機中8259A中的IRR、ISR和IMR的內(nèi)容傳送至某存儲區(qū)中。7—1欲使用8253的0通道周期性地發(fā)出脈沖,周期為lms,試編出初始化程序(地址自定,=2MHz)。若規(guī)定
8253的地址為80H~83H,試用3—8譯碼器實現(xiàn)地址譯碼,并完畢8253與PC機總線之間其他信號的連接。7—2用8253組成一個實時時鐘系統(tǒng)。0通道作為秒的計時器,1和2通道作為計數(shù)器,分別用作分和時的計時
,試畫出硬件電路并編出主程序和中斷服務(wù)程序。(設(shè)系統(tǒng)頻率已分頻為50kHz)7—3假定一片8253連接一個lkHz的時鐘,用該8253以BCD格式保持一天中的時間,精度為秒。在HOURS(小時
)、MINUTES(分)、SECOND(秒)和AMPM(上、下午)等字節(jié)均裝入當(dāng)前時間以后,就立即開始計時。編寫
一個8253的初始化程序和一個在每秒結(jié)束時修改時間的中斷例程。7—4試運用IBMPC機的系統(tǒng)上的8253(計數(shù)器0)產(chǎn)生年、月、日、時、分、秒的時間記錄并顯示于CRT屏幕上
。在鍵盤上輸入當(dāng)前的月、日、時、分后啟動8253的計時操作。7—5試運用8253設(shè)計一多波群發(fā)生器。該發(fā)生器周期地輸出500kHz、200kHz、100kHz、50kHz、20kHz、
10kHz、5kHz、2kHz、lkHz的方波,每種頻率的信號都連續(xù)10ms。假定可提供應(yīng)8253的時鐘頻率為
2MHz,8253的端口地址為2COH~2C3H。試完畢硬件和軟件設(shè)計。7—6試說明如何運用8253測量從同一信號線送來的兩個脈沖的時間間隔,測量的最大時間間隔為1小時,讀
時精度為lms。試完畢硬件、軟件設(shè)計,8253的時鐘頻率和端口地址同題8—5。7—7設(shè)8255A的端口地址為60H一63H,試編寫下列各種情況的初始化程序:
(1)將A組和B組設(shè)立為方式0,端口A和C作為輸入口,端口B作為輸出口。
(2)將A組設(shè)立為方式2,B組設(shè)計為方式1,端口B作為輸出口。
(3)將A組設(shè)立為方式1,且端口A作為輸入,PC。和PC,作為輸出;B組設(shè)立為方式1且端口B為輸人口。7—8有一輸入設(shè)備,當(dāng)有一個數(shù)據(jù)要輸入計算機時,就發(fā)出一個數(shù)據(jù)準(zhǔn)備好的狀態(tài)信號READY(高電平有效
),當(dāng)CPU把這個數(shù)據(jù)取走時,清除READY信號,使其變?yōu)榈碗娖?。試?255作為接口電路,分別用查
詢方式和中斷方式從外設(shè)讀人100個數(shù)據(jù),存放在從DATA開始的內(nèi)存單元中,畫出硬件電路,編出程序7—9題圖7—l為一報警系統(tǒng),當(dāng)碰斷微型導(dǎo)線時,喇叭將發(fā)出報警信號。試編出8255初始化程序和中斷服務(wù)
程序(提醒:PC。以一定頻率輸出0101……即脈沖,周期自定)。7—10設(shè)計一個交通信號燈自動控制系統(tǒng)。設(shè)計規(guī)定如下。
1.在某一南北方向和東西方向的十字路口,每個方向都有紅、黃、綠三色交通信號燈,如題圖7—2。
規(guī)定信號燈按下述規(guī)則變化。
(1)一方面使某一方向綠燈亮,另一方向紅燈亮,當(dāng)出現(xiàn)下述情況之一時,開始變燈:①紅燈已亮30秒
鐘;②紅燈路口保存的車輛已達(dá)5輛。
(2)變燈的方法如下:一方面使綠燈閃爍5秒鐘(0.5秒滅,0.5秒亮,反復(fù)5次),接著綠燈變?yōu)辄S燈,
再通過5秒鐘。這期間,另一方面的紅燈保持不變,然后使黃燈變?yōu)榧t燈,同時使另一方向紅燈
變?yōu)榫G燈。
2.畫出硬件框圖,編寫控制程序。
提醒:用8255某一端口控制六個交通燈,用8253實現(xiàn)定期和檢則車輛。7—11題圖7—3為開關(guān)狀態(tài)檢測和繼電器控制電路。當(dāng)開關(guān)閉合時,將驅(qū)動相應(yīng)的繼電器(有驅(qū)動電流流過繼
電器線圈);若某開關(guān)處在斷開狀態(tài),則無電流流過繼電器線
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 廚師和飯店合同范本
- 動物園籠舍承包合同范本
- 合伙禮盒合同范本
- 合同范本購銷合同寫
- 合同范本服務(wù)承包
- 合同范本模板銷售
- 寫網(wǎng)購合同范本
- 貨物裝載與固定技術(shù)的未來趨勢
- 化糞合同范本
- 司機勞動勞務(wù)合同范本
- GA/T 701-2024安全防范指紋識別應(yīng)用出入口控制指紋識別模塊通用規(guī)范
- 2025年阜新高等??茖W(xué)校單招職業(yè)傾向性測試題庫附答案
- 2025年包頭輕工職業(yè)技術(shù)學(xué)院單招職業(yè)適應(yīng)性測試題庫及答案一套
- 《養(yǎng)老保險的理念》課件
- 2024-2025學(xué)年第二學(xué)期英語教研組工作計劃
- 山東省海洋知識競賽(初中組)考試題庫500題(含答案)
- 服務(wù)行業(yè)人力資源薪酬體系管理與優(yōu)化
- 馬尼拉草皮施工方案
- 《蔚來發(fā)展》課件
- 人工智能融入土木水利碩士人才培養(yǎng)模式研究
- 2024年山東商務(wù)職業(yè)學(xué)院高職單招語文歷年參考題庫含答案解析
評論
0/150
提交評論