扬州大学汇编语言课后习题Word文件下载.docx
- 文档编号:22269704
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:16
- 大小:74.28KB
扬州大学汇编语言课后习题Word文件下载.docx
《扬州大学汇编语言课后习题Word文件下载.docx》由会员分享,可在线阅读,更多相关《扬州大学汇编语言课后习题Word文件下载.docx(16页珍藏版)》请在冰豆网上搜索。
C.33CF4HD.33CE8H
3.设(AX)=0C544H,在执行指令
ADDAH,AL后,相应的状态为()。
A.CF=0、OF=0B・CF=0^OF=1
C.CF=1>
OF=0D•CF=1、OF=1
4.设DS=2000H,SS=1500H,(ES)=3000H,(SI)=OOBOH,(BX)=1000H,(BP)=0020H,指岀下列指
令的源操作数的寻址方式是什么?
若该操作数为存储器操作数,请计算其物理地址。
仃)
MOVAX,
DS:
[0100H]
2)
MOVBX,
01OOH
3)
ES:
[SI]
4)
MOVCL,
[BP]
5)
[BX][SI]
6)
MOVCX,
BX
7)
MOVAL,
3[BX][SI]
8)
[BX+20]
⑴直接寻址PA=20100H
(2)立即寻址
⑶寄存器间接寻址PA=200B0H(错误)⑷寄存器间接寻址PA=20020H(错误)
⑸基址变址寻址PA=210B0H
(6)寄存器寻址
⑺基址变址寻址PA=210B3H
(8)变址寻址PA=21014H
练习三
1设(SP)=OOOCH,(SS)=00A8H,在执行POPAX指令后得到的栈顶的物理地址为()
A.000B6HB.00A8EHC.000B2HD.00A8AH
2.语句”BUFDB25”的含义是()
A.用BUF表示25
B.定义BUF为字节变量,初始值为25
C.从标号BUF对应的地址起分配25个单元
D.定义BUF为变量,其地址为25
3.假设VAR为变
量,则指令MOVSI,OFFSETVAR的源操作数的寻址方式是(丿
A.间接寻址B.存储器寻址C.寄存器寻址D.立即寻址
4.数据定义BUFDB'
1234'
执行指令MOVCLLENGTHBUF后,CL寄存器的内容是()
A.1B.2C.3D.
5.己知某操作数的物理地址是2117AH,则它的段地址和偏移地址可能是()
A.2108:
00EAB.2025:
0F2AC.2100:
117AD.2000:
017A设数据段定义如下:
(6〜8题均采用该数据段)
ORG3050H
COUNTEQU4
DBUFDB'
MOUSE.MO,U!
DBUF1DW3040H
DB'
TERMINE'
R
DB506
6.DBUF+16单元中的内容是()
A.EB.TC.MD.T
7.DBUF1表示的地址是()
A.305AHB.305CH
8.上而伪指令使用出错的是(
A.DB'
MOUSE.MO'
U!
C.DB4TERMINE'
9执行下而的程序段后,
NUM=100
MOVBX,NUMNE50
A.50B.0C.OFFFFHD.
使用8086/8088汇编语言的伪操作命令定义:
10VARDB2DUP(1,2,3DUP(3),2DUP(1,0))
则在VAL存储区前十个字节单元的数据是()
A
1,.2,
3,
3
2,
1
0,
1,2,3
B
1,
仁1
C
2
o,1
D
1.B
2.B
3d
4A
5.C
(错
、口、
6.C
7.C
g、
8.D
9.C
10.D
练习四
1、设计指令序列,完成下列功能:
(1)写出将AL的最高位置1,最低位取反,其它位保持不变的指令段。
(2)写出将AL中的高四位和低四位数据互换的指令段。
2、若AX=-15要得到AX=15应执行的指令是()
A.NEGAXB.NOTAX
C.INCAXD.DECAX
3、以下三指令执行后,DX=()
MOVDX,0
MOVAX,OFFABH
CWD
A.OFFABHB.0C.OFFFFHD.无法确定
4、将累加器AX内容清零的错误指令是()
A.ANDAX,0B.XORAX,AX
C.SUBAX,AXD.CMPAX,AX
5、INC指令不影响()标志
A.OFB.CFC.ZFD.SF
AL中的值和CF分别为()
6、设AL中的值为84H,CF=1,现在执行RCRAL,1指令,
A.0C2H,1B.42H,1C.0C2H,0D.42H,0
7、MOVAL,BL
NOTAL
XORAL,BL
ORBL,AL
程序段执行后,AL=、BL=
8、执行下列指令后:
MOVAX,1234H
MOVCL,4
ROLAX,CL
DECAX
MOVCX,4
MULCX
HLT
寄存器AH的值是,寄存器AL的值是
寄存器DX的值是。
设数据段定义如下:
(9-11题均采用该数据段)
DATASEGMENT
NAEQU15
NBEQU10
NCDB2DUP(4,2DUP(5,2))
CNTDB$-NC
CWTDW$-CNT
NDDWNC
DATAENDS
9.
从DS:
0000开始至CNT单元之前存放的数据依次是()
13.汇编后Y2的值是()
A4B.5C.3D.6
14.MOVAL,丫1+1指令执行后,AL中的内容是()
A.19HB.01HC.35HD.32H
1.
(1)ORAL80H
XORALOFH(错误)
(2)MOVCL4(错误)
ROLALCL(错误)
2.A
3.C
4.D
5.B
6.D(错误)
7.AL=0FFHBL=OFFH
8.AH=8DHAL=00HDX=0000H
9.D
10.A
11.B
12.B
13.A(错误)
14.B(错误)
练习五
1试分析下列程序段执行后,AX和DX寄存器的内容分别是什么?
VAR1DB86H
VAR2DW2005H,0021H,849AH,4000H
MOVAL,VAR1
CBW
LEABX,VAR2
MOVDX,2[BX]
SUBAX,DX.
2试分析下列程序段:
ADDAX,BX
JNOL1
JNCL2
SUBAX,BX
JNCL3
JNOL4
JMPSHORTL5
如果AX和BX的内容如下:
AXBX
(1)14C6H80DCH
⑵B568H54B7H
⑶42C8H608DH
⑷D023H9FD0H
(5)9FD0HD023H试问该程序分别在上面几种情况下执行后,程序转向哪里3试分析下列程序段,回答所提问题。
ORG3000H
DB11H,12H,13H,14H,15H
MOVBX,3000H
STC
ADCBX,1
SALBL,1
INCBYTEPTR[BX]
A.程序段执行完,3004H单元中的内容是什么?
程序段执行后BX中的内容是什么?
CF的值是1还是0?
1.AX的内容是FF65H
DX的内容是0021H
2.
(1)L1
(2)L1
(3)L2
(4)L3(错误)
(5)L4(错误)
3.3004H的内容是16HBX=3004HCF=0
练习六
1.如果用调试程序DEBUG勺R命令在终端上显示当前各寄存器的内容如下,段基请说明当前堆栈段址是多少?
栈顶的物理地址是多少?
C>
DEBUG
-R
AX=0000BX=0000CX=0079DX=0000SP=FFEEBP=0000SI=0000
DI=0000DS=10E4ES=10F4SS=21F0CS=31FFIP=0100NVUPDIPL
NZNAPONC
2.有指令JMPDX,在执行前,DX=1234H,IP=5678H,执行该指令后,寄存器变化正确的是
o
A)DX=1234H,IP=5678HB)DX=1234H,IP=1234H
C)DX=5678H,IP=5678HD)DX=5678H,IP=1234H
3.若要检测AL中的最高位是否为1若为1,则转移到标号NEXT处,否则顺序执行,请用两条指令完成之。
4.试用一条指令将一字节的立即数5AH与符号地址为NUM的存储器字节单元内容相比较。
HEXNUT节单元中的内容是什么?
5.
试分析下列程序段,说明它完成什么操作?
程序执行后,
ASCNUMDB38H
HEXNUMDB?
MOVAL,ASCNUM
CMPAL,39H
JBENEXT
SUBAL,7
NEXT:
SUBAL,30H
MOVHEXNUM,AL
1.堆栈段段基址是21F0H栈顶的物理地址是34EEEH(错误)
3.TESTAL,80H
JNZNEXT
4.CMPBYTEPTR5AH,NUM(错误)
ASCNUI字节单
完成了当ASCNUI所表示的十六进制数的ASCII码转换成十六进制数,并存入元的低四位。
(错误)
HEXNUI=OAH(错误)
练习七
1、CALLDWORDPTR[BX指令是段间调用还是段内调用。
它一共向堆栈中压入几个字?
2、在子程序设计时,为什么要保护和恢复现场?
3•设(AX)=1122H,(BX)=3344H,(SP)=5566H,执行如下程序段后,IP和SP的值分别是什么?
SUNPROC
PUSHAX
ADDBX,AX
PUSHBX
POPBX
RET
SUNENDP
4设在DAT单元存放一个一9〜+9的字节数据,在SQTAB数据区中存放了0〜9的平方值,下面程序段利用直接查表法在SQRTA時查找岀DAT单元中数据对应的平方值送SQF单元。
请补充空格处,完善程序功能。
DSEGSEGMENT
DATDBXXH;
XXH表示在一9〜+9之间的任意字节数据
SQTABDB0,1,4,9,・・・81
SQRDB?
DSEGENDS
SSEGSEGMENTSTACK
STKDB100DUP(?
)
SSEGENDS
CSEGSEGMENT
ASSUMECS:
CSEG,DS:
DESG,SS:
SSEG
START:
MOVAX,DSEG
MOVDS,AX
MOVAL,DAT
ANDAL,
JNSNEXT
NEXT:
MOVBX,OFFSETSQRTAB
MOVSQR,AL
MOVAH,4CH
INT21H
DESGENDS
ENDSTART
答案:
1.段间调用两个字
2.由于汇编语言所操作处理的对象主要是CPU寄存器,而主程序在调用子程序时,己经占用了
一定的寄存器,子程序执行完毕返回主程序后,又要保证主程序按原有状态继续正常执行,需要对这就这些寄存器的内容加以保护。
3.(IP)=1122H,(SP)=5566H
4.80H,NEGAL,XLATSQRTAB
练习八
1、下列指令中,在指令执行后有可能影响CS值的指令数目是()JMPMOVRETADDINT
JCLODSCALLMULPOP
A.3B.4C.5D.6
2、下而关于宏指令的叙述不正确的是()
A.宏指令可以简化源程序的书写;
B.宏指令可以简化目标程序;
C.宏指令和子程序的存储形式和执行方式均不相同;
D.从形式上看,宏指令可以扩充机器的指令系统。
3、对于下列程序段:
AGAIN:
MOVES[DI],AL
INCDI
LOOPAGAIN
可用指令()完成相同的功能。
A.REPMOVSB
B.REPSTOSB
C.REPLODSB
D.REPSCASB
4、在下列指令中,隐含使用AL寄存器的指令有()条。
AAAMOVSBMULBH
CBWSCASBXLAT
A.2B.3C.4D.5
5、假设ES段中有一个字符中串'
12FG3LM5'
其名为ARRA丫当以下程序段执行后,CX的值
是。
CLD
LEADI,ES:
ARRAY
MOVAL,'
G
MOVCX9
REPNESCASB
A.OB.5C.4D.9
6、己知DS和ES指向同一个段,且当前数据段从0000H到OOFFH单元内容分别为01H.02H,
03H,…,OFFH,OOHo问下列程序段执行后,0000〜0009H的内容是些什么值。
MOVSI,0000H
MOVDI,0001H
MOVCX0080H
REPMOVSB
3.B
6.01H02H03H04H05H06H07H08HOFFHOOH(错误)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 扬州 大学 汇编语言 课后 习题
![提示](https://static.bdocx.com/images/bang_tan.gif)