好文档 - 专业文书写作范文服务资料分享网站

山东理工大学汇编语言程序设计试题及答案

天下 分享 时间: 加入收藏 我要投稿 点赞

汇编语言程序设计复习题

一、选择题:

1、中断类型21H是DOS功能调用,功能号必须事先存放在________中。

A.AH

B.AL

C.AX

D.DS

2、 Intel8088CPU对内存的管理采用了分段技术,每段的最大值为________。

A.512KB

B.64KB

C.64MB

D.1024KB

3、段地址和偏移地址为126DH:3000H的储存单元的物理地址是________。

A.156D0H

B.426DH

C.3126DH

D.3126DH

4、已知(DS)=3000H,(BX)=2000H,(SI)=1000H,BUFFER=4000H 则指令:

MOV AL,BUFFER[BX][SI]的源操作数所在的储存单元地址是________。 A.37000H

B.0A000H

C.21400H

D.7000H

5、下列数据传送指令中,不正确的是________。

A.PUSH CS

B.POP DS

C.MOV [SI],[BX]

D.MOV AL,80H

6、堆栈指针SP=3000H,执行如下指令:

PUSH PUSH POP ADD

AX DS CX

AX,BX

之后,SP=________。 A.2FFDH

B.2FFAH

C.2FFEH

D.2FFCH

7、若要检查AX中的内容是否为零,用下面的________指令可以达到目的。

A.TEST AX,0000H

B.AND AX,0000H D.MOV AX,0000H

C.SUB AX,0000H

8、在指令REPZ MOVSB中,CX中是________。

A.移动字节数 B.移动字数 C.无关 D.记录数

9、设一中断类型码是45H,则根据它可以确定________。

A.中断服务程序入口地址是45H B.中断向量表的第45号单元 C.中断服务程序存放的位置

D.中断向量存放在中断向量表114H开始的单元中

二、填空题:

1、8088CPU无符号数的最大值是___________________。

2、软中断与子程序调用的主要差别是_________________________________________。 3、8088CPU内部的通用寄存器有________________________,专用寄存器有

________________________,其中____________不能通过指令进行赋值。

4、8088CPU的寻址方式分别包括_______________________________________________

____________________________________________________________________。

5、XLAT指令要求BX是__________________,AL__________________________________,

返回值在________________中。

6、两个16位无符号数进行乘法操作后的乘积在________________寄存器中,并且是

______________________________________________。

7、CBW指令的功能是_____________________________________________________。 8、汇编程序的作用是_____________________________________________________。 9、假定AL=0AH,BL=73H,则CPU执行“CMP AL,BL”指令后,AL=________,BL=________,

标志寄存器的CF=________,ZF=________,SF=________。 三、简答题:

1、简要说明中断的分类。 2、什么是伪指令?

3、已知(SS)=0F0A0H,(SP)=00B0H,先执行两条指令把8057H和0F79H分别压入堆栈,

然后又执行一条POP指令,试画示意图说明堆栈及SP内容的变化过程。 四、阅读下列程序:

1、下列程序段中每条指令执行完后,AX寄存器及CF,SF,ZF和OF的内容是多少?

MOV DEC ADD NOT ADD SUB AND SAL SAR ROR

AX,0 AX AX,2 AX

AX,8000H AX,1 AX,1 AX,1 AX,1

AX,1

2、说明下列程序段的功能

AGAIN: MOV

INT CMP JB CMP JA MOV MOV INT

AH,01H 21H AL,‘A’ AGAIN AL,‘Z’ AGAIN DL,‘Y’ AH,02H 21H

3、写出下列程序段的运行结果

MOV MOV MOV ROL MOV AND ADD CMP JL ADD MOV MOV

五、编写完整的程序:

1、编写一程序,计算1+2+3+...+100,把结果存放在变量S中。

2、编写一完整的程序,把两个数组中的元素对应相加,放到第三个数组中。每个数组

INT DEC JNZ RET

CH,4 BX,0AB78H CL,4 BX,CL AL,BL AL,OFH AL,30H AL,3AH PRINTIT AL,7H DL,AL AH,2 21H CH ROTATE

ROTATE:

PRINTIT:

都有十个元素。

汇编语言程序设计复习题答案

一、选择题

1-5 ABAAC

6-9 CADD

二、填空题

1、FFFFH 或 65536

2、在保护中断现场时,除了保护返回地址CS:IP之外,中断还保存了标志寄存器的内容,而子程序调用只保存了返回地址CS:IP

3、AX、BX、CX、DX、SP、BP、SI、DI

IP、SP、FLAGS

IP

4、立即寻址、寄存器寻址、直接寻址、寄存器间接寻址、寄存器相对寻址、基址变址寻址、相对基址变址寻址

5、表格的首地址 6、DX,AX

相对与表格首地址的位移量

AL

DX存放高位字,AX存放低位字

7、AL的内容符号扩展到AH,形成AX中的字 8、把汇编语言程序翻译成机器语言程序 9、0AH 73H 1 0 1 三、简答题

1、 非屏蔽中断

硬件中断 可屏蔽中断 中断 中断指令INT引起的终端

软件中断 由于CPU的某些错误而引起的中断

为调试程序(DEBUG)设置的中断

2、伪指令是由汇编程序在汇编过程中执行的指令。它既不控制机器的操作也不被汇编

成机器代码,只能为汇编程序所识别并指导汇编如何进行。

3、

四、阅读下列程序

1、 指令 AX CF SF ZF OF

MOV DEC ADD NOT ADD SUB AND SAL SAR ROR

AX,0 AX AX,2 AX

0000H

× × × ×

FFFFH × 1 0 0 0001H

1 0 0 0

FFFEH × × × × 7FFEH 7FFDH 0001H 0002H 0001H

1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

AX,8000H AX,1 AX,1 AX,1 AX,1

AX,1 8000H 1 × × 1

2、从键盘接收一个字符,判断是否是大写字母,若是则输出“Y”,若不是

则循环读键盘。

3、显示输出AB78

五、编写完整的程序 1、

datarea segment s dw ? datarea ends prognam segment main proc far assume

cs:prognam,ds:datarea start:

push ds sub ax,ax push ax

mov ax, datarea mov ds, ax mov bx,100d mov s,0 next:

add s,bx dec bx cmp bx,0 jnz next mov ch,4

rotate: mov cl,4 rol s,cl mov bx,s mov al,bl and al,0fh add al,30h cmp al,3ah jl printit add al,7h printit: mov dl,al mov ah,2 int 21h dec ch jnz rotate

ret

main endp prognam ends end start

山东理工大学汇编语言程序设计试题及答案

汇编语言程序设计复习题一、选择题:1、中断类型21H是DOS功能调用,功能号必须事先存放在________中。A.AHB.ALC.AXD.DS2、
推荐度:
点击下载文档文档为doc格式
5os3z77l535dq8n1sig30fluh9bohz00ufh
领取福利

微信扫码领取福利

微信扫码分享