《汇编语言程序设计》复习题。
一、 单项选择题。
1、使计算机执行某种操作的命令是( b)
a.宏指令 b.指令 c.伪指令 d.语句。
2、换码指令的助记符是( a )
a. xchg b. lea c. xlat d. mov
3、下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是(b)。
4、计算机能直接识别并执行的语言是( b )
a.汇编语言 b.机器语言 c.高级语言 d.低级语言。
5. 堆栈的工作方式是( d)
a.先进先出 b.随机读写 c.只能读出,不能写入 d.后进先出。
6、以下各个指令中正确的是( b )。
a. mov cs, dxb. mov ds, bp
c. in 20h,ald. mov ah, bx
8、已有汇编语句“var equ 1220h”,则语句“mov ax, var”中源操作数的寻址方式为( b )。
a. 立即寻址b. 直接寻址。
c. 寄存器间接寻址d. 基址寻址。
9、与mov bx,offset var指令完全等效的指令是( d )。
bx, bx,var
bx, bx,var
10、指令inc一定不会修改的标志是( c )。
a. 溢出标志ofb. 符号标志 sf
c. 进位标志cfd. 奇偶标志pf
11、已知ds=2000h,es=1000h, si = 0800h,内存10880h开始的两个单元中存放5678h,内存20880h开始的两个单元中存放8765h,则语句“lea bx,[si+80h]”执行后bx的值为( c )。
a. 5678h b. 1000h c. 0880h d. 8765h
12、汇编结束语句有( c )种格式,为( )
a.1,endb.1,end 程序的启动地址标号。
c.2,end和 end 程序的启动地址标号 d.以上都不正确。
13、 指令“call far ptr sum”执行时将会向堆栈中顺次压入( b )。
a. ip、 csb. cs、ip
c.标志寄存器值、ipd.标志寄存器值,cs、ip
16、要在程序中定义缓冲区buf,保留10个字节存储空间的语句是( c )
dw db 10
db 10 dw 10 dup (?
17、ibm pc微机中,有符号数是用( b )表示的
a、原码 b、补码 c、反码 d、bcd码
18、设sp初值为3050h,执行指令push bx后,sp的值是( b )
a.304fhb.304eh
c.3048hd.3049h
19、jmp bx指令的寻址方式是( c )
a.寄存器寻址b.寄存器间接寻址。
c.段内直接转移寻址d.段内间接转移寻址。
20、df=1,执行movsb指令后 ( c )
减1,di减加1,di加1,cx减1
减1,di减1,cx减1 加1,di加1,cx加1
21.指令mov bx,mask[bp],若mask=3500h,ss=1200h,ds=1000h,bp=1000h,那么源操作数的物理地址为:
a. 17500h b. 16500h c. 14500h d. 13500h
22.十六进制数88h,可表示下面几种形式,请找出错误的表示( d)。
a. 无符号十进制数136
b. 带符号十进制数-120
c. 压缩型bcd码十进制数88
d. 8位二进制数-8的补码表示。
23.指令指针寄存器是(a )。
a. ip b. sp c. bpd. psw
24. 设数据段中已有:
da1 db 12h,34h
da2 dw 56h,78h
下面有语法错误的语句是(b )。
a. adr1 dw da1b. mov da1+1,ax
c. mov byte ptr da2+1,al d. mov word ptr da1+1,al
25. 堆栈的工作方式是(d )
a.先进先出 b.随机读写 c.只能读出,不能写入 d.后进先出。
26.指令mov ax,[3070h]中源操作数的寻址方式为( b)
a.寄存器寻址 b.直接寻址 c.立即寻址 d.间接寻址
27.要求cx=-1时转至minus处,下面的指令序列不能实现这一功能的是(c)。
a、inc cx
jz minus
b、sub cx,offffh
jz minus
c、and cx,offffh
jz minus
d、xor cx,offffh
jz minus
28.以下跳转指令中不属于段内跳转的是(c ):
near ptr l1 short l2
dword ptr[bx] l3
30. 对寄存器ax的内容乘以4的正确指令是(b)。(cl=2)
ax, ax,cl
ax, ax,cl
二、填空。1. loop指令的结束条件是___cx=0___
2. 在实模式下80x86 cpu能够访问的存储器空间为( 2 )byte,指令中访问的操作数的逻辑地址由偏移地址和(段)地址来表示。
3. 指令mov dx, [bx + si + 100h]的源操作数为( 相对基址变址 )寻址方式。
4. 假设(ds) =2000h, (es) =3000h ,(ss) =4000h, (bx) =1000h ,(bp) =1000h, (di) =0002h ,(21000h) =1234h, (21002h) =5678h ,(31000h) =9abch, (31002h) =0def0h,(41000h) =3456h, (41002h) =789ah 。则mov ax, es:[1000h] 执行时操作数的物理地址为3000h;mov ax, [bx]执行后(ax) =1234h ;mov ax,[bp + di] 执行时操作数的物理地址为 4000h,执行后(ax) =789ah。
5. 8086存储器中存放信息如图所示,则30022h单元的字节内容为 32h , 30020h单元的字内容为 1130h。
12. 现有(ds) =3000h, (bx) =0100h, (si) =0002h, (30100h) =12h, (30101h) =a7h,(30102h) =35h,30103h = 98h,填写每条指令执行后ax的值。
1) mov ax, 1200hax = 1200h
2) mov ax, [bxax = a712h
3) mov ax, [bx + si] ax = 9835h
4) mov ax, [si + 100h] ax =9835h
13. 已知数据段有如下定义:
org 0200h (设置$ =0200h)
table dw 0314h
填写指令执行后ax的值。
mov ax, offset table ax = 0200h
mov ax, tableax =0314h
14. 设(cs) =1000h, bx = 1100h,则执行指令jmp bx后,ip = 1100h ,指令的物理地址为 11100h
15、调用程序、子程序传送参数的方法通常有_寄存器传递、存储器传递和_堆栈传递三种方法。
四、简答。1、 以下指令中哪些属于段间转移指令?(1)、(2)、(6)
1) jnc next2) jmp bx
3) jmp far ptr lop14) jmp word ptr es:[2000h]
5) jmp dword ptr [bx+10h] (6) jmp near ptr towhere
10.子程序中通常要保护现场和恢复现场,如在子程序中用如下指令序列保护现场:
push ax
push si
push bp
请写出对应的恢复现场的指令序列。
pop bp
pop si
pop ax
五、按要求回答问题。
1. 以下的程序实现将内存单元20000h开始的100个字节初始化为‘a’,请将程序补充完整。
mov ds,2000h
mov si,offset [ds]
mov __cx___100
a:mov _[si]__a’
inc si
loop a
2. 设num1,num2都为字变量,请指出下面语句序列的功能。
mov ax,num1
汇编复习题
1 汇编语言的特点?答 执行速度快 程序短小 可以直接控制硬件 可以方便的编译 辅助计算机工作者掌握计算机体系 程序编制耗时,可读性差 程序可移植性差。2 二 八 十 十六进制数之间的转换?3 有无符号数 原码 反码 补码的概念?补码的加减法运算规则?cpu的两大逻辑部件?各自的功能?答 总线接口部...
汇编复习题
一 单项选择题。1.指令mov ax,2000h 的寻址方式为 a.基址寻址 b.寄存器间接寻址 c.变址寻址 d.存储器直接寻址。2 在debug工具中,单步执行指令的命令是 a.gb.dc.td.r 3 若栈顶的物理地址为20100h,当执行完指令push ax后,栈顶的物理地址为 a.2009...
汇编语言程序设计复习题
一 填空题。1.8086 8088cpu标志寄存器中的tf if和 属于控制标志位,而af pf of cf和 属于状态标志位。2.任何变量都有 和 三种属性。3.双字节无符号整数的最大值为 双字节有符号整数的最大值为 4.伪指令macro dq和end的标号名字域必须有名字的是 不得有名字是 可有...