8086 汇编语言顺序程序设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
汇编语言程序设计实验报告
学院:计算机科学与技术学院专业:计算机科学与技术班级:计科131
MOV AX,WORD PTR N1
MOV DX,WORD PTR N1+2
MOV CX,WORD PTR N2
MOV BX,WORD PTR N2+2
ADD AX,CX
ADC DX,BX
MOV WORD PTR N3,AX
MOV WORD PTR N3+2,DX
MOV AH,4CH
INT 21H
CODE ENDS
END START
使用相应的文本编辑器建立文件two.asm,内容如上所示。
二. 生成可执行文件:
1.汇编:
C:\masm> masm two;
2.连接:
C:\masm> link two;
三.运行及调试:
1. 运行:
C:\masm>debug two.exe
-U0 ;通过反汇编查找程序的断点
-T=0 2 ;加载数据段
-D0 ;查看原始数据是否正确
-G=0 1F ;运行程序至断点1F 处
-D0 ;查看程序运行结果
2.调试:
若要判断此程序对于其它32 位数相加是否正确,则需要使用DEBUG 进行程序调试。
实验二:编程实现:将从2000H 单元开始的连续128 个单元的内容进行清零
一. 编程
CODE SEGMENT
ASSUME CS:CODE,DS:CODE
START:
MOV BX,2000H
MOV CX,128
MOV AL,00H
L1:
MOV [BX],AL
INC BX
LOOP L1
MOV AH,4CH
INT 21H
CODE ENDS
END START
二.使用编辑器建立源程序文件four.asm。
三.生成可执行文件:
1.汇编:
C:\masm> masm four;
2.连接:
C:\masm> link four;
四.运行及调试:
1. 运行:
C:\masm>debug four.exe
-D2000;
-R;
-D CS:2000;
-G;
-D2000;
实验三:编程实现:将3000H 单元的一个字节的内容进行拆分,高半字节放进3001H 单元的低半部分,其低半字节放进3002H 单元的低半部分
一、编程
源程序:
DATA SEGMENT
N0 DW 3000H
N1 DW 3001H
N2 DW 3002H
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV AX,DATA
MOV DS,AX
MOV BX,N0
AND BX,0FH
MOV AX,N2
MOV AX,[BX]
MOV BX,N0
MOV CL,4
SHR AX,CL
MOV AX,N1
MOV AX,[BX]
MOV AH,4CH
INT 21H
CODE ENDS
END START
二.使用编辑器建立源程序文件five.asm。
三.生成可执行文件:
1.汇编:
C:\masm> masm five;
2.连接:
C:\masm> link five
四.运行及调试:
1. 运行:
C:\masm>debug five.exe
-D3000;
实验结果实验一:
实验二:从2000H 单元开始的连续128 个单元的内容全部清零
实验三:
实
验总结
通过本次实验,我掌握了如何使用masm,熟练了如何在debug环境中对程序进行调试、运行。特别要注意的还是用记事本输入源程序时要注意在英文模式下输入,尤其是一些符号,在调试运行之前最好多检查几遍以确保实验的顺利完成。
指
导
教
师
意
见
签名:年月日