《汇编语言程序设计》考纲、试题、答案 下载本文

内容发布更新时间 : 2024/7/1 4:53:46星期一 下面是文章的全部内容请认真阅读。

3. 判断题

(1) 一个字存入堆栈时,堆栈指针SP+2修正;从堆栈中取出一个字时,SP-2修正. ( X ) (2) 调用程序和子程序可以在同一个代码段,也可以在不同的代码段。 ( √ ) (3)汇编语言是用符号表示的面向机器的语言,因此它是机器语言。 ( X ) (4) 堆栈以先进后出的方式工作。( √ ) (5) 零标志ZF=1,表示计算结果为1。( X)

4. 简答题

(1)寻址方式有哪几种? 课本22页 (2)某程序段如下: MOV DX,0ABCDH MOV AX,2345H MOV CL,4 SHL DX,CL MOV BL,AH SHL AX,CL

SHR BL,CL OR DL,BL

下面的程序段执行完后,DX、AX的内容是什么? 答:DX中的内容为0BCD2H, AX中的内容为3450H。 5. 指出下列指令的错误 (1)MOV 1E0FH ,BX 错误: 目的操作数不能是立即数 (2) DIV 12H

错误:除法指令源操作数不能是立即数 (3)MOV [BX] , [SI]

错误:源、目的不能同时为存储器寻址方式 (4)SAL AH,4

错误:当移位次数大于1时,应将移位次数放在CL寄存器中 (5)MOV DL,AX

错误:源操作数和目的操作数类型不一致

6

6. 程序分析题

(1). 设寄存器AL,BL,CL中内容均为34H, XOR AL,0FH AND BL,0FH OR CL,0FH 执行上述指令序列后:

AL= 3BH;BL= 04H;CL= 3FH。 (2)MOV AL , 0ABH

MOV BL , 35H CALL SUB2 INC AL

DEC BL …… …… SUB2 PROC

ADD AL , BL ; XCHG AL , BL ; RET SUB2 ENDP

执行结果:(AL)= 36H,(BL)=0DFH。

7. 程序设计题

给出程序部分代码,请将空格处的其余程序代码补全。

写一个实现把一位十六进制数转换为对应ASCII码的程序。 十六进制数码与对应ASCII码的关系如下所示: 0 1 2 3 4 5 6 7 8 9 A B C D E F 30H 31H 32H 33H 34H 35H 36H 37H 38H 39H 41H 42H 43H 44H 45H 46H ;程序名:T3-7.ASM

;功能:十六进制数到ASCII码的转换 DATA SEGMENT

XX DB 4 ;假设的十六进制数码 ASCII DB ? ;存放对应的ASCII码 DATA ENDS

7

CODE SEGMENT

ASSUME CS:CODE,DS:DATA START:MOV AX DATA MOV DS, AX MOV AL, XX

AND AL, 0FH ;确保在0至F之间 ______________

______________ ;超过9转移

______________

______________ LAB1: ADD AL,37H LAB2: MOV ASCII,AL MOV AH,4CH INT 21H CODE ________

_______________

说明:本考试指导只适用于2013-2014学年度第一学期期末考试使用,包括正考和补考内容。指导中的章节知识点涵盖考试所有内容,给出的习题为考试类型题,请全体同学认真复习。祝大家考试顺利!

8