第三章 习题和思考题(汇编语言)

发布时间:2024-11-21

第三章 习题和思考题(汇编语言)

一.填空题

1.在汇编语言中标号的类型有_______,变量的类型有________。

2.在汇编语言中,一个过程的属性为NEAR,表明主程序和子程序______________;若为FAR,则表明主程序和子程序________________。

3.下列程序运行后,X单元的内容为________。

.MODEL SMALL

.DATA

X DW 10

Y DW 20

Z DW 100,40,66,80

.CODE

.STARTUP

MOV BX, OFFSET Z

MOV AX, [BX]

MOV Y, AX

MOV AX, [BX+2]

ADD AX, Y

MOV X, AX

.EXIT

END

4.以下程序执行后,(AX)=_________。

… …

A DW 124H,345H,128H,255H,512H,127H,678H,789H

B DW 5

… …

MOV BX, OFFSET A

MOV SI, B

MOV AX, [BX+SI]

二.选择题

1.完成41H送[2100H],42H送[2101H]的正确程序段是________。

A. MOV AL, 41H B. MOV SI, 2100H

MOV [2100H], AL MOV [SI], ‘A’

INC 41H INC SI

MOV [2100H], AL MOV [SI], ‘B’

C. MOV AX, 4241H D. MOV AX, ‘AB’

MOV [2100H], AX MOV [2100H], AX

2. 在汇编过程中不产生指令码,只用来指示汇编程序的指令是________。

A. 汇编指令 B. 机器指令 C. 伪指令 D. 宏指令

三.问答题

1.什么是指令语句?什么是伪指令语句?它们的主要区别是什么?

2. 试计算下列伪指令中各变量所分配的字节数

A1 DW 20

A2 DW 8DUP(?),10,20

A3 DD 10DUP(?)

A4 DB 3DUP(?,4DUP(0))

A5 DB ‘Happy New Year!!’

四.阅读程序

1.请把下列程序中所缺语句补充完整,并回答问题:

TITLE EXAMPLE.ASM

DATA SEGMENT

A DW 0

B DW 0

C DW 230, 20, 54

CODE SEGMENT

ASSUME

PROG PROC FAR

START:

PUSH DS

MOV AX,0

MOV AX,DATA

MOV BX,OFFSET C

MOV AX,[BX]

MOV B,AX

MOV AX,2[BX]

ADD AX,B

MOV A,AX

EXIT:

CODE ENDS

问题: 1.程序执行完后,A单元的内容是多少?

2.在以ES:SOC1为起始地址的表中存有字符串,它以NULL(00H)作为串结束符。在DS:CHAR中存有关键字。从表中查找第一个此关键字的程序段如下。若找到此关键字,则寄存器CX中存放该关键字在ES段中的位移量;若串中无此关键字,则CX返回-1值。请将该程序段补充完整。

MOV DI, OFFSET SOC1

MOV CX, 0

CPO: CMP ES: (1)_________,00H

JNE COUNT

MOV BX, CX

MOV DI, OFFSET CHAR

MOV AL, [DI]

MOV DI, OFFSET SOC1

CLD

(2)_________SCASB

JZ FOUND

MOV CX, (3)________

JMP DOWN

FOUND: (4)_________DI

MOV CX, DI

JMP DOWN

COUNT: INC DI

INC CX

JMP CPO

DOWN: HLT

3.下面的程序是将10个8位的无符号数按递减顺序排序。请选择正确的答案将程序填充完整。

.MODEL SMALL

.DATA

ARRAY DB 05H,78H,FFH,7BH,00H

DB 8CH,20H,A0H,F0H,60H

.CODE

.STARTUP

MOV SI, OFFSET ARRAY

MOV BL, 9

AB1: MOV CX, BL

(1)______

AGAIN: MOV AL, [SI]

INC SI

CMP AL, [SI]

(2)_______CD1

MOV AH, [SI]

MOV [SI], AL

DEC SI

MOV [SI], AH

INC SI

CD1: LOOP AGAIN

DEC BL

(3)__________AB1

.EXIT

END

4. 下列程序段实现从键盘输入一系列字符,并以“$”为结束符,然后对其中的非数字字符进行计数,并显示结果。程序中有若干错误,试改正。

BUFF DB 50 DUP(?)

COUNT DW 0

MOV BX, BUFF

MOV COUNT, 0

INPUT: MOV AH, 01

INT 21H

MOV [BX], AL

INC BX

CMP AL, ‘$’

JZ INPUT

LEA BX, BUFF

NEXT: MOV CL, [BX]

INC BX

CMP CL, ‘$’

JZ DISP

CMP CL, 30H

JG CONT

CMP CL, 39H

JB NEXT

CONT: INC COUNT

JMP NEXT

DISP: …

5.读下列程序

.CODE

.STARTUP

MOV AX, 01

MOV BX, 02

MOV DX, 03

MOV CX, 04

AGAIN: INC AX

ADD BX, AX

SHR DX, 1

__________

.EXIT

END

若在横线上填入如下指令:

(1) LOOP AGAIN

(2) LOOPE AGAIN

(3) LOOPNE AGAIN

指出程序执行完后AX、BX、CX、DX的内容。

第三章 习题和思考题(汇编语言).doc 将本文的Word文档下载到电脑

    精彩图片

    热门精选

    大家正在看

    × 游客快捷下载通道(下载后可以自由复制和排版)

    限时特价:7 元/份 原价:20元

    支付方式:

    开通VIP包月会员 特价:29元/月

    注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
    微信:fanwen365 QQ:370150219