第一篇:微機(jī)原理答案.
部分習(xí)題答案(顧三樂整理編輯版)
第二章 計(jì)算機(jī)中的數(shù)值和編碼
將十進(jìn)制數(shù)轉(zhuǎn)換為二進(jìn)制和十六進(jìn)制
(1)129.75=1000 0001.11B=81.CH
(2)218.8125=1101 1010.1101B=DA.DH(3)15.625=1111.101B=F.AH
(4)47.15625=10 1111.0010 1B=2F.28 H
將下列二進(jìn)制數(shù)轉(zhuǎn)換為十進(jìn)制和十六進(jìn)制
(1)111010 B=58 =3A H
(2)1011 1100.111B= 188.875= BC.E H(3)0.1101 1B=0.84375 =0.D8H
(4)11110.01 B=30.25 =1E.4H
3、完成下列二進(jìn)制數(shù)的加減法運(yùn)算
(1)1001.11+100.01=1110.00(2)1101010110.1001-01100001.0011=01110101.0110(3)00111101+10111011=11111000(4)01011101.0110-101101.1011=101111.1011
4、完成下列十六進(jìn)制數(shù)的加減法運(yùn)算
(1)745CH+56DFH=D14B H
(2)ABF.8H-EF6.AH=9C28.E H
(3)12AB.F7+3CD.05=1678.FC H
(4)6F01H-EFD8H=7F29 H
5、計(jì)算下列表達(dá)式的值
(1)128.8125+10110101.1011B+1F.2H=101010101.1010B
(2)287.68-10101010.11H+8E.EH=103.CEH
(3)18.9+1010.1101B+12.6H-1011.1001=36.525
6、選取字長n為8位和16位兩種情況,求下列十進(jìn)制數(shù)的補(bǔ)碼。
(1)X=-33的補(bǔ)碼: 1101 1111,***1(2)Y=+33的補(bǔ)碼: 0010 0001,0000 0000 0010 0001(3)Z=-128的補(bǔ)碼:1000 0000,1111 1111 1000 0000(4)N=+127的補(bǔ)碼:0111 1111,0000 0000 0111 1111(5)A=-65的補(bǔ)碼: 1011 1111,1111 1111 1011 1111(6)B=+65的補(bǔ)碼: 0100 0001,0000 0000 0100 0001(7)C=-96的補(bǔ)碼: 1010 0000,1111 1111 1010 0000(8)D=+96的補(bǔ)碼: 0110 0000,0000 0000 0110 0000
7、寫出下列用補(bǔ)碼表示的二進(jìn)制數(shù)的真值
(1)[X]補(bǔ)=1000 0000 0000 0000 H
X=-1000 0000 0000 0000 H=-32768
(2)[Y]補(bǔ)=0000 0001 0000 0001 H
Y=+0000 0001 0000 0001 H=+257
(3)[Z]補(bǔ)=1111 1110 1010 0101 H
Z=-0000 0001 0101 1011 H=-347
(4)[A]補(bǔ)=0000 0010 0101 0111 H
A=+0000 0010 0101 0111 H=+599
8、設(shè)機(jī)器字長為8位,最高位為符號位,試對下列格式進(jìn)行二進(jìn)制補(bǔ)碼運(yùn)算,并判斷結(jié)果是否溢出。
(1)43+8
∵
[43]補(bǔ)=00101011B,[8]補(bǔ)=00001000B
∴ [43]補(bǔ)+[8]補(bǔ)=00101011B+00001000B=00110011B=33H
00101011B
+ 00001000B
00110011B
∵
CS=0,CD=0,OF=CS⊕CD=0⊕0=0
∴
無溢出
(1)43+8
33H(無溢出)
(2)-52+7 D3 H(無溢出)
(3)60+90
H(溢出)
(4)72-8
H(無溢出)
(5)-33+(-37)0BA H(無溢出)
(6)-90+(-70)
H(溢出)
(7)―9―(―7)FE H
(無溢出)
(8)60-90
E2 H(無溢出)
9、設(shè)有變量x=11101111B,y=11001001B,z=01110010B,v=01011010B,試計(jì)算x+y=?,x+z=?,y+z=?,z+v=?,請問:① 若為無符號數(shù),計(jì)算結(jié)果是否正確?② 若為帶符號補(bǔ)碼數(shù),計(jì)算結(jié)果是否溢出?
x+y = 11101111B+11001001B=10111000B=1B8 H
1110 1111 B
+ 1100 1001B
1011 1000B ① 若為無符號數(shù)
② 若為帶符號補(bǔ)碼數(shù)
∵ CF=1 ∴ 不正確
∵ CF=1,DF=1 OF=0
∴ 不溢出
x+y = 0B8 H x+z = 61 H
y+z = 3B H
z+v = 0CC H
①
不正確
不正確
不正確
正確
② 不溢出
不溢出
不溢出
溢出
第三章
80X86微處理器
1.簡述8086/8088CPU中BIU和EU的作用,并說明其并行工作過程。
答:(1)BIU的作用:計(jì)算20位的物理地址,并負(fù)責(zé)完成CPU與存儲(chǔ)器或I/O端口之間的數(shù)據(jù)傳送。
(2)EU的作用:執(zhí)行指令,并為BIU提供所需的有效地址。
(3)并行工作過程:當(dāng)EU從指令隊(duì)列中取出指令執(zhí)行時(shí),BIU將從內(nèi)存中取出指令補(bǔ)充到指令隊(duì)列中。這樣就實(shí)現(xiàn)了取指和執(zhí)行指令的并行工作。
2.8086/8088CPU內(nèi)部有哪些寄存器?其主要作用是什么? 答:8086/8088CPU內(nèi)部共有14個(gè)寄存器,可分為4類:數(shù)據(jù)寄存器4個(gè),地址寄存器4個(gè),段寄存器4個(gè)和控制寄存器2個(gè)。其主要作用是:
(1)數(shù)據(jù)寄存器:一般用來存放數(shù)據(jù),但它們各自都有自己的特定用途。
AX(Accumulator)稱為累加器。用該寄存器存放運(yùn)算結(jié)果可使指令簡化,提高指令的執(zhí)行速度。此外,所有的I/O指令都使用該寄存器與外設(shè)端口交換信息。
BX(Base)稱為基址寄存器。用來存放操作數(shù)在內(nèi)存中數(shù)據(jù)段內(nèi)的偏移地址,CX(Counter)稱為計(jì)數(shù)器。在設(shè)計(jì)循環(huán)程序時(shí)使用該寄存器存放循環(huán)次數(shù),可使程序指令簡化,有利于提高程序的運(yùn)行速度。
DX(Data)稱為數(shù)據(jù)寄存器。在寄存器間接尋址的I/O指令中存放I/O端口地址;在做雙字長乘除法運(yùn)算時(shí),DX與AX一起存放一個(gè)雙字長操作數(shù),其中DX存放高16位數(shù)。
(2)地址寄存器:一般用來存放段內(nèi)的偏移地址。
SP(Stack Pointer)稱為堆棧指針寄存器。在使用堆棧操作指令(PUSH或POP)對堆棧進(jìn)行操作時(shí),每執(zhí)行一次進(jìn)?;虺鰲2僮?,系統(tǒng)會(huì)自動(dòng)將SP的內(nèi)容減2或加2,以使其始終指向棧頂。
BP(Base Pointer)稱為基址寄存器。作為通用寄存器,它可以用來存放數(shù)據(jù),但更經(jīng)常更重要的用途是存放操作數(shù)在堆棧段內(nèi)的偏移地址。
SI(Source Index)稱為源變址寄存器。SI存放源串在數(shù)據(jù)段內(nèi)的偏移地址。
DI(Destination Index)稱為目的變址寄存器。DI存放目的串在附加數(shù)據(jù)段內(nèi)的偏移地址。
(3)段寄存器:用于存放段地址
CS(Code Segment)稱為代碼段寄存器,用來存儲(chǔ)程序當(dāng)前使用的代碼段的段地址。CS的內(nèi)容左移4位再加上指令指針寄存器IP的內(nèi)容就是下一條要讀取的指令在存儲(chǔ)器中的物理地址。
DS(Data Segment)稱為數(shù)據(jù)段寄存器,用來存放程序當(dāng)前使用的數(shù)據(jù)段的段地址。DS的內(nèi)容左移4位再加上按指令中存儲(chǔ)器尋址方式給出的偏移地址即得到對數(shù)據(jù)段指定單元進(jìn)行讀寫的物理地址。
SS(Stack Segment)稱為堆棧段寄存器,用來存放程序當(dāng)前所使用的堆棧段的段地址。堆棧是存儲(chǔ)器中開辟的按“先進(jìn)后出”原則組織的一個(gè)特殊存儲(chǔ)區(qū),主要用于調(diào)用子程序或執(zhí)行中斷服務(wù)程序時(shí)保護(hù)斷點(diǎn)和現(xiàn)場。
ES(Extra Segment)稱為附加數(shù)據(jù)段寄存器,用來存放程序當(dāng)前使用的附加數(shù)據(jù)段的段地址。附加數(shù)據(jù)段用來存放字符串操作時(shí)的目的字符串。
(4)控制寄存器
IP(Instmcdon Pointer)稱為指令指針寄存器,用來存放下一條要讀取的指令在代碼段內(nèi)的偏移地址。用戶程序不能直接訪問IP。
FLAGS稱為標(biāo)志寄存器,它是一個(gè)16位的寄存器,但只用了其中9位,這9位包括(個(gè)狀態(tài)標(biāo)志位和3個(gè)控制標(biāo)志位。它用來反映算術(shù)運(yùn)算和邏輯運(yùn)算結(jié)果的一些特征,或用來控制CPU的某種操作。
3.8086/8088CPU中有哪些寄存器可用來指示操作數(shù)在存儲(chǔ)器中某段內(nèi)的偏移地址? 答:可用來指示段內(nèi)偏移地址的寄存器共有6個(gè):IP、SP、BP、BX、SI、DI
4.8086/8088CPU中標(biāo)志寄存器FLAGS有哪些標(biāo)志位?它們的含義和作用如何? 答:標(biāo)志寄存器中的標(biāo)志共有9個(gè),分為兩類:狀態(tài)標(biāo)志6個(gè)和控制標(biāo)志3個(gè)。其作用 是:
(1)狀態(tài)標(biāo)志:用來反映算術(shù)和邏輯運(yùn)算結(jié)果的一些特征。
CF(Carry Flag)—進(jìn)位標(biāo)志位。當(dāng)進(jìn)行加減運(yùn)算時(shí),若最高位發(fā)生進(jìn)位或借位,則CF為1,否則為0。該標(biāo)志位通常用于判斷無符號數(shù)運(yùn)算結(jié)果是否超出了計(jì)算機(jī)所能表示的無符號數(shù)的范圍。
PF(Parity Flag)—奇偶標(biāo)志位。當(dāng)指令執(zhí)行結(jié)果的低8位中含有偶數(shù)個(gè)1時(shí),PF為1,否則為0。
AF(Auxiliary Flag)—輔助進(jìn)位標(biāo)志位。當(dāng)執(zhí)行一條加法或減法運(yùn)算指令時(shí),若結(jié)果的低字節(jié)的低4位向高4位有進(jìn)位或借位,則AF為1,否則為0。
ZF(Zero Flag)—零標(biāo)志位。若當(dāng)前的運(yùn)算結(jié)果為0,則ZF為1,否則為00
SF(Sign Flag)—符號標(biāo)志位。當(dāng)運(yùn)算結(jié)果的最高位為1時(shí),SF=1,否則為00
OF(Overflow Flag)—溢出標(biāo)志位。當(dāng)運(yùn)算結(jié)果超出了帶符號數(shù)所能表示的數(shù)值范圍,即溢出時(shí),OF=1,否則為0。該標(biāo)志位通常用來判斷帶符號數(shù)運(yùn)算結(jié)果是否溢出o
(2)控制標(biāo)志位:用來控制CPU的操作,由程序設(shè)置或清除。它們是:
TF(TrapFlag)—跟蹤(陷阱)標(biāo)志位。它是為測試程序的方便而設(shè)置的。若將TF置1,8086/8088CPU處于單步工作方式,否則,將正常執(zhí)行程序。
IP(Interrupt Flag)—中斷允許標(biāo)志位。它是用來控制可屏蔽中斷的控制標(biāo)志位。若用STI指令將IF置1,表示允許CPU接受外部從INTR引腳上發(fā)來的可屏蔽中斷請求信號;若用CLI指令將IP清0,則禁止CPU接受可屏蔽中斷請求信號。IF的狀態(tài)對非屏蔽中斷及內(nèi)部中斷沒有影響。
DF(DirectionFlag)—方向標(biāo)志位。若用STD將DF置1,串操作按減地址方式進(jìn)行,也就是說,從高地址開始,每操作一次地址自動(dòng)遞減;若用CLD將DF清0,則串操作按增地址方式進(jìn)行,即每操作一次地址自動(dòng)遞增。
5.8086/8088CPU的地址總線有多少位?其尋址范圍是多少? 答:8086/8088地址總線有20根,尋址范圍1MB
6.什么叫指令隊(duì)列?8086/8088CPU中指令隊(duì)列有什么作用?其長度分別是多少? 答:(1)指令隊(duì)列:采用“先進(jìn)先出”原則,按順序存放預(yù)執(zhí)行指令的緩沖器稱為指令隊(duì)列。
(2)指令隊(duì)列的作用:存放EU將要執(zhí)行的指令,使CPU的取指和執(zhí)行指令能并行工作。
(3)指令隊(duì)列的長度:8086為6個(gè)字節(jié),8088為4個(gè)字節(jié)。
7.Intel8086與8088有何區(qū)別? 答:8086與8088的區(qū)別有三處:
(1)外部數(shù)據(jù)總線位數(shù)不同(即地址/數(shù)據(jù)分時(shí)復(fù)用引腳條數(shù)不同);
8086為16位:AD15~AD0。
8088為 8位:AD7~AD0。
(2)內(nèi)部指令隊(duì)列緩沖器長度不同;
8086有6個(gè)字節(jié)。當(dāng)指令隊(duì)列出現(xiàn)2個(gè)空字節(jié)時(shí),BIU將取指補(bǔ)充。
8086有4個(gè)字節(jié)。當(dāng)指令隊(duì)列出現(xiàn)1個(gè)空字節(jié)時(shí),BIU將取指補(bǔ)充。
(3)外部某些控制總線定義不同。
① 8086的28號引腳定義為M/IO(S2),8088定義為IO/M(S2)
② 8086的34號引腳定義為BHE/S7,8088定義為SS0/(HIGH)
8.簡述8086 CPU使用地址鎖存信號ALE將地址A15~A0與數(shù)據(jù)D15~D0分開的工作原理。
答:在任何一個(gè)總線周期的T1狀態(tài),ALE均為高電平,以表示當(dāng)前地址/數(shù)據(jù)復(fù)用線上的輸出的是地址信息,在ALE由高變低的下降沿時(shí)把地址裝入地址鎖存器,而在T2、T3和T4狀態(tài),ALE均為低電平,以表示當(dāng)前地址/數(shù)據(jù)復(fù)用線上的輸出的是數(shù)據(jù)信息,此時(shí)通過數(shù)據(jù)收發(fā)器進(jìn)行傳送。
9.什么是邏輯地址?什么是物理地址?若已知邏輯地址為BA00:A800,試求物理地址。
答: 邏輯地址:由段地址和偏移地址表示的存儲(chǔ)單元地址稱為邏輯地址。
物理地址:CPU對存儲(chǔ)器進(jìn)行訪問時(shí)實(shí)際所使用的20位地址稱為物理地址。
若
邏輯地址為BA00H:A800H
則
物理地址=BA00H×10H+A800H=C4800H
10.簡述堆棧指針寄存器SP的功能及堆棧的操作過程。
答:(1)SP的功能:指示進(jìn)棧和出棧操作時(shí)的偏移地址。
(2)堆棧的操作過程:進(jìn)棧時(shí),先將SP-2,再將數(shù)據(jù)壓入堆棧(即先移后入);出棧時(shí),先將數(shù)據(jù)彈出堆棧,再將SP+2(即先出后移)。
第四章
80X86 指令系統(tǒng)
指出源操作數(shù)的尋址方式
⑴ MOV BX,2000H
;立即數(shù)尋址
⑵ MOV BX,[2000H] ;直接尋址
⑶ MOV BX,[SI]
;寄存器間接尋址
⑷ MOV BX,[SI+2000H] ;寄存器相對尋址
⑸ MOV [BX+SI],AL ;寄存器尋址
⑹ ADD AX,[BX+DI+80] ;基址變址相對尋址
⑺ MUL BL
;寄存器尋址
⑻ JMP BX
;段內(nèi)間接尋址
⑼ IN
AL,DX
;端口間接尋址
⑽ INC WORD PTR [BP+10H] ;寄存器相對尋址
⑾ MOV CL,LENGTH VAR ;立即數(shù)尋址
⑿ MOV BL,OFFSET VAR1 ;立即數(shù)尋址
指出下列指令是否正確
(1)MOV DS,0100H
;錯(cuò)誤。源操作數(shù)是立即數(shù)時(shí),目的操作數(shù)不能時(shí)段寄存器
(2)MOV BP,AL
;錯(cuò)誤。操作數(shù)類型不一致
(3)XCHG AH,AL
;正確。
(4)OUT 310H,AL
;錯(cuò)誤。端口直接尋址的范圍應(yīng)在0~FFH之間
(5)MOV BX,[BX]
;正確。
(6)MOV ES:[BX+DI],AX ;正確。
(7)MOV AX,[SI+DI] ;錯(cuò)誤。存儲(chǔ)器尋址中有效地址不能由兩個(gè)變址寄存器組成(8)MOV SS:[BX+SI+100H],BX ;正確。
(9)AND AX,BL
;錯(cuò)誤。操作數(shù)類型不一致
(10)MOV DX,DS:[BP]
;正確。
(11)ADD [SI],20H
;錯(cuò)誤。用PTR 說明類型
(12)MOV 30H,AL
;錯(cuò)誤。目的操作數(shù)不能為立即數(shù)
(13)PUSH 2000H
;錯(cuò)誤。堆棧指令的操作數(shù)不能是立即數(shù)
(14)MOV
[SI],[2000H]
;錯(cuò)誤。兩個(gè)操作數(shù)不能同時(shí)為存儲(chǔ)器操作數(shù)
(15)MOV
SI,AL
;錯(cuò)誤。操作數(shù)類型不一致
(16)ADD [2000H],20H ;錯(cuò)誤。用PTR 說明類型
(17)MOV CS,AX
;錯(cuò)誤。目的操作數(shù)不能為代碼段寄存器
(18)INC [DI]
;錯(cuò)誤。需用PTR說明類型
(19)OUT BX,AL
;錯(cuò)誤。端口間接尋址的寄存器只能是DX寄存器
(20)SHL
BX,3
;錯(cuò)誤。移位次數(shù)大于1時(shí)應(yīng)該用CL寄存器
(21)XCHG CX,DS
;錯(cuò)誤。交換指令中不能出現(xiàn)段寄存器
(22)POP
AL
;錯(cuò)誤。堆棧指令的操作數(shù)只能是字操作數(shù)(即16位操作數(shù))
寫出存儲(chǔ)器操作數(shù)物理地址的計(jì)算表達(dá)式
(1)MOV AL,[DI]
;(DS)×10H+(DI)(2)MOV AX,[BX+SI]
;(DS)×10H+(BX)+(SI)(3)MOV 5[BX+DI],AL
;(DS)×10H+(BX)+(DI)+5(4)ADD AL,ES:[BX]
;(ES)×10H+(BX)
(5)SUB AX,[1000H]
;(DS)×10H+1000H(6)ADC AX,[BX+DI+2000H]
;(DS)×10H+(BX)+(DI)+2000H(7)MOV CX,[BP+SI]
;(SS)×10H+(BP)+(SI)(8)INC
BYTE PTR [DI]
;(DS)×10H+(DI)
若(DS)=3000H,(BX)=2000H,(SI)=0100H,(ES)=4000H,計(jì)算下列存儲(chǔ)器操作數(shù)的物理地址。
(1)(DS)×10H+(BX)=3000H×10H+2000H=32000H
(2)(DS)×10H+(BX)+(SI)+1000H=3000H×10H+2000H+0100H+1000H=33100 H
(3)(DS)×10H+(BX)+(SI)=3000H×10H+2000H+0100H=32100 H
(4)(ES)×10H+(BX)=4000H×10H+2000H=42000 H
5、若(CS)=E000H,說明代碼段可尋址物理存儲(chǔ)空間的范圍。
∵ 最小物理地址為:(CS)×10H+0000H=E0000H
最大物理地址為:(CS)×10H+FFFFH=EFFFFH ∴ 代碼段可尋址物理存儲(chǔ)空間的范圍是:E0000H~EFFFFH
6、設(shè)(SP)=2000H,(AX)=3000H,(BX)=5000H,執(zhí)行下列程序段后,(SP)=?,(AX)=?,(BX)=?
PUSH AX
PUSH BX
POP AX(SP)=1FFEH,(AX)=5000H,(BX)=5000H
7、試比較SUB AL,09H與CMP AL,09H這兩條指令的異同。若(AL)=08H,分別執(zhí)行上述兩條指令后,(AL)=?,CF=?,OF=0,ZF=?
(1)相同點(diǎn):兩條指令都能完成(AL)-09H的功能,并且都影響六個(gè)狀態(tài)標(biāo)志位;
不同點(diǎn):SUB指令將運(yùn)算結(jié)果回送到AL寄存器中,而CMP指令不回送。
(2)SUB AL,09H
;(AL)=FFH,CF=1,OF=0,ZF=0
CMP AL,09H
;(AL)=08H,CF=1,OF=0,ZF=0
8、分別執(zhí)行下列指令,試求AL的內(nèi)容及各狀態(tài)標(biāo)志位的狀態(tài)。
(1)MOV AL,19H ;
ADD AL,61H ;(AL)=7AH
OF=0
SF=0
ZF=0
AF=0
PF=0
CF=0(2)MOV AL,19H ;
SUB AL,61H ;(AL)=B8H
OF=0
SF=1
ZF=0
AF=0
PF=1
CF=1(3)MOV AL,5DH ;
ADD AL,0C6H ;(AL)=23H
OF=0
SF=0
ZF=0
AF=1 PF=0
CF=1(4)MOV AL,7EH ;
SUB AL,95H ;(AL)=E9H
OF=1
SF=1
ZF=0
AF=0
PF=0
CF=1
9、用最少的指令,實(shí)現(xiàn)下述要求的功能。
(1)AH的高4位清零。
AND AH,0FH
(2)AL的高4位去反。
XOR
AH, 0F0H
(3)AL的高4位移到低4位,高4位清0。
MOV
CL,4
SHR
AL,CL(4)AL的低4位移到高4位,低4位清0。
MOV CL,4
SHL
AL,CL
10、設(shè)(BX)=6D16H,(AX)=1100H,寫出下列三條指令執(zhí)行后,AX和BX寄存器中的內(nèi)容。
MOV
CL,06H
ROL AX,CL
SHR BX,CL
(AX)=4004 H
(BX)=01B4 H
11、設(shè)初值(AX)=0119H,執(zhí)行下列程序段后,(AX)=?
MOV CH,AH
ADD AL,AH
DAA
XCHG AL,CH
ADC AL,34H
DAA
MOV AH,AL
MOV AL,CH
(AX)=3520 H
12、指出下列程序段的功能。
(1)MOV CX,10
LEA SI,F(xiàn)irst
LEA DI,Second
REP MOVSB
將 First串中前10個(gè)字符傳送至Second 中
(2)CLD
LEA DI,[0404H]
MOV CX,0080H
XOR AX,AX
REP STOSW
將起始地址為0404 H開始的80 H個(gè)單元置成0
13、設(shè)(BX)=6F30H,(BP)=0200H,(SI)=0046H,(SS)=2F00H,(2F246H)=4154H,試求執(zhí)行XCHG BX,[BP+SI]后,(BX)=?,(2F246H)=?
(BX)=4154H
(2F246H)=6F30H
14、設(shè)(BX)=0400H,(DI)=003CH,執(zhí)行LEA BX,[BX+DI+0F62H]后,(BX)=?
(BX)=139E H
15、設(shè)(DS)=C000H,(C0010H)=0180H,(C0012H)=2000H,執(zhí)行LDS SI,[10H]后,(SI)=?,(DS)=?
(SI)=0180 H,(DS)=2000 H
16、已知(DS)=091DH,(SS)=1E4AH,(AX)=1234H,(BX)=0024H,(CX)=5678H,(BP)=0024H,(SI)=0012H,(DI)=0032H,(09226H)=00F6H,(09228H)=1E40H,試求單獨(dú)執(zhí)行下列指令后的結(jié)果。
(1)MOV CL,20H[BX][SI]
;(CL)=0F6 H
(2)MOV [BP][DI],CX
;(1E4F6 H)=5678 H
(3)LEA BX,20H[BX][SI] ;(BX)=0056 H
MOV AX,2[BX]
;(AX)=1E40 H(4)LDS SI,[BP][DI]
;
MOV
[SI],BX
;((SI))=0024 H
(5)XCHG CX,32H[BX] ;
XCHG 20H[BX][SI],AX ;(AX)=5678 H,(09226H)=1234 H
17、若CPU中各寄存器及RAM參數(shù)如圖所示,試求獨(dú)立執(zhí)行如下指令后,CPU及RAM相應(yīng)寄存器及存儲(chǔ)單元的內(nèi)容是多少?
CPU RAM 執(zhí)行前 執(zhí)行后
CS 3000H FFFFH CX 20506H 06H 不變
DS 2050H 0004H BX 20507H 00H 不變
SS 50A0H 1000H SP 20508H 87H 不變
ES 0FFFH 17C6H DX 20509H 15H 不變
IP 0000H 8094H AX 2050AH 37H 94H
DI 000AH 1403H BP 2050BH C5H 不變
SI 0008H 1 CF 2050CH 2FH 不變
(1)MOV DX,[BX+2] ;(DX)=0006H,(BX)=0004H(2)PUSH CX
;(SP)=0FFEH(3)MOV CX,BX ;(CX)=0004H,(BX)=0004H(4)TEST AX,01 ;(AX)=8094H,(CF)=0(5)MOV AL,[SI] ;(AL)=87H(6)ADC AL,[DI] ;(AL)=0CCH,(CF)=0
DAA
;(AL)=32H(7)INC SI
;(SI)=0009H(8)DEC DI
;(DI)=0009H(9)MOV [DI],AL ;((DI))=94H(10)XCHG AX,DX ;(AX)=17C6H,(DX)=8094H(11)XOR AH,BL ;(AH)=84H,(BL)=04H(12)JMP DX
;(IP)=17C6H
18、(DS)=2000H,(BX)=1256H,(SI)=528FH,偏移量=20A1H,(232F7H)=3280H,(264E5H)=2450H,試求執(zhí)行下述指令后的結(jié)果。
(1)JMP BX
;(IP)=1256 H
(2)JMP TABLE[BX]
;(IP)=3280 H
(3)JMP [BX][SI]
;(IP)=2450 H
19、設(shè)(IP)=3D8FH,(CS)=4050H,(SP)=0F17H,當(dāng)執(zhí)行CALL 2000H:0094H后,試指出(IP)、(CS)、(SP)、((SP))、((SP)+1)、((SP)+2)和((SP)+3)的內(nèi)容。
CALL指令是5字節(jié)指令,下一條指令地址為4050H:3D94H 所以執(zhí)行后
(IP)=0094H,(CS)=2000H、(SP)=0F13H
((SP))=94H,((SP)+1)=00H,((SP)+2)=00H,((SP)+3)=20H 第五章
匯編語言程序設(shè)計(jì)
2.PLENTH的值為0022,它表示當(dāng)前已分配單元空間; 3.L的值為6;
5.(AX)=000AH;(BL)=0AH;(CL)=01H; 10.MOV AX, 4A82H MOV DL,AH AND DL,0F0H
MOV CL,4 SHR DL,CL
PUSH AX
AND AH,0FH
MOV BH,AH
AND AL,0F0H
MOV BL,AL
MOV CL,4
SHR BL,CL
MOV CL,BH
POP AX
AND AL,0FH 11.data
segment
string1 db 'I am a student.'
string2 db 'I am a student.'
yes
db 'match',0dh,0ah,'$'
no
db 'no match',0dh,0ah,'$' data
ends code
segment
assume cs:code,ds:data,es:data start: push ds
sub ax,ax
push ax
mov ax,data
mov ds,ax
mov es,ax
lea si,string1
lea di,string2
mov cx,string2-string1
cld
repe cmpsb
jnz dispno
mov ah,9
lea dx,yes
int 21h
jmp exit dispno: mov ah,9
lea dx,no
int 21h exit:
MOV AH,4CH
INT 21H code
ends
13.DATA SEGMENT
M
DB
11H,22H,33H,44H,64H,87H,34,29,67H,88H,0F6H
DB
43H,0B7H,96H,0A3H,233,56H,23H,56H,89H C EQU 20 P DB 20 DUP(?)N DB 20 DUP(?)
PLUS
DB
'PLUS',0DH,0AH,'$'
MINUS
DB
'MINUS',0DH,0AH,'$'
J
DB DUP(?)
DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA START: MOV
AX,DATA MOV
DS,AX LEA
SI,M LEA
DI,P LEA
BX,N MOV
CX,C MOV
DX,0 LOOP1:
LODSB TEST AL,80H
JNZ
MINUS1;負(fù)數(shù)轉(zhuǎn)移
MOV [DI],AL
INC DI
INC
DH;存正數(shù)個(gè)數(shù)
JMP
AGAIN MINUS1: MOV [BX],AL
INC BX
INC DL;存負(fù)數(shù)個(gè)數(shù) AGAIN: DEC CX
JNZ
LOOP1
MOV WORD PTR J,DX;存結(jié)果
MOV DX,OFFSET MINUS
MOV AH,9
INT 21H
;顯示提示信息
MOV BL,J
MOV CH,2 ROTATE: MOV CL,4
ROL BL,CL
MOV AL,BL
AND AL,0FH
ADD AL,30H
CMP AL,3AH
JL
POR
ADD AL,7 POR:
MOV DL,AL
MOV AH,2
INT 21H
DEC CH
JNZ ROTATE
;十六進(jìn)制形式輸出負(fù)數(shù)個(gè)數(shù)
MOV AH,2
MOV DL,0DH
INT 21H
MOV DL,0AH
INT 21H
MOV DX,OFFSET PLUS
MOV AH,9
INT 21H
MOV DH,J+1
MOV CH,2 ROTATE1: MOV CL,4
ROL
DH,CL
MOV AL,DH
AND AL,0FH
ADD AL,30H
CMP AL,3AH
JL
POR1
ADD AL,7 POR1: MOV DL,AL
MOV AH,2
INT 21H
DEC CH
JNZ ROTATE1
MOV AH,4CH
INT 21H CODE ENDS END START
第六章
半導(dǎo)體存儲(chǔ)器
2、(1)
64片
片內(nèi)尋址線
10根,片間尋址線
6根
(2)128片
片內(nèi)尋址線
11根,片間尋址線
5根
(3)
16片
片內(nèi)尋址線
11根,片間尋址線
5根
(4)
2片
片內(nèi)尋址線
14根,片間尋址線
2根 3、1024×8的RAM芯片,地址線11根。數(shù)據(jù)線8根
6、已知:8位微機(jī)地址,總線16位,設(shè)計(jì)12KB存儲(chǔ)系統(tǒng),其中ROM 占用0000H開始的8KB,RAM占用2000H 開始的4KB,存儲(chǔ)芯片分別選用INTEL 2716和2114 分析如下:(1)ROM 2716
2K×8芯片,需4片,做字?jǐn)U展,片內(nèi)尋址線11根 RAM 2114
1K×4芯片,需8片,做字位擴(kuò)展,片內(nèi)尋址線10根
(2)地址范圍:
A15 A14 A13 A12 A11 A10 ROM1:0000H~07FFH
0
0
0
0
0
0 ROM2:0800H~0FFFH
0
0
0
0
0
A15 A14 A13 A12 A11 A10 ROM3:1000H~17FFH
0
0
0
0
0 ROM4:1800H~1FFFH
0
0
0
0 RAM1、2:2000H~23FFH
0
0
0
0
0 RAM3、4:2400H~27FFH
0
0
0
0 RAM5、6:2800H~2BFFH
0
0
0
0 RAM7、8:2C00H~2FFFH
0
0
0(3)A11、A12、A13
3:8譯碼器 譯碼輸入
(一級譯碼)ROM1 :Y0 ROM2 :Y1 ROM3 :Y2 ROM4 :Y3 RAM1、2 :Y4 與
A10
(二級譯碼)RAM3、4 :Y4 與
A10 RAM5、6 :Y5 與
A10 RAM7、8 :Y5 與
A10(4)畫圖連接 略 9、8088組成的小型計(jì)算機(jī)系統(tǒng),32KB ROM,其地址范圍00000~07FFFH, RAM占用8KB,地址范圍:08000H~09FFFH。ROM選用 2764(8K×8),RAM選用2114(1K×4)分析如下
(1)ROM 2764
8K×8芯片,需4片,做字?jǐn)U展,片內(nèi)尋址線13根 RAM 2114
1K×4芯片,需16片,做字位擴(kuò)展,片內(nèi)尋址線10根
(2)地址范圍:
A15 A14 A13 A12 A11 A10 ROM1
00000~01FFF H
0
0
0
(一級譯碼)ROM2
02000~03FFF H
0
0
ROM3
04000~05FFF H
0
0
ROM4
06000~07FFFH
0 RAM1(組)08000~083FFH
0
0
0
0
0
(二級譯碼)RAM2
08400~087FFH
0
0
0
0
RAM3
08800~08BFFH
0
0
0
0 RAM4
08C00~08FFFH
0
0
0
RAM5
09000~093FFH
0
0
0
0 RAM6
09400~09FFFH
0
0
0
RAM7
09800~09BFFH
0
0
0 RAM8
09C00~09FFFH
0
0
1(3)ROM1 Y0
(1 # 譯碼器
A15
A14 A13 譯碼輸入)ROM2 Y1 ROM3 Y2 ROM4 Y3 RAM1 Y0
(2 # 譯碼器
A12 A11 A10譯碼輸入# Y4做2#的控制信號)RAM2 Y1 RAM3 Y2 RAM4 Y3 RAM5 Y4 RAM6 Y5 RAM7 Y6 RAM8 Y7(4)需兩片3:8譯碼器 畫圖連接 略
第七章
輸入 / 輸出 與 中斷 15、01D8 H
16、接通打印機(jī)→ 檢查打印狀態(tài)→ 發(fā)送數(shù)據(jù)
OR
AL,01 H
OUT 0F7H , AL
IN
AL ,0F6 H
OUT 0F5H , AL 第八章
可編程接口芯片及應(yīng)用
初始化命令字 及 計(jì)數(shù)初值
CUNT0 36H或37H
1000
CUNT1 54H 或55H
始化控制字
(1)99H
(2)B6 H
PC2及PC4 置位命令字 09 H
05 H
第二篇:微機(jī)原理考試答案
微機(jī)原理與應(yīng)用考試答案
一、單選題(25分,每個(gè)1分)1、8086當(dāng)前被執(zhí)行的指令放在(D)
A、DS:BX
B、SS:SP
C、CS:PC
D:CS:IP 2、8086CPU能夠直接執(zhí)行的語言是(B)
A、匯編語言
B、機(jī)器語言
C、C語言
D、JAVA語言
3、在機(jī)器數(shù)(C)零的表示形式是唯一的 A、原碼
B、反碼
C、補(bǔ)碼
D、原碼和反碼 4、8位二進(jìn)制數(shù)的補(bǔ)碼表示范圍為(C)
A、0-255
B、-127~+127
C、-128~+127
D、-128~+128
5、從8086RAM地址002CH開始存放4個(gè)字節(jié)中斷向量,對應(yīng)的中斷號是(B)A、0AH
B、0BH
C、0CH
D、0DH
6、需要擴(kuò)充存儲(chǔ)容量時(shí)采用(A)的方法
A、地址串聯(lián)
B、地址并聯(lián)
C、數(shù)據(jù)線并聯(lián)
D、數(shù)據(jù)線串聯(lián)
7、通常輸出接口需要(B)
A、緩沖器
B、鎖存器
C、計(jì)數(shù)器
D、反相器
8、運(yùn)算器執(zhí)行兩個(gè)補(bǔ)碼表示的整數(shù)加法時(shí),產(chǎn)生溢出的正確敘述為(D)
A、相加結(jié)果的符號位為0則產(chǎn)生溢出
B、相加結(jié)果的符號位為1則產(chǎn)生溢出
C、最高位有進(jìn)位則產(chǎn)生溢出
D、相加結(jié)果的符號位與兩同號加數(shù)的符號位相反,則產(chǎn)生溢出
9、MIPS用來描述計(jì)算機(jī)的計(jì)算速度,其含義為(B)
A、每秒處理百萬個(gè)字符
B、每秒執(zhí)行百萬條指令
C、每分鐘處理百萬個(gè)字符
D、每分鐘執(zhí)行百萬條指令
10、下列數(shù)中,最大的數(shù)是(C)
A、(1011110)2
B、(140)8
C、(97)10
D、(5F)16 11、8086CPU共有(D)根分時(shí)復(fù)用總線 A、8
B、16
C、20
D、21 12、8086系統(tǒng)中每個(gè)邏輯段的最多存儲(chǔ)單元數(shù)為(A)A、64KB
B、256KB
C、1MB
D、根據(jù)需要而定
13、CPU對存儲(chǔ)器訪問時(shí),地址線和數(shù)據(jù)線的有效時(shí)間關(guān)系是(B)A、數(shù)據(jù)線先有效
B、地址線先有效
C、同時(shí)有效
D、同時(shí)無效
14、通常所說的32位機(jī)是指(A)
A、CPU字長為32位
B、寄存器數(shù)量為32個(gè)
C、存儲(chǔ)器單元數(shù)據(jù)為32位
D、地址總線寬度為32位
15、若要使寄存器AH中高4位不變,低四位清0,使用指令(D)
A、OR AH,0FH
B、AND AH,0FH
C、OR AH,0F0H
D、AND AH,0F0H
16、某I/O接口芯片中的端口地址為0A10H~0A1FH,它的片內(nèi)地址線有(B)A、2條
B、4條
C、8條
D、16條
17、從8086存儲(chǔ)器的奇地址開始讀取一個(gè)字節(jié),需要執(zhí)行(B)總線周期 A、0個(gè)
B、1個(gè)
C、2個(gè)
D、3個(gè)
18、下列說法中,正確的是(A)
A、棧頂是堆棧操作的唯一出口
B、堆棧操作遵循先進(jìn)先出的原則
C、棧底是堆棧地址的較小端
D、執(zhí)行出棧操作后,棧頂?shù)刂穼p小 19、8086CPU從功能結(jié)構(gòu)上看是由(B)組成 A、控制器、運(yùn)算器
B、控制器、運(yùn)算器、寄存器
C、控制器、20位物理地址加法器
D、執(zhí)行單元、總線接口單元 20、128KB的SRAM有8條數(shù)據(jù)線,有()條地址線 A、17條
B、18條
C、20條
D、128條
21、可編程定時(shí)/計(jì)數(shù)器8253內(nèi)含有(B)獨(dú)立的計(jì)數(shù)器 A、2個(gè)
B、3個(gè)
C、4個(gè)
D、6個(gè)
22、構(gòu)成1MB存儲(chǔ)器系統(tǒng),需要容量32K*4的RAM芯片(B)片 A、16
B、32
C、64
D、128
23、下列尋址方式中,需要執(zhí)行總線周期的為(D)
A、立即數(shù)尋址
B、寄存器尋址
C、固定尋址
D、存儲(chǔ)器尋址
24、容量為10K的SRAM的起始地址為1000H,則終止地址為(C)A、31FFH
B、33FFH
C、37FFH
D、4FFFH
25、下列邏輯地址中對應(yīng)不同物理地址的是(B)
A、0400H:0340H
B、03E0H:0740H
C、0420H:0140H D、03C0H:0740H
二、填空題(15分,每空1分)
1、由18個(gè)字?jǐn)?shù)據(jù)組成的存儲(chǔ)區(qū),其首地址為1EA5H:BDC7H,則末字單元的物理地址為___________
2、CPU與外設(shè)傳遞的三種信息是程序方式、中斷方式和DMA方式
3、每條指令一般都由操作碼和操作數(shù)兩部分構(gòu)成
4、下列指令執(zhí)行前SS=2000H,SP=0060H,執(zhí)行下列程序之后,SP= AX=,BX=
,CX= MOV AX,1020H MOV BX,3040H MOV CX,5060H PUSH AX PUSH BX POP CX
5、二進(jìn)制數(shù)11101001,若為補(bǔ)碼表示的有符號數(shù),其十進(jìn)制數(shù)值是________; 若為無符號數(shù),其十進(jìn)制數(shù)值是________
6、若AX=42DAH,BX=4331H,則SUB AX,BX指令執(zhí)行后,SF=______,ZF=_______,CF=________。
三、名詞解釋(12分,每個(gè)3分)
1、堆棧
堆棧都是一種數(shù)據(jù)項(xiàng)按序排列的數(shù)據(jù)結(jié)構(gòu),只能在一端(稱為棧頂(top))對數(shù)據(jù)項(xiàng)進(jìn)行插入和刪除。
2、中斷向量
中斷服務(wù)程序的入口地址稱為中斷向量
3、總線周期
1.微處理器是在時(shí)鐘信號CLK控制下按節(jié)拍工作的。8086/8088系統(tǒng)的時(shí)鐘頻率為4.77MHz,每個(gè)時(shí)鐘周期約為200ns。
2.由于存貯器和I/O端口是掛接在總線上的,CPU對存貯器和I/O接口的訪問,是通過總線實(shí)現(xiàn)的。通常把CPU通過總線對微處理器外部(存貯器或I/O接口)進(jìn)行一次訪問所需時(shí)間稱為一個(gè)總線周期。一個(gè)總線周期一般包含4個(gè)時(shí)鐘周期,這4個(gè)時(shí)鐘周期分別稱4個(gè)狀態(tài)即T1狀態(tài)、T2狀態(tài)、T3狀態(tài)和T4狀態(tài)。
4、分時(shí)復(fù)用總線
由于CPU引腳數(shù)量有限,使得一些引腳起多個(gè)作用,比如:AB0~AB7在T1時(shí)刻表示地址,在T2~T4時(shí)刻表示數(shù)據(jù),這樣就稱為AB0~AB7為‘分時(shí)復(fù)用’。
四、簡答題
1、半導(dǎo)體存儲(chǔ)器分為哪兩大類,簡要說明各類特點(diǎn)
答:按制造工藝分類,半導(dǎo)體存儲(chǔ)器可以分為雙極型和金屬氧化物半導(dǎo)體型兩類。
雙極型(bipolar)由TTL晶體管邏輯電路構(gòu)成。該類存儲(chǔ)器件的工作速度快,與CPU處在同一量級,但集成度低,功耗大,價(jià)格偏高,在微機(jī)系統(tǒng)中常用做高速緩沖存儲(chǔ)器cache。
金屬氧化物半導(dǎo)體型,簡稱MOS型。該類存儲(chǔ)器有多種制造工藝,如NMOS, HMOS, CMOS, CHMOS等,可用來制造多種半導(dǎo)體存儲(chǔ)器件,如靜態(tài)RAM、動(dòng)態(tài)RAM、EPROM等。該類存儲(chǔ)器的集成度高,功耗低,價(jià)格便宜,但速度較雙極型器件慢。微機(jī)的內(nèi)存主要由MOS型半導(dǎo)體構(gòu)成。
2、簡述8086中斷系統(tǒng)響應(yīng)可屏蔽中斷的全過程
答:CPU在INTR引腳上接到一個(gè)中斷請求信號,如果此時(shí)IF=1,并且,當(dāng)前的中斷有最高的優(yōu)先級,CPU就會(huì)在當(dāng)前指令執(zhí)行結(jié)束完以后開始響應(yīng)外部中斷請求。這是,CPU通過INTA引腳連續(xù)發(fā)送兩個(gè)負(fù)脈沖,外設(shè)接口在接到第二個(gè)負(fù)脈沖后,在數(shù)據(jù)線上發(fā)送中斷類型碼,CPU接到這個(gè)中斷類型碼后做如下操作: 1 將中斷類型碼放入暫存器保存; 2 將標(biāo)志寄存器內(nèi)容入棧,保護(hù)中斷狀態(tài); 3 將IF和TF表示清零; 4 保護(hù)斷點(diǎn)。IP和CS內(nèi)容入棧; 根據(jù)當(dāng)前中斷類型碼,在中斷向量表找到相應(yīng)的中斷子程序的首地址,將其裝入IP和CS,這樣就可以實(shí)現(xiàn)自動(dòng)轉(zhuǎn)向中斷服務(wù)子程序處執(zhí)行。
3、CPU與外設(shè)交換數(shù)據(jù)的傳送方式分為哪幾種?簡要說明各自特點(diǎn)
答:(1)CPU與外設(shè)交換數(shù)據(jù)的傳送方式可分為3種:程序傳送、中斷傳送和直接存儲(chǔ)器存取(DMA)傳送。
(2)程序查詢輸入輸出傳送方式能較好地協(xié)調(diào)外設(shè)與CPU之間定時(shí)的差別;程序和接口電路比較簡單。其主要缺點(diǎn)是:CPU必須做程序等待循環(huán),不斷測試外設(shè)的狀態(tài),直至外設(shè)為交換數(shù)據(jù)準(zhǔn)備就緒時(shí)為止。這種循環(huán)等待方式很花費(fèi)時(shí)間,大大降低了CPU的運(yùn)行效率。中斷傳送的I/O操作與查詢方式的不同,它總是先由外設(shè)主動(dòng)請求中斷,再由CPU通過響應(yīng)外設(shè)發(fā)出的中斷請求來實(shí)現(xiàn)。中斷傳送方式的好處是:既大大提高了CPU的工作效率,又能對突發(fā)事件做出實(shí)時(shí)處理,I/O響應(yīng)速度很快。其缺點(diǎn)是需要一系列中斷邏輯電路支持,中斷程序設(shè)計(jì)和調(diào)試也比較復(fù)雜。DMA方式,是一種專門的硬件電路執(zhí)行I/O交換的傳送方式,它讓外設(shè)接口可直接與內(nèi)存進(jìn)行高速的數(shù)據(jù)傳送,而不必經(jīng)過CPU,這樣就不必進(jìn)行保護(hù)現(xiàn)場之類的額外操作,可實(shí)現(xiàn)對存儲(chǔ)器的直接存取。
五、計(jì)算題
第三篇:微機(jī)原理復(fù)習(xí)題及答案
一、選擇題
1.一般微機(jī)中不使用的控制方式是(D)A.程序查詢方式
B.中斷方式
C.DMA方式
D.通道方式 2.控制器的功能是(C)A.產(chǎn)生時(shí)序信號 B.從主存取出指令并完成指令操作譯碼 C.從主存取出指令,分析指令并產(chǎn)生有關(guān)的操作控制信號 D.控制計(jì)算機(jī)的一切核心功能
3.采用級聯(lián)方式使用8259中斷控制器,可使它的中斷源最多擴(kuò)大到(D)個(gè) A.8 B.16 C.32 D.64 4.Pc機(jī)數(shù)據(jù)總線信號的狀態(tài)是:(C).A.單向雙態(tài) B.單向三態(tài) C.雙向三態(tài) D.雙向雙態(tài) 5.地址總線為32位的微機(jī)系統(tǒng)中其內(nèi)存最大容量為(D)A.2000KB B.2048KB C.2048MB D.4096MB 6.CPU中程序計(jì)數(shù)器(PC)中存放的是(B)A.指令 B.指令地址 C.操作數(shù) D.操作數(shù)地址 7.采用條件傳送方式時(shí),必須要有(C).A.中斷邏輯 B.請求信號 C.狀態(tài)端口 D.類型號 8.在任何一個(gè)總線周期的T1狀態(tài),ALE輸出(A)A.高電平B.低電平C.高阻態(tài) D.無電流 9.若標(biāo)志寄存器的奇偶標(biāo)志位PF置“1”反映操作(C)A.結(jié)果是偶數(shù) B.結(jié)果是奇數(shù) C.結(jié)果中“1”的個(gè)數(shù)為偶數(shù) D.結(jié)果中“1”的個(gè)數(shù)為奇數(shù) 10.在DMA方式下,CPU與總線的關(guān)系是(C).A.只能控制數(shù)據(jù)總線 B.只能控制地址總線 C.成隔離狀態(tài) D.成短接狀態(tài) 11.當(dāng)使用BP寄存器作基址尋址時(shí),若無指定段替換,則內(nèi)定在(B)段內(nèi)尋址。A.程序 B.堆棧 C.數(shù)據(jù) D.附加
12.某DRAM芯片,其存儲(chǔ)容量為512KX*8位,該芯片的地址線和數(shù)據(jù)線數(shù)目為(D)A.8,512 B.512,8 C.18,8 D.19,8 13.計(jì)算機(jī)的存儲(chǔ)器采用分級存儲(chǔ)體系的主要目的是(D)。
A.便于讀寫數(shù)據(jù) B.減小機(jī)箱的體積 C.便于系統(tǒng)升級 D.解決存儲(chǔ)容量、價(jià)格和存取速度之間的矛盾 14.CPU中程序計(jì)數(shù)器(PC)中存放的是(B)A.指令 B.指令地址 C.操作數(shù) D.操作數(shù)地址 15.外設(shè)的中斷類型碼必須通過16位數(shù)據(jù)總線的(B)傳送給8086.A.高8位 B.低8位 C.16位 D.高4位
16.磁盤存儲(chǔ)器的數(shù)據(jù)存取速度與下列哪一組性能參數(shù)有關(guān)?(B).A.平均等待時(shí)間,磁盤旋轉(zhuǎn)速度,數(shù)據(jù)傳輸速串 B.平均尋道時(shí)間,平均等待時(shí)間,數(shù)據(jù)傳輸速串 C.數(shù)據(jù)傳輸速率,磁盤存儲(chǔ)密度,平均等待時(shí)間 D.磁盤存儲(chǔ)器容量,數(shù)據(jù)傳輸速率,平均等持時(shí)間 17.8259的OCW1----中斷屏蔽字(C)設(shè)置.A.在ICW之前 B.只允許一次 C.可允許多次 D.僅屏蔽某中斷源時(shí) 18.PC機(jī)中的硬中斷服務(wù)程序執(zhí)行的是:(A)。
A.外部中斷請求CPU完成的任務(wù) B.主程序中安排的中斷指令 C.主程序中安排的轉(zhuǎn)移指令 D.主程序中安排的調(diào)用指令 19.標(biāo)志寄存器的標(biāo)志位ZF=1表示運(yùn)算結(jié)果(A)A.為零 B.為負(fù) C.溢出 D.有進(jìn)位 20.在DMA方式下,CPU與總線的關(guān)系是(C).A.只能控制數(shù)據(jù)總線 B.只能控制地址總線 C.成隔離狀態(tài) D.成短接狀態(tài) 21.存儲(chǔ)單元是指(B)
A.存放一個(gè)二進(jìn)制信息位的存儲(chǔ)元 B.存放一個(gè)機(jī)器字的所有存儲(chǔ)元集合 C.存放一個(gè)字節(jié)的所有存儲(chǔ)元集合 D.存放兩個(gè)字節(jié)的所有存儲(chǔ)元集合 22.提出中斷請求的條件是(B).A.外設(shè)提出請求 B.外設(shè)工作完成和系統(tǒng)允許時(shí)
C.外設(shè)工作完成和中斷標(biāo)志觸發(fā)器為“1”時(shí) D.外設(shè)需要工作
23.計(jì)算機(jī)的主存儲(chǔ)器容量達(dá)到10M時(shí),其地址的表示至少需要使用多少個(gè)2進(jìn)位?(C).A.10位 B.20位 C.30位 D.40位 24.I/O與主機(jī)信息的交換采用中斷方式的特點(diǎn)是(B)A.CPU與設(shè)備串行工作,傳送與主程序串行工作 B.Cpu與設(shè)備并行工作,傳送與主程序串行正作 C.CPU與設(shè)備并行工作,傳送與主程序并行工作.D.以上都不對
25.當(dāng)8086/8088訪問100H端口時(shí),采用(C)尋址方式.A.直接 B.立即 C.寄存器間接 D.相對 26.Pc機(jī)數(shù)據(jù)總線信號的狀態(tài)是:(C).A.單向雙態(tài) B.單向三態(tài) C.雙向三態(tài) D.雙向雙態(tài) 27.某DRAM芯片,其存儲(chǔ)容量為512KX*8位,該芯片的地址線和數(shù)據(jù)線數(shù)目為(D)A.8,512 B.512,8 C.18,8 D.19,8 28.下面關(guān)于主存儲(chǔ)器(也稱為內(nèi)存)的敘述中,不正確的是:(B).A.主存儲(chǔ)器向CPU提供要執(zhí)行的數(shù)據(jù),程序段等 B.存儲(chǔ)器的讀、寫操作一次讀出或?qū)懭胍粋€(gè)字節(jié) C.字節(jié)是主存儲(chǔ)器中信息的基本編址單位
D.從程序設(shè)計(jì)的角度來看,cacbe(高速緩存)也是主存儲(chǔ)器 29.段定義語句以(B)語句結(jié)束。
A.END B.ENDS C.ENDP D.ENDM 30.8255A的(C)只能工作在方式0。
A.A端口 B.B端口 C.C端口 D.前三者 31.8253—5是可編程的(A)接口芯片。
A.定時(shí)器/計(jì)數(shù)器 B.并行 C.串行 D.中斷控制器 32.存儲(chǔ)器是計(jì)算機(jī)系統(tǒng)的記憶設(shè)備,它主要用來(C)
A.存放數(shù)據(jù) B.存放程序 C.存放數(shù)據(jù)和程序 D.存放微程序 33.串行傳送的波特率是指單元時(shí)間內(nèi)傳送(A)數(shù)據(jù)的位數(shù)。
A.二進(jìn)制 B.八進(jìn)制 C.十進(jìn)制 D.十六進(jìn)制 34.下面關(guān)于主存儲(chǔ)器(也稱為內(nèi)存)的敘述中,不正確的是:(B).A.主存儲(chǔ)器向CPU提供要執(zhí)行的數(shù)據(jù),程序段等 B.存儲(chǔ)器的讀、寫操作一次讀出或?qū)懭胍粋€(gè)字節(jié) C.字節(jié)是主存儲(chǔ)器中信息的基本編址單位
D.從程序設(shè)計(jì)的角度來看,cacbe(高速緩存)也是主存儲(chǔ)器
35.某計(jì)算機(jī)字長32位,存儲(chǔ)容量為4MB,若按字編址,它的尋址范圍是(A)A.0-1M B.0-4MB C.0-4M D.0-1MB 36.一條指令中目的操作數(shù)不允許使用的尋址方式是(B)
A.寄存器尋址 B.立即數(shù)尋址 C.變址尋址
D.寄存器間接尋址 37.在8086/8088中,一個(gè)最基本的總線周期由4個(gè)時(shí)鐘周期(T狀態(tài))組成,在T1狀態(tài),CPU在總線發(fā)出(C)信息.A.數(shù)據(jù) B.狀態(tài) C.地址 D.其他
38.采用兩只中斷的控制器8259A級聯(lián)后,CPU的可屏蔽硬中斷源能擴(kuò)大到(D)A.64個(gè) B.32個(gè) C.16個(gè) D.15個(gè) 39.下列寄存器為8位的寄存器有(D)A.IP B.AX C.BP D.BH 40.地址總線為32位的微機(jī)系統(tǒng)中其內(nèi)存最大容量為(D)A.2000KB B.2048KB C.2048MB D.4096MB 41.8259的OCW1----中斷屏蔽字(C)設(shè)置.A.在ICW之前 B.只允許一次 C.可允許多次 D.僅屏蔽某中斷源時(shí) 42.在匯編語言程序設(shè)計(jì)中,標(biāo)號和變量的類型屬性分別有:(A)。A.BIT、BYTE、WORD、DWORD B.NEAR、FAR C.EAR、FAR 和BYTE、WORD、DWORD D.CODE、DATA、STACK 43.在任何一個(gè)總線周期的T1狀態(tài),ALE輸出(A)A.高電平B.低電平C.高阻態(tài) D.無電流 44.下面哪一個(gè)是8088CPU中的代碼段寄存器(A)A.CS B.DS C.ES D.SS 45.8086CPU可擴(kuò)展I/O端口地址的個(gè)數(shù)最多為(D)A.1K B.4K C.8K D.64K 46.Pc機(jī)數(shù)據(jù)總線信號的狀態(tài)是:(C).A.單向雙態(tài) B.單向三態(tài) C.雙向三態(tài) D.雙向雙態(tài)
47.采用級聯(lián)方式使用8259中斷控制器,可使它的中斷源最多擴(kuò)大到(D)個(gè) A.8 B.16 C.32 D.64 48.存儲(chǔ)器是計(jì)算機(jī)系統(tǒng)的記憶設(shè)備,它主要用來(C)
A.存放數(shù)據(jù) B.存放程序 C.存放數(shù)據(jù)和程序 D.存放微程序
49.對于一低速外設(shè),在外設(shè)準(zhǔn)備數(shù)據(jù)期間希望CPU能做自己的工作,只有當(dāng)外設(shè)準(zhǔn)備好數(shù)據(jù)后才與CPU交換數(shù)據(jù)。完成這種數(shù)據(jù)傳送最好選用的傳送方式是(C)A.無條件傳遞方式 B.查詢傳送方式 C.中斷傳送方式 D.DMA傳送方式 50.設(shè)8255A的端口地址為80H~ 83H,則端口A的地址為(A)A.80H B.81H C.82H D.83H
二、填空題
1.Intel 8255A是一個(gè)_可編程的通用并行輸入輸出_ 接口芯片。
2.設(shè)某容量為4K的RAM芯片的起始地址為2000H(16位地址),則其終止地址為_2FFFH_.3.一個(gè)控制系統(tǒng),當(dāng)主設(shè)備發(fā)生異常時(shí),需向CPU告警,請求處理,否則將危及工作人員的生命及設(shè)備的安全,此告警線應(yīng)接到8086CPU的_ NMI__中斷請求信號引腳上.4.采用中斷查詢傳送方式時(shí),完成一次傳送過程,首先必須通過執(zhí)行一條_IN__指令,讀取外設(shè)信息.5.8255A內(nèi)部具有__3___個(gè)輸入輸出端口。
6.機(jī)器指令由操作碼和__操作數(shù)____兩部分組成 7.計(jì)算機(jī)時(shí)鐘脈沖的頻率稱為____主頻______.8.可編程接口電路中用來存放控制電路組態(tài)的控制字節(jié)寄存器稱為__控制____寄存器。9.硬件中斷可分為__可屏蔽中斷,非屏蔽中斷__兩種。10.16K字節(jié)的RAM芯片應(yīng)有__14____根地址輸入端.11.邏輯地址由段基址和_偏移地址___組成。12.8086/8088CPU的數(shù)據(jù)線和地址線是以___分時(shí)_____方式輪流使用的。13.根據(jù)功能不同,8086的標(biāo)志位可分為__狀態(tài)_____和___控制____標(biāo)志。
14.8086/8088的中斷響應(yīng)了兩個(gè)總線周期,從____INTA______引腳輸出兩個(gè)負(fù)脈沖.15.在8086CPU系統(tǒng)中,設(shè)某中斷源的中斷類型碼為08H,中斷向量為0100:1000H,則相應(yīng)的中斷向量存儲(chǔ)地址為___20____H.16.CPU通過一個(gè)外設(shè)接口同外設(shè)之間交換的信息包括數(shù)據(jù)信息,狀態(tài)信息和__控制信息____.17.Intel 8251A工作在同步方式時(shí),最大波特率為_64kbps____.18.8255A內(nèi)部具有__3___個(gè)輸入輸出接口。
19.機(jī)器指令由 操作碼 和操作數(shù)兩部分組成。20.16K字節(jié)的RAM芯片應(yīng)有__14____根地址輸入端.21.用4KX4的RAM芯片組成32K的外擴(kuò)存儲(chǔ)器,共需芯片__16____片.22.8086/8088CPU的數(shù)據(jù)線和地址線是以___分時(shí)______方式輪流使用的。
23.數(shù)據(jù)總線是雙向總線,8位微處理器有8條數(shù)據(jù)線,16位微處理器有__16___條數(shù)據(jù)總線.24.8086系統(tǒng)中的BHE信號通常作為__奇____地址存儲(chǔ)體的體選信號。當(dāng)BHE為___低___電平時(shí)有效。25.Intel 8251A工作在異步方式時(shí),最大波特率為__19.2kbps_______.26.采用中斷查詢傳送方式時(shí),完成一次傳送過程,首先必須通過執(zhí)行一條____IN____指令,讀取外設(shè)狀態(tài)信息.27.8086CPU中斷系統(tǒng)有__256____種中斷類型碼,中斷類型碼與對應(yīng)的矢量地址換算公式為__中斷類型碼×4(n×4)____。
28.計(jì)算機(jī)時(shí)鐘脈沖的頻率稱為__主頻________.29.一般外設(shè)接口與外設(shè)間交換的信息有控制信息、數(shù)據(jù)信息 和 狀態(tài)信息。30.壓棧指令的源操作數(shù)只能是 16 位的操作數(shù)。31.主機(jī)與外設(shè)之間數(shù)據(jù)傳送方式有無條件傳送方式、查詢傳送方式、中斷方式 和 DMA方式。32.地址總線通常是_單向___總線,由CPU輸出,8位微處理器有16條地址總線,16位微處理器有20條或更多。
33.CPU從主存取出一條指令并執(zhí)行該指令的時(shí)間稱為___指令周期______.34.8255A控制字的最高位D7=_____1____時(shí),表示該控制字為方式控制字。35.8255A的三個(gè)端口中只有端口__C___沒有輸入鎖存功能。36.用Inter2114組成4K*8bit的RAM要用___8___片.37.輸入/輸出指令間接尋址必須通過_DX_____寄存器.38.8086/8088CPU內(nèi)部共有____14______個(gè)16位寄存器。
39.8086/8088CPU的數(shù)據(jù)線和地址線是以__分時(shí)____方式輪流使用的。
40.串操作指令規(guī)定源串在__數(shù)據(jù)____段中,用_SI____來尋址源操作數(shù),目的串在__附加數(shù)據(jù)____段中,用 ___DI___ 來尋址目的操作數(shù)。
41.存儲(chǔ)器通常由存儲(chǔ)矩陣,_地址譯碼器____,控制部件和三態(tài)緩沖器組成.42.CPU總線通常包括地址總線、數(shù)據(jù)總線和___控制______總線等三組總線。
三、簡答題
1.外設(shè)向CPU申請中斷,但CPU不給以響應(yīng),其原因有哪些?(1)CPU處于關(guān)中斷狀態(tài),IF=0;(2)該中斷請求已被屏蔽;(3)該中斷請求的時(shí)間太短,未能保持到指令周期結(jié)束;(4)CPU已釋放總線,而未收回總線控制權(quán)。
2.8255各口設(shè)置如下:A組與B組均工作于方式0,A口為數(shù)據(jù)輸入,B口為輸出,C口高位部分為輸出,低位部分為輸入,A口地址設(shè)為40H.(1)寫出工作方式控制字(2)對8255A初始化
(3)從A口輸入數(shù)據(jù),將其取反后從B口送出
(1)10010001B 即91H(2)MOV AL,91H;OUT 43H,AL
(3)IN AL,40H;NOT AL;OUT 41H,AL
3.說明程序存儲(chǔ)及程序控制的概念。
程序存儲(chǔ):程序是由一條條指令組合而成的,而指令是以二進(jìn)制代碼的形式出現(xiàn)的,把執(zhí)行一項(xiàng)信息處理任務(wù)的程序代碼,以字節(jié)為單位,按順序存放在存儲(chǔ)器的一段連續(xù)的存儲(chǔ)區(qū)域內(nèi),這就是程序存儲(chǔ)的概念。
程序控制:計(jì)算機(jī)工作時(shí),CPU中的控制器部分,按照程序指定的順序(由碼段寄存器CS及指令指針寄存器IP指引),到存放程序代碼的內(nèi)存區(qū)域中去取指令代碼,在CPU中完成對代碼的分析,然后,由CPU的控制器部分依據(jù)對指令代碼的分析結(jié)果,適時(shí)地向各個(gè)部件發(fā)出完成該指令功能的所有控制信號,這就是程序控制的概念
4.已知AH=77H,AL=33H能否說AX=7733H,為什么?SI寄存器可分不SH和SL嗎? 能。因?yàn)椋粒厥牵保段坏臄?shù)據(jù)寄存器,它可以以字(16位)或以字節(jié)(8位)形式訪問。不能。因?yàn)镾I是16位的源變址寄存器,只能以字(16位)為單位使用。
5.一臺微型計(jì)算機(jī)有16根地址線,8根數(shù)據(jù)線,如果采用字節(jié)編址,它可訪問的最大存儲(chǔ)空間是多少字節(jié)?試用十六進(jìn)制數(shù)表示其地址范圍.64KB,0000H~FFFFH 6.半導(dǎo)體隨機(jī)存儲(chǔ)器RAM與只讀存儲(chǔ)器ROM有何區(qū)別?它們各有哪幾種類型? 隨機(jī)存儲(chǔ)器RAM中的任何存儲(chǔ)單元都能隨時(shí)讀寫,即存取操作與時(shí)間,存儲(chǔ)單元物理位置順序無關(guān),一旦掉電,所存信息丟失。常見類型有靜態(tài)RAM和動(dòng)態(tài)RAM等。
ROM是一種只讀存儲(chǔ)器,其內(nèi)容一經(jīng)寫入,在工作過程中就能只能讀出不能重寫,即使掉電,信息也不會(huì)丟失。常見的類型有掩模ROM,PROM,EPROM,EEPROM等。
7.什麼是引腳的分時(shí)復(fù)用?請說明8086/8088有哪些分時(shí)復(fù)用引腳?其要解決的問題是什么?
8086的數(shù)據(jù)線和地址線是利用復(fù)用的,所以常把8086的總線稱為多路總線,即某一時(shí)刻總線上出現(xiàn)的是地址,另一時(shí)刻,總線上出現(xiàn)的是數(shù)據(jù)。正是這種引腳的分時(shí)使用方法才能使8086用40條引腳實(shí)現(xiàn)20位地址、16位數(shù)據(jù)及眾多的控制信號和狀態(tài)信號的傳輸。8086CPU的分時(shí)復(fù)用的引腳有:地址/數(shù)據(jù)復(fù)用引腳.作用為一個(gè)腳多用,如:AD15~AD0,在總線周期的T1狀態(tài),傳送地址信息,在其它狀態(tài)則傳送數(shù)據(jù)信息; 8.說明微機(jī)系統(tǒng)的工作實(shí)質(zhì)。
計(jì)算機(jī)之所以能在沒有人直接干預(yù)的情況下,自動(dòng)地完成各種信息處理任務(wù),是因?yàn)槿藗兪孪葹樗幹屏烁鞣N工作程序,計(jì)算機(jī)的工作過程,就是執(zhí)行程序的過程。9.常用的存儲(chǔ)器片選控制方法有哪幾種?它們各有什么優(yōu)缺點(diǎn)? 常用存儲(chǔ)器片選控制方法有3種,分別是線選法,全譯碼法,局部譯碼法。線選法的優(yōu)點(diǎn)是連線簡單,缺點(diǎn)是地址空間利用率低;全譯碼法不浪費(fèi)地址空間,但需譯碼電路;局部譯碼介于前二者之間。當(dāng)存儲(chǔ)容量要求大于系統(tǒng)地址線所能尋址的最大范圍,或者幾個(gè)微處理器需要共享某一存儲(chǔ)區(qū)域時(shí),則采用擴(kuò)充尋址法。
10.試說明異步串行通信和同步串行通信的特點(diǎn).異步特點(diǎn):在通信的數(shù)據(jù)流中,字符與字符間的傳送是完全異步的,字符內(nèi)部位與位之間還是基本同步傳送。同步特點(diǎn):數(shù)據(jù)流中的字符之間和字符內(nèi)部各位間都同步,顯然這種方式對同步要求很嚴(yán)格,收/發(fā)雙方必須以同一時(shí)鐘來控制發(fā)送與接收。
11.在8086CPU中,已知CS寄存器和IP寄存器的內(nèi)容分別為如下所示,試確定其物理地址.(1)CS=1000H IP=2000H 12000H(2)CS=2000H IP=00A0H 200A0H(3)CS=1234H IP=0C00H 12F40H
12.8259A可編程中斷控制器的主要功能有哪些? 1 單片8259A可管理8級優(yōu)先權(quán)中斷源,通過級聯(lián)可管理64級優(yōu)先權(quán)中斷源; 2 對任何一級中斷源都可單獨(dú)進(jìn)行屏蔽,使該中斷請求暫時(shí)被掛起,直到取消屏蔽時(shí); 能向CPU提供中斷類型碼; 具有多種中斷優(yōu)先級管理方式,這些管理方式可能過程序動(dòng)態(tài)的進(jìn)行變化。13.如果利用中斷方式傳送數(shù)據(jù),則數(shù)據(jù)是如何傳輸?shù)?中斷機(jī)構(gòu)起什么作用? 利用中斷方式傳送數(shù)據(jù),一般是首先向CPU發(fā)出中斷請求,CPU響應(yīng)中斷后在中斷處理程序中進(jìn)行數(shù)據(jù)傳輸,傳輸完畢返回。中斷機(jī)構(gòu)起控制作用,實(shí)時(shí)性較強(qiáng)。
14.8086/8088系統(tǒng)中為什麼一定要有地址鎖存器,需要鎖存哪些信息?
8088/8086系統(tǒng)中,一般數(shù)據(jù)位是8位,而地址位是16位的話,那么可以這么理解:程序要輸出一個(gè)地址,就必須先輸出高8位,用鎖存器鎖定后,再輸出低8位(或反之),這時(shí)才完成一個(gè)16位地址的輸出。
鎖存的信息:邏輯電路:通過控制信號完成對當(dāng)前輸出信號的固定,主要是邏輯狀態(tài)(0,1)集成功能:是一個(gè)可以完成當(dāng)前總線狀態(tài)的保存
計(jì)算機(jī)組原:完成數(shù)據(jù)的保存,是存儲(chǔ)器等功能器件的輔助器件 16.8086中有哪些寄存器可用來指示存儲(chǔ)器偏移地址? 可用來指示段內(nèi)偏移地址的寄存器共有6個(gè):IP、SP、BP、BX、SI、DI.17.8255的功能作用是什么?它有哪些工作方式? 8255是可編程的并行接口芯片,設(shè)有三個(gè)8位的數(shù)據(jù)輸入/輸出端口,拱有三種工作方式:方式0為基本的輸入/輸出方式;方式1為應(yīng)答式輸入/輸出方式;方式2為應(yīng)答式雙向數(shù)據(jù)傳送方式。18.寫出中斷響應(yīng)的處理過程.(1)中斷請求(2)中斷允許(3)保護(hù)斷電,保護(hù)現(xiàn)場(4)中斷服務(wù)(5)恢復(fù)現(xiàn)場,中斷返回。19.總線周期的含義是什么?8088/8086基本總線周期由幾個(gè)時(shí)鐘周期組成?
總線周期是指CPU從存儲(chǔ)器I/O端口存取一個(gè)字節(jié)所需要的時(shí)間。8088/8086基本總線周期由4個(gè)時(shí)鐘周期組成。
23.某程序數(shù)據(jù)段中存有數(shù)據(jù)字:1234H和5A6BH,若已知DS=5AA0H,她們的偏移地址分別為245AH和3245H,試畫出它們在存儲(chǔ)器中的存放情況。24.什麼是I/O接口,什麼是I/O端口?
I/O接口:I/O接口是INPUT/OUTPUT指輸入/輸出設(shè)備接口
I/O端口:CPU和外設(shè)進(jìn)行數(shù)據(jù)傳輸時(shí),各類信息在接口中進(jìn)入不同的寄存器,這些寄存器為I/O端口。
25.虛擬存儲(chǔ)器有那些特點(diǎn)?
第一,允許用戶用彼內(nèi)存空間大的多的空間來訪問主存。第二,每次訪存都要進(jìn)行虛實(shí)地址的轉(zhuǎn)換。
四、1.以下是完成20個(gè)字節(jié)字符串的傳送,并檢測是否正確的程序,若正確標(biāo)志位放00,否則放11。給指定語句加標(biāo)注。DATSEG SEGMENT DATAX DB ‘ABCD??RST’ DATAY DB 20 DUP(?)FLAGS DB ? DATSEG ENDS MOV AX, DATSEG;MOV DS, AX MOV ES, AX CLD;MOV SI, OFFSET DATAX;MOV DI, OFFSET DATAY MOV CX, 20;REP MOVSB ??
REPE CMPSB JZ HHH;MOV AL, 11 JMP III HHH: MOV AL, 00 III: MOV FLAGS, AL 2.程序改錯(cuò)(10分)(1)保持STATE單元內(nèi)容的D4、D3兩位為“0”,其余六位不變。
AAA: MOV SI,OFFSET STATE MOV AL,[SI] AND AL,0C0H MOV [SI],AL RET 改正:()
(2)從4000H開始有20H個(gè)帶符號數(shù),要求統(tǒng)計(jì)出負(fù)數(shù)的個(gè)數(shù)送MIN單元。
XOR DI,DI
MOV BX,4000H
MOV CX,20H AGAIN:MOV AL,[BX] INC BX
TEST AL,01H
JNZ GOON INC DI GOON: DEC CX JNZ AGAIN MOV MIN,DI
RET 改正:(),()
3.對40個(gè)有符號數(shù)進(jìn)行測試,分別把正、負(fù)字存放進(jìn)兩段不同單元。完成此程序。
DATA SEGMENT BLOCK DB 43H,56H,0ABH?? ;共40個(gè)字節(jié) PDATA DB 40 DUP(?)NDATA DB 40 DUP(?)DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA, ES:DATA EXP1 PROC FAR START: PUSH DS
MOV AX, 0 PUSH AX
MOV AX , DATA MOV DS, AX MOV ES, AX
LEA SI , BLOCK LEA DI, PDATA LEA BX, NDATA CLD
MOV CX, PDATA-BLOCK GOON: LODSB
TEST AL, 80H JNZ MINUS STOSB
JMP AGAIN MINUS: XCHG BX, DI
STOSB
XCHG BX, DI AGAIN: LOOP GOON RET EXP1 ENDP CODE ENDS END START 4.程序改錯(cuò)
(1)保持STATE單元內(nèi)容的D4、D3兩位為“0”,其余六位不變。AAA: MOV SI,OFFSET STATE
MOV AL,[SI] AND AL,0C0H MOV [SI],AL RET 改正:()
(2)ST1是DS段中的一個(gè)4字節(jié)字符串,ST2是ES段中的一個(gè)4字節(jié)字符串,比較其是否相等;相等置FLAG單元為00H,不等置FLAG單元為11H。MOV SI,OFFSET ST1 MOV DI,OFFSET ST2 MOV CX,0004 STD REPNZ CMPSB JZ HHH MOV AL,11 JMP III HHH: MOV AL,00 III: MOV FLAG,AL RET 改正:()()
5.以下是完成20個(gè)字節(jié)字符串的傳送,并檢測是否正確的程序,若正確標(biāo)志位放00,否則放11。完成此程序。DATSEG SEGMENT DATAX DB ‘ABCD??RST’ DATAY DB 20 DUP(?)FLAGS DB ? DATSEG ENDS MOV AX, DATSEG MOV DS, AX MOV ES , AX CLD MOV SI , OFFSET DATAX MOV DI, OFFSET DATAY MOV CX , 20 REP MOVSB ??
REPE CMPSB JZ HHH MOV AL, 11 JMP III HHH: MOV AL, 00 III: MOV FLAGS , AL 6.程序改錯(cuò)
(1)保持STATE單元內(nèi)容的D4、D3兩位為“0”,其余六位不變。
AAA: MOV SI,OFFSET STATE
MOV AL,[SI] AND AL,0C0H
MOV [SI],AL RET 改正:()
(2)在BUF開始的50個(gè)有符號數(shù)中(16位),找出最小值存放在MIN單元中。
MOV BX,OFFSET BUF MOV CL,31H
MOV AX,[BX] BBB: INC BX INC BX
CMP AX,[BX]
JNC CCC
MOV AX,[BX] CCC: DEC CX
MOV SI,OFFSET BUF JNZ BBB MOV MIN,AX
RET 改正:(),()
7.用1K×4的2114芯片組成2K×8的存儲(chǔ)器系統(tǒng)。
8.用2K×8的2716A存儲(chǔ)器芯片組成8K×8的存儲(chǔ)器系統(tǒng)。
9.用1K×4的2114芯片構(gòu)成lK×8的存儲(chǔ)器系統(tǒng)。
12.現(xiàn)有8個(gè)字節(jié)的數(shù)據(jù)為34H,45H,56H,67H,78H,89H,9AH,ABH,假定它們在存儲(chǔ)器中的物理地址為400A5H-400ACH,試求各存儲(chǔ)單元的有效地址;若從存儲(chǔ)器中讀出這些數(shù)據(jù),試問要訪問幾次存儲(chǔ)器?
各字節(jié)的有效地址分別為0085H,0086H,0087H,0088H,008AH,008BH,008CH 8個(gè)總線周期
13.對40個(gè)有符號數(shù)進(jìn)行測試,分別把正、負(fù)字存放進(jìn)兩段不同單元。給指定語句加標(biāo)注。
DATA SEGMENT BLOCK DB 43H,56H,0ABH?? ;共40個(gè)字節(jié) PDATA DB 40 DUP(?)NDATA DB 40 DUP(?); DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA, ES:DATA EXP1 PROC FAR START: PUSH DS
MOV AX, 0 PUSH AX
MOV AX, DATA MOV DS, AX MOV ES, AX LEA SI, BLOCK
LEA DI, PDATA ; LEA BX, NDATA CLD
MOV CX, PDATA-BLOCK;
GOON: LODSB
TEST AL, 80H
JNZ MINUS ; STOSB
JMP AGAIN MINUS: XCHG BX, DI ;
STOSB
XCHG BX, DI AGAIN: LOOP GOON
RET EXP1 ENDP CODE ENDS END START 14.程序改錯(cuò)
(1)從4000H開始有20H個(gè)帶符號數(shù),要求統(tǒng)計(jì)出負(fù)數(shù)的個(gè)數(shù)送MIN單元。XOR DI,DI
MOV BX,4000H
MOV CX,20H AGAIN:MOV AL,[BX]
INC BX
TEST AL,01H
JNZ GOON INC DI GOON: DEC CX JNZ AGAIN MOV MIN,DI
RET 改正:(),()
(2)ST1是DS段中的一個(gè)4字節(jié)字符串,ST2是ES段中的一個(gè)4字節(jié)字符串,比較其是否相等;相等置FLAG單元為00H,不等置FLAG單元為11H。
MOV SI,OFFSET ST1 MOV DI,OFFSET ST2 MOV CX,0004 STD REPNZ CMPSB JZ HHH MOV AL,11 JMP III HHH: MOV AL,00 III: MOV FLAG,AL RET 改正:()()15.畫出容量為8K*8的ROM連接圖(CPU用8088,EPROM用2716,R0M地址區(qū)從4000H開始)
第四篇:微機(jī)原理試題及答案
微機(jī)原理與接口技術(shù)模擬試題
-1.實(shí)現(xiàn)DMA傳送,需要()
①CPU通過執(zhí)行指令來完成 ②CPU利用中斷方式來完成 ③CPU利用查詢方式來完成④不需要CPU參與即可完成 0 下面哪種說法不正確()
①內(nèi)存地址也可做為接口地址使用
②內(nèi)存地址不可做為接口地址使用
③接口地址不可做為內(nèi)存地址使用
④接口地址也可做為外存地址使用
一、單項(xiàng)選擇題(每小題1分,共16分)1.指令MOV AX,[BX][SI]中源操作數(shù)的尋址方式是()A.寄存器間接尋址 B.變址尋址 C.相對尋址 D.基址變址尋址
2.8086 CPU內(nèi)有指示下條指令有效地址的指示器是()A.IP B.SP C.BP D.SI 3.設(shè)串行異步傳送的數(shù)據(jù)格式是7個(gè)數(shù)據(jù)位、1個(gè)起始位,1個(gè)停止位、1個(gè)校驗(yàn)位,波特率為2400,則每秒鐘傳送的最大字符數(shù)為()A.100個(gè) B.120個(gè) C.10個(gè) D.240個(gè) 4.采用高速緩存(cache)的目的是()A.擴(kuò)大主存容量 B.提高CPU運(yùn)行速度 C.提高總線速度 D.提高主存速度
5.在DMA方式下,數(shù)據(jù)從內(nèi)存?zhèn)魉偷酵庠O(shè)的路徑是()A.內(nèi)存→CPU→總線→外設(shè) B.內(nèi)存→DMAC→外設(shè) C.內(nèi)存→數(shù)據(jù)總線→外設(shè) D.外設(shè)→內(nèi)存
6.若8086 CPU主頻為8MHz,則其基本總線周期為()A.200ns B.500ns C.125ns D.250ns 7.8253工作在哪幾種方式時(shí),可輸出1個(gè)時(shí)鐘周期寬度(1clk)的負(fù)脈沖()A.方式0,4,5 B.方式2,4,5 C.方式1,2,4 D.方式0,2,4 8.CPU響應(yīng)INTR和NMI中斷時(shí),相同的必要條件是()A.當(dāng)前總線空閑 B.允許中斷
C.當(dāng)前訪問內(nèi)存結(jié)束 D.當(dāng)前指令執(zhí)行結(jié)束 9.8251A的操作命令字的作用是()A.決定8251A的數(shù)據(jù)傳送格式 B.決定8251A實(shí)際操作 C.決定數(shù)據(jù)傳送方向 D.決定8251A何時(shí)收/發(fā)數(shù)據(jù) 10.用2K×4位的RAM芯片組成16K字節(jié)的存儲(chǔ)器,共需RAM芯片和片選地址分別為()A.16位和3片 B.8位和8片 C.4片和3位 D.32片和8位
11.8086/8088中除______兩種尋址方式外,其它各種尋址方式的操作數(shù)均在存儲(chǔ)器中。()A.立即尋址和直接尋址 B.寄存器尋址和直接尋址 C.立即尋址和寄存器尋址 D.立即尋址和間接尋址
12.設(shè)8259A當(dāng)前最高優(yōu)先級為IR5,若要使下一循環(huán)IR2為最低優(yōu)先級,則OCW2應(yīng)設(shè)為()A.01100010 B.11100000 C.11000010 D.11100010 13.設(shè)置特殊屏蔽方式的目的是()A.屏蔽低級中斷 B.響應(yīng)高級中斷 C.響應(yīng)低級中斷 D.響應(yīng)同級中斷
14.設(shè)8255A的方式選擇控制字為9BH,其含義是()A.A、B、C口全為輸出 B.A、B、C口全為輸入 C.A、B口為方式0且輸出 D.以上都不對
15.8086/8088 CPU系統(tǒng)中最大模式下增加總線控制器8288的目的是()A.提高總線控制能力 B.提高總線驅(qū)動(dòng)能力 C.控制協(xié)處理器 D.解決總線共享控制問題 16.同步通信傳輸信息時(shí),其特點(diǎn)是()A.每個(gè)字符的傳送不是獨(dú)立的 B.字符之間的傳送時(shí)間長度可不同 C.通信雙方必須同步 D.字符發(fā)送速率由數(shù)據(jù)傳輸率確定
二、填空題(每空0.5分,共16分)1.一臺完整的微型計(jì)算機(jī)應(yīng)由________________________________四部分組成。2.只有________________________________時(shí),CPU才執(zhí)行總線周期,總線接口部件BIU的功能是________________________________。
3.總線標(biāo)準(zhǔn)是指____________________________________________。
4.時(shí)鐘周期是CPU的時(shí)間基準(zhǔn),它由計(jì)算機(jī)的________________決定,若8086的時(shí)鐘周期為250ns,則基本總線周期為________________。
5.最小模式系統(tǒng)除CPU、存儲(chǔ)器、I/O接口和總線外,至少還應(yīng)配置________________________________三種芯片部件。6.8086CPU響
應(yīng)
可
屏
蔽
中
斷的條
件
是_____________________________________________________________________________________________。
7.8086 CPU中的狀態(tài)標(biāo)志是____________________________________________。8.一個(gè)完整的中斷過程包括____________________________________________四個(gè)階段。確定可屏蔽中斷優(yōu)先級的方法通常有____________________________________________三種。9.執(zhí)行一
條
指
令
所
需的總
時(shí)
間
為____________________________________________之和。
10.CPU執(zhí)行IN、OUT指令,在硬件上會(huì)使______________________信號有效。11.最小模式系統(tǒng)中除CPU以外的總線主模塊是__________________,它與CPU間通過____________________兩個(gè)信號來交換總線控制權(quán)。12.在存儲(chǔ)
器
系
統(tǒng)
中
實(shí)
現(xiàn)
片
選的方
法
有____________________________________________三種。
13.用8K×8位的RAM芯片組成16K×16的存儲(chǔ)器時(shí),所需的RAM芯數(shù)、片內(nèi)地址和產(chǎn)生片選信號的地址分別為____________________________。14.CPU與外
設(shè)
見的數(shù)
據(jù)
傳
送三
控種
制,方
式其
有中___________________________________________________________________適用于高速數(shù)據(jù)傳輸。15.中斷系統(tǒng)的基本功能是____________________________。
16.8255A中共有________________個(gè)8位端口,其中_____________口既可作數(shù)據(jù)口,又可產(chǎn)生控制信號,若要所有端口均為輸出口,則方式選擇字應(yīng)為____________________________。
17.若要讀取8253的當(dāng)前計(jì)數(shù)值,則必須____________________________,若要其輸出一正跳變沿信號,應(yīng)選擇工作方式____________________________。18.8251A的方式字、操作命令字和狀態(tài)自三者間的關(guān)系是____________________________________________________________________________________。
19.DMA控制器可處于_______________________兩種工作狀態(tài),DMA控制器的傳送方式
(工
作
模
式)
有________________________________________________________四種。20.條件傳送時(shí),一個(gè)數(shù)據(jù)的傳送過程包括________________________________________________________三個(gè)環(huán)節(jié)。21.外總線也叫____________________________,微機(jī)外總線通常有____________________________兩種。
三、計(jì)算題(每小題4分,共12分)1.在串行異步傳送中一個(gè)串行字符由1個(gè)起始位,7個(gè)數(shù)據(jù)位,1個(gè)校驗(yàn)位和1個(gè)停止位組成,每秒傳送120個(gè)字符,則數(shù)據(jù)傳送的波特率應(yīng)為多少?傳送每位信息所占用的時(shí)間為多少?
2.已知:I/O端口譯碼電路如圖所示,請指出y1和y4的地址范圍及操作類型。3.已知8251A的方式字為DAH,那么發(fā)送的字符格式應(yīng)是怎樣的?若要使接收和發(fā)送時(shí)的波特率分別為600波特和2400波特,則加在RxC和TxC引腳上的接收時(shí)鐘和發(fā)送時(shí)鐘應(yīng)各為多少?
四、簡答題(每小題5分,共20分)1.8259A中的中斷屏蔽寄存器IMR和8086/8088的中斷允許標(biāo)志IF有何區(qū)別?在中斷響應(yīng)過程中,它們怎樣配合起來工作?
2.用8K×8位的RAM芯片,8K×8位的EPROM芯片和3-8譯碼器74LS138構(gòu)成一個(gè)16K×16位的RAM和16K×16位的ROM存儲(chǔ)器,8086工作在最小模式,各需要多少芯片?畫出該存儲(chǔ)器的組成框圖及其與CPU的連接圖,寫出各芯片的地址范圍。
3.根據(jù)總線所處位置可分為哪幾類?總線操作可分為哪幾個(gè)階段?RS-232C串行總線是用于哪兩個(gè)設(shè)備間的串行通信標(biāo)準(zhǔn)?該標(biāo)準(zhǔn)包括哪些內(nèi)容?
4.A/D轉(zhuǎn)換器與系統(tǒng)連接時(shí)需要考慮哪些問題?一個(gè)完整的微機(jī)的A/D、D/A通道應(yīng)包括哪幾部分?
五、應(yīng)用題(每小題12分,共36分)1.某微機(jī)系統(tǒng)中使用1片8253,其端口地址為300H、301H、302H、303H,系統(tǒng)提供的計(jì)數(shù)脈沖頻率為500KHz,CLK1由8253內(nèi)其它計(jì)數(shù)器提供,對8253的初始化程序如下所示,閱讀該程序,請完成:(1)對程序加上適當(dāng)注釋。
(2)指出各計(jì)數(shù)器的工作方式、計(jì)數(shù)初值。
(3)各個(gè)計(jì)數(shù)器輸出的定時(shí)信號形式及周期或頻率。
(4)畫出8253及其與系統(tǒng)總線的硬件連接圖(端口譯碼電路用框圖表示即可)。MOV DX, 303 MOV AL, 36H OUT DX, AL MOV DX, 300H MOV AL, 0F4H OUT DX, AL MOV AL, 01H OUT DX, AL OUT DX, 303H MOV AL, 54H OUT DX, AL MOV DX, 301H MOV AL, 0AH OUT DX, AL
2.8088系統(tǒng)中用8255A作打印機(jī)接口電路,用PA口作數(shù)據(jù)輸出,CPU采用中斷方式與8255A傳送數(shù)據(jù),要求輸出一個(gè)數(shù)據(jù)后,從8255A的PC上輸出一個(gè)負(fù)脈沖作為打印機(jī)的輸入選通信號。設(shè)8255A的端口地址為80H、81H、82H和83H,輸出數(shù)據(jù)存放在內(nèi)存中2000H:3000H開始的單元中,中斷服務(wù)程序的入口地址為3000H:2000H,中斷類型碼為11。要求:
(1)編寫完成上述要求的初始化程序(即主程序)和輸出10個(gè)字符的中斷服務(wù)字程序。
(2)所有程序均應(yīng)加適當(dāng)注釋和必要參數(shù)說明。
3.按下列要求對8251A進(jìn)行初始化,并加適當(dāng)注釋。
(1)要求工作于異步方式,波特率系數(shù)為16,奇校驗(yàn),8位數(shù)據(jù)位,1位停止位。(2)允許接收、允許發(fā)送、全部錯(cuò)誤標(biāo)志復(fù)位。
(3)查詢8251A的狀態(tài)字、當(dāng)接收準(zhǔn)備就緒時(shí),則從8251A輸入數(shù)據(jù),否則等待。設(shè)8251A的控制口地址為3F2H,數(shù)據(jù)口地址為3F0H。
第五篇:微機(jī)原理復(fù)習(xí)題及答案
一、填空題
1.Rfb是運(yùn)放 電阻,被放在。2.DAC0832內(nèi)部有 地和 地。3.LE是DAC0832內(nèi)部寄存器的鎖存命令。當(dāng)其為 時(shí),寄存器輸出隨 變化。
4.當(dāng)LE為0時(shí),數(shù)據(jù) 在寄存器,不再隨 上的數(shù)據(jù)變化而變化。5.在過程控制應(yīng)用中,有時(shí)對控制量的輸出要求是 的,在給定值時(shí)產(chǎn)生的偏差不改變控制量的,這時(shí)可采用單極性輸出電路。6.在隨動(dòng)系統(tǒng)中,由偏差所產(chǎn)生的控制量僅 不同,而且控制量 不同,這時(shí)要求D/A轉(zhuǎn)換器有雙極性輸出;7.D/A轉(zhuǎn)換器實(shí)現(xiàn)雙極性輸出,在輸出除需要有運(yùn)算放大器外還應(yīng)增加
和。
8.若D/A轉(zhuǎn)換器芯片內(nèi)部有鎖存寄存器,微處理器就把D/A芯片當(dāng)作一個(gè)并行;若D/A轉(zhuǎn)換器芯片內(nèi)部無鎖存寄存器,微處理器就把D/A芯片當(dāng)作一個(gè)并行。
9.ADCO809是CMOS的 位 轉(zhuǎn)換器。
10.ADCO809的引腳EOC是 信號,可作為。
二、單項(xiàng)選擇題
1.ADC0809啟動(dòng)A/D轉(zhuǎn)換的方式是。
A)高電平B)負(fù)電平C)負(fù)脈沖 D)正脈沖 2.ADC0809的輸出。
A)具有三態(tài)緩沖器,但不可控 B)具有可控的三態(tài)緩沖器 C)沒有三態(tài) 緩沖器 D)沒有緩沖鎖存
3.ADC0809可以用()引線經(jīng)中斷邏輯向CPU申請中斷。A)OE B)START C)EOC D)ALE
三、多項(xiàng)選擇題
1.DAC0832有()工作方式。
A)單緩沖 B)雙緩沖 C)多級緩沖 D)直通
2.ADC0809與微機(jī)系統(tǒng)相連接,可采用的數(shù)據(jù)傳輸方式有。A)無條件傳輸 B)查詢傳輸 C)中斷傳輸 D)DMA傳輸
四、簡答題
1、已知某DAC的最小分辨電壓VLSB=5mV,滿刻度輸出電壓Vom=10V,試求該電路輸入二進(jìn)制數(shù)字量的位數(shù)n應(yīng)是多少?
2、A/D轉(zhuǎn)換器和微機(jī)接口中的關(guān)鍵問題有哪些?
3、A/D轉(zhuǎn)換器為什么要進(jìn)行采樣?采樣頻率應(yīng)根據(jù)什么選定?
4、若ADC輸入模擬電壓信號的最高頻率位20KHz,取樣頻率的下限是多少?
5、雙積分式ADC電路中的計(jì)數(shù)器是十進(jìn)制的,最大計(jì)數(shù)容量N=(1000)10,時(shí)鐘脈沖頻率為5KHz,完成一次轉(zhuǎn)換最長需要多少時(shí)間?
6、設(shè)被測溫度的變化范圍為300℃~1000℃,如要求測量誤差不超過±1℃,應(yīng)選用分辨率為多少位的A/D轉(zhuǎn)換器?
7、模-數(shù)轉(zhuǎn)換器ADC常用的有雙積分式和逐次逼近式,請扼要比較它們的優(yōu)缺點(diǎn)。在微機(jī)控制系統(tǒng)的模擬輸入通道中常常應(yīng)用采樣-保持電路,其主要原因是什么?
五、編程應(yīng)用題
1.設(shè)狀態(tài)端口地址為86H,數(shù)據(jù)端口的地址為87H,外部輸入信息準(zhǔn)備好狀態(tài)標(biāo)志為D7=1,請用查詢方式寫出讀入外部信息的程序段。2.設(shè)狀態(tài)端口地址為76H,數(shù)據(jù)端口地址為75H,外部設(shè)備是否準(zhǔn)備好信息 由D7位傳送,D7=0為未準(zhǔn)備好(忙),請用查詢方式寫出CPU向外部傳送數(shù)據(jù)的程序段。3.數(shù)據(jù)采集系統(tǒng)電路如下圖所示。圖中A/D轉(zhuǎn)換器為ADCO809,定時(shí)器/計(jì)數(shù)器8233-5的計(jì)數(shù)器1將5MHz時(shí)鐘轉(zhuǎn)換成500KHz提供給ADC0809。根據(jù)上述電路和說明,以及下面程序的功能要求,在空格中填入相應(yīng)的指令(必要時(shí)可增減空格數(shù))。
MOV DX,3DBH;設(shè)置8253一控制字 MOV AL,57H OUT DX,AL(1);設(shè)且計(jì)數(shù)器1計(jì)數(shù)初值(2)(3);ADCO809模擬通道IN5采樣12次,數(shù)據(jù)存人BUF MOV BX,OFFSETBUF MOV CX,l2(4)LOP:(5)CALL DELAY lS;軟件延時(shí)一秒(6);數(shù)據(jù)讀入BUF MOV [BX],AL INC BX LOOP LOP
4、已知A/D變換器的引線及其工作時(shí)序如下圖所示。利用START負(fù)脈沖可啟動(dòng)A/D變換器開始變換,啟動(dòng)脈沖后A/D變換器進(jìn)入忙(BUSY)狀態(tài),待變換結(jié)束。BUSY變高電平,可從D0~D10取得變換好的數(shù)據(jù)。試通過8255將此A/D變換器接到8088系統(tǒng)總線上,接口地址8000H-800F可任選,試畫出連接線。
答案
一、填空題
1、反饋電阻;芯片內(nèi)部
2、模擬;數(shù)字3、1;輸入
4、鎖存;數(shù)據(jù)總線
5、單向;極性
6、大?。划愋?/p>
7、運(yùn)放;VREF
8、輸出接口;輸出外部設(shè)備 9、8位;A/D
10、轉(zhuǎn)換結(jié)束;中斷請求信號
二、單項(xiàng)選擇題
1、C
2、B
3、A
三、多項(xiàng)選擇題
1、ABD
2、BCD
四、簡答題
1、答: 2
2、答: A/D轉(zhuǎn)換器和微機(jī)接口時(shí)的關(guān)鍵問題主要有6個(gè)。① A/D轉(zhuǎn)換器輸出和CPU的接口方式,主要有2種連接方式:
一種是A/D芯片輸出端直接和系統(tǒng)總線相連;另一種是A/D芯片輸出端通過接口電路和總線相連。② A/D轉(zhuǎn)換器的分辨率和微機(jī)數(shù)據(jù)總線的位數(shù)匹配:當(dāng)10位以上的A/D轉(zhuǎn)換器和8位數(shù)據(jù)總線連接時(shí),由于數(shù)據(jù)要按字節(jié)分時(shí)讀出,因此從8位數(shù)據(jù)線上需分2次來讀取轉(zhuǎn)換的數(shù)據(jù)。設(shè)計(jì)接口時(shí),數(shù)據(jù)寄存器要增加讀寫控制邏輯。③ A/D轉(zhuǎn)換的時(shí)間和CPU的時(shí)間配合問題:要注意A/D轉(zhuǎn)換的啟動(dòng)方式,通常啟動(dòng)信號分為電平控制啟動(dòng)和脈沖啟動(dòng)兩種。其中又有不同的極性要求。還要注意轉(zhuǎn)換后信號的處理。④A/D的控制和狀態(tài)信號。因?yàn)锳/D轉(zhuǎn)換器的控制和狀態(tài)信號的類型與特征對接口有很大影響,在設(shè)計(jì)時(shí)必須要注意分析控制和狀態(tài)信號的使用條件。⑤ 輸入模擬電壓的連接,特別是多路模擬電壓的切換控制。⑥ 接地問題,為了減輕數(shù)字信號脈沖對模擬信號的干擾,數(shù)字地和模擬地要正確連接。
3、答: 因?yàn)楸晦D(zhuǎn)換的模擬信號在時(shí)間上是連續(xù)的,瞬時(shí)值有無限多個(gè),轉(zhuǎn)換過程需要一定的時(shí)間,不可能把每一個(gè)瞬時(shí)值都一一轉(zhuǎn)換成模擬量。因此對連續(xù)變化的模擬量要按一定的規(guī)律和周期取出其中的某一瞬時(shí)值,這個(gè)過程就是將模擬量離散化,稱之為采樣,采樣以后用若干個(gè)離散的瞬時(shí)值來表示原來的模擬量。
通常為了使A/D輸出信號經(jīng)過D/A還原后能更好地反映輸入模擬信號的變化,根據(jù)采樣定理,采樣頻率一般要高于或至少等于輸入信號中最高頻率分量的2倍,就可以使被采樣的信號能夠代表原始的輸入信號。在輸入信號頻率不是太高的實(shí)際應(yīng)用中,一般取采樣頻率為最高頻率的4~8倍。
4、答:取樣頻率的下限為20kHZ×2=40 kHZ
5、答:由于雙積分式A/D的工作模式是固定時(shí)間正向積分、固定斜率反向積分。正向積分與反向積分的切換是由正向積分開始時(shí)計(jì)數(shù)器從0計(jì)數(shù)到計(jì)滿后產(chǎn)生的溢出信號控制,較高的反極性的基準(zhǔn)電壓進(jìn)入積分器反向積分(因?yàn)榉聪蛐甭手荡笥谡蛐甭手?,一般反向積分時(shí)間要小于正向積分時(shí)間),計(jì)數(shù)器再次從0開始計(jì)數(shù),直至反向積分至0時(shí)停止計(jì)數(shù),此時(shí)的計(jì)數(shù)值就是對應(yīng)的輸入量的變換數(shù)字量。因此完成一次轉(zhuǎn)換的最長時(shí)間不大于2倍正向積分時(shí)間(即計(jì)數(shù)器從0到計(jì)滿時(shí)間的2倍)。
6、答:取最大的溫度變化范圍1000O,最小的溫度分辨為1O,這樣只要不少于1000等份就可以。因此可選10位A/D轉(zhuǎn)換器,若它的滿量程是1000O,最小的溫度分辨為
7、答:逐次逼近ADC采用的是二分搜索、反饋比較、逐次逼近的轉(zhuǎn)換原理。其優(yōu)點(diǎn)是轉(zhuǎn)換速度快,轉(zhuǎn)換精度高;缺點(diǎn)是輸入模擬信號變化速度較快時(shí),偉產(chǎn)生較大的非線型誤差。
雙積分ADC的優(yōu)點(diǎn)是不需要ADC,能以低成本實(shí)現(xiàn)高分文辨率,轉(zhuǎn)換精度高,抗干擾 能力強(qiáng)。缺點(diǎn)是需要二次積,轉(zhuǎn)換速度慢。
當(dāng)輸入模擬信號變化率較大時(shí),逐次逼近式ADC會(huì)產(chǎn)生相當(dāng)大的非線性誤差,為改善這種情況,可在ADC前面增加一級采樣保持電路。
五、編程應(yīng)用題
1、答案:START:IN AL,86H
TEST AL,80H
JZ START
IN AL,87H
2、答案:START:IN AL,76H
TEST AL,80H
JZ START
MOV AL,輸出的字節(jié)
OUT 75H,AL
3、答案:(1)MOV DX,3D9H
(2)MOV AL,10H
(3)OUT DX,AL
(4)MOV DX,3D5H
(5)OUT DX,AL
(6)MOV DX,3D0H
IN AL,DX