电子科技大学《汇编语言程序设计》自测题.docx
- 文档编号:30735870
- 上传时间:2023-08-20
- 格式:DOCX
- 页数:57
- 大小:50KB
电子科技大学《汇编语言程序设计》自测题.docx
《电子科技大学《汇编语言程序设计》自测题.docx》由会员分享,可在线阅读,更多相关《电子科技大学《汇编语言程序设计》自测题.docx(57页珍藏版)》请在冰豆网上搜索。
电子科技大学《汇编语言程序设计》自测题
电子科技大学网络教育学院
汇编语言程序设计模拟试卷1(120分钟)考试日期年月日
一
二
三
四
五
六
七
八
九
十
总分
评卷老师
一、填空(每空1分,共20分)。
1、8086CPU有_______根地址线,可直接寻址_______字节的存储空间。
2、-1的8位二进制补码是________。
3、IBM-PC系列微机可访问的外设端口的地址范围是从_______到________。
4、在8086CPU中,当______时,访问存储器,当______时,访问I/O端口。
5、在8086CPU中,对I/O端口的寻址有________和___________。
6、在8086CPU指令系统中,要获得数组变量所占的总字节数,使用_______运算符,要获得数组变量的元素个数,使用_________运算符,要获得变量的类型数字,使用_________运算符。
7、符号‘$’代表___________的现行值,定位伪指令ORG是把某一个值赋给___________,表示以给定值作起始偏移量。
8、若一个数据块的起始地址为70A0H:
DDF6H,则这个数据块起始地址的实际地址为_________。
9、如果一条指令使用标号,那么该标号就是这条指令的_______地址,且它代表该指令的________的地址。
10、在宏汇编语言中,宏指令的使用过程是_______、_______、_______。
二、单项选择题(每空1分,共20分)
1、两个非组合型BCD码数据相加后,执行加法校正指令AAA是,首先检查是否需要校正。
需要校正的条件有:
AF=1、CF=L和()。
A.AL中高四位数的值>9B.AL中高四位数的值<9
C.AL中低四位数的值<9D.AL中低四位数的值>9
2、8086的I/O空间段寄存器使用的是()
A.DSB.没必要C.ESD.SS
3、I/O端口间接寻址方式是将被寻址的端口地址存放在()
A.DXB.AXC.BXD.CX
4、8086/8088CPU的输入指令是将输入设备的一个端口中的数据传送到()
A.IPB.AL/AXC.BPD.BX/CX
5、I/O设备的数据端口是()
A.32B.64C.8/16D.16/32
6、为了保证用户程序执行完后能正常返回DOS,常使用的一种方法是在程序执行的最后一条指令为RET。
但使用该方法要在程序执行前进行一系列的保护操作()
A.MOVAX,DATA
MOVDS,AX
MOVES,AX
B.PUSHDS
MOVAX,0
PUSHAX
C.MOVAH,4CH
INT21H
D.MOVAX,DATA
MOVDS,AX
PUSHAX
7、不用立即数,也不用任何存储单元中的数据,能完成AX←-1,BX←0,CX←1的程序段是()
A.XORAX,AX
MOVBX,AX
INCAX
MOVCX,AX
NEGAX
B.ORAX,AX
MOVBX,AX
INCAX
MOVCX,AX
NEGAX
C.ANDAX,AX
MOVBX,AX
INCAX
MOVCX,AX
NEGAX
D.XORAX,AX
MOVBX,AX
DECAX
MOVCX,AX
NEGAX
8、DADW‘AB’,‘CD’
DB1DB‘X’
……
则执行指令语句XCHFDB1,BYTEPTRDA后,结果DB1中的内容是()
A.‘A’B.42HC.41HD.’C’
9、下列伪指令中可以用来定义变量的是()
A.TYPEB.DBC.WORDD.BYTE
10、在汇编过程中不产生指令代码,只用来指示汇编程序如何汇编的指令是()
A.宏指令B.伪指令C.机器指令D.汇编指令
11、下面伪指令定义后,其变量对应的物理地址是()
ORG0100H
BUFDB10DUP(?
)
CONDW2DUP(?
)
A.BUFDS:
0100H
CONDS:
010AH
B.BUFDS:
010AH
CONDS:
0101H
C.BUFDS:
0110H
CONDS:
011CH
D.BUFDS:
0100H
CONDS:
0101H
12、在ASSUME伪指令设定了段寄存器后,无需在程序段中用指令完成赋值的寄存器是()
A.CSB.DSC.ESD.AX
13、指令代码的地址存放在寄存器()中
A.DS,SIB.ES,DIC.CS,IPD.BX,BP
14、指令PUSHAX的正确操作是()
A.SP←SP+1
AH→(SP)
SP←SP+1
AL→(SP)
B.SP←SP-1
AL→(SP)
SP←SP-1
AH→(SP)
C.SP←SP-1
AH→(SP)
SP←SP-1
AL→(SP)
D.以上均不正确
15、在取MOVBX0125H指令的源操作数时,使用的逻辑地址时()
A.CS:
IPB.DS:
0125HC.ES:
0125HD.无
16、在8086/8088中,可以分为两个独立的8位寄存器使用的寄存器是()
A.AX,DI,BP,SIB.AX,BX,CX,DX,F
C.SI,DI,BP,SP,IPD.CS,ES,DS,SS
17、设SP的初值为200H,执行指令”PUSHAX”后,SP的值为()
A.198HB.200HC202HD.1FEH
18、伪指令“ENDP”告诉汇编程序()
A.宏定义结束B.过程定义结束C.段定义结束D.用户程序结束
19、ADDAL,BL
AAA
设执行前(AX)=0535H,(BL)=39H,则执行上述指令后,AX中的内容为()
A.0604HB.0574HC.0104HD.056EH
20、设(SS)=1E56H,(SP)=38H,则执行指令“RET6”后,SP的值以及SP所指向的存储单元的物理地址分别是()
A.3FH,1E5A0HB.42H,1E5C6H
C.39H,1E5E2HD.42H,1E5A2H
三、判断改错题(判断正误,正确的划上“√”,错误的划上“×”,并改正错误。
每题2分,共10分)
1、MOVAX,0FFH
MOVCS,AX()
2、MOVAX,100
ADDAX,[BX]
DAA()
3、…
A1DB10H
A2DB?
…
CMPA1,A2()
4、DATA0DB100
…
MOV[DATA0],AX
PUSHAX
…()
5、MOVAL,01H
OUT2F8H,AL()
四、写出下面程序段的运行结果或功能(20分)
1、DESGSEGMENTAT1000H
ORG6
VAR1DB2,8
ORG$+2
VAR2DW569AH
DB‘1234’
DESGENDS
画出上面程序的内存分配图:
(4分)
2、MOVDL,31H
MOVAH,2
INT21H
指出该程序段的功能:
(2分)
3、CLC
MOVCX,0FFFFH
INCCX
执行该程序段后,CX=_________,ZF=_________。
(2分)
4、MOVAL,100
CMPAL,100
执行该程序段后,AL=_________,CF=__________。
(2分)
5、下列程序段完成什么功能?
(4分)
DATA1DB300DUP(?
)
DATA2DB100DUP(?
)
……..
MOVCX,100
MOVBX,200
MOVSI,0
MOVDI,0
L1:
MOVAL,DATA1[BX][SI]
MOVDATA1[DI]
INCSI
INCDI
LOOPL1
6、下列程序段完成的功能是什么?
(4分)
BUF1DBX
BUF2DBY
RESDB?
………
MOVDX,BUF1
ADDDX,BUF2
MOVCL,3
SALDX,CL
SUBDX,BUF1
SARDX,1
MOVRES,DX
RET
7、TABLEDB0,7,3,98,23,26,34,51
DATDB4
……….
LEABX,TABLE
MOVAX,0
MOVAL,DAT
ADDBX,AX
MOVAL,[BX]
则执行上述程序段后,(AL)=________,与ADDBX,AX和MOVAL,[BX]二条语句等效的一条语句是__________。
(2分)
四、编程(30分)
1、知有一个100个字节数据的数据块,存放在以3DAOH:
1000H开始的存储区内,将该数据块搬至以3EA0H:
2000H开始的区域中。
编写程序段,实现给定功能。
(8分)
2、计算表达式Z=(X
+2Y+Y
)/2,设X,Y均为单字节正整数,结果Z为字数据。
写完整的程序,完成给定的功能。
(设X=23H,Y=0F6H)(10分)
3、编一完整的汇编语言程序,把BCD码转换成二进制数,并将结果放在存储单元BNUM中。
设BCD码存放在DNUM中,且为5687H。
(12分)
参考答案:
电子科技大学网络教育学院
汇编语言程序设计模拟试卷1(120分钟)考试日期年月日
一
二
三
四
五
六
七
八
九
十
总分
评卷老师
五、填空(每空1分,共20分)。
1、8086CPU有__20_____根地址线,可直接寻址___1M_____字节的存储空间。
2、-1的8位二进制补码是__0FFH______。
3、IBM-PC系列微机可访问的外设端口的地址范围是从__0_____到___3FFH_____。
4、在8086CPU中,当M/-IO=1时,访问存储器,当M/-IO=0时,访问I/O端口。
5、在8086CPU中,对I/O端口的寻址有存储器编址方法和I/O端口编址方法。
6、在8086CPU指令系统中,要获得数组变量所占的总字节数,使用SIZE运算符,要获得数组变量的元素个数,使用LENGTH运算符,要获得变量的类型数字,使用TYPE运算符。
7、符号‘$’代表当前位置计数器的现行值,定位伪指令ORG是把某一个值赋给当前位置计数器,表示以给定值作起始偏移量。
8、若一个数据块的起始地址为70A0H:
DDF6H,则这个数据块起始地址的实际地址为__7E7F6H______。
9、如果一条指令使用标号,那么该标号就是这条指令的首地址,且它代表该指令的第一字节的地址。
10、在宏汇编语言中,宏指令的使用过程是定义、调用、展开。
六、单项选择题(每空1分,共20分)
1、两个非组合型BCD码数据相加后,执行加法校正指令AAA是,首先检查是否需要校正。
需要校正的条件有:
AF=1、CF=L和(D)。
A.AL中高四位数的值>9B.AL中高四位数的值<9
C.AL中低四位数的值<9D.AL中低四位数的值>9
2、8086的I/O空间段寄存器使用的是(B)
A.DSB.没必要C.ESD.SS
3、I/O端口间接寻址方式是将被寻址的端口地址存放在(A)
A.DXB.AXC.BXD.CX
4、8086/8088CPU的输入指令是将输入设备的一个端口中的数据传送到(B)
A.IPB.AL/AXC.BPD.BX/CX
5、I/O设备的数据端口是(C)
A.32B.64C.8/16D.16/32
6、为了保证用户程序执行完后能正常返回DOS,常使用的一种方法是在程序执行的最后一条指令为RET。
但使用该方法要在程序执行前进行一系列的保护操作(B)
A.MOVAX,DATA
MOVDS,AX
MOVES,AX
B.PUSHDS
MOVAX,0
PUSHAX
C.MOVAH,4CH
INT21H
D.MOVAX,DATA
MOVDS,AX
PUSHAX
7、不用立即数,也不用任何存储单元中的数据,能完成AX←-1,BX←0,CX←1的程序段是(A)
A.XORAX,AX
MOVBX,AX
INCAX
MOVCX,AX
NEGAX
B.ORAX,AX
MOVBX,AX
INCAX
MOVCX,AX
NEGAX
C.ANDAX,AX
MOVBX,AX
INCAX
MOVCX,AX
NEGAX
D.XORAX,AX
MOVBX,AX
DECAX
MOVCX,AX
NEGAX
8、DADW‘AB’,‘CD’
DB1DB‘X’
……
则执行指令语句XCHFDB1,BYTEPTRDA后,结果DB1中的内容是(B)
A.‘A’B.42HC.41HD.’C’
9、下列伪指令中可以用来定义变量的是(A)
A.TYPEB.DBC.WORDD.BYTE
10、在汇编过程中不产生指令代码,只用来指示汇编程序如何汇编的指令是(B)
A.宏指令B.伪指令C.机器指令D.汇编指令
11、下面伪指令定义后,其变量对应的物理地址是(A)
ORG0100H
BUFDB10DUP(?
)
CONDW2DUP(?
)
A.BUFDS:
0100H
CONDS:
010AH
B.BUFDS:
010AH
CONDS:
0101H
C.BUFDS:
0110H
CONDS:
011CH
D.BUFDS:
0100H
CONDS:
0101H
12、在ASSUME伪指令设定了段寄存器后,无需在程序段中用指令完成赋值的寄存器是(A)
A.CSB.DSC.ESD.AX
13、指令代码的地址存放在寄存器(C)中
A.DS,SIB.ES,DIC.CS,IPD.BX,BP
14、指令PUSHAX的正确操作是(C)
B.SP←SP+1
AH→(SP)
SP←SP+1
AL→(SP)
B.SP←SP-1
AL→(SP)
SP←SP-1
AH→(SP)
C.SP←SP-1
AH→(SP)
SP←SP-1
AL→(SP)
E.以上均不正确
15、在取MOVBX0125H指令的源操作数时,使用的逻辑地址时(A)
B.CS:
IPB.DS:
0125HC.ES:
0125HD.无
16、在8086/8088中,可以分为两个独立的8位寄存器使用的寄存器是(B)
A.AX,DI,BP,SIB.AX,BX,CX,DX,F
C.SI,DI,BP,SP,IPD.CS,ES,DS,SS
17、设SP的初值为200H,执行指令”PUSHAX”后,SP的值为(D)
A.198HB.200HC202HD.1FEH
18、伪指令“ENDP”告诉汇编程序(B)
A.宏定义结束B.过程定义结束C.段定义结束D.用户程序结束
19、ADDAL,BL
AAA
设执行前(AX)=0535H,(BL)=39H,则执行上述指令后,AX中的内容为(A)
A.0604HB.0574HC.0104HD.056EH
20、设(SS)=1E56H,(SP)=38H,则执行指令“RET6”后,SP的值以及SP所指向的存储单元的物理地址分别是(D)
A.3FH,1E5A0HB.42H,1E5C6H
C.39H,1E5E2HD.42H,1E5A2H
七、判断改错题(判断正误,正确的划上“√”,错误的划上“×”,并改正错误。
每题2分,共10分)
1、MOVAX,0FFH
MOVCS,AX(×)
改:
MOVAX,0FFH
MOVDS,AX
2、MOVAX,100
ADDAX,[BX]
DAA(×)
改:
MOVAL,100
ADDAL,[BX]
DAA
3、…
A1DB10H
A2DB?
…
CMPA1,A2(×)
改:
…
A1DB10H
A2DB?
…
MOVAL,A1
CMPAL,A2
4、DATA0DB100
…
MOV[DATA0],AX
PUSHAX
…(×)
改:
DATA0DW100
…
MOV[DATA0],AX
PUSHAX
…
5、MOVAL,01H
OUT2F8H,AL(×)
改:
MOVAL,01H
MOVDX,2F8H
OUTDX,AL
四、写出下面程序段的运行结果或功能(20分)
7、DESGSEGMENTAT1000H
ORG6
VAR1DB2,8
ORG$+2
VAR2DW569AH
DB‘1234’
DESGENDS
画出上面程序的内存分配图:
(4分)
参考答案:
2
8
-
-
9AH
56H
‘1’
‘2’
‘3’
‘4’
1000:
0006H
8、MOVDL,31H
MOVAH,2
INT21H
指出该程序段的功能:
(2分)
参考答案:
显示数字1
9、CLC
MOVCX,0FFFFH
INCCX
执行该程序段后,CX=_________,ZF=_________。
(2分)
参考答案:
CX=0,ZF=1
10、MOVAL,100
CMPAL,100
执行该程序段后,AL=_________,CF=__________。
(2分)
参考答案:
AL=100,CF=0
11、下列程序段完成什么功能?
(4分)
DATA1DB300DUP(?
)
DATA2DB100DUP(?
)
……..
MOVCX,100
MOVBX,200
MOVSI,0
MOVDI,0
L1:
MOVAL,DATA1[BX][SI]
MOVDATA1[DI]
INCSI
INCDI
LOOPL1
参考答案:
将DATA1的后100个字节传输到DATA2开始的存储单元中。
12、下列程序段完成的功能是什么?
(4分)
BUF1DBX
BUF2DBY
RESDB?
………
MOVDX,BUF1
ADDDX,BUF2
MOVCL,3
SALDX,CL
SUBDX,BUF1
SARDX,1
MOVRES,DX
RET
参考答案:
计算表达式[(X+y)*8-X]/2的值。
7、TABLEDB0,7,3,98,23,26,34,51
DATDB4
……….
LEABX,TABLE
MOVAX,0
MOVAL,DAT
ADDBX,AX
MOVAL,[BX]
则执行上述程序段后,(AL)=________,与ADDBX,AX和MOVAL,[BX]二条语句等效的一条语句是__________。
(2分)
参考答案:
16,XLAT
八、编程(30分)
1、知有一个100个字节数据的数据块,存放在以3DAOH:
1000H开始的存储区内,将该数据块搬至以3EA0H:
2000H开始的区域中。
编写程序段,实现给定功能。
(8分)
参考答案:
MOVAX,3DA0H
MOVDS,AX
MOVAX,3EA0H
MOVES,AX
MOVSI,1000H
MOVDI,2000H
MOVCX,100
LOOP1:
MOVAL,DS:
[SI]
MOVES:
[DI],AL
INCSI
INCDI
LOOPLOOP1
2、计算表达式Z=(X
+2Y+Y
)/2,设X,Y均为单字节正整数,结果Z为字数据。
写完整的程序,完成给定的功能。
(设X=23H,Y=0F6H)(10分)
参考答案:
TITLECALCULATEZ=(X
+2Y+Y
)/2
DATASEGMENT
XDB23H
YDB0F6H
ZDW?
DATAENDS
STACKSEGMENTPARASTACK‘stack’
DB100DUP(?
)
STACKENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA,SS:
STACK
STARTPROCFAR
BEGIN:
PUSHDS
MOVAX,0
PUSHAX
MOVAX,DATA
MOVDS,AX
MOVAL,X
MOVAH,0
M
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 汇编语言程序设计 电子科技大学 汇编语言 程序设计 自测