汇编实验一

  • 格式: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