汇编语言与接口技术练习题.docx
《汇编语言与接口技术练习题.docx》由会员分享,可在线阅读,更多相关《汇编语言与接口技术练习题.docx(12页珍藏版)》请在冰点文库上搜索。
汇编语言与接口技术练习题
《汇编语言与接口技术》练习题
一、判断题
1.一个字存入存储器占有两个相邻的字节单元,低位字节存入高地址单元,高位字节存入低地址单元。
()
2.寄存器AX、CX和DX不能用作地址寄存器。
()
3.MOVAX,1000H指令中的目的操作数是立即寻址。
()
4.MOVAX,ES:
[BX+SI]中目的操作数是带段跨越前缀的基址变址寻址。
()
5.INDX,AL指令是从DX指定的端口地址读入一个字节到AL寄存器中。
()
6.PUSHAL指令能将AL寄存器的内容压入堆栈。
()
7.ADDAX,BX与ADCAX,BX指令得到的结果总是不同的。
()
8.MOVSES:
BYTEPTR[DI],DS:
[SI]完全等价于MOVSB。
()
9.中断向量表就是各中断类型的处理程序的地址表。
()
10.除法错误中断是外中断。
()
11.8086/8088的指令中允许源操作数和目的操作数同时为存储器操作数。
()
12.CMP指令与SUB指令的差别在于:
前者只影响标志位。
()
13.伪操作语句ASSUMEDS:
DATA是给DS寄存器赋值。
()
14.汇编语言源程序经汇编后,每条CPU指令和伪操作语句均产生一一对应的目标代码。
()
15.若带符号数溢出,则OF=1;若无符号数溢出,则CF=1。
()
16.PUSH和POP指令只能作字操作。
()
17.逻辑左移指令SHL和算术左移指令SAL是两条不同的指令。
()
18.汇编语言语句中的操作数可以是常数、寄存器、标号和变量,但不能是表达式。
()
19.8086/8088指令系统中,每执行一条软中断指令INTn,就调用一个相应的中断服务程序。
()
20.当标志位IF为0时,所有硬件中断都不可能实现。
()
21.通常中断服务程序开始时使用STI指令的目的是开放所有被屏蔽的中断。
()
22.8086系统把1MB存储空间分成两个512KB的存储体,一个全为偶地址,另一个全为奇地址,偶地址单元接数据总线的低8位,奇地址单元接数据总线的高8位。
()
23.一个基本总线周期包括四个状态:
T1、T2、T3和T4。
若存储器或I/O设备较慢,则可在T2与T3之间插入一个或多个等待周期TW。
()
24.在保护方式下,80386的六个段寄存器CS、DS、ES、SS、FS和GS中的内容不是段地址,而是段选择子。
()
25.80x86系列微机I/O端口采用I/O映射编址即独立编址,故不需要专门的I/O指令IN和OUT。
()
26.存储周期指的是存储器的读出周期。
()
27.在保护方式下,中断描述符表IDT可位于内存的任何位置。
()
28.8086/8088的中断系统中有两类软件中断:
可屏蔽中断和不可屏蔽中断。
()
29.若8259A工作在非自动中断结束方式下,结束中断必须在中断服务程序结束时发一条结束中断的命令EOI,使相应的ISR位复位。
()
30.可编程串行通信接口8250A的除数寄存器中的内容是分频系数。
()
二、单选题
1.用户为了解决自己的问题,用汇编语言所编写的程序,称为()。
A.目标程序B.源程序C.汇编程序D.可执行程序
2.8086/8088的存储器组织是将存储器划分为段,下列可作为段起始地址的是()。
A.185A2HB.00020HC.21004HD.0AB568H
3.堆栈中当前出栈的存储单元地址是()。
A.SS*10H+SPB.SS*10H+BPC.SS*10+SPD.SS*10+BP
4.设DS=8225H,DI=3942H,指令NEGBYTEPTR[DI]中操作数的物理地址是()。
A.85B92HB.86192HC.BB690HD.12169H
5.循环指令LOOPNZ终止循环的条件是()。
A.CX=0且ZF=0B.CX=0或ZF=1C.CX≠0且ZF=0D.CX≠0或ZF=1
6.将寄存器AX的内容乘以4的正确指令序列是()。
A.SHRAX,1B.SHLAX,1C.ROLAX,1D.RCRAX,1
SHRAX,1SHLAX,1ROLAX,1RCRAX,1
7.下列传送指令中有语法错误的是()。
A.MOVCS,AXB.MOVDS,AXC.MOVSS,AXD.MOVES,AX
8.下列指令中能实现BX+SI→AX是()。
A.XCHGAX,[BX][SI]B.MOVAX,[BX+SI]
C.LEAAX,BX[SI]D.LEAAX,[BX][SI]
9.下列指令中不能完成将累加器AX清零的是()。
A.SUBAX,AXB.XORAX,AXC.ORAX,0D.ANDAX,0
10.设SP初值为2000H,执行指令“PUSHAX”后,SP的值是()。
A.1FFFHB.1998HC.2002HD.1FFEH
11.条件转移指令JB产生程序转移的条件是()。
A.CF=1B.CF=0C.CF=1且ZF=1D.CF=1且ZF=0
12.在定义段时,如果定位类型用户未选择,就表示是隐含类型,其隐含类型是()。
A.WORDB.PAGEC.BYTED.PARA
13.设DL=55H,执行指令后能使DL中的数据为0AAH的指令是()。
A.XORDL,0FFHB.ORDL,0AAHC.NEGDLD.TESTDL,0AAH
14.当SS=9876H,SP=4328H,执行POPF指令后,栈顶的物理地址是()。
A.9CA8AHB.9CA90HC.9CA86HD.0DB00H
15.语句BUFDW10HDUP(3DUP(2,10H),3,5)汇编后,为变量BUF分配的存储单元的字节数是()。
A.80HB.100HC.124D.192
16.设AX=8520H,执行SARAX,1指令后,AX中的值是()。
A.4290HB.0A40HC.0C290HD.0C260H
17.下列指令执行后,能影响标志位的指令是()。
A.PUSHFB.POPFC.JNLEOPRD.LOOPZLOP
18.下面两个传送指令语句中源操作数寻址方式是()。
VAR1DW32H
VAR2EQU32H
MOVAX,VAR1
MOVBX,VAR2
A.都是立即寻址B.前一条指令是立即寻址,后一条指令是直接寻址
C.前一条指令是直接寻址,后一条指令是立即寻址D.都是直接寻址
19.设变量ARRAY的偏移地址是0084H,下列指令执行后,AX中的内容是()。
MOVAX,ARRAY+4
ARRAYDW6,9,$+4,10H,1,$+4
A.0009B.008CHC.0090HD.0010H
20.下列程序段的执行结果是()。
XORAX,AX
MOVCX,5
LAST:
ADDAL,6
AAA
LOOPLAST
A.AX=0030HB.AX=0300HC.AX=30D.AX=001EH
21.某处理器具有64GB的寻址能力,则该处理器地址线的条数是()。
A.20条B.24条C.32条D.36条
22..8086有两种基本的工作模式:
最小模式和最大模式。
当8086工作于最小模式时,MN/
接()。
A.+12VB.–12VC.+5VD.地
23.8K×8位的RAM芯片所具有的地址线条数应是()。
A.10B.11C.12D.13
24.在查询传送方式中,CPU要对外设进行读出或写入操作之前,必须先对外设()。
A.发控制命令B.进行状态检测C.发端口地址D.发读/写命令
25.所谓“端口”是指一些可以由CPU读或写的()。
A.RAMB.ROMC.寄存器D.缓冲器
26.一片可编程中断控制器8259A能管理()级硬件中断。
A.4B.8C.16D.64
27.可编程串行通信接口8250A的接收时钟RCLK是通信波特率的16倍,若波特率为2400Baud,则RCLK时钟频率为()。
A.115.2KHzB.9.6KHzC.19.2KHzD.38.4KHz
28.当进行DMA操作时,CPU必须让出()给DMAC。
A.总线B.地址总线C.数据总线D.控制总线
29.在总线读周期中,当CPU从慢速的输入设备读取数据时,需要在T4前插入()状态。
A.TWB.T2C.T3D.T
30.通常中断服务程序中使用STI指令的目的是()。
A.开放所有屏蔽中断B.允许低一级中断产生
C.允许高一级中断产生D.允许同级中断产生
31.微机中控制总线传送的是()。
A.存储器和I/O接口的地址码B.微处理器向内存和I/O接口传送的命令信号
C.存储器和I/O设备向微处理器传送的状态信号D.B和C
32.在8086系统中,规定内存中地址()的内存单元存放中断服务程序的入口地址(即中断向量),称为中断向量表。
A.00000H~003FFHB.80000H~803FFH
C.7F000H~7F3FFHD.FFC00H~FFFFFH
33.某一中断服务程序的入口地址存放在中断向量表的0080H~0083H存储单元中,则该中断对应的中断类型号一定是()。
A.1FHB.20HC.21HD.22H
34.8086系统中若访问奇存储体的一个字节单元,则此时
与A0是()状态。
A.1,0B.0,1C.0,0D.1,1
35.在串行异步数据传送时,若传送格式为8位数据位,1位奇偶校验位,1位停止位,则一帧异步数据总共有()位。
A.8B.9C.10D.11
36.8086CPU中的DT/
信号用于控制()。
A.串操作时的增址或减址B.存储器的读或写
C.I/O端口的输入或输出D.数据总线的传送方向
37.8086CPU寻址I/O端口最多使用()条地址线。
A.8B.10C.16D.12
38.下列中断中,属于外部中断的是()。
A.溢出中断B.断点中断C.可屏蔽中断D.除法出错中断
39.在中断系统中,中断类型号是在()的作用下送往CPU的。
A.中断响应信号
B.片选信号
C.中断请求信号INTRD.读信号
40.读8259A的中断服务寄存器ISR必须先写入操作命令字()。
A.OCW1B.OCW2C.OCW3D.OCW1和OCW3
三、程序分析题
1.已知AX=0FF61H,CF=1
MOVDX,96
SBBAX,DX
执行上述指令序列后,AX=__________,CF=__________。
2.已知AX=0E33EH,DX=0F0F0H
ANDAH,DL
XORAL,DH
NEGAH
NOTAL
执行上述指令序列后,AH=__________,AL=__________。
3.
STC
MOVCX,0403H
MOVAX,0A433H
SARAX,CL
XCHGCH,CL
SHLAX,CL
上述程序段运行后,AX=__________,CF=__________。
4.
DA3EQUWORDPTRDA4
DA4DB0ABH,89H
SHRDA3,1
MOVDX,DA3
SHLDA4,1
MOVCX,DA3
上述程序段运行后,CX=__________,DX=__________。
5.
VAR_BDB10DUP(3,5,7,9)
LEABX,VAR_B
MOVCX,10
XORAX,AX
LOP:
ADDAL,[BX]
CMPAL,10
JBNEXT
INCAH
SUBAL,10
NEXT:
INCBX
LOOPLOP
上述程序段运行结束后,AH=__________,AL=__________。
四、程序填空题
1.编写一条宏指令CLRB,完成用空格符将一字符区中的字符取代的工作。
字符区首地址及其长度为变元。
CLRBMACROADDR,L
MOVCX,L
LEABX,ADDR
BACK:
____
(1)____
INCBX
____
(2)____
ENDM
2.设AX和BX中的数一个为正数、一个为负数,下列程序段完成将正数送到PLW单元中存放。
TESTAX,8000H
____(3)____
MOVPLW,BX
JMPDONE
K1:
____(4)____
DONE:
3.以BUF为首地址的字节单元中,存放了COUNT个无符号数,下列程序段是找出其中最大数并送入MAX单元中。
BUFDB5,6,7,58H,62,45H,127,…
COUNTEQU$-BUF
MAXDB?
MOVBX,OFFSETBUF
MOVCX,COUNT-1
MOVAL,[BX]
LOP1:
INCBX
____(5)____
JAENEXT
MOVAL,[BX]
NEXT:
____(6)____
JNZLOP1
MOVMAX,AL
4.DA1数据区中有50个字节数据,下列程序段将每个数据的低四位变反,高四位不变,并依次存入DA2数据区中。
MOVCX,50
LEASI,DA1
LEADI,DA2
K1:
MOVAL,[SI]
____(7)____
MOV[DI],AL
INCSI
INCDI
DECCX
____(8)____
5.下列程序段的功能是依次产生'0'~'9'的10个ASCII码,并存入BUF1数据区。
BUF1DB10DUP(?
)
LEABX,BUF1
MOVCX,10
XORAL,AL
LOP:
MOVAH,AL
ADDAL,30H
____(9)____
INCBX
____(10)____
INCAL
LOOPLOP
6.下列程序段用显示单个字符的2号DOS功能显示一字符串“STRING”。
STR1DB'STRING','$'
MOVBX,OFFSETSTR1
LOP:
MOVDL,[BX]
____(11)____
INT21H
____(12)____
____(13)____
JNELOP
7.下列程序段完成将键盘输入的小写字母用大写字母显示出来。
BACK:
MOVAH,01
INT21H
CMPAL,'$'
JZEXIT
CMPAL,'a'
____(14)____
CMPAL,'z'
JASHOW
____(15)____
SHOW:
MOVDL,AL
MOVAH,02
INT21H
JMPBACK
EXIT:
RET
8.下列程序段采用冒泡法完成N个8位无符号数按升序排序。
MOVCX,N
____(16)____
LP1:
MOVDX,CX
____(17)____
LP2:
MOVAL,BLOCK[BX]
CMPAL,BLOCK[BX+1]
____(18)____
XCHGAL,BLOCK[BX+1]
MOVBLOCK[BX],AL
CONT:
____(19)____
LOOPLP2
MOVCX,DX
____(20)____
《汇编语言与接口技术》练习题参考答案
一、判断题(用“√”表示正确,“×”表示错误。
)
1
2
3
4
5
6
7
8
9
10
×
√
×
×
×
×
×
√
√
×
11
12
13
14
15
16
17
18
19
20
×
√
×
×
√
√
×
×
√
×
21
22
23
24
25
26
27
28
29
30
×
√
×
√
×
×
√
×
√
√
二、单选题
1
2
3
4
5
6
7
8
9
10
B
B
A
A
B
B
A
D
C
D
11
12
13
14
15
16
17
18
19
20
A
D
A
A
B
C
B
C
B
B
21
22
23
24
25
26
27
28
29
30
D
C
D
B
C
B
D
A
A
C
31
32
33
34
35
36
37
38
39
40
D
A
B
B
D
D
C
C
A
C
三、程序分析题
1.AX=0FF00H,CF=0。
2.AH=20H,AL=31H。
3.AX=4860H,CF=1。
4.CX=44AAH,DX=44D5H。
5.AH=05H,AL=06H。
四、程序填空题
(1)
MOVBYTEPTR[BX],20H/32/''
(11)
MOVAH,2
(2)
LOOPBACK
(12)
INCBX
(3)
JZ/JEK1
(13)
CMPBYTEPTR[BX],'$'
(4)
MOVPLW,AX
(14)
JB/JNAE/JCSHOW
(5)
CMPAL,[BX]
(15)
SUBAL,32/20H
(6)
DECCX
(16)
DECCX
(7)
XORAL,0FH
(17)
MOVBX,0
(8)
JNZ/JNEK1
(18)
JNACONT
(9)
MOV[BX],AL
(19)
ADDBX,1/INCBX
(10)
MOVAL,AH
(20)
LOOPLP1