汇编实验一
- 格式:doc
- 大小:185.50 KB
- 文档页数:5
青 岛 理 工 大 学
课程实验报告
课程名称 汇编语言程序设计 班级 实验日期
姓名 学号 实验成绩
实验名称 顺序结构程序设计
实
验
目
的
及
要
求 1.掌握汇编语言程序的编写、调试步骤
2.熟悉8086的指令系统
3.熟悉DEBUG工具
实
验
环
境 平台:win7 64位
命令行方式
工具:MASM.EXE LINK.EXE DEBUG.EXE
DOSBOX(一款软件,模拟dos环境)
实
验
内
容 编制程序,对存于数据段中DATA单元的双字数据求相反数,并将结果存放于RLT开始的单元。
使用DEBUG工具调试程序,查看程序运行结果。
算
法
描
述
及
实
验
步
骤
实验步骤:
1,画流程图。
2,编写程序,改错。
3,用CMD.EXE运行,如有错误进行改正。
4,无错误用masm.exe,link.exe,debug.exe经行编译。
画流程图。 开始设置数据段地址,设置堆栈段地址设置堆栈段指针把数据地地址内容送到AX中并取补把AX取补的结果送入SI中保存CF值数据指针上移,目标地址指针上移数据高字节放入DX,取补结束取补后减去CF
调
试
过
程
及
实
验
结
果 调试过程:
1,反汇编
2、P单步执行
3,d显示内存,0001是数据段中的偏移地址
总
结
随着课程的深入学习,我感觉到了自己亲自动手编程序,调试程序的重要性,我们要熟练汇编语言的语法,体会调试的思想,最好的手段是自己动手编程,调试,这会比我们一个心思的看书效果要强得多。
我觉得学到知识最多的时候就是在不断改错的时候,这将会使我们的记忆更加深刻,只有不断的去努力挖掘知识,我们才将收获更多,对我们的将来才更有帮助。
附
录
SSEG SEGMENT STACK
STK DB 50 DUP(0)
SSEG ENDS
DSEG SEGMENT
TMP EQU THIS WORD
DATA DD 01000110H
RESULT EQU THIS WORD
RLT DD 0
DSEG ENDS
CSEG SEGMENT
ASSUME CS:CSEG,DS:DSEG
ASSUME SS:SSEG
START :MOV AX,DSEG
MOV DS,AX
LEA BX , TMP
LEA SI , RESULT
MOV AX , [BX]
NEG AX
MOV [SI] , AX
MOV DX , 0
ADC DX , 0
INC BX
INC BX
INC SI
INC SI
MOV AX , [BX]
NEG AX
SUB AX , DX
MOV [SI] , AX
MOV AX , 4C00H
INT 21H
CSEG ENDS
END START