汇编复习题资料Word文档格式.docx
- 文档编号:20877787
- 上传时间:2023-01-26
- 格式:DOCX
- 页数:23
- 大小:31.62KB
汇编复习题资料Word文档格式.docx
《汇编复习题资料Word文档格式.docx》由会员分享,可在线阅读,更多相关《汇编复习题资料Word文档格式.docx(23页珍藏版)》请在冰豆网上搜索。
17、执行返回指令,退出中断服务程序,这时返回地址来自C。
A.ROM区B.程序计数器C.堆栈区D.CPU的暂存寄存器
18、微机系统中有哪些总线?
D
A.状态总线、数据总线、控制总线B.地址总线、状态总线、控制总线
C.状态总线、数据总线、地址总线D.数据总线、地址总线、控制总线
19、以下不属于总线接口部件BIU部件的是A。
A.通用寄存器B.地址产生器C.指针寄存器D.专用寄存器
20、将累加器AX的内容清0的错误指令是B。
A.ANDAX,0B.CMPAX,AXC.SUBAX,AXD.XORAX,AX
21、有如下程序段:
MOVCX,6
MOVAX,1
MOVBX,3
LOP:
ADDAX,BX
ADDBX,2
LOOPLOP
上述指令完成后,AX=B
A.6B.49C.50D.0
22、下列指令中合法的是D。
A.OUT289,ALB.ADCAL,BXC.POPBLD.SHLAX,CL
23、从键盘输入数据1,则在寄存器中存放的形式为A。
A.31HB.01HC.”1”D.‘1’
24、下列有关段地址、偏移地址、物理地址的叙述正确的是D。
A.若已知物理地址,则可以计算出唯一的段地址和偏移地址。
B.段的划分可以从任何一个存储单元开始。
C.8086规定段的大小必须为64K字节。
D.多个段可以共用某些存储单元。
25、中断发生过程和子程序调用过程的一个明显区别是中断发生时,CPU自动清除了A。
A.IF和TF位B.TF位C.IF和SF位D.TF和SF位
26、执行下列指令后:
MOVAX,1234H
MOVCL,4
ROLAX,CL
DECAX
MOVCX,4
MULCX
HLT
寄存器AH的值是C。
A.92HB.8CHC.8DHD.00H
寄存器AL的值是B。
A.60HB.00HC.04HD.0A0H
27、在多模块程序设计中,用B伪指令来声明公用变量。
A.EXTRNB.PUBLICC.MODULED.COMMON
28、执行完下列指令后:
XDW‘BC’
YDB16DUP(?
)
ZEQU$-X
MOVCX,Z
MOVAX,X
寄存器CX的值是C。
A.10HB.0EHC.12HD.0FH
寄存器AX的值是A。
A.4342HB.00CBHC.4243HD.00BCH
29、8086/8088响应中断时,不自动压入堆栈的有B。
A.CS的内容B.通用寄存器的内容
C.IP的内容D.标志寄存器的内容
30、堆栈的工作方式是A。
A.先进后出B.后进后出C.先进先出D.先进不出
31、求下面变量定义的元素个数送CX的正确形式是D。
ARRAYDW1,9,9,9,12,1
A.MOVCX,LENGTHARRAYB.MOVCX,SIZEARRAY
C.COUNTEQU$-ARRAYD.COUNTEQU($-ARRAY)/2
MOVCX,COUNTMOVCX,COUNT
32、可屏蔽中断就是它的请求是否被CPU响应要受B位的控制。
A.TFB.IFC.OFD.SF
33、不影响堆栈指针SP的指令是B。
A.INT21HB.JMPDOC.RETD.PUSHAX
34、8088/8086存储器分段,每个段不超过A。
A.64K个字B.32K个字节C.1兆个字节D.64K个字节
35、汇编语言是A。
A.低级语言B.中级语言C.高级语言D.机器语言
36、用DEBUG.EXE调试程序时,显示存储单元内容的命令是D。
A.RB.TC.GD.D
37、汇编源程序中,END伪指令后的标号表示C。
A.源程序的结束B.代码段的结束C.汇编程序的入口地址D.该标号无任何意义
38、有如下数据定义:
XDB36H,6FH
YDW2E5DH,4F6FH
则下列指令正确的是C。
A.MOVAX,XB.MOVDL,OFFSETX
C.MOVAX,WORDPTRXD.MOVBL,Y
39、若要求一个操作数中的若干位维持不变,若干位置1,可以使用B
A.NOTB.OR
C.AND
D.XOR
40、下列指令中,源操作数在代码段中的是A。
A.MOVAL,80HB.ADDAL,BLC.CMPAX,[1234]D.ANDAL,ES:
[1234]
41、对于有符号的数来说,下列哪个值最大D。
A.0FBH
B.11010010BC.81D.124Q
42、交换寄存器SI、DI的内容,正确的程序段是A。
A.PUSHSIB.PUSHSI
PUSHDIPUSHDI
POPSIPOPDI
POPDIPOPSI
C.MOVAX,SID.MOVAX,SI
MOVDI,SIMOVBX,DI
MOVDI,AXXCHGBX,AX
43、有语句:
ABCEQU210,下列四种叙述中,正确的是B。
A.ABC是变量B.ABC是符号常数
C.ABC占用一个字节的存储单元D.ABC占用二个字节的存储单元
44、8086微机系统中,偏移(或有效)地址和物理地址是C位。
A.16和16B.20和20C.16和20D.20和16
45、假定(SS)=1000H,(SP)=100H,(CX)=23B7H,执行指令PUSHCX后,存放数据23H的物理地址是D。
A.10102HB.10101HC.100FEHD.100FFH
46、汇编指令是由C组成的符号指令。
A.变量和常量B.地址和数据C.指令助记符和符号地址D.字母和数字
47、指令SUBCX,1与指令DECCX的区别是D。
A.没有区别B.前者会将CF也加进来C.前者不影响CFD.后者不影响CF
48、假设程序中的数据定义如下,则V4的值为B。
XDW?
YDB15DUP(?
ZDD?
A=$-X
A.20B.21C.22D.23
49、ADD指令中,两个操作数的物理位置不可以安排在A中。
A.两个存储单元B.一个存储单元和一个数据寄存器
C.两个数据寄存器D.一个堆栈单元和一个数据寄存器
二、填空题
1、指出下列指令源操作数的寻址方式:
MOVAX,ARRAY[SI];
寄存器相对寻址方式
MOVAX,ES:
[BX];
寄存器间接寻址方式
MOVAX,[200H];
直接寻址方式
MOVAX,[BX+DI];
基址变址寻址方式
MOVAX,BX;
寄存器寻址方式
MOVAX,1200H;
立即寻址方式
MOVAX,20[BX+SI];
相对基址变址寻址方式
MOVAX,[DI+20];
2、计算机中的指令由操作码和操作数两部分组成。
3、对于乘法、除法指令,结果存放在AX或DX:
AX中,而其源操作数可以用除立即数以外的任一种寻址方式。
4、逻辑地址是由段地址和偏移地址组成,其中段地址是由段寄存器存储的。
5、当指令“SUBAX,BX”执行后,CF=1,说明最高有效位向有借位;
对无符号数,说明操作结果溢出。
6、I/O设备的接口中一般包含数据、状态、控制三种端口。
7、10110101B=0B5H和181D。
8、指令“ANDAX,STR1ANDSTR2”中,STR1和STR2是两个已赋值的变量,两个AND的区别是第一个AND是逻辑与指令、第二个AND是逻辑与操作符。
9、带符号的机器数可以用原码、反码和补码三种不同码制来表示。
11、如果TABLE为数据段中0032单元的符号名,其中存放的内容为1234H,当执行指令MOVAX,TABLE后,(AX)=1234H;
而执行指令LEAAX,TABLE后,则(AX)=0032H。
12、计算机的硬件的基本组成有运算器、控制器、存储器和输入设备、输出设备五大部件。
13、过程的属性有 near 和 far。
近过程(NEAR)的RET指令把当前栈顶的一个字弹出到IP;
远过程(FAR)的RET指令弹出一个字到IP后又弹出一个字到CS;
IRET指令是中断返回指令,它从堆栈顺序弹出3个字分别送到IP、CS、标志寄存器FLAGS中。
14、ENDP是过程定义结束伪指令,与PROC配套使用。
ENDS是段定义结束伪指令,与SEGMENT配套使用。
END是一个源模块汇编结束伪指令。
15、一个有16个字的数据区,它的起始地址为70A0:
DDF6,那么该数据区首字单元地址是7E7F6H,最后一个字单元的物理地址为7E814H。
(16个字就是70A0H*10H+DDF6H+1EH,如果是32个字的话,则是70A0H*10H+DDF6H+3EH=7E834H)
16、执行下列指令序列后,完成的功能是将(DX,AX)的值左移4位。
MOVCL,04
SHLDX,CL
MOVBL,AH
SHLAX,CL
SHRBL,CL
ORDL,BL
17、JMP按转移地址范围的不同,分为短跳转和近跳转。
18、下面两个语句的区别在于X1只能赋值一次,X2可以多次赋值。
X1EQU1000H
X2=1000
19、用1条逻辑指令将AX中与BX中的对应位不相同的位均置为1XORAX,BX。
21、在基址变址寻址方式中,可用于基址的寄存器是BX 、BP ;
其中BP默认是相对于堆栈段寻址的。
。
22、用指令的助记符、符号地址、标号和伪指令、宏指令等书写的程序的语言称为汇编语言,将汇编语言的源程序翻译成机器语言的程序为汇编程序。
23、8086CPU由BIU(总线接口单元)和EU(执行单元)两部分构成。
24、我们把与内存一一对应的用20位二进制数(或5位16进制数)表示的地址称为物理地址,它的计算公式为物理地址=16*段地址+偏移地址。
25、在段加偏移地址的寻址中,如果段寄存器为CS,则相应的偏移地址应由IP寄存器来提供。
26、在DEBUG上机调试程序时,存储器的地址表示为2F00:
1400,则该单元的段地址为2F00H,偏移地址为1400H,物理地址为30400H。
28、方向标志DF的作用是用来在串操作指令中控制自增和自减的方向,用于设置或消除该标志位的指令是STD和CLD,。
29、完成下列程序,从240H端口读取数据,测试其是否为20H,若不是则将241H端口清0,否则则转向Next。
Movdx,240H
INal,dx
CMPal,20h
JZNext
Movdx,240h
Moval,0
Outdx,al
……
Next:
……
30、已知:
(DS)=15F0H,(ES)=25F0H,(SS)=35F0H,(BX)=0670H,(SI)=1001H,(DI)=0B0H,(BP)=0150H,BUF的偏移地址是0900H。
计算下列指令源操作数的物理地址,指出寻址方式:
(1)MOVAX,BUF[BP+6];
采用寄存器相对寻址方式,物理地址为56956h。
(2)CMPAX,ES:
[SI];
采用寄存器间接寻址方式,物理地址为26F01H。
(3)MOVCX,BUF;
采用直接寻址方式,物理地址为16800H。
(4)MOVAX,ES:
[BX+SI];
采用基址变址寻址方式,物理地址为27571H。
(5)DECBUF[DI];
采用寄存器相对寻址方式,物理地址为168B0H。
(6)MOVAX,BUF[BX+DI];
采用相对基址变址寻址方式,物理地址为16620H。
31、假设(DS)=0D012H,(BX)=80BH,(0D092CH)=23D0H,(0D092EH)=0AC78H,当执行指令“LESSI,[BX]”后,(SI)=23D0H,(ES)=0AC78H。
32、指令中用来指出指令在程序中位置的符号地址是标号。
33、变量和标号的三个属性为段属性、偏移属性、类型属性。
34、下列程序段是比较AX,BX,CX中带符号数的大小,将最大数放在AX中。
请将程序填完整。
CMPAX,BX
JGELAB1
XCHGAX,BX
LAB1:
CMPAX,CX
JGELAB2
XCHGAX,CX
LAB2:
……
35、在使用串操作指令时,源串必须在数据段中,目的串必须在附加段中,源串作数和目的操作数不允许使用段超越。
36、CPU是通过I/O指令来实现与外部设备进行数据传送的。
37、内中断有三类中断源,分别为INTn、CPU出错、为调试程序设置的断点。
38、中断过程可分为四个步骤:
中断请求、中断响应、中断处理、中断返回。
39、OF位可以用来表示有符号数溢出,CF位可以用来表示无符号数溢出。
40、80X86中断命令寄存器的I/O端口地址为20H,中断屏蔽寄存器的I/O端口地址为21H。
41、可用DOS功能调用INT21H的功能号(AH)=25H来设置中断向量,用功能号AH=35H来获取中断向量。
42、168D=10101000B=0A8H=250Q。
43、在数据段中有以下定义:
ARRAY1EQU16H
ARRAY2DW16H
请指出下列指令的寻址方式:
MOVAX,ARRAY1;
MOVAX,ARRAY2;
44、若STR是字符串的首地址,将语句加上注解,并指出下列程序的功能。
LEABX,STR;
将STR的有效地址送BX
MOVCX,20;
使得CX等于20
CMP[BX],‘*’;
比较BX所指存储单元的内容是否是”*”
JNZLAB2;
不是*则转到LAB2
MOV[BX],‘$’;
用$替换BX所指存储单元的内容
INCBX
LOOPLAB1;
(CX)-1不等于0,则转到LAB1
HLT
程序的功能;
将首址为STR长度为20的字符串中的*用$替换。
45、若物理地址为00038H的单元开始存放的双字为20001000H,00056H单元开始存放的双字为40003000H,则类型为14(十进制数)的中断向量的起始地址为38H或56,中断服务程序的入口地址(物理地址)为21000H。
46、PC机I/O设备的数据传送方式共有三种,分别是 查询 , 中断 ,DMA。
47、当键盘中断发生时,CPU能否响应由两个条件控制,一是 中断是否允许 二是当前中断级别是否比键盘中断级别高。
48、条件转移指令的目标地址应在本条件转移指令的下一条指令地址的 -128~127个字节范围内。
49、假设某程序执行前(CS)=0B234H,(IP)=5678H,则该程序的第一条指令的物理地址是0B79B8H,若第一条指令对应的机器码占3个字节,则第二条指令的物理地址是0B79BBH。
50、在用MASM5.0的DEBUG调试程序时,查看寄存器内容的命令为R,让程序仅执行当前IP所指的一条指令的命令
是T。
51、物理地址是唯一代表存储空间中每个字节单元的地址。
五、简答题
1、试计算58H+3CH的运算结果,并写出标志位OF、PF、CF、SF的内容。
答:
58H+3CH=94H,OF=1,CF=0,PF=0,SF=1
2、8086具有哪些程序可见的寄存器,它们在程序设计中分别起什么作用?
段寄存器
8086的段寄存器有4个16位寄存器,它们用于存放8086CPU当前可以访问的4个逻辑段的基址。
代码段寄存器CS划定并控制着程序区;
数据段寄存器DS和附加段寄存器ES控制着数据区;
而堆栈段寄存器SS对应着堆栈存储区。
通用寄存器
通用寄存器可分为两组:
数据寄存器,地址指针和变址寄存器。
数据寄存器包括AX,BX,CX和DX4个16位寄存器,它们中的每一个又可根据需要将高8位和低8位分成独立的两个寄存器来使用。
其中AX、BX、CX、DX四个数据寄存器,但它们又有各自的专门用途,其中AX可用作累加器,BX可用作基址寄存器,CX可用作循环和串处理中的隐含计数器,DX在某些I/O操作中,可用来存放I/O的端口地址。
地址指针和变址寄存器包括SP,BP,SI,和DI。
控制寄存器
(1)指令指针IP
(2)标志寄存器FLAG
8086CPU设立了一个16位标志寄存器,共9个标志。
其中6个是状态标志,3个是控制标志。
状态标志
进位标志CF,辅助进位标志AF,奇偶标志PF,符号标志SF,零标志ZF,溢出标志OF。
置1条件分别是:
运算过程中最高位产生了进/借位,CF=1;
结果低4位产生了进位,AF=1;
结果低8位有偶数个1,PF=1;
结果最高位为1,SF=1;
结果为0,ZF=1;
结果产生了溢出,OF=1。
控制标志
(a)DF方向标志
(b)IF中断允许标志
(c)TF陷阱标志或单步操作标志
3、已知AX=0E87DH,BX=38ABH,若执行ADDBX,AX;
则寄存器AX,BX,标志位CF、OF各为何值?
AX=2128H,BX=38ABH,CF=1,OF=0
4、什么是中断类型码?
中断向量?
中断向量表?
在8086/8088微机系统中。
中断类型码和中断向量之间有什么关系?
中断类型码:
其实就是中断号,对不同的中断服务程序不同的名称记号,以调用该中断程序.
中断向量:
指向中断服务程序的入口地址.一个向量代表的入口地址为4个字节.
中断向量表:
由于存在多个中断请求,相应有多个中断服务程序,即有多个存放这些程序的入口地址(即中断向量).为此系统在内存的特定区域安排一张中断向量表,专门存放所有的中断向量.此表即中断向量表.
以上三者关系:
中断向量=[中断号X4],其中方括号的含义是内存单元的内容.(即中断向量表刚好存放在内存绝对地址0开始的位置)。
5、简述8086CPU响应中断的条件。
取决于中断允许触发标志IF的状态。
若IF=1,则响应中断的请求,暂停现行后续指令的执行,转去执行中断服务程序;
若IF=0,则不会响应中断的请求。
6、在8086/8088微处理器在实模式下,存储器寻址为什么要分段?
举例说明存储单元的物理地址是如何形成的?
在8086/8088中,寄存器只有16位,而地址线却有20位,故其最大寻址空间是1M。
用存储器分段的方法,解决在16位字长的机器里提供20位地址的问题。
在实模式下编程时,将存储器划分成段,每个段内的大小可达64KB,这样段内地址可用16位表示,实际上,可以根据需要决定段的大小。
这样将每一段的起始地址作为段地址,而将在段内相对于段起始地址的偏移值作为偏移地址,于是将段地址左移4位,再加上偏移地址就形成了存储器实际的物理地址。
如某存储单元的段地址和偏移地址为3017:
000A,则其物理地址=3017H*10H+000AH=3017AH。
7、逻辑右移指令SHR的格式、功能和使用说明?
8、设AX=1234H,BX=5678H,CX=8901H,SI=100H,SP的初始值=01A0H,问执行下述堆栈操作指令序列
PUSHCX
PUSHAX
PUSHBX
P
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 汇编 复习题 资料