《微機原理與接口技術》試題及答案(一)
微機原理與接口技術這一門課程大家有把握應對考試了嗎?下面是陽光網小編為大家推薦一些微機原理與接口技術試題及答案,希望大家有用哦。
微機原理與接口技術試題及答案
一、填空。(30分 1分/空)
1.符號數-8192的補碼用十六進制數表示為 E000 H。
2.8位補碼數CBH的真值用十進制表示為 -53 。
3.十進制數1025所對應的十六進制數為 401 H;所對應的壓縮BCD數為1025 H;所對應的ASCII碼為31303235。
4.將8為無符號數A2H擴展為16位形式,則應為00A2 H;將8為補碼數F3H擴展為16位形式,則應為FFF3H。
5.在8086/8088的通用寄存器AX、BX、CX、DX中,用作存儲器間址的寄存器為BX ;用作I/O端口間址的寄存器為 DX ;用作循環控制指令(LOOP)的寄存器為 CX 。
6.8086/8088有 4 段寄存器。其中用來存放數據段段首地址的段寄存器為 DS ;用來存放代碼段段首地址的段寄存器為CS;用來存放堆棧段段首地址的段寄存器為SS。
7.若DS=095FH時,物理地址是11820H。當DS=2F5FH時,物理地址為 37820H。
8.8086/8088微處理器堆棧的伸展方向是高地址向低地址 。堆棧的操作是以字為單位進行的。
9.AX中有一個負數,欲求其絕對值,若該數為補碼,則用指令NEG AX ;若該數為原碼,則用指令AND AX,7FFFH 。在循環程序設計中,對于控制循環的DEC CX和JNZ AGAIN兩條語句可合并用一條語句LOOP AGAIN 代替。
10.寫出執行下列程序段的中間結果:
MOV AX, 0809H
MOV DL, 10
XCHG AH, DL
MUL AH ;AX=005AH
AAM ;AX=0900H
ADD AL, DL ;AX=0908H
11.現要用6116(2K×8位)靜態RAM芯片構成8K×32位的存儲器,共需此種芯片 16 片。
12.8086/8088微處理器對I/O設備的.管理是利用IN 和OUT 指令來實現的。
13.已知中斷向量表中,001C4H中存放2200H,001C6H中存放3040H,則其中斷類型碼是
71H,中斷服務程序的入口地址的邏輯地址和物理地址分別為3040H: 2200 H和32600 H。
二、單項選擇。(10分 1分/題)
1.算式65H-3EH的運算結果是否有溢出,結果的真值為( C )
A.有、39
B.有、27
C.無、39
D.無、27
2.CPU執行算術運算指令不會影響的標志位是( D )
A.溢出標志
B.符號標志
C.零標志
D.方向標志
3.已知AL,BL中為無符號數, 若使AL≤BL時轉到標號AGAIN, 哪個程序段不能實現
此功能( D)
A. CMPAL, BL B. CMPAL, BL
JCAGAIN JBEAGAIN
C. CMP BL, ALD. CMP AL, BL
JNCAGAIN JNB AGAIN
4.下列指令中不會改變指令指示器IP的是(A )
A.MOV
B.JMP
C.CALL
D.RET
5.使用移位指令,把寄存器的最高位移入CF,并在最低位補為0時使用(D )
A.ROL
B.SAR
C.SHR
D.SAL
6.已知下列程序段
DATA DW 04H,05H,06H
: :
。 :
LEA BX,DATA
MOV AX,3
ADD BX,AX
MOV AX,[BX]
: :
當程序執行完MOV AX,[BX]指令后,AX=(C )
A.0400H
B.0500H
C.0600H
D.8000H
7.某存貯器的容量為4K字節,則CPU至少應提供(C )根地址線才能對所有存貯單
元進行尋址。
A.14
B.13
C.12
D.11
8.8086/8088指令OUT 80H,AL表示(C)
A.將80H送給AL
B.將80H端口的內容送給AL
C.將AL的內容送給80H端口
D.將AL內容送給80H內存單元
9.若8255 A口工作于方式1輸出,B口工作于方式0輸入,C口工作于方式0輸入,則方式控制字應為(B )。
A.0A9H
B.0ABH
C.0A3H
D.1BH
10.80X86有幾種類型的中斷。( B )
A.1種
B.2種
C.3種
D.4種
三、一數據段定義如下:
ORG 0000H
DATA SEGMENT
S1 DB 1,2,3,4,5
S2 DB ‵12345′
COUNT EQU $-S1
NB DB 3 DUP (2)
NW DW -120,-3
P DW -2, S2
DATA ENDS
畫出該數據段中數據的存儲形式。(10分)
四、簡答題。(15分)
1.分別指出下列指令中目的操作數的尋址方式。(5分)
(1) MOV AX, 1000H (2) MOV AX, ES:1000H
(3) ADD AX, [BX+4] (4) SUB AX, [BX+DI+5]
(5) MOV [BX], AL
(1).立即尋址
(2).直接尋址
(3).基址尋址
(4).基址變址尋址
(5).寄存器尋址
2.分別寫出實現下列功能的程序段。(10分)
(1) 將AX中間8位(作高8位),BX的低4位和DX的高4位(作低4位)拼成一個新
的字。
MOV CL, 4
SHL AX, CL
SHL BL, CL
MOV AL, BL
SHR DH, CL
OR AL, DH
(2) 將AL中一個兩位的十六進制數變換成為其所對應的ASCII碼,存放到AX中。
MOV AH, AL
AND AL, 0FH
CMP AL, 0AH
JB G1
ADD AL, 7
G1: ADD AL, 30H
MOV CL, 4
AND AH, 0F0H
SHR AH, CL
CMP AH, 0AH
JB G2
ADD AH, 7
G2: ADD AH, 30H
四、編寫程序實現從鍵盤輸入一個補碼數(1-4位十六進制數),在顯示器上以十進制形式顯示其真值。(10分)
例如:
輸入 FFFF;
輸出 =-1;
輸入 80;
輸出 =128
stack segment stack 'stack'
dw 32 dup(0)
stack ends
data segment
obuf db 'input one number:=','$'
obuf1 db 'result:=','$'
ibuf db 5,0,5 dup(0)
obuf2 db 7 dup(0)
data ends
code segment
begin proc far
assume ss:stack,cs:code,ds:data
push ds
sub ax,ax
push ax
mov ax, data
mov ds, ax
mov dx, offset obuf
mov ah, 9
int 21h
mov dx, offset ibuf
mov ah, 10
int 21h
mov dl, 0ah
mov ah, 2
int 21h
mov dx, offset obuf1
mov ah, 9
int 21h
mov si, offset ibuf+2
mov bl, ibuf+1
mov bh, 0
mov ax, 0
mov cl, 4
again: shl ax, cl
mov dh,[si]
cmp dh,41h
jc ag1
sub dh,7
ag1: sub dh,30h
or al, dh
inc si
dec bx
jnz again
mov cx, 10
mov di, offset obuf2+6
mov byte ptr [di],'$'
test ax, 8000h
pushf
jz ag2
neg ax
ag2: mov dx, 0
div cx
add dl, 30h
dec di
mov [di],dl
or ax, ax
jnz ag2
popf
jz ag3
dec di
mov byte ptr [di],'-'
ag3: mov dx, di
mov ah,9
int 21h
ret
begin endp
code ends
end begin
五、CPU要實現對16個I/O端口280H-28FH的尋址,畫出地址譯碼電路
(10分)
六、用8255的A端口接8只理想開關輸入二進制數,B端口和C端口各接8只發光二極管顯示二進制數。設計控制電路和控制程序,實現讀入開關數據(原碼)送B端口(補碼)和C端口(絕對值)的發光二極管顯示的功能。(設端口地址為280H-283H) (20分)
接口電路圖:
控制程序:
stack segment stack ¢stack¢
dw 32 dup(0)
stack ends
code segment
start proc far
assume ss: stack, cs: cods
push ds
sub ax, ax
push ax
mov ax, data
mov ds, ax
MOV DX, 283H
MOV AL, 90H
OUT DX, AL
MOV DX, 280H
IN AL, DX
AND AL, AL
JNS DN
AND AL, 7FH
MOV DX, 282H
OUT DX, AL
NEG AL
DEC DX
OUT DX, AL
RET
DN: INC DX
OUT DX, AL
INC DX
OUT DX, AL
ret
start endp
code ends
end start
【《微機原理與接口技術》試題及答案(一)】相關文章: