汇编语言学习知识期末考试试题.doc
/一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。1CPU要访问的某一存储单元的实际地址称()A段地址B偏移地址C物理地址D逻辑地址2某存储单元的物理地址是12345H,可以作为它的段地址有()A2345HB12345HC12340HD1234H3执行后使BX=0的同时也使CF=0,OF=0的指令是()AXORBX,BXBORBX,BXCANDBX,BXDCMPBX,BX4循环控制指令LoopNZ/LoopNE控制循环继续执行的条件是()ACX0且ZF=1BCX0且ZF=0CCX0或ZF=1DCX0或ZF=05在执行DAA指令,当高四位BCD码校正时产生进位,如要把此进位值送入AH中,对这进位值的操作应是()ADAA校正指令的功能已自动加在AH中B进位值在AF中,校正后根据AF内容再加在AH中C进位值在CF中,校正后根据CF内容再加在AH中D进位值在AL最高位上,校正后根据AL最高位内容再加在AH中6AND,OR,XOR,NOT为四条逻辑运算指令,下面的解释正确的是()A指令XORAX,AX执行后,AX内容不变,但设置了标志位B指令ORDX,1000H执行后,将DX最高位置1,其余各位置0C指令ANDAX,OFH执行后,分离出AL低四位DNOTAX,执行后,将AX清07在执行下列指令时,需要使用段寄存器DS的指令是()ASTOSWBADDAL,CLCNEGBXDINCDABX8无论BH中原有的数是奇数或偶数,若要使BH中的数一定为奇数,应执行的指令是()AADDBH,01HBORBH,01HCXORBH,01HDTESTBH,01H9完成对CL寄存器的内容乘以4的正确操作是()AROLCL,1BMUL4ROLCL,1CSHLCL,1DMOVCL,2SHLCL,1SHLCL,CL10下面各传送指令中,正确的是()AMOVDI,SIBMOVDX+DI,ALCMOVWORDPTRBX,0100HDMOVAL,BX11汇编语言语句格式中对名字项的规定如下,请找出其中错误的说法()A名字的第一个字符可以是大写英文字母及小写英文字母B名字的第一个字符可以是字母、数字及、_C名字的有效长度31个字符D在名字中不允许出现$12要实现使BETA的值为56,应采用语句为()ABETADB56BBETADB56HCBETAEQU56DBETAEQU56H13REPZCMPSW指令,重复执行的终止条件是()ACX=0或ZF=0BCX=0且ZF=0CCX=0或ZF=1DCX=0且ZF=114下面程序段执行后,AL中的内容是()MOVAX,8833HADDAL,AHDAAA21B21HC0C1HD0DDH15比较两个带符号的数A、B,当A=B时程序转移,测试的条件为()AZF=1BZF=0CSF=1DSF=016检查二个无符号数的关系,若要实现ALBL时分支去LOP1处,那么在“CMPAL,BL”指令后应跟的分支指令是()AJNCLOP1BJALOP1CJCLOP1DJGELOP117在下列串操作指令中,同时使用源串和目的串地址指针的指令是()ASTOSWBLODSWCSCASWDCMPSW18设AL=0AH,下列指令执行后能使AL=05H的是()ANOTALBANDAL,0FHCXORAL,0FHDORAL,0FH19DA1DWAB,CD,EF,GH()MOVAX,DA1+3指令执行后AX中的内容是AEFBCDCBCDFC20使用DOS系统功能调用时,使用的软中断指令是()AINT21BINT10HCINT16HDINT21H二、填空题(本大题共12空,每空0.5分,共6分)请在每小题的空格中填上正确答案。错填、不填均无分。21十六进制数0FFF8H表示的十进制正数为_,表示的十进制负数为_。22若DS=0F3EH,SI=2000H,COUNT=0A8H,指令MOVAX,(SI+COUNT)中,源操作数的有效地址EA为_20A8H_,其物理地址为_11488H_。23CPU的标志寄存器中标志位,可以分为两大类,其中一类称为_状态_标志位,另一类称为_控制_标志位。24当标志位_CF_=1时表示无符号数运算产生溢出,而当标志位_OF_=1是表示带符号数运算产生溢出。25如JMP指令采用段间间接寻址,那么由4个相邻字节单元中存放有转移地址,其中前两个字节存放的是_,而后两个字节存放的是_。26在串操作程序中,通常在重复前缀指令REPZ或REPNZ后,选用的串操作指令是_或_才有实际意义。三、简答题(本大题共4小题,每小题2分,共8分)27已知:BX=1357H,DI=2000H,DS=2000H,CS=4000H,分别指出下面各指令中存储器操作数的物理地址。(1)MOVAL,BX(2)MOVCS:BX+DI,AH280P1DB1,20P2DW3412H,5678HMOVAX,OP1+1;字单元(OP1+1)AXMOVBL,OP2+1;字节单元(OP2+1)BL上述二条传送语句有语法错误,请根据注释字段的说明,将其改正。29下列语句在存储器中分别为变量分配多少字节?(1)AD2DW10DUP(?),10(2)AD3DD100DUP(?)30简述下面两条指令分别是什么语法错误?MOVBX,SIMOVAX,DL四、程序分析题(本大题共6小题,每小题6分,共36分)31MOVDL,ALNOTDLTESTDL,04HJENEXTNEXT:若上述程序段执行时产生分支,说明AL中的数第几位一定为1?程序段执行后CF是多少?32DA1DBABCDEFGHIDA2DB9DUP(0)LEASI,DA1LEADI,DA2MOVCX,9CLDLOP:LODSBSUBAL,10HSTOSBLOOPLOP.试问:写出程序执行后DA2各字节中的数据。保持程序功能情况下,程序中可否改写为33已知:BX=4567HNEGBXINCBXNEGBXDECBX程序段执行后,BX=_,CF=_。34MOVBL,64HMOVCL,03HXORAX,AXAGAIN:ADDAL,BLADCAH,0DECCLJNZAGAIN问:(1)该程序段完成的功能是:(2)AX=_。35已知数据段中定义DAT1DB12H,34H,56H,78HMOVCX,0MOVAX,WORDPTRDAT1MOVCL,DAT1+3当程序段执行完后AX=_,CX=_。36DA1DB83H,72H,61H,94H,5AHMOVCX,WORDPTRDA1ANDCX,0FHMOVAL,DA1+3SHLAL,CL上述指令序列执行后,AL=_,CL=_。五、程序填空题(本大题共2小题,每小题6分,共12分)37在NUMW单元存放有一个0-65535范围内的整数,将该数除以500,商和余数分别存入QU1和REM单元,请在空行处各填上一条指令完善该程序。MOVAX,NUMW_XORDX,DXDIVBXMOVQUI,AX_38某程序欲用单个字符显示的2号功能调用去显示STRING中的字符串COMPUTER(不显示字符$!).试在空白处填上适当的一条指令。STRINGDBCOMPUTER,$MOVBX,0FFSETSTRINGLOP:MOVDL,BXMOVAH,02HINT21H_JNELOP六、编程序题(本大题共2小题,第39小题6分,第40小题12分,共18分)39试编制一程序段,用串操作指令实现以DA_BY为首址的20H个字节单元中存放相同字符Y(设DA_BY存储区已有ES指向)。40试编制一源程序,统计DA1字单元中含0的个数,如统计的个数为奇数,则将进位位置1,否则进位位清0。DATASEGMENTDA1DWXXXXDATAENDS2006年10月汇编语言程序设计试题答案来源:http:/www.csai.cn2006年10月汇编语言程序设计试题答案一、1、C;2、D;3、A;4、B;5、C;6、C;7、D;8、B;9、C;10、C;11、B;12、C;13、A;14、B;15、A16、C;17、D;18、C;19、D;20、B二、21、+65528;-3276022、20A8H;11488H23、状态;控制24、CF;OF25、IP;CS26、STOS;CMP三、27、(1)21357H;(2)43357H28、MOVAX,WORDPTR(OP1+1)MOVBL,BYTEPTR(OP2+1)29、(1)22;(2)40030、MOV指令不能在两个存储器操作数之间进行;操作数类型不匹配四、31、第2位;CF=032、123456789;不能更改33、BX=4565H;CF=134、AX=012CH,将AX内容乘3送BX中35、AX=3412H,CX=0078H36、AL=0A0H,CL=03H五、37、MOVBX,500MOVREM,DX38、INCBXCMPBX,24H六、39、LEADI,DA_BYMOVCX,32MOVAL,YCLDREPSTOSB40、CODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXLEASI,DA1MOVCX,16XORBL,BLAGAIN:MOVAL,SIHLAL,1JCNEXTINCBLNEXT:INCSILOOPAGAINTESTBL,01HJNEL1CLCJMPDONEL1:STCDONE:MOVAH,4CHINT21HCODEENDSENDSTART
收藏
编号:2609169
类型:共享资源
大小:24.10KB
格式:DOC
上传时间:2020-04-24
8
金币
- 关 键 词:
-
汇编语言
学习
知识
期末考试
试题
- 资源描述:
-
//
一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。
1.CPU要访问的某一存储单元的实际地址称( )
A.段地址 B.偏移地址
C.物理地址 D.逻辑地址
2.某存储单元的物理地址是12345H,可以作为它的段地址有( )
A.2345H B.12345H
C.12340H D.1234H
3.执行后使BX=0的同时也使CF=0,OF=0的指令是( )
A.XORBX,BX B.ORBX,BX
C.ANDBX,BX D.CMPBX,BX
4.循环控制指令LoopNZ/LoopNE控制循环继续执行的条件是( )
A.CX≠0且ZF=1 B.CX≠0且ZF=0
C.CX≠0或ZF=1 D.CX≠0或ZF=0
5.在执行DAA指令,当高四位BCD码校正时产生进位,如要把此进位值送入AH中,对这进位值的操作应是( )
A.DAA校正指令的功能已自动加在AH中
B.进位值在AF中,校正后根据AF内容再加在AH中
C.进位值在CF中,校正后根据CF内容再加在AH中
D.进位值在AL最高位上,校正后根据AL最高位内容再加在AH中
6.AND,OR,XOR,NOT为四条逻辑运算指令,下面的解释正确的是( )
A.指令XORAX,AX执行后,AX内容不变,但设置了标志位
B.指令ORDX,1000H执行后,将DX最高位置1,其余各位置0
C.指令ANDAX,OFH执行后,分离出AL低四位
D.NOTAX,执行后,将AX清0
7.在执行下列指令时,需要使用段寄存器DS的指令是( )
A.STOSW B.ADDAL,CL
C.NEGBX D.INCDA[BX]
8.无论BH中原有的数是奇数或偶数,若要使BH中的数一定为奇数,应执行的指令是( )
A.ADDBH,01H B.ORBH,01H
C.XORBH,01H D.TESTBH,01H
9.完成对CL寄存器的内容乘以4的正确操作是( )
A.ROLCL,1 B.MUL4
ROLCL,1
C.SHLCL,1 D.MOVCL,2
SHLCL,1 SHLCL,CL
10.下面各传送指令中,正确的是( )
A.MOV[DI],[SI] B.MOV[DX+DI],AL
C.MOVWORDPTR[BX],0100H D.MOVAL,BX
11.汇编语言语句格式中对名字项的规定如下,请找出其中错误的说法( )
A.名字的第一个字符可以是大写英文字母及小写英文字母
B.名字的第一个字符可以是字母、数字及、@、_
C.名字的有效长度≤31个字符
D.在名字中不允许出现$
12.要实现使BETA的值为56,应采用语句为( )
A.BETADB56 B.BETADB56H
C.BETAEQU56 D.BETAEQU56H
13.REPZCMPSW指令,重复执行的终止条件是( )
A.CX=0或ZF=0 B.CX=0且ZF=0
C.CX=0或ZF=1 D.CX=0且ZF=1
14.下面程序段执行后,AL中的内容是( )
MOVAX,8833H
ADDAL,AH
DAA
A.21 B.21H
C.0C1H D.0DDH
15.比较两个带符号的数A、B,当A=B时程序转移,测试的条件为( )
A.ZF=1 B.ZF=0
C.SF=1 D.SF=0
16.检查二个无符号数的关系,若要实现AL≥BL时分支去LOP1处,那么在“CMPAL,BL”指令后应跟的分支指令是( )
A.JNCLOP1 B.JALOP1
C.JCLOP1 D.JGELOP1
17.在下列串操作指令中,同时使用源串和目的串地址指针的指令是( )
A.STOSW B.LODSW
C.SCASW D.CMPSW
18.设AL=0AH,下列指令执行后能使AL=05H的是( )
A.NOTAL B.ANDAL,0FH
C.XORAL,0FH D.ORAL,0FH
19.DA1DW‘AB’,‘CD’,‘EF’,‘GH’( )
┇
MOVAX,DA1+3
指令执行后AX中的内容是
A.‘EF’ B.‘CD’
C.‘BC’ D.‘FC’
20.使用DOS系统功能调用时,使用的软中断指令是( )
A.INT21 B.INT10H
C.INT16H D.INT21H
二、填空题(本大题共12空,每空0.5分,共6分)请在每小题的空格中填上正确答案。错填、不填均无分。
21.十六进制数0FFF8H表示的十进制正数为________,表示的十进制负数为________。
22.若DS=0F3EH,SI=2000H,COUNT=0A8H,指令MOVAX,(SI+COUNT)中,源操作数的有效地址EA为____20A8H____,其物理地址为___11488H_____。
23.CPU的标志寄存器中标志位,可以分为两大类,其中一类称为_____状态___标志位,另一类称为____控制____标志位。
24.当标志位______CF__=1时表示无符号数运算产生溢出,而当标志位__OF______=1是表示带符号数运算产生溢出。
25.如JMP指令采用段间间接寻址,那么由4个相邻字节单元中存放有转移地址,其中前两个字节存放的是________,而后两个字节存放的是________。
26.在串操作程序中,通常在重复前缀指令REPZ或REPNZ后,选用的串操作指令是________或________才有实际意义。
三、简答题(本大题共4小题,每小题2分,共8分)
27.已知:BX=1357H,DI=2000H,DS=2000H,CS=4000H,分别指出下面各指令中存储器操作数的物理地址。
(1)MOVAL,[BX]
(2)MOVCS:[BX+DI],AH
28.0P1DB1,2
0P2DW3412H,5678H
┇
MOVAX,OP1+1;字单元(OP1+1)AX
MOVBL,OP2+1;字节单元(OP2+1)BL
上述二条传送语句有语法错误,请根据注释字段的说明,将其改正。
29.下列语句在存储器中分别为变量分配多少字节?
(1)AD2DW10DUP(?),10
(2)AD3DD100DUP(?)
30.简述下面两条指令分别是什么语法错误?
MOV[BX],[SI]
MOVAX,DL
四、程序分析题(本大题共6小题,每小题6分,共36分)
31.MOVDL,AL
NOTDL
TESTDL,04H
JENEXT
┇
NEXT:…
若上述程序段执行时产生分支,说明AL中的数第几位一定为1?程序段执行后CF是多少?
32.DA1DB‘ABCDEFGHI’
DA2DB9DUP(0)
┇
LEASI,DA1
LEADI,DA2
MOVCX,9
CLD
LOP:LODSB
SUBAL,10H
STOSB
LOOPLOP
...
试问:①写出程序执行后DA2各字节中的数据。
②保持程序功能情况下,程序中可否改写为
33.已知:BX=4567H
NEGBX
INCBX
NEGBX
DECBX
程序段执行后,BX=________,CF=________。
34.MOVBL,64H
MOVCL,03H
XORAX,AX
AGAIN:ADDAL,BL
ADCAH,0
DECCL
JNZAGAIN
问:(1)该程序段完成的功能是:
(2)AX=________。
35.已知数据段中定义
DAT1DB12H,34H,56H,78H
MOVCX,0
MOVAX,WORDPTRDAT1
MOVCL,DAT1+3
当程序段执行完后AX=________,CX=________。
36.DA1DB83H,72H,61H,94H,5AH
┇
MOVCX,WORDPTRDA1
ANDCX,0FH
MOVAL,DA1+3
SHLAL,CL
上述指令序列执行后,AL=_______,CL=_______。
五、程序填空题(本大题共2小题,每小题6分,共12分)
37.在NUMW单元存放有一个0-65535范围内的整数,将该数除以500,商和余数分别存入QU1和REM单元,请在空行处各填上一条指令完善该程序。
┇
MOVAX,NUMW
_____________
XORDX,DX
DIVBX
MOVQUI,AX
_____________
38.某程序欲用单个字符显示的2号功能调用去显示STRING中的字符串‘COMPUTER’(不显示字符‘$’!).试在空白处填上适当的一条指令。
STRINGDB‘COMPUTER’,‘$’
┇
MOVBX,0FFSETSTRING
LOP:MOVDL,[BX]
MOVAH,02H
INT21H
____________________
____________________
JNELOP
六、编程序题(本大题共2小题,第39小题6分,第40小题12分,共18分)
39.试编制一程序段,用串操作指令实现以DA_BY为首址的20H个字节单元中存放相同字符‘Y’(设DA_BY存储区已有ES指向)。
40.试编制一源程序,统计DA1字单元中含0的个数,如统计的个数为奇数,则将进位位置1,否则进位位清0。
DATASEGMENT
DA1DWXXXX
DATAENDS
2006年10月汇编语言程序设计试题答案
来源: http://www.csai.cn
2006年10月汇编语言程序设计试题答案
一、
1、C;2、D;3、A;4、B;5、C;
6、C;7、D;8、B;9、C;10、C;
11、B;12、C;13、A;14、B;15、A
16、C;17、D;18、C;19、D;20、B
二、
21、+65528;-32760
22、20A8H;11488H
23、状态;控制
24、CF;OF
25、IP;CS
26、STOS;CMP
三、
27、(1)21357H;(2)43357H
28、MOVAX,WORDPTR(OP1+1)
MOVBL,BYTEPTR(OP2+1)
29、(1)22;(2)400
30、MOV指令不能在两个存储器操作数之间进行;
操作数类型不匹配
四、
31、第2位;CF=0
32、123456789;不能更改
33、BX=4565H;CF=1
34、AX=012CH,将AX内容乘3送BX中
35、AX=3412H,CX=0078H
36、AL=0A0H,CL=03H
五、
37、MOVBX,500
MOVREM,DX
38、INCBX
CMP[BX],24H
六、
39、LEADI,DA_BY
MOVCX,32
MOVAL,‘Y’
CLD
REPSTOSB
40、CODESEGMENT
ASSUMECS:CODE,DS:DATA
START:MOVAX,DATA
MOVDS,AX
LEASI,DA1
MOVCX,16
XORBL,BL
AGAIN:MOVAL,[SI]
HLAL,1
JCNEXT
INCBL
NEXT:INCSI
LOOPAGAIN
TESTBL,01H
JNEL1
CLC
JMPDONE
L1:STC
DONE:MOVAH,4CH
INT21H
CODEENDS
ENDSTART
展开阅读全文
淘文阁 - 分享文档赚钱的网站所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。