![微型計(jì)算機(jī)原理與接口技術(shù)(第三版)課后練習(xí)答案_第1頁(yè)](http://file4.renrendoc.com/view11/M01/19/1C/wKhkGWW4fwOAZBmUAALUhtdfglU817.jpg)
![微型計(jì)算機(jī)原理與接口技術(shù)(第三版)課后練習(xí)答案_第2頁(yè)](http://file4.renrendoc.com/view11/M01/19/1C/wKhkGWW4fwOAZBmUAALUhtdfglU8172.jpg)
![微型計(jì)算機(jī)原理與接口技術(shù)(第三版)課后練習(xí)答案_第3頁(yè)](http://file4.renrendoc.com/view11/M01/19/1C/wKhkGWW4fwOAZBmUAALUhtdfglU8173.jpg)
![微型計(jì)算機(jī)原理與接口技術(shù)(第三版)課后練習(xí)答案_第4頁(yè)](http://file4.renrendoc.com/view11/M01/19/1C/wKhkGWW4fwOAZBmUAALUhtdfglU8174.jpg)
![微型計(jì)算機(jī)原理與接口技術(shù)(第三版)課后練習(xí)答案_第5頁(yè)](http://file4.renrendoc.com/view11/M01/19/1C/wKhkGWW4fwOAZBmUAALUhtdfglU8175.jpg)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1思考與練習(xí)題
一、選擇題
1.計(jì)算機(jī)硬件中最核心的部件是()。C
A.運(yùn)算器B.主存儲(chǔ)器C.CPUD.輸入/輸出設(shè)備
2.微機(jī)的性能主要取決于()。A
(B一一計(jì)算機(jī)數(shù)據(jù)處理能力的一個(gè)重要指標(biāo))
A.CPUB.主存儲(chǔ)器C.硬盤D.顯示器
3.計(jì)算機(jī)中帶符號(hào)數(shù)的表示通常采用()oC
A.原碼B.反碼C.補(bǔ)碼D.BCD碼
4.采用補(bǔ)碼表示的8位二進(jìn)制數(shù)真值范圍是()。C
A.T27?+127B.-127~+128C.T28?+127D.T28?+128
5.大寫字母“B”的ASCH碼是()oB
A.41HB.42HC.61HD.62H
6.某數(shù)在計(jì)算機(jī)中用壓縮BCD碼表示為10010011,其真值為()?C
A.1001001IBB.93HC.93D.147
二、填空題
1.微處理器是指CPU:微型計(jì)算機(jī)以CPU為核心,配置內(nèi)存和1/0接口構(gòu)成;其特點(diǎn)
是(1)功能強(qiáng)(2)可靠性高(3)價(jià)格低(4)適應(yīng)性強(qiáng)(5)體積?。?)維護(hù)方便。P8P5
2.主存容量是指RAM和ROM總和:它是衡量微型計(jì)算機(jī)計(jì)算機(jī)數(shù)據(jù)處理能力的一個(gè)重要
指標(biāo);構(gòu)成主存的器件通常采用DRAM和PROM半導(dǎo)體器件。P5P9
3.系統(tǒng)總線是CPU與其他部件之間傳送數(shù)據(jù)、地址和控制信息的公共通道:根據(jù)傳送內(nèi)容
的不同可分成數(shù)據(jù)、地址、控制3種總線。P9
4.計(jì)算機(jī)中的數(shù)據(jù)可分為數(shù)值型和非數(shù)值型兩類,前者的作用是表示數(shù)值大小,進(jìn)行算
術(shù)運(yùn)算等處理操作;后者的作用是表示字符編碼,在計(jì)算機(jī)中描述某種特定的信息。P12
5.機(jī)器數(shù)是指一數(shù)及其符號(hào)在機(jī)器中加以表示的數(shù)值化_;機(jī)器數(shù)的表示應(yīng)考慮機(jī)器數(shù)的范
圍、機(jī)器數(shù)的符號(hào)、機(jī)器數(shù)中小數(shù)點(diǎn)位置3個(gè)因素。P15P16
6.ASCH碼可以表示128種字符,其中起控制作用的稱為功能碼:供書寫程序和描述命
令使用的稱為信息碼。P18P19
三、判斷題
1.計(jì)算機(jī)中帶符號(hào)數(shù)采用補(bǔ)碼表示的目的是為了簡(jiǎn)化機(jī)器數(shù)的運(yùn)算。()》
2.計(jì)算機(jī)中數(shù)據(jù)的表示范圍不受計(jì)算機(jī)字長(zhǎng)的限制。()X
3.計(jì)算機(jī)地址總線的寬度決定了內(nèi)存容量的大小。()?
4.計(jì)算機(jī)鍵盤輸入的各類符號(hào)在計(jì)算機(jī)內(nèi)部均表示為ASCH碼。()X
(鍵盤與計(jì)算機(jī)通信采用ASCII碼)
四、簡(jiǎn)答題
L微處理器和微型計(jì)算機(jī)的發(fā)展經(jīng)歷了哪些階段?各典型芯片具備哪些特點(diǎn)?P2~3
2.微型計(jì)算機(jī)硬件結(jié)構(gòu)由哪些部分組成?各部分的主要功能和特點(diǎn)是什么?P8~ll
3.微型計(jì)算機(jī)系統(tǒng)軟件的主要特點(diǎn)是什么?包括哪些內(nèi)容?P1T12
4.計(jì)算機(jī)中常用的數(shù)制有哪些?如何進(jìn)行數(shù)制之間的轉(zhuǎn)換?P13~15
5.ASCII碼和BCD碼有哪些特點(diǎn)?其應(yīng)用場(chǎng)合是什么?P19~20
五、數(shù)制轉(zhuǎn)換題
1.將下列十進(jìn)制數(shù)分別轉(zhuǎn)換為二進(jìn)制數(shù)、十六進(jìn)制數(shù)和壓縮BCD碼。
(1)25.8211001.1101B;19.DI1;00100101.10000010BCD
(2)4120010B;19C.2H;040000010010.00010101BCD
(3)513.461000000001.0111;201.7H;010100010011.01000110BCD
(4)690010;45.2H;01011001.000100110110BCD
2.將下列二進(jìn)制數(shù)分別轉(zhuǎn)換為十進(jìn)制數(shù)和十六進(jìn)制數(shù)。
(1)111001.10157.625D;39.AH
(2)110010.110150.8125D;32.DH
(3)1011.1101111.84375D;B.D8H
(4)101101.011145.4375D;21).7H
3.將下列十六進(jìn)制數(shù)分別轉(zhuǎn)換為二進(jìn)制數(shù)、十進(jìn)制數(shù)和BCD碼。
(D7B.211111011.00100001B;123.12890625D;123.12890625BCD
(2)127.IC100100111.000111B;295.06640625D;295.06640625BCD
(3)6A1.4110110100001.0100000IB;1697.25390625D;1697.25390625BCD
(4)2DF3.410110111110011.01B;11763.25D;11763.25BCD
4.寫出下列十進(jìn)制數(shù)的原碼、反碼、補(bǔ)碼表示(采用8位二進(jìn)制數(shù))。
(1)96[96]原=01100000;[96]反=01100000;[96]補(bǔ)=01100000
(2)31[31]原=00011111;[31]反=00011111;[31]補(bǔ)=00011111
(3)-42[-42]原=10101010;[-42]反=11010101;[-42]#=11010110
(4)-115[T15]原=11110011;[-115]反=10001100;[-115④卜=10001101
5.己知下列補(bǔ)碼,求其原值的十進(jìn)制表示.
(1)92H-110D
(2)8DH-115D
(3)B2H-781)
(4)4C26H+19494D
6.按照字符所對(duì)應(yīng)的ASCII碼表示,查表寫出如下字符的ASCII碼:
a、K、G、+、DEL、SP、CR、$。
61H4BH47H2BH7FH20HODH24H
2思考與練習(xí)題
一、選擇題
1.在EU中起數(shù)據(jù)加工與處理作用的功能部件是()。A
A.ALUB.數(shù)據(jù)暫存器C.數(shù)據(jù)寄存器D.EU控制電路
2.以下不屬于BIU中的功能部件是()0B
A.地址加法器B.地址寄存器C.段寄存器D.指令隊(duì)列緩沖器
3.堆棧操作中用于指示棧頂?shù)刂返募拇嫫魇牵ǎ
A.SSB.SPC.BPD.CS
4.指令指針寄存器(IP)中存放的內(nèi)容是()?B
A.指令B.指令地址C.操作數(shù)D.操作數(shù)地址
5.8086系統(tǒng)可訪問的內(nèi)存空間范圍是()。B
A.OOOOH-FFFFHB.00000H?FFFFFH
C.0~2'6D.0~220
6.8086的1/0地址空間采用16位數(shù)尋址時(shí),可訪問的端門數(shù)容量為()。C
A.16KBB.32KBC.64KBD.1MB
7.8086最大和最小工作方式的主要差別是()。D
A.數(shù)據(jù)總線的位數(shù)不同B.地址總線的位數(shù)不同
C.I/O端口數(shù)的不同D.單處理器與多處理器的不同
二、填空題
1.8086的內(nèi)部結(jié)構(gòu)由工工和BIU一組成,前者功能是執(zhí)行指令,后者功能是總線操作。
P24P26
2.8086取指令時(shí),會(huì)選取CS作為段基值,再加上由」P提供的偏移地址形成20位物理地
址。
3.8086有兩種外部中斷請(qǐng)求線,它們分別是INTR和NMI。P32
4.8086的標(biāo)志寄存器共有個(gè)標(biāo)志位,分為6個(gè)狀態(tài)標(biāo)志位和3個(gè)控制標(biāo)志位。P28
5.8086為訪問1MB內(nèi)存空間,將存儲(chǔ)器進(jìn)行分段管理;其物理地址是唯一的;偏移地
址是指相對(duì)段基地址的偏移量;邏輯地址常用于程序中。P29P20P34P35
6.邏輯地址為1000H:0230H時(shí),其物理地址是10230H,段地址是1000H,偏移量是
0230H,
7.時(shí)鐘周期是指CPU基本時(shí)間計(jì)量單位,總線周期是指一次總線操作時(shí)間,總線操作是
指CPU經(jīng)外部總線對(duì)存儲(chǔ)器或I/O端口進(jìn)行一次信息輸入和輸出的過程。P37
8.8086工作在最大方式時(shí)CPU引腳MN/-MX應(yīng)接地;最大和最小工作方式的應(yīng)用場(chǎng)合分別
是多處理器和單處理器系統(tǒng)。P38P39
三、判斷題
1.IP中存放的是正在執(zhí)行的指令偏移地址。()X
2.從內(nèi)存單元偶地址開始存放的數(shù)據(jù)稱為規(guī)則字。()4
3.EU執(zhí)行算術(shù)和邏輯運(yùn)算后的結(jié)果特征可由控制標(biāo)志位反映出來(lái)。()X
4.指令執(zhí)行中插入”,和T,是為了解決CPU與外設(shè)之間的速度差異。()X
5.總線操作中第1個(gè)時(shí)鐘周期通常是取指周期。()X
6.8086系統(tǒng)復(fù)位后重新啟動(dòng)時(shí)從內(nèi)存地址FFFFOH處開始執(zhí)行。()J
四、簡(jiǎn)答題
1.8086微處理器中的指令隊(duì)列起什么作用(EU從指令隊(duì)列取指令的緩沖作用),其長(zhǎng)度是多
少字節(jié)(6個(gè)字節(jié))?P26
2.什么是邏輯地址(無(wú)符號(hào)32位二進(jìn)制數(shù)),它由哪兩部分組成(段地址和偏移地址)?8086
的物理地址是如何形成的(物理地址=段地址*10H+偏移地址)?P35
3.8086微機(jī)系統(tǒng)中存儲(chǔ)器為什么要分段(8086系統(tǒng)內(nèi)的地址寄存器均是16位,只能尋址
64KB;將1MB存儲(chǔ)器分成邏輯段,每段不超過64KB空間,以便CPU操作。),各邏輯段之間
的關(guān)系如何(可重疊、交叉、緊密連接和分離)?P34
4.I/O端口有哪兩種編址方式(統(tǒng)一編址和獨(dú)立編址),8086的最大I/O尋址空間是多少
(64KB)?P36
5.8086的最大工作模式(8086、8087和8089通過總線控制器8288產(chǎn)生對(duì)總線的控制信號(hào))
和最小工作方式(8086直接產(chǎn)生總線控制信號(hào))的主要區(qū)別是什么?他們分別應(yīng)用在何種場(chǎng)
合(多處理器和單處理器系統(tǒng))?P39
6.簡(jiǎn)述實(shí)地址方式(山段地址和偏移地址計(jì)算產(chǎn)生物理地址,其物理地址可以超過20位)和
虛擬8086方式(由段地址和偏移地址計(jì)算產(chǎn)生的有效物理地址為20位)的區(qū)別。P41
7.簡(jiǎn)述Pentium微處理器的主要特性。P44
五、分析題
1.有一個(gè)由10個(gè)字組成的數(shù)據(jù)區(qū),其起始地址為1200H:0120H。試寫出該數(shù)據(jù)區(qū)的首末存
儲(chǔ)單元的實(shí)際地址(12120H~12120H+10*2T=12133H)。
2.若一個(gè)程序段開始執(zhí)行之前,(CS)=33AOH,(IP)=0130H,試問該程序段啟動(dòng)執(zhí)行指令的實(shí)
際地址是什么(33A00H+0130II=33B30H)?
3.有兩個(gè)16位的字31DAH和5E7FH,它們?cè)?086系統(tǒng)存儲(chǔ)器中的地址分別為00130H和
00134H,試畫出它們的存儲(chǔ)示意圖。
地址存儲(chǔ)空間
00130HODAH
00131H31H
00134H7FH
00135H5EH
4.將字符串“Good!”的ASCII碼依次存人從01250H開始的字節(jié)單元中,畫出它們存放的內(nèi)
存單元示意圖。
地址存儲(chǔ)空間
01250H
01251H
01252H
01253H
01254H
5.8086微處理器讀/寫總線周期各包含多少個(gè)時(shí)鐘周期(4個(gè)時(shí)鐘周期)?什么情況下需要插
入T”等待周期(當(dāng)4上升沿檢測(cè)到READY=0時(shí),在Ts與「之間插入T,)?應(yīng)插入多少個(gè)T”,
取決于什么因素(READY=0持續(xù)的時(shí)間長(zhǎng)短)?什么情況下會(huì)出現(xiàn)空閑狀態(tài)T,(BIU不執(zhí)行總
線操作的時(shí)鐘周期。例如:8086執(zhí)行MUL、DIV指令長(zhǎng)指令時(shí),BIU有段時(shí)間不執(zhí)行總線操
作;因此,插入TJ?P38
3思考與練習(xí)題
一、選擇題
1.寄存器間接尋址方式中,要尋找的操作數(shù)位于()中。B
A.通用寄存器B.內(nèi)存單元C.段寄存器D.堆棧
2.下列指令中正確的是()。C
A.MOVAL,BXB.MOVCS,AXC.MOVAL,CLD.MOV[BX],[SI]
3.下列指令中錯(cuò)誤的是()。C
A.MOVAX,1234HB.INCBXC.SRLAX,2D.PUSHDX
4.設(shè)(SP)=1010H,執(zhí)行POPAX后,SP中的內(nèi)容為()。B
A.10UHB.1012HC.100EHD.100FH
5.給定(AL)=80H,(CL)=02H,指令SHR八1,比執(zhí)行后的結(jié)果是()。B
A.(AL)=40HB.(AL)=20HC.(AL)=COHD.(AL)=EOH
6.將AX清零并使CF位清零,下面指令錯(cuò)誤的是()。A
A.SUBAX,BXB.XORAX,AXC.MOVAX,0(不影響FR)D.ANDAX,000011
二、填空題
1.計(jì)算機(jī)指令通常由操作碼字段和操作數(shù)字段兩部分組成:指令對(duì)數(shù)據(jù)操作時(shí).按照數(shù)
據(jù)的存放位置可分為立即數(shù)、寄存器操作數(shù)、存儲(chǔ)器操作數(shù)。
2.尋址的含義是指尋找操作數(shù)的過程;8086指令系統(tǒng)的尋址方式按照大類可分為與操作
數(shù)有關(guān)的尋址方式、與I/O端U有關(guān)的尋址方式;其中尋址速度最快的是立即數(shù)尋址。
P54~P57
3.指令MOVAX,ES:[BX+0100H]中,源操作數(shù)位于物理地址為ES*10H+BX+0100H的存儲(chǔ)單元
;讀取的是附加數(shù)據(jù)ES段的存儲(chǔ)單元內(nèi)容。
4.堆棧是一個(gè)特殊的存儲(chǔ)器區(qū)域,其操作是以2字節(jié)單元為單位按照先進(jìn)后出原則
來(lái)處理;采用一段指向棧頂?shù)刂?,入棧時(shí)地址變化為SP<=(SP)-2。P57
5.I/O端口的尋址有直接端口尋址和間接端口尋址兩種方式;采用8位數(shù)端口地址(直接
端口尋址)時(shí),可訪問的端口地址為02255;采用16位數(shù)端口地址(間接端口尋址)時(shí),
可訪問的端口地址為0~65535。P57~P58
三、分析計(jì)算題
1.指出如下指令中源操作數(shù)和目的操作數(shù)的尋址方式:
(l)MOVAX,100H(2)MOVCX.AX
(3)ADD[SI],1000(4)SUBBX,[SI+100]
(5)MOV[BX+300],AX(6)ANDBP,[DI]
源操作數(shù)目的操作數(shù)
(DMOVAX,100H立即數(shù)寄存器
(2)MOVCX,AX寄存器寄存器
(3)ADD[SI],1000立即數(shù)寄存器間接
(4)SUBBX,[SI+100]變址寄存器
(5)MOV[BX+300],AX寄存器變址
(6)ANDBP,[DI]寄存器間接寄存器
2.分析如下指令的正誤,對(duì)錯(cuò)誤指令說(shuō)明出錯(cuò)誤原因并加以收正:
(l)MOV[1200],23H(2)MOV1020H,CX
(3)MOV[1000H],[200011](4)MOVIP,00011
(5)PUSHAL(6)OUTCX,AL
(7)INAL,[80H](8)MOVCL,3300H
(DMOV[1200],23H;未指明數(shù)據(jù)類型MOVBYTEPTR[1200],23H
(2)MOV1020H,CX;立即數(shù)不能作為目標(biāo)操作數(shù)MOV[1020H],CX
(3)MOV[1000H],[2000H];兩操作數(shù)不能均是內(nèi)存單元MOVBYTEPTR[1000H],2000H
(4)MOVIP,000H;IP不能在MOV指令中出現(xiàn)JMP00011
(5)PUSHAL;操作數(shù)必須是16位PUSHAX
(6)OUTCX,AL;CX不能作為端口地址的間接訪問寄存器OUTDX,AL
(7)INAL,[80H];直接端口地址寫法錯(cuò)誤INAL,8011
(8)MOVCL,3300H;兩操作數(shù)的數(shù)據(jù)類型不一致MOVCX,3300H
3.給定(DS)=2000H,(BX)=0100H,(SI)=0002H,(20100H)=12H,(20101H)=34H,(20102H)=56H,
(20103H)=78H,(21200H)=2AH,(21201H)=4CH,(21202H)=B7H,(21203H)=65Ho試分析如下
指令執(zhí)行后,AX寄存器中的內(nèi)容:
(l)MOVAX,120011(2)MOVAX,BX
(3)MOVAX,[1200H](4)MOVAX,[BX]
(5)MOVAX,110011[BX](6)MOVAX,[BX+SI]
(7)MOVAX,[1100H+BX+SI]
(DMOVAX,1200H;(AX)=1200H
(2)MOVAX,BX;(AX)=0100H
(3)MOVAX,[1200H];(AX)=4C2AH
(4)MOVAX,[BX];(AX)=3412H
(5)MOVAX,1100HEBX];(AX)=4C2AH
(6)MOVAX,[BX+SI];(AX)=7856H
(7)MOVAX,[1100H+BX+SI];(AX)=65B7H
4.己知(AX)=75A4H,CF=1,分別寫出如下指令執(zhí)行后的結(jié)果:
(DADDAX,08FFH(2)INCAX
(3)SUBAX,4455H(4)ANDAX,OFFFH
(5)ORAX.0101H(6)SARAX,1
(7)RORAX,1(8)ADCAX,5
(DADDAX,08FFH(AX)=7EA3HCF=0
(2)INCAX(AX)=75A5HCF=1
(3)SUBAX,4455H(AX)=314FHCF=0
(4)ANDAX,OFFFH(AX)=05A4HCF=O
(5)ORAX,0101H(AX)=75A5HCF=0
(6)SARAX,1(AX)=3AD2HCF=O
(7)RORAX,1(AX)=3AD2HCF=0
(8)ADCAX,5(AX)=75AAHCF=O
5.給定(SS)=8000H,(SP)=200011,(AX)=7A6CH,(DX)=3158H?執(zhí)行如下程序段,畫出每條指
令執(zhí)行后寄存器的內(nèi)容和堆棧存儲(chǔ)內(nèi)容的變化情況:
PUSHAX
PUSHDX
POPBX
POPCX
PUSHAX;(AX)=7A6CH,(SP)=1FFEH,(81FFEH)=7A6CH
PUSHDX;(DX)=3158H,(SP)=1EFCH,(81EECH)=3158H
POPBX;(BX)=3158H,(SP)=1FFEH
POPCX;(CX)=7A6CH,(SP)=2000H
6.試分析如下程序段執(zhí)行完后,BX的內(nèi)容:817FII
MOVBX,1030H;(BX)=1030H
MOVCL,3;(CL)=3
SHLBX,CL;(BX)=8180H
DECBX;(BX)=817FH
四、設(shè)計(jì)題
1.現(xiàn)有兩個(gè)雙倍精度字?jǐn)?shù)據(jù)1234FEDCII和1123876511,分別存放在數(shù)據(jù)段中從1000H和2000II
開始的存儲(chǔ)單元中,低位在前,高位在后。要求兩數(shù)相加之后所得的和放在從1000H開始的
內(nèi)存單元中,設(shè)計(jì)該程序段。
;3_4_1.ASM
MOVSI,200011;SI指向2000H
MOVDI,1000H;DI指向1000H
CLC;CF=O
MOVCX,4;CX=4,循環(huán)相加4次
LL:MOVAL,[SI];取數(shù)
ADCAL,[DI];相加
MOV[DI],AL;保存
INCSI;SI增1
INCDI;1)1增1
LOOPLL;CX減1,不為0,轉(zhuǎn)LL
MOVAX,0
ADCAX,0
MOV[DILAX
2.設(shè)AX、BX中保存有帶符號(hào)數(shù),CX、DX中保仔無(wú)符號(hào)數(shù),請(qǐng)寫出實(shí)現(xiàn)以下功能的指令或程
序段。
⑴若(CX)〈(DX),則轉(zhuǎn)移到NEXT1。
CMPCX,DX
JBNEXT1
(2)若(AX)XBX),則轉(zhuǎn)移到NEXT2,
CMPAX,BX
JGNEXT2
(3)若(CX)=0,則轉(zhuǎn)移到NEXT3.
CMPCX,0或JCXZNEXT3
JENEXT3
(4)若AX中內(nèi)容為負(fù),則轉(zhuǎn)移到NEXT4。
TESTAX,8000H或ADDAX,0
JNZNEXT4或JSNEXT4
3.設(shè)堆棧寄存器(SS)=2250H。堆棧指示器(SP)=0140H,若在堆棧中存入5個(gè)字?jǐn)?shù)據(jù),則SS、
SP的內(nèi)容各是多少?[(SS)=2250H、(SP)=0136H]如果又取出2個(gè)字?jǐn)?shù)據(jù),SS、SP的內(nèi)容各
是多少?[(SS)=2250H、(SP)=013AH]
4思考與練習(xí)題
一、選擇題
1.匯編語(yǔ)言程序中可執(zhí)行的指令位于()中。C
A.數(shù)據(jù)段B.堆棧段C.代碼段D.附加數(shù)據(jù)段
2.以下內(nèi)容不是標(biāo)號(hào)和變量屬性的是()oB
A.段屬性B.地址屬性C.偏移屬性D.類型屬性
3.DOS功能調(diào)用中采用屏幕顯示單個(gè)字符,其值保存在()寄存器。C
A.ALB.AHC.DLD.DH
4.DOS功能調(diào)用中,從鍵盤讀取一個(gè)字符并回顯的是()。A
A.01HB.02HC.09HD.OAH
5.循環(huán)程序設(shè)計(jì)中,要考慮的核心問題是()。1)
A.循環(huán)的控制B.選擇循環(huán)結(jié)構(gòu)C.設(shè)置循環(huán)參數(shù)初始值D.修改循環(huán)控制參數(shù)
6.對(duì)于宏指令和子程序,下列說(shuō)法不正確的是()。D
A.宏指令不能簡(jiǎn)化目標(biāo)程序
B.子程序可以簡(jiǎn)化目標(biāo)程序,但執(zhí)行時(shí)間長(zhǎng)
C.子程序在執(zhí)行過程中由CPU處理
1).宏指令在執(zhí)行時(shí)要保護(hù)和恢復(fù)現(xiàn)場(chǎng)
二、填空題
1.匯編語(yǔ)言是一種面向CPL:指令系統(tǒng)的程序設(shè)計(jì)語(yǔ)言,采用指令助記符表示操作碼和操
作數(shù),用符號(hào)地址表示操作數(shù)地址。P82
2.匯編語(yǔ)言的語(yǔ)句可由名字、操作符、操作數(shù)、注釋四部分組成;其中一操作符.是必須具
備的。P83
3.機(jī)器指令是指發(fā)送給CPL.的命令,在運(yùn)行時(shí)由一CPU_執(zhí)行;偽指令是發(fā)送給匯編程序的
命令,在匯編過程中由匯編程序進(jìn)行處理:宏指令是指代表一段源程序,通常用于
經(jīng)常用到的一個(gè)程序段場(chǎng)合。P87、P107
4.子程序的基本結(jié)構(gòu)包括子程序說(shuō)明、現(xiàn)場(chǎng)保護(hù)及恢復(fù)、子程序體、子程序返回等幾個(gè)部
分;子程序的參數(shù)傳遞有寄存器、堆棧、存儲(chǔ)器等方法。P104、P105
5.DOS功能調(diào)用可完成對(duì)完成對(duì)文件、設(shè)備、內(nèi)存的管理;BIOS的主要功能是外設(shè)的控
制;如系統(tǒng)加電自檢、引導(dǎo)裝入及對(duì)鍵盤、磁盤、顯示器、打印機(jī)、異步串行通信口等的控
虬。
6.給定如下程序段,在每條指令的右邊寫出指令的含義和操作功能,指出該程序段完成的功
能及運(yùn)行結(jié)果:
MOVAX,0;AX<=0
MOVBX,1;BX<=1
MOVCX,5;CX<=5
LP:ADDAX,BX;AX<=AX+BX
ADDBX,2;BX<=BX+2
LOOPLP;CX〈=CX—1;若CXWO,轉(zhuǎn)LP
HLT;停機(jī)
5
(1)該程序段完成的功能是一Z2〃+1_。
(2)程序運(yùn)行后:(AX)=36;(BX)=_H_;(CX)=_0_?
三、判斷題
1.偽指令是在匯編中用于管理和控制計(jì)算機(jī)相關(guān)功能的指令。()X
2.程序中的“$”可指向下一個(gè)所能分配存儲(chǔ)單元的偏移地址。(
3.宏指令的引入是為了增加匯編程序的功能。()V
4.多重循環(huán)的內(nèi)循環(huán)要完整地包含在外循環(huán)中,可嵌套和并列。(
5.子程序結(jié)構(gòu)縮短了程序的長(zhǎng)度,節(jié)省了程序的存儲(chǔ)空間。()J
四、簡(jiǎn)答題
1.完整的匯編源程序應(yīng)該由哪些邏輯段組成(數(shù)據(jù)段、堆棧段、代碼段)?各邏輯段的主要作
用是什么(存放數(shù)據(jù)變量及其預(yù)置初值、保存中斷和子程序的斷點(diǎn)和參數(shù)傳遞、存放程序執(zhí)
行的代碼)?P87
2.簡(jiǎn)述在機(jī)器上建立(為源程序起一個(gè)有意義的文件名字,并創(chuàng)建成文本文件)、編輯(在文
本編輯軟件EDIT.EXE環(huán)境下,輸入和編輯源程序)、匯編(通過匯編程序ASM.EXE或
MASN.EXE,將源程序會(huì)變成機(jī)器語(yǔ)言目標(biāo)程序.OBJ)、連接(運(yùn)用連接程序LINK.EXE,將目
標(biāo)程序.OBJ連接生成執(zhí)行程序.EXE)、運(yùn)行(在DOS狀態(tài)下,直接運(yùn)行執(zhí)行程序)、調(diào)試(運(yùn)
用調(diào)試程序DEBUG.EXE將執(zhí)行程序跳入調(diào)試界面狀態(tài),并進(jìn)行斷點(diǎn)設(shè)置調(diào)試運(yùn)行或單步調(diào)試
運(yùn)行操作)匯編語(yǔ)言源程序的過程和步驟。P94
3.什么是偽指令(發(fā)送給匯編程序的命令)?程序中經(jīng)常使用的偽指令有哪些(數(shù)據(jù)定義、符
號(hào)定義、段定義、過程定義、結(jié)構(gòu)定義、模塊定義與連接、程序計(jì)數(shù)器$和起點(diǎn)定義ORG)?
簡(jiǎn)述其主要功能(數(shù)據(jù)定義為變量及其類型分配存儲(chǔ)單元,并賦予初值;符合定義給一個(gè)符
號(hào)重新命名;段定義指定邏輯段的名稱、范圍、斷的定位類型、組合類型和類別;過程定義
為程序段定義成過程,并賦予過程名字,以便用CALL指令調(diào)用;結(jié)構(gòu)定義用于相互關(guān)聯(lián)的
數(shù)據(jù)定義;模塊定義與連接用NAME為源程序匯編后的目標(biāo)程序指定模塊名,以便連接該目
標(biāo)模塊,并生成執(zhí)行程序文件;$在匯編過程中,用于存儲(chǔ)單元分配計(jì)數(shù)器,該計(jì)數(shù)器可在
指令操作數(shù)表達(dá)式中引用;ORG為數(shù)據(jù)變量和程序段指定起始位置。)?P87~P93
4.什么是宏指令(代表某功能的一段源程序)?宏指令在程序中如何被調(diào)用(在源程序中,通
過宏名字(即宏指令名)進(jìn)行調(diào)用)?P107
5.子程序與宏指令在程序的使用中有何共性(宏和子程序都可用來(lái)簡(jiǎn)化程序,并可使程序多
次對(duì)它們調(diào)用。)及不同特點(diǎn)(宏操作可直接傳遞和接收參數(shù),不通過堆棧或其他媒介;子程
序不能直接帶參數(shù),需有傳遞參數(shù)時(shí),必須通過堆棧寄存器和存儲(chǔ)器進(jìn)行。宏調(diào)用只能簡(jiǎn)化
源程序的書寫,并沒有縮短目標(biāo)代碼長(zhǎng)度;子程序調(diào)用能縮短目標(biāo)程序長(zhǎng)度。應(yīng)用好操作并
不會(huì)在執(zhí)行目標(biāo)代碼時(shí)增加額外的時(shí)間開銷;子程序調(diào)用由于需要保護(hù)和恢復(fù)現(xiàn)場(chǎng)和斷點(diǎn),
因而延長(zhǎng)目標(biāo)程序的執(zhí)行時(shí)間)?P109
五、設(shè)計(jì)題
1.編程實(shí)現(xiàn)求S=(X2+Y2)/Z的值,并將結(jié)果放入RESULT單元。
;XT451.ASM
DATASEGMENT;定義數(shù)據(jù)段
XDW15
YDW-32
ZDW280
RESULTDW2DUP(?);定義結(jié)果保存單元
DATAENDS;數(shù)據(jù)段結(jié)束
CODESEGMENT;定義代碼段
ASSUMECS:CODE,DS:DATA
START:MOVAX,DATA;初始化DS
MOVDS,AX
MOVAX,X;取出被乘數(shù)X存入AX中
IMULX;執(zhí)行X2操作
MOVCX,AX;乘積的低位字轉(zhuǎn)存至CX
MOVBX,DX;乘積的高位字轉(zhuǎn)存至BX
MOVAX,Y;取出被乘數(shù)X存入AX中
IMULY;執(zhí)行丫?操作
ADDAX,CX;X2+Y2的低位字與Z的低位字相加
ADCDX,BX;X2+Y2的高位字相加
IDIVZ;(X2+Y2)/Z
MOVRESULT,AX;商存入RESULT單元
MOVRESULT+2,DX;余數(shù)存入RESULT+2單元
MOVAH,4CH
INT21H;返回DOS
CODEENDS;代碼段結(jié)束
ENDSTART;匯編結(jié)束
2.編程序完成計(jì)算S=(A+B)/2-2(AANDB)。
;XT4_5_2.ASM
DATASEGMENT;定義數(shù)據(jù)段
ADW15
BDW-32
SDW?
RESULTDW2DUP(?);定義結(jié)果保存單元
DATAENDS;數(shù)據(jù)段結(jié)束
CODESEGMENT;定義代碼段
ASSUMECS:CODE,DS:DATA
START:MOVAX,DATA;初始化DS
MOVDS,AX
MOVAX,A;取出被乘數(shù)A存入AX中
ADDAX,B;A+B
SARAX,1;(A+B)/2
MOVBX,AX;存入BX中
MOVAX,A;取出被乘數(shù)A存入AX中
ANDAX,B;AANDB
SALAX,1;(AANDB)*2
SUBBX,AX:(A+B)/2-2(AANDB)
MOVS,BX;存入S單元
MOVAH,4CH
INT21H;返回DOS
CODEENDS;代碼段結(jié)束
ENDSTART;匯編結(jié)束
3.試編程實(shí)現(xiàn)將內(nèi)存中的若干個(gè)無(wú)符號(hào)字?jǐn)?shù)據(jù)中的最大值和最小值找出來(lái),并開辟獨(dú)立的存
儲(chǔ)區(qū)域保存結(jié)果。
;XT4_5_3.ASM
DATASEGMENT
ARRDW123,456,67,0,34,90,89,67,0,256
CNEQU($-ARR)/2
ZDDW0;最大(數(shù)組中任何數(shù)均大于AX內(nèi)容)
ZXDWOFFFFH;最小(數(shù)組中任何數(shù)均小于BX內(nèi)容)
DATAENDS
CODESEGMENT
ASSUMEDS:DATA,CS:CODE
START:MOVAX,DATA
MOVDS,AX;初始化DS
MOVSI,OFFSETARR;數(shù)組首地址送SI
MOVCX,CN;數(shù)組元素個(gè)數(shù)送CX
CALLQZDZXS;調(diào)用近過程QZDZXS(求最大最小數(shù))
MOVAH,4CH
INT21H;返回DOS
;求最大最小數(shù)子程序名:QZDZXS
;子程序功能:求一組字?jǐn)?shù)據(jù)中的最大最小數(shù)
;入口參數(shù):數(shù)組首地址在SI中,數(shù)組個(gè)數(shù)在CX中
;出口參數(shù):最大數(shù)在ZD中,最小數(shù)在ZX中
;使用寄存器用X、DX、SI及PSW
QZDZXSPROCNEAR
PUSHSI
SH
DX
PSU
nCX;保護(hù)現(xiàn)場(chǎng)
M^
ZDZXO:DX,[SI];取一個(gè)數(shù)組元素送DX
CP
ZD,DX;AX中內(nèi)容和DX中內(nèi)容比較
JB
ZDZX1;(ZD)XDX),轉(zhuǎn)ZDZX1
MV
ZD,DX;較大數(shù)存入ZD
CP
ZDZX1:ZX,DX;AX中內(nèi)容和DX中內(nèi)容比較
JA
ZDZX2;(ZX)<(DX),轉(zhuǎn)ZDZX1
MV
DZX,DX;較小數(shù)存入ZX
ZDZX2:AOSI,2;數(shù)組指針加2調(diào)整
D
]LP-ZDZXO;循環(huán)控制
PCX
POPDX
POPSI;恢復(fù)現(xiàn)場(chǎng)
RET;返回主程序
QZDZXSENDP;子程序定義結(jié)束
CODEENDS;代碼段結(jié)束
ENDSTART;匯編結(jié)束
4.編寫程序,計(jì)算如下函數(shù)的值:
fIX,X<0
S=<3X,0WXW10
、4X,0>10
;XT4_5_4.ASM
DATASEGMENT
XDB15
SDB?
DATAENDS
CODESEGMENT
ASSUMEDS:DATA,CS:CODE
START:MOVAX,DATA
MOVDS,AX
MOVAL,X
TESTAL,80H
JZLLO
SALAL,1;2X
JMPLL10
LLO:CMPAL,10
JGLL1
MOVBL,AL
SALAL4;3X
ADDAL,BL
JMPLL10
LL1:SALAL,1;4X
SALAL,1
LL10:MOVS,AL
MOVAH,4CH
INT21H;返回DOS
CODEENDS
ENDSTART;匯編結(jié)束
5.從鍵盤輸入一系列字符,以回車符結(jié)束,編寫程序統(tǒng)計(jì)其中非數(shù)字字符的個(gè)數(shù)?
;XT4_5_5.ASM
DATASEGMENT
NUMDB0;統(tǒng)計(jì)變量
DATAENDS
STACKSEGMENTSTACK;定義堆棧段
DB100DUP(?);開辟100個(gè)存儲(chǔ)單元
STACKENDS;堆棧段結(jié)束
CODESEGMENT;定義代碼段
ASSUMECS:CODE,SS:STACK,DS:DATA
START:MOVAX,DATA
MOVDS,AX
LLL:MOVAH,01H;1號(hào)調(diào)用,從鍵盤輸入一字符存入AL
INT21H
CMPAL,13;與“回車符”的ASCII碼比較
JZL2;是“回車符”,轉(zhuǎn)L2(退出)
CMPAL,30H;與“0”的ASCII碼比較
JBLI;低于“0”的非數(shù)字字符ASCII碼,轉(zhuǎn)L1(統(tǒng)計(jì))。
CMPAL,39H;與“9”的ASCII碼比較
JALI;高于“9”的非數(shù)字字符ASCII碼,轉(zhuǎn)L1(統(tǒng)計(jì))。
JMPLLL
LI:INCNUM;非數(shù)字字符,統(tǒng)計(jì);計(jì)數(shù)增1.
JMPLLL;轉(zhuǎn)LLL(繼續(xù))
L2:MOVDL,OAH;設(shè)置換行符
MOVAH,02H;設(shè)置顯示功能號(hào)
INT21H;換行
MOVDL,NUM;設(shè)置顯示統(tǒng)計(jì)數(shù)字(8位二進(jìn)制數(shù))
MOVCL,4
SHRDL,CL;保留高4位二進(jìn)制數(shù)
ORDL,30H;轉(zhuǎn)換成ASCII碼(高1位十六制數(shù)的ASCII)
MOVAH,02H;設(shè)置顯示功能號(hào)
INT21H;顯示高1位十六制數(shù)的ASCH
MOVDL,NUM;設(shè)置顯示統(tǒng)計(jì)數(shù)字(8位二進(jìn)制數(shù))
ANDDL,0FH;保留低4位二進(jìn)制數(shù)
ORDL,30H;轉(zhuǎn)換成ASCII碼(低1位十六制數(shù)得ASCII)
MOVAH,02H;設(shè)置顯示功能號(hào)
INT21H;顯示低1位十六制數(shù)的ASCII
MOVDL/H’;設(shè)置顯示'H'
MOVAH,02H;設(shè)置顯示功能號(hào)
INT21H;顯示'H'
MOVAH,4CH;設(shè)置返回DOS功能碼。
INT21H;返回DOS
CODEENDS;代碼段結(jié)束
ENDSTART;程序匯編結(jié)束
6.編程實(shí)現(xiàn)將鍵盤連續(xù)輸入的小寫字母用大寫字母顯示出來(lái),小寫字母與大寫字母之間采用
號(hào)分隔,當(dāng)輸入非小寫字母時(shí)程序停止處理。
;XT456.ASM
STACKSEGMENTSTACK;定義堆棧段
DB100DUP(?);開辟100個(gè)存儲(chǔ)單元
STACKENDS;堆棧段結(jié)束
CODESEGMENT;定義代碼段
ASSUMECS:CODE,SS:STACK
START:MOVAH,01H;1號(hào)調(diào)用,從鍵盤輸入一字符存入AL
INT21H;輸入并回顯
MOVBL,AL;保存從鍵盤輸入字符
CMPALJa,;與“曖的ASCII碼比較
JBL3;低于“a”的ASCH碼,轉(zhuǎn)L3(退出)。
CMPAL";與2”的ASCII碼比較
JAL3;高于“a”的ASCII碼,轉(zhuǎn)L3(退出)。
SUBAL,20H;將AL中字符的ASCII碼減去20H變成大寫字母。
MOVBL,AL;保存結(jié)果
MOVDL,<;顯示字符u送DL
MOVAH,02H;2號(hào)調(diào)用,在顯示器上顯示字符
INT21H;顯示u
MOVDL,BL;結(jié)果(大寫字母)送DL。
MOVAH,02H;2號(hào)調(diào)用,在顯示器上顯示DL中的內(nèi)容(大寫字母)。
INT21H;顯示大寫字母
MOVDL,20H;空格送DL。()
MOVAH,02H;2號(hào)調(diào)用,在顯示器上顯示DL中的內(nèi)容(大寫字母).
INT21H;顯示空格(使兩結(jié)果用空格隔開)
JMPSTART;不是“回車符",轉(zhuǎn)START(繼續(xù))
L3:MOVAH,4CH;是“回車符,,,設(shè)置返回DOS功能碼。
INT21H;返回DOS
CODEENDS;代碼段結(jié)束
ENDSTART;程序匯編結(jié)柬
7.在數(shù)據(jù)段中有一個(gè)字節(jié)數(shù)組,編程統(tǒng)計(jì)其中正數(shù)的個(gè)數(shù)放入、單元保存,統(tǒng)計(jì)負(fù)數(shù)的個(gè)數(shù)
放入B單元保存。
;XT4_7.ASM
DATASEGMENT
ARRDB-13,46,67,0,-34,-90,89,67,0,26
CNEQU$-ARR;數(shù)組長(zhǎng)度
ADW?;正數(shù)個(gè)數(shù)統(tǒng)計(jì)結(jié)果變量
BDW?;負(fù)數(shù)個(gè)數(shù)統(tǒng)計(jì)結(jié)果變量
DATAENDS
CODESEGMENT
ASSUMEDS:DATA,CS:CODE
START:MOVAX,DATA
MOVDS,AX;初始化
MOVSI,OFFSETARR;敢組首地址送SI
MOVCX,CN;數(shù)組元素個(gè)數(shù)送CX
L0:MOVDL,[SI];取一個(gè)數(shù)組元素送DX
TESTDL,80H;DX中內(nèi)容和0比較
JNZ
溫馨提示
- 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030全球七葉神安片行業(yè)調(diào)研及趨勢(shì)分析報(bào)告
- 2025-2030全球醫(yī)療器械消毒產(chǎn)品行業(yè)調(diào)研及趨勢(shì)分析報(bào)告
- 2025年全球及中國(guó)缺氧帳篷行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 2025年全球及中國(guó)有機(jī)空穴傳輸材料行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 2025-2030全球連續(xù)式鋰電池?zé)峤鉅t行業(yè)調(diào)研及趨勢(shì)分析報(bào)告
- 競(jìng)業(yè)限制合同協(xié)議書
- 家具房屋租賃合同書
- 2025危險(xiǎn)廢物委托處置合同
- 房地產(chǎn)借款合同
- 提高談判技巧的訓(xùn)練課程
- 未婚生子的分手協(xié)議書
- 變更監(jiān)事章程修正案范例
- 北京小客車指標(biāo)租賃協(xié)議五篇
- 輸液室運(yùn)用PDCA降低靜脈輸液患者外滲的發(fā)生率品管圈(QCC)活動(dòng)成果
- 北師大版小學(xué)六年級(jí)下冊(cè)數(shù)學(xué)全冊(cè)教學(xué)設(shè)計(jì)
- YY/T 0681.2-2010無(wú)菌醫(yī)療器械包裝試驗(yàn)方法第2部分:軟性屏障材料的密封強(qiáng)度
- GB/T 20472-2006硫鋁酸鹽水泥
- 煙氣管道阻力計(jì)算
- 城鄉(xiāng)環(huán)衛(wèi)一體化保潔服務(wù)迎接重大節(jié)日、活動(dòng)的保障措施
- 醫(yī)院-9S管理共88張課件
- 高考作文復(fù)習(xí):議論文論證方法課件15張
評(píng)論
0/150
提交評(píng)論