汇编实验报告.docx
《汇编实验报告.docx》由会员分享,可在线阅读,更多相关《汇编实验报告.docx(13页珍藏版)》请在冰点文库上搜索。
汇编实验报告
实验报告
(1)
专业_姓名__学号_日期__
课程名称
汇编语言
实验室名称
实验名称
调试工具DEBUG的使用
(一)
指导教师
成绩
1.实验目的
1),学会使用debug进行调试。
2),熟悉简单命令的使用:
a,q,d,g,e、、、、、命令!
2.实验原理和内容
DEBUG.EXE是DOS提供的用于调试可执行程序的工具软件,是汇编语
程序设计中常用的调试工具。
在DEBUG环境下,不但可以调试经汇编、连接
生成的可执行程序,也可以编写简单的程序
3.实验步骤
1),在DOS提示符下键入:
DEBUG↙(表示回车)Debug执行,屏幕显示提示符“-”,说明计算机当前处于DEBUG的管理之下,可接受、并执行DEBUG命令。
2),在DOS提示符下键入:
DEBUG[路径\]文件名↙DEBUG执行,并将指定文件装入内存,供调试。
4.程序及运行结果(或实验数据记录及分析)
实验报告
(2)
专业_姓名__学号__日期_
课程名称
汇编语言
实验室名称
实验名称
调试工具DEBUG的使用
(二)
指导教师
成绩
1.实验目的
1),学会在debug下进行汇编程序调试。
2),熟悉程序的写盘和读盘。
2.实验原理和内容
DEBUG.EXE是DOS提供的用于调试可执行程序的工具软件,是汇编语
程序设计中常用的调试工具。
在DEBUG环境下,不但可以调试经汇编、连接
生成的可执行程序,也可以编写简单的程序
3.实验步骤
1),在DOS提示符下键入:
DEBUG↙(表示回车)Debug执行,输入程序
db0,1,2,3,4,5,6,7,8,9,0a,0b,0c,0d,0e,0f
movcx,10
movsi,0100
movdi,3000
moval,[si]
mov[di],al
incsi
incdi
loop0119
int20
2),-nex↙
-rcx↙
cx000f
:
24↙
-w
-q
3),c>debug↙
-nex↙
-L
-u100123
4.程序及运行结果(或实验数据记录及分析)
实验报告(3)
专业_姓名__学号__日期__
课程名称
汇编语言
实验室名称
实验名称
计算10+20并输出结果
指导教师
成绩
1.实验目的
1),掌握宏汇编中的标号的使用
2),学会使用msam编写简单的程序并输出结果。
2.实验原理和内容
DEBUG.EXE是DOS提供的用于调试可执行程序的工具软件,是汇编语
程序设计中常用的调试工具。
在DEBUG环境下,不但可以调试经汇编、连接
生成的可执行程序,也可以编写简单的程序
3.实验步骤
1),编写一段代码(b1.asm)功能是:
计算10+20并显示出来:
ssegSEGMENTMOVAH,0
DB100DUP(?
)MOVCL,10
ssegENDSDIVCL
dsegSEGMENTMOVCL,AH
bufDB10,20,?
ORAL,30h
dsegENDSMOVDL,AL
csegSEGMENTMOVAH,2
ASSUMECS:
cseg,DS:
dseg,SS:
ssegINT21h
start:
MOVAX,dsegORCL,30h
MOVDS,AXMOVDL,CL
MOVAX,ssegMOVAH,2
MOVSS,AXINT21h
MOVSP,100MOVAH,4ch
MOVAL,bufINT21h
ADDAL,buf+1csegENDS
MOVbuf+2,ALENDstart
2),在DOS提示符下键入:
对名为b1.asm的文件进行编译,连接生产.obj和.exe文件:
-cd..
-cd..
-cd\masm
-msam
-b1
-linkb1
-debugb1.exe
4.程序及运行结果(或实验数据记录及分析)
实验报告(4)
专业_姓名__学号__日期__
课程名称
汇编语言
实验室名称
实验名称
设计一个能够输出人名的顺序结构
指导教师
成绩
1.实验目的
1),学会用顺序结构的方式实现功能。
2),能熟练的应用顺序结构。
2.实验原理和内容
DEBUG.EXE是DOS提供的用于调试可执行程序的工具软件,是汇编语
程序设计中常用的调试工具。
在DEBUG环境下,不但可以调试经汇编、连接
生成的可执行程序,也可以编写简单的程序
3.实验步骤
1),编写一段代码(t.asm)功能是:
显示字符串
datasegmentint21h
lrhdb20movdl,0ah
db?
movah,2
db20dup('$')int21h
dataendsleadx,lrh+2
codssegmentmovah,9
assumecs:
cods,ds:
dataint21h
start:
movax,datamovah,1
movds,axint21h
movdx,offsetlrhmovah,4ch
movah,10int21h
int21hcodsends
movdl,0dhendstart
movah,2
2),在DOS提示符下键入:
对名为b1.asmd的文件进行编译,连接生产.obj和.exe文件:
-cd..
-cd..
-cd\masm
-msam
-b1
-linkt
-debugt.exe
4.程序及运行结果(或实验数据记录及分析)
实验报告(5)
专业_姓名__学号_日期__
课程名称
汇编语言
实验室名称
实验名称
设计一个分情况求补的分支结构程序
指导教师
成绩
1.实验目的
1),学会用分支结构的方式实现功能。
2),能熟练的应用分支结构。
2.实验原理和内容
DEBUG.EXE是DOS提供的用于调试可执行程序的工具软件,是汇编语
程序设计中常用的调试工具。
在DEBUG环境下,不但可以调试经汇编、连接
生成的可执行程序,也可以编写简单的程序
3.实验步骤
1),编写一段代码(m.asm)功能是:
显示字符串
datasegmentmovax,num
numdw8072horax,ax
dataendsjnsdone
codesegmentnegax
assumecs:
code,ds:
datamovnum,ax
startprocfardone:
rte
pushdsstartendp
xorax,axcodeends
pushaxendstart
movax,data
movds,ax
2),在DOS提示符下键入:
对名为m.asmd的文件进行编译,连接生产.obj和.exe文件:
-cd..
-cd..
-cd\masm
-msam
-m
-linkt
-debugm.exe
4.程序及运行结果(或实验数据记录及分析)
实验报告(6)
专业_姓名__学号_日期__
课程名称
汇编语言
实验室名称
实验名称
设计一个求从1一次加到100的和
指导教师
成绩
1.实验目的
1),学会用分支结构的方式实现功能。
2),能熟练的应用分支结构。
2.实验原理和内容
DEBUG.EXE是DOS提供的用于调试可执行程序的工具软件,是汇编语
程序设计中常用的调试工具。
在DEBUG环境下,不但可以调试经汇编、连接
生成的可执行程序,也可以编写简单的程序
3.实验步骤
1),编写一段代码(m.asm)功能是:
显示字符串
datasegmentlp3:
cmpax,64hmovdl,[bx+si]
sdb4dup(?
)movds,axadddl,30h
xdb?
jblp4int21h
dataendsincdlincsi
codesegmentsubax,64hlooplp7
assumecs:
code,ds:
datajmplp3movah,1
start:
movax,datalp4:
movs+1,dlint21h
movds,axmovdl,0movah,4ch
movbx,1lp5:
cmpax,0ahint21h
movax,0jblp6codeends
movcx,100incdlendstart
lop:
addax,bxsubax,0ah
incbxjmplp5
looploplp6:
movs+2,dl
movdl,0movs+3,al
lp1:
cmpax,3e8hmovbx,offsets
jblp2movsi,0
incdlmovah,2
subax,3e8hmovcl,4
jmplp1lp7:
movdi,[bx+si]
lp2:
movs,dlordi,30h
movdl,0
2),在DOS提示符下键入:
对名为m.asmd的文件进行编译,连接生产.obj和.exe文件:
-cd..
-cd..-msam-linkt
-cd\masm–m-debugm.exe
4.程序及运行结果(或实验数据记录及分析)
专业_姓名__学号__日期_
课程名称
汇编语言
实验室名称
实验名称
运用编译环境MASM实现字符串的输出(七)
指导教师
成绩
1.实验目的
1),学会运用MASM
2),熟悉程序的编译过程。
2.实验原理和内容
MASM是DOS提供的用于调试可执行程序的工具软件,是汇编语
程序设计中常用的调试工具。
在MASM环境下,不但可以调试经汇编、连接
生成的可执行程序,也可以编写简单的程序
3.实验内容
;lt301a.asm
.modelsmall
.stack
.data
Stringdb‘Hello,Everybody!
’,0dh,oah,‘$’
.code
.startup
Movdx,offsetstring
Movah,9
Int21h
.exit
end
4.程序及运行结果(或实验数据记录及分析)
专业_姓名__学号__日期_
课程名称
汇编语言
实验室名称
实验名称
实现求和运算(八)
指导教师
成绩
1.实验目的
1),了解汇编语言的编程过程。
2),理解顺序程序的结构。
2.实验原理和内容
在数据段中定义4个变量X,Y,Z和W,并按要求初始化;代码段主体依次相加3个变量,最后将结果存入W中。
3.实验内容
;lt401a.asm
.modelsmall
.stack
.data
Xdw5
Ydw6
Zdw7
Wdw?
.code
.startup
Movax,X
Addax,Y
Addax,Z
MovW,ax
.exit0
end
4.程序及运行结果(或实验数据记录及分析)
专业_姓名__学号__日期_
课程名称
汇编语言
实验室名称
实验名称
分支程序(九)
指导教师
成绩
1.实验目的
1),会用分支结构编程。
2),理解并会区别单分支和双分支。
2.实验原理和内容
对一个有符号数求绝对值:
如果是正数,保存结果;如果为负数,求补然后再保存结果。
3.实验内容
(1)cmpax,0
Jgenonneg
Negax
Nonneg:
movresult,ax
(1)cmpax,0
Jlyesneg
Jmpnonneg
Yesneg:
negax
Nonneg:
movresult,ax
4.程序及运行结果(或实验数据记录及分析)