实验三 汇编语言编程及调试3 循环程序设计.ppt
文本预览下载声明
实 验 三汇编语言编程及调试3 循 环 程 序 设 计;【实验目的】
了解循环程序的结构,掌握循环程序设计方法 。
【实验内容】
1.阅读程序,填空,做思考题。
程序功能:从BUF开始的11个单元中,存放着11个整数,统计其中正数并且是偶数的个数, 存入R中。
【实验程序】xunhuan1.asm
DATA SEGMENT
BUF DB –2,5,-3,6,100,0,-20,-9,8,-10,21
N= ①
R DW ?
DATA ENDS;CODE SEGMENT
②
BEGIN:MOV AX,DATA
③
LEA BX,BUF
MOV CX,N
④
LOPA: CMP [BX],BYTE PTR 0
⑤
TEST [BX],BYTE PTR 1
⑥
INC AX
NEXT: INC BX
DEC CX
⑦
MOV R,AX
MOV AH,4CH
INT 21H
CODE ENDS
END ⑧
思考题:修改程序,统计其中正数或者偶数的个数, 存入R中。
;2.阅读程序,回答问题。
【实验程序】xunhuan2.asm
DATA SEGMENT
BUF DB abcde
N=$-BUF
BCD DB N DUP(?)
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:MOV AX,DATA
MOV DS,AX ; LEA SI,BUF
MOV CX,N
LEA DI,BCD+N-1
LOOP1: MOV AL,[SI]
SUB AL,20H
MOV [DI],AL
INC SI
DEC DI
DEC CX
JNE LOOP1
MOV AH,4CH
INT 21H
CODE ENDS
END START;【问题一】
说明程序功能,程序执行后,从BCD开始的N个字节单元中的内容是什么?
【问题二】
找出一条指令,代替
DEC CX
JNE LOOP1
,使程序功能不变。
【问题三】
如果将代码段中的指令
LEA DI,BCD+N-1改成LEA DI,BCD
DEC DI改成INC DI
其它指令不变,程序执行后,从BCD开始的N个字节单元中的内容是什么?
显示全部