宁夏大学汇编复习题Word文档格式.docx
- 文档编号:6288331
- 上传时间:2023-05-06
- 格式:DOCX
- 页数:25
- 大小:23.96KB
宁夏大学汇编复习题Word文档格式.docx
《宁夏大学汇编复习题Word文档格式.docx》由会员分享,可在线阅读,更多相关《宁夏大学汇编复习题Word文档格式.docx(25页珍藏版)》请在冰点文库上搜索。
A.DB12HB.DW4567H
C.DDˋBCDˊD.DBˋCDˊ
15.DB1DB8DUP(2DUP(3),3DUP
(2))
┇
MOVAX,WORDPTRDB1[04H]
上面指令执行后,AX的容是()
A.0302HB.0203H
C.0202HD.0303H
16.BUF1DB3DUP(0,2DUP(1,2),3)
COUNTEQU$-BUF1
符号COUNT等价的值是()
A.6B.18
C.16D.8
17.DA1DW2A05H
DA2DB0FAH
MOVAL,BYTEPTRDA1
SUBDA2,AL
上述指令执行后,DA2中的容是()
A.0DAHB.0FAH
C.0F5HD.0D0H
18.设(SS)=338AH,(SP)=450H,执行PUSHBX,和PUSHF两条指令后,堆栈顶部的物理地址是()
A.33CECHB.33CF2H
C.33CF4HD.33CE8H
19.设(SP)=0028H,执行段返回指令RET6后,SP的容是()
A.0036HB.0022H
C.0030HD.0020H
20.条件转移指令JNBE产生转移的条件是()
A.CF=0ANDZF=0B.CF=0ANDZF=1
C.CF=1ANDZF=0D.CF=1ANDZF=1
21.与MOVBX,0FFSETVAR指令完全等效的指令是()。
①MOVBX,VAR②LDSBX,VAR③LESBX,VAR④LEABX,VAR
22.在段定义时,如果定位类型用户未选择,就表示是隐含类型,其隐含类型是().
①WORD②PAGE③BYTE④PARA
23.在汇编语言程序的开发过程中使用宏功能的顺序是()。
①宏定义,宏调用②宏定义,宏展开
③宏定义,宏调用,宏展开④宏定义,宏展开,宏调用
24.汇编语言源程序中,每个语句由四项组成,如语句要完成一定功能,那么该语句中不可省
略的项是()。
①名字项②操作项③操作数项④注释项13.MOVSP,3210H
PUSHAX
执行上述指令序列后,SP寄存器的值是()。
①3211H②320EH③320FH④3212H
25.BUFDW10HDUP(3DUP(2,10H),3,5)
上述语句汇编后,为变量BUF分配的存储单元字节数是()。
①80H②100H③124④192
二、简答题(本大题共3小题,每小题2分,共6分)
1.假设DS=2000H,COUNT=0100H,SI=0030H,指令MOVAX,COUNT[ST]
①写出源操作数的物理地址?
②该指令可否写成MOVAX,[COUNT+SI]?
2.下面指令有无错误?
若有错,是什么错误?
①MOVAX,[SI][DI]
②CMP[SI],[BX]
3.条件转移指令的判断条件除标志位PF外还有哪几个标志位?
三、程序分析题(每小题6分,共36分)
l.已知AX=0FF60H,CF=1
MOVDX,96
XORDH,0FFH
SBBAX,DX
执行上述指令序列后,AX=,CF=
2.设寄存器AL,BL,CL中容均为76H,
XORAL,0FH
ANDBL,0FH
ORCL,0FH
执行上述指令序列后,AL=BL=CL=
3.已知AX=0A33AH,DX=0F0F0H
ANDAH,DL
XORAL,DH
NECAH
NOTAL
执行上述指令序列后,AH=,AL=
4.DATASEGMENT
S9DB0,1,2,3,4,5,6,7,8,9
DATAENDS
:
LEASI,S9
LEA,DI,S9+1
MOVCX,5
LOP:
MOVAL,[SI]
XCHCAL,[DI]
MOV[SI],AL
ADDSI,2
ADDDI,2
LOOPLOP
上述程序段运行后,S9开始的10个字节存储单元容是什么?
5.MOVAL,38H
MOVBL,49H
CALLSUB0
INCAL
DECCL
.........
SUB0PROC
ADDAL,BL
MOVCL,AL
DAA
RET
SUB0ENDP
上述程序段运行后,AL=CL=
6.ADRDW1234H,5678H
┇
LEASI,ADR
LDSBX,ADR
设变量ADR的偏移地址是100H,上述两条指令执行后:
SI=,BX=。
7.已知DS和ES指向同一个段,且当前数据段从0000H到00FFH单元容分别为01,02,03,…,0FF,00H。
问下列程序段执行后,0000~0009H的容是些什么值。
MOVSI,0000H
MOVDI,0001H
MOVCX,0080H
CLD
REPMOVSW
8.STR1DBˋCOMPUTERNDPASCALˊ
SCADBˋNˊ
LEADI,STR1
MOVAL,SCA
MOVCX,10H
REPNESCASB
NEXT:
……
程序运行到NEXT时CX=ZF=
9.已知AX=0FFFFH,DX=0001H
MOVCX,2
SHLAX,1
RCLDX,1
LOOPLOP
上述程序段执行后,DX=AX=
10.已知DX=0A476H,CX=0302H,CF=1
ORDX,DX
RCRDX,CL
XCHGCH,CL
RCLDX,CL
上述程序段执行后,DX=CF=
11.MOVAX,10
MOVBX,AX
MOVCL,2
SHLAX,CL
ADDAX,BX
上述程序段执行后,BX=AX=
12.已知AX=78H,BX=0804H
SHRBX,1
ANDBX,0F0FH
MOVCX,4
XCHGBH,BL
DIVBL
SALAX,1
上述程序段执行后,AX=BX=
四.改错.阅读下列数据传送程序段,改正使用不当的语句
ADB35,47,2AH,'
XYZ'
BDBNDUP(0)
NEQU$-A
MOVSI,A
MOVDI,B
MOVCX,LENGTHA
LP:
MOVAX,[SI]
MOV[DI],AX
INCSI
INCDI
DECCX
LOOPLP
五.程序填空题(每空3分,共18分)
1.下面是程序段是判断寄存器AH和AL中第3位是否相同,如相同,AH置0,否则AH置全1.试把空白处填上适当指令.
ANDAH,08H
MOVAH,0FFH
JMPNEXT
ZERO:
MOVAH,0
NEXT:
........
2.有一个首址为A的字数组,完成从大到小的排序.
DATAREASEGMENT
ADWNDUP(?
)
DATAREAENDS
PROGRAMSEGMENT
MAINPROCFAR
START:
PUSHDS
SUBAX,AX
MOVDS,AX
MOVCX,N
LOOP1:
MOVDI,CX
MOVBX,0
LOOP2:
MOVAX,A[BX]
CMP
JGECONTINE
XCHGAX,
MOVA[BX],AX
CONTINE:
ADDBX
LOOPLOOP2
LOOPLOOP1
RET
MAINENDP
ENDSTART
3.该程序段的功能是求出存放在DX、AX中的双精度数的绝对值,并将结果保存在A和A+2单元中,请在空白处填写指令。
[1]
JNSRESULT
NOTAX
NOTDX
INCAX
[2]
RESULT:
MOVA,AX
MOVA+2,DX
4.下面程序执行后,AL的容为ARRAY数组中的最小数,请在空白处各填上一条指令。
ARRAYDB3,5,-3,-2,4,5,-8,6
MOVCX,7
MOVDI,0
MOVAL,ARRAY
A1:
①
JLEA2
MOVAL,ARRAY[DI]
A2②
5.下面程序段是判断两个存储单元是否同为正数,如是,则AX置全0,否则AX置非0。
试在空白处各填上适当的一条条件转移指令(两空白处要利用不同的标志位选用不同的条件转移指令)。
VAR1DW×
×
VAR2DW×
MOVAX,VAR1
MOVBX,VAR2
XORAX,BX
TESTBX,8000H
②
MOVAX,0
6.以BUFF为首地址的字节单元中,存放了COUNT个无符号数,下面程序段是找出其中最大数并送入MAX单元中.
BUFDB5,6,7,58H,62,45H,127,.......
COUNTEQU$-BUF
MAXDB?
.
MOVBX,OFFSETBUF
MOVCX,COUNT-1
MOVAL,[BX]
NXET:
INCCX
JAENEXT
MOVAL,[BX]
NEXT:
DECCX
MOVMAX,AL
六、编制程序题(第1小题8分共16分)
l.现有datasegment
arraydw64dup(?
dw5dup(?
dataends
试编写一程序段,要求在array+8到array+10(两者都包括在)单元中插入5个0.(提示:
先把从array+8单元开始的数据后移5个单元,然后再在规定位置插入0)
2.从键盘上输入来宾的Mr.×
或Mrs.×
当按动任意键时,屏幕上显示出:
"
WelcomeMr.×
.
3.定义宏指令并展开宏调用:
宏指令JOE把一串信息“MESSAGENO.K”存入数据区XK中.
宏调用I=0
JOETEXT,I
JOETEXT,I
4.在BUF1和BUF2两个数据区中,各定义有10个带符号字数据,试编制一个完整的源程序,求它们对应项的绝对值之和,并将和数存入以SUM为首的数据区中。
DATASECMENT
BUF1DW-56,24,54,-1,89,-8,……
BUF2DW45,-23,124,345,-265,……
SUMDW10DUP(0)
DATAENDS
5.改错.阅读下列数据传送程序段,改正使用不当的语句
LOOPLP
6.存中由SOURCE指示的个字节有符号数组成的数组分成正数和负数两个数组,并求这两个数组的数据个数,结果存放在RESULT指示的存区域。
存放形式为正数个数在前,其后跟正数组元素,然后是负数个数及负数数组元素.
7从键盘输入一系列字符,以字符’$’为结束符,然后对其中的非数字字符计数,并显示出计数结果
8.在STRING到STRING+99单元中存放着一个字符串,并编写一个程序,测试该字符串中是否存在数字.如有数字则把DL的第5位置1,否则将该位置0
9.统计串中的空格个数和逗号的个数.
11..用地址表转移表实现下列C语句,其中变量A和B是有符号的整型变量:
switch(a%8)
{case0:
b=32;
break;
case1:
case2:
b=b+43;
case3:
b=b*a;
case4:
b--;
case5:
case6:
case7:
printf("
Function5_6_7"
);
}
}
汇编语言考试复习答案
1.C2.B3.D4.D5.B6.A7.A8.D.9.B10.A11.D12.D13.A14.C15.A16.B17.C18.A19.C20.A21.D22.D23.C24.B25.B26.B
二、简答题
1.①物理地址:
20130H(1分)
②可以(1分)
2.①错,不能同时出现[SI],[DI](1分)
②错,存储单元之间不能直接比较(1分)
3.OF、ZF、SF,和CF的标志位(2分)
三、程序分析题
1.执行上述指令序列后,AX=0,CF=0
2.执行上述指令序列后,AL=79HBL=06HCL=7FH
3执行上述指令序列后,AH=60H,AL=35H
4.S9DB1,0,3,2,5,4,7,6,9,8
5.上述程序段运行后,AL=88HCL=80H
6.上述程序段运行后,CX=44AAHDX=44D5HSI=100H,BX=1234H。
7(从0单元开始的容是01,01,02,02,04,04,06,06,08,08)
8.程序运行到NEXT时CX=7ZF=1
9.上述程序段执行后,DX=0007HAX=0FFFCH
10.上述程序段执行后,DX=48ECHCF=1
11.上述程序段执行后,
(1)BX=40或28H
(2)AX=200或00C8H()
12.上述程序段执行后,
(1)BX=40或28H
(2)AX=200或00C8H()
1.XORAH,ALJEZERO
2.DECCXAX,A[BX+2]A[BX+2]MOVCX,DI
3.
4.CMPAL,ARRAY[DI]LOOPAl
5.JSNEXTJNENEXT
6.CMPAL,[BX]JNZLOP1
1.CODESEGMENT
ASSUME,DS:
DATA,ES:
DATA
START:
PUSH
XORAX,AX
PUAHAX
MVAX,DATA
MOVES,AX
MOVSI,OFFSETARRAY+7EH
MOVDI,OFFSETARRAY+88H
STD
MOVCX,60
MOVBX,OFFSETARRAY+8H
MOVCX,5
NEXT:
MOVWORDPTR[BX],0
ADDBX.2
LOOPNEXT
RET
CODEENDS
ENDSTARAT
2.2.DESGSEGMENT
MAXLENDB16
ACTLENDB?
NAMESDB16DUP(‘‘)
MESS1DB‘WELCOME’
MESS2DB16DUP(‘‘)
CRLFDB0DH,0AH,’$’
DSEGENDS
CSEGSEGMENT
MAINPROCFAR
ASSUMECS:
CSEG,DS:
DSEG,ES:
DSEG
PUSHDS
SUBAX,AX
PUSHAX
MOVAX,DSEG
MOVDS,AX
MOVES,AX
BEGIN:
MOVCX,16
MOVAL,20H
LEADI,MESS2
REPSTOSB
LEADX,MAXLEN
MOVAH,0AH
INT21H
MOVAH,7
CMPAL,3
JEEXIT
DISPLAY:
MOVCH,0
MOVCL,ACTLEN
LEASI,NAMES
LEADI,MESS2
REPMOVSB
MOVAH,09H
LEADX,MESS1
INT21H
EXIT:
MAINENDP
CSEGENDS
ENDMAIN
3.JOEMACROA,J
MARYA,%J
J=J+1
ENDM
MARYMACROX,K
X&
KDB‘MESSAGENO.&
K’
宏展开:
I=0
+TEXT0DB‘MESSAGENO.0’
JOETEXT,I
+TEXT1DB‘MESSAGENO.1’
+TEXT2DB‘MESSAGENO.2’
4.STACK1SEGMENTPATASTACK
DW20HDUP(0)
STACK1ENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA,SS:
STACK1
START:
MOVAX,DATA
MOVCX,10
LEASI,BUF1
LEADI,BUF2
LEABX,SUM
NXET:
MOVAX,[SI]
MOVDX,[DI]
TEXTAX,8000H
JETDX
NEGDX
TDX:
TESTDX,8000H
NEGDX
ADDS:
ADDAX,DX
MOV[BX],AX
ADDSI,2
ADDDI,2
ADDBX,2
MOVAH,4CH
CODEENDS
ENDSTART
7.DSEGSEGMENT
BUFFDB50DUP(‘‘)
COUNTDW0
…..
LEABX,BUFF
MOVCOUNT,0
INPUT:
MOVAH,01
MOV[BX],AL
INCBX
CMPAL,’$’
JNZINPUT
LEABX,BUFF
MOVCL,’$’
JZDISP
CMPCL,[BX]
JZDISP
CMPCL,30H
JBCONT
CMPCL,39H
JBENXET
CONT:
INCCOUNT
JMPNEXT
DISP:
……..
8.DSEGSEGMENT
STRINGDB100DUP(?
DSEGENDS
SUBAX,AX
MOVAX,DSEG
MOVDS,AX
BEGIN:
MOVCX,100
MOVSI,0
REPEAT:
MOVAL,STRING[SI]
CMPAL,30H
JBGOON
CMPAL,39H
JAGOON
ORDL,20H
JMPEXIT
GOON:
INCSI
LOOPREPEAT
ANDDL,0DFH
EXIT:
9.DATASEGMENT
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 宁夏 大学 汇编 复习题