ADD CX,2D ADD AL,1D JMP BEGIN EXIT: MOV BX,10D LEA SI,RES+4 CMP AX,10 JAE LOOP1 MOV DL,AL ADD DL,'0' MOV AH,02H INT 21H JMP NNN LOOP1: DIV BX ADD DL,'0'
MOV BYTE PTR[SI],DL DEC SI CMP AX,10 JAE LOOP1 ADD AL,'0' MOV [SI],AL LEA SI,RES MOV CX,5 MARK: MOV DL,[SI] CMP DL,'0' JNZ LOOP2 INC SI
JMP MARK LOOP2: MOV DL,[SI] MOV AH,02H INT 21H INC SI
LOOP LOOP2 NNN:
MOV AX,400CH INT 21H CODE ENDS
END START
程序结果:8
第 21 页
实验五 分支程序设计实验
一、实验目的
1. 掌握分支程序的设计方法。
二、实验所用设备
1. PC微机一台。
三、实验内容
程序有顺序、循环、分支和子程序四种结构形式,分支结构的示意图如图5-1
所示。本实验要求通过求无符号字节序列中的最大值和最小值来反映分支程序的结构形式。
图5-1 分支结构示意图
实验可以使用BH,BL作为暂存现行的最大值和最小值,且在程序的初始,将BH和BL初始化为首字节的内容,然后进入循环操作。在循环操作中,依次从字节序列中逐个取出一个字节的内容与BH,BL进行比较,若取出的字节内容比BH的内容大或比BL中的内容小,则修改之。当循环结束操作时,将BH,BL分别送屏幕显示。参考实验流程如图5-2所示。
四、实验步骤
1. 运行Tddebug软件,选择Edit菜单编写实验程序,提供8字节的数据:0D9H,
07H,8BH,0C5H,0EBH,04H,9DH,0F9H;
2. 使用Compile菜单中的Compile和Link对实验程序进行汇编、连接; 3. 使用Rmrun菜单中的Run,运行程序,观察运行结果; 4. 更改数据区中的数据,考察程序的正确性。
五、实验报告内容及要求
根据实验要求编写程序并调试,写出程序调试过程及运行情况。
第 22 页
DATA SEGMENT
BUFFER DB 0D9H,07H,8BH,0C5H,0EBH,04H,9DH,0F9H DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX LEA SI,BUFFER MOV BL,[SI] MOV BH,[SI] MOV CX,8 LOOP1: MOV AL,[SI] CMP JB MOV NEXT1: CMP JA MOV NEXT2: INC LOOP MOV LOOP2: MOV ROL MOV AND ADD CMP JLE ADD PRINT: MOV MOV INT CMP JNZ MOV INT MOV INT LOOP3: DEC JNZ MOV INT CODE ENDS
END 程序结果:F9 04
BL,AL NEXT1 BL,AL BH,AL NEXT2 BH,AL SI
LOOP1 CH,4 CL,4 BX,CL AL,BL AL,0FH AL,'0' AL,'9' PRINT
AL,'A'-('9'+1) DL,AL AH,02H 21H CH,3 LOOP3 DL,0DH 21H
DL,0AH 21H CH LOOP2
AX,4C00H 21H START
第 23 页
图5-2 分支程序实验流程图
第 24 页
实验六 循环程序设计实验
一、实验目的
1. 掌握循环程序的设计方法。
二、实验所用设备
1. PC微机一台。
三、实验内容
本实验要求通过求某数据区内负数的个数来表现循环程序的结构形式。要求
实验程序在数据区中存放一组数据,为统计负数的个数,逐个判断区内的数据,然后将所有数据中凡是符号位为1的数据的个数累加起来,即得到区内所包含负数的个数。循环程序的结构示意如图6-1所示。
图6-1 循环结构示意图
四、实验步骤
1. 运行Tddebug软件,选择Edit菜单编写实验程序,提供10字节的数据:
12H,88H,82H,89H,33H,90H,01H,10H,0BDH,01H; 2. 使用Compile菜单中的Compile和Link对实验程序进行汇编、连接; 3. 使用Rmrun菜单中的Run,运行程序,观察运行结果; 4. 更改数据区中的数据,考察程序的正确性。
五、实验报告内容及要求
根据实验要求编写程序并调试,写出程序调试过程及运行情况。
DATA SEGMENT
BUFFER DB 0D9H,07H,8BH,0C5H,0EBH,04H,9DH,0F9H DATA ENDS
第 25 页