汇编考题,有详解
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2010秋季学期《汇编语言程序设计》复习题
一、单项选择题
1、使计算机执行某种操作的命令是(指令 ) 不解释
2、换码指令的助记符是( C )
A. XCHG(交换字或字节)
B. LEA (装入有效地址)
C. XLAT(以BX+AL的和作为偏移地址,与DS共同作为操作数的逻辑地址)
D. MOV(将源操作数送入目的操作数)
3、下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是(B )。
A.AX,BX,CX,DX :(数据寄存器)
B.BX,BP:(基址寄存器)SI,DI:(变址寄存器)
C.SP,IP,BP,DX
D.CS,DS,ES,SS(段寄存器)
6、以下各个指令中正确的是(B)。
A. MOV CS, DX (CS不可做目的操作数)
B. MOV DS, BP
C. IN 20H,AL
(IN作用是从端口中读入一个字节或字,并保存在寄存器AL或AX中。
OUT作用是把寄存器AL或AX的内容输出到指定端口。)
D. MOV AH, BX(目的操作数与源操作数的数据类型(字节、字、双字等)要一致)
7、下列对OUT指令的叙述正确的是( D)。
A. 实现从端口中读出数据
B. 能直接访问的端口范围是0~1KB
C. 能访问的端口为64KBit
D. 只能用DX做为间接寻址的寄存器
OUT指令:OUT PortNo/DX, AL/AX
功能:将累加器AL或AX的内容输出到指定端口
1.直接方式:端口地址范围:00H~0FFH(255byte);间接方式:0000H~0FFFFH(64kb)
2.间接方式的寄存器:DX
IN指令: IN AL/AX, PortNo/DX
1.功能从一个端口读取1字节或1字,传送至累加器AL或AX。
2.端口地址超过0FFH,则才用间接方式,同out指令
8、已有汇编语句“VAR EQU 1220H”,则语句“mov AX, VAR”中源操作数的寻址方式为(A)。 EQU:功能,用符号名代表表达式的值
A. 立即寻址
B. 直接寻址
C. 寄存器间接寻址
D. 基址寻址
9、与MOV BX,OFFSET VAR指令完全等效的指令是(D )。不解释
A.MOV BX,VAR
B.LDS BX,VAR
C.LES BX,VAR
D.LEA BX,VAR
LEA :将存储器型的数据的偏移量送入目的操作数
10、指令INC一定不会修改的标志是( C)。
INC:功能,实现8/16位通用寄存器或存储器单元的自加1
其结果影响AF、OF、PF、SF和ZF,对CF无影响
各标识符的改变条件:
CF:进位(最高位是否进位或借位);AF:辅助进位(低字节向高字节进位或错位)
OF:溢出(加减引起的溢出) PF:奇偶(字节中的1的个数是否为偶)
SF:符号(结果的正负,最高位为1,置1) ZF:零(结果是否为0)
A. 溢出标志OF
B. 符号标志 SF
C. 进位标志CF
D. 奇偶标志PF
11、已知DS=2000H,ES=1000H, SI = 0800H,内存10880H开始的两个单元中存放5678H,内存20880H开
始的两个单元中存放8765H,则语句“LEA BX,[SI+80H]”执行后BX的值为(C)。
[SI+80H]:地址: (DS*16D+SI+80H)=20000H+0800H+0080H=20880H
EA:SI+80H=0880H
LEA:把一个内存变量的有效地址(EA)送给指定的寄存器
此格式属于相对寄存器寻址方式:其可采用的寄存器为:BX、BP、SI、DI
A. 5678H
B. 1000H
C. 0880H
D. 8765H
12、汇编结束语句有( 2 )种格式,为(END和END程序的启动地址标号)。
A.1,END B.1,END 程序的启动地址标号
C.2,END和 END 程序的启动地址标号D.以上都不正确
13、指令“CALL FAR PTR SUM”执行时将会向堆栈中顺次压入( B )。
A. IP、 CS
B. CS、IP
C.标志寄存器值、IP
D.标志寄存器值,CS、IP
利用堆栈传递参数:
NEAR:仅将IP寄存器的内容压入堆栈
FAR:必须压入CS寄存器和IP寄存器的内容(顺序:先CS后IP)
14、要在程序中定义缓冲区BUF,保留10个字节存储空间的语句是( C ) 不解释
A.BUF DW 10
B.BUF DB 10
C.BUF DB 10 DUP (?)
D.BUF DW 10 DUP (?)
15、IBM PC微机中,有符号数是用( B )表示的不解释
A、原码
B、补码
C、反码
D、BCD码
16、设SP初值为3050H,执行指令PUSH BX后,SP的值是( B )
堆栈:PUSH,SP↓;POP,SP↑注意:此处为16进制,个位最大为F
A.304FH B.304EH
C.3048H D.3049H
17、JMP BX指令的寻址方式是(D)
JMP:
1.段内直接转移:直接给出转移地址的偏移量例:JMP [100H]
2.段内间接转移:给出一个操作数(16位通用寄存器或1个子存储单元)例:JMP BX
3.段间直接转移:将一代码段转移到另一代码段,转移目标地址由CS和IP共同组成例:JMP [BX+2]
4.段内间接转移:无条件地转移操作数(双字节)的内容到给出的目标地址处例:JMP DWORD PRT [BX+2]
A.寄存器寻址
B.寄存器间接寻址
C.段内直接转移寻址
D.段内间接转移寻址
28、DF=1,执行MOVSB指令后( A )
对于所有的串指令,DF=0,SI、DI加1;DF=1,SI、DI减1
A.SI减1,DI减1
B.SI加1,DI加1,CX减1
C.SI减1,DI减1,CX减1
D.SI加1,DI加1,CX加1
19、指令MOV BX,MASK[BP],若MASK=3500H,SS=1200H,DS=1000H,BP=1000H,那么源操作数的物理地址为:B
A. 17500H
B. 16500H
C. 14500H
D. 13500H
MASK 此处表示一个偏移量(在汇编中,它同时也是一个保留操作符,在这里不解释)
用BP确定的有效地址,其默认段为SS;此处为寄存器相对寻址
20、十六进制数88H,可表示下面几种形式,请找出错误的表示( D)。不解释
A.无符号十进制数136 B.带符号十进制数-120
C.压缩型BCD码十进制数88 D. 8位二进制数-8的补码表示
21、指令指针寄存器是(A )。不解释