汇编语言程序设计实验报告韩阳Word文档下载推荐.docx
- 文档编号:21503227
- 上传时间:2023-01-30
- 格式:DOCX
- 页数:64
- 大小:320.40KB
汇编语言程序设计实验报告韩阳Word文档下载推荐.docx
《汇编语言程序设计实验报告韩阳Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《汇编语言程序设计实验报告韩阳Word文档下载推荐.docx(64页珍藏版)》请在冰豆网上搜索。
3.在屏幕上显示输出“IloveDOTA”
datasegment
znzn1db'
ILOVEDOTA$'
dataends
code,ds:
data
movax,data
movds,ax
leadx,znzn1
movah,9h
4.编写一个程序,要求从键盘输入一个小写字母,以其大写字母形式显示,否则显示ERROR
源程序datasegment
stringdb'
error!
$'
codesegment
movah,7
cmpal,'
a'
jnlnext1
jmpnext2
next1:
cmpal,'
z'
jgnext2
subal,20h
movdl,al
next2:
movah,9
leadx,string
5.在屏幕上输出10个“T”
movcx,10
again:
movah,2
t'
loopagain
4、结果与分析:
按要求输入输出,完成实验要求。
5、问题讨论:
初步体验汇编与c语言以及c++的不同,结构较简单
6、实验扩展(XB2):
7、结论:
8、实验心得:
9、参考文献:
IBM-PC汇编语言程序设计(第二版)
10、技术支持:
实验二调试程序DEBUG的使用
熟悉DEBUG的主要命令,学会使用DEBUG进行程序调试
1.DEBUG程序的调用
在DOS提示符下,可键入命令:
C.>
DEBUG[d:
][path][文件名][参数1][参数2]
其中文件名是被调试文件的名字,他必须是可执行文件(EXE),两个参数是运行被调试文件是所需要的命令参数,在DEBUG程序调入后,出现提示符“_”此时,可键入所需的DEBUG命令。
2.DEBUG的主要命令
(1)显示内存单元内容的命令D,格式为:
-D[地址]或-D[范围]
(2)修改内存单元内容的命令E,他有两种格式:
-E地址内容表和-E地址
(3)检查和修改寄存器内容的命令和标志位状态,格式为:
-R,-R寄存器名,-RF
(4)运行命令G,格式为:
-G[=地址1][地址2[地址3...]]
(5)退出DEBUG命令Q,格式为:
Q
1.从键盘输入一个字符,与x,y,z比较,相等则输出10个*或@或$
start:
x'
jzstart1
y'
jzstart2
jzstart3
start1:
again1:
*'
loopagain1
start2:
again2:
@'
loopagain2
start3:
again3:
loopagain3
codeends
2.将输入的字符串转换为大写字符串显示
stringdb100
db0
db100dup('
)
dataends
movdx,offsetstring
movah,0ah
movdl,13
movdl,10
movdi,0
adddi,2
next:
cmpstring[di],13
jznext1
movcl,string[di]
subcl,20h
movstring[di],cl
incdi
jmpnext
movah,9
adddx,2
3.接收一个字符,找出它的前导字符和后续字符,按顺序显示这三个字符,有提示信息
str1db'
pleseinputonecharacter$'
str2db?
?
'
leadx,str1
subdl,1
movstr2[0],dl
cmpstr2[0],'
jbnext1
jmpnext4
movstr2[0],'
#'
next4:
movstr2[1],al
addal,1
movstr2[2],al
cmpstr2[2],'
janext2
jmpnext3
movstr2[2],'
next3:
leadx,str2
movah,4ch
4.从键盘接收一串字符,在下一行输出剔除其中数字字符的字符串,有提示信息。
Pleseinputastring...$'
arraydb100dup(?
)
cmpal,13
jzexit
0'
jbnext
9'
janext
jmpagain
movarray[di],al
exit:
movcx,di
movsi,0
inccx
movdl,array[si]
incsi
5.判断某正整数是否为素数,是输出一,否则输出n
assumecs:
movbx,0
jeexit
subal,30h
movah,0
xchgax,bx
mulcx
addbx,ax
movcx,2
cmpcx,bx
jznext2
movax,bx
subdx,dx
divcx
cmpdx,0
callchange
n'
changeprocnear
ret
changeendp
4、结果与分析
程序1运行截图:
程序2运行截图:
程序3运行截图:
程序4运行截图:
程序5运行截图:
五、问题讨论:
第三个程序中,考虑到第一个或最后一个字符找不到他的前导字符和后续字符,所以用#代替
六、实验扩展(XB2):
七、结论:
八、实验心得:
九、参考文献:
十、技术支持:
实验三数据统计及查找
1.熟悉汇编语言程序的开发方法和过程。
2.掌握汇编语言程序设计中分支及循环程序设计的基本方法。
3.掌握汇编语言程序设计中数据分类统计的基本方法。
二、实验原理:
运用存储器寻址方式寻址,找到内存中的相应字符做统计。
三、实验内容:
11.datasegment
Num_Dightdw0
Num_Letterdw0
Num_Othersdw0
movax,0fff0h
movcx,100
movbx,ds:
[di]
cmpbx,'
jbl1
jbel2
A'
Z'
jbel3
jmpl1
l1:
incNum_Others
l2:
incNum_Dight
l3:
incNum_Letter
12.datasegment
strdb'
he34ll434o43w43or35l3d!
'
movcx,24
movdl,str[di]
cmpdl,'
jmpexit
jmpnext1
流程图:
四、结果与分析:
6、实验扩展:
可以熟练运用dos系统功能调用(int21h)的综合运用,同时了解了汇编语言的分支结构程序写法。
实验有错误,首先要自己尝试着调,这样才会有比较大的进步。
实在不会,也可以找同学讨论讨论,在讨论中互相学习。
IBM-PC汇编语言程序设计第二版
实验四字符串搜索
1、进一步熟悉汇编语言程序的开发方法和过程。
2、掌握汇编语言程序设计中字符串搜索的基本方法
使用串比较指令判断子串在主串中相匹配的位置
13.datasegment
Enterkeyword:
str2db'
Entersentence:
str3db'
Matchatlocation:
str4db'
Nomatch!
str5db'
Hofthesentence$'
buf1db100
db100dup(?
buf2db100
data,es:
moves,ax
mainprocfar
callenterk
callcrlf
repeat:
callenters
callcomp
jmprepeat
mainendp
enterkprocnear
movdx,offsetstr1
newchar1:
jzexit2
movbuf1[di],al
jmpnewchar1
exit2:
enterkendp
crlfprocnear
crlfendp
entersprocnear
newchar:
cmpal,27
jzexit1
movbuf2[di],al
jmpnewchar
exit1:
movax,di
entersendp
compprocnear
pushcx
leadi,buf2
movbx,di
movdx,cx
movcx,ax
incax
movdi,bx
leasi,buf1
movcx,dx
cld
repecmpsb
incbx
decax
movdx,offsetstr4
exit3:
popcx
compendp
jmpexit3
movdx,offsetstr3
subbx,di
addbx,1
movch,4
rotate:
movcl,4
rolbx,cl
moval,bl
andal,0fh
addal,30h
cmpal,3ah
jlprintit
addal,7
printit:
decch
jnzrotate
movdx,offsetstr5
movah,4ch
14.datasegment
Pleaseinputthepassword:
Passworderror!
Welcometouse!
keydb'
zk123456'
100dup(?
buf1db100dup(?
mov[si],al
leabp,buf1
subsi,bp
cmpsi,9
janextt
leadi,key
movcx,8
repzcmpsb
jznext3
nextt:
movdx,offsetstr2
cmpbx,2
leadx,str3
cmpal,1
jnzexit
1.
2.
对于输出的十六进制数开头为零的没有消去,看起来不简约
6、实验扩展(XB2):
IBM-PC汇编语言程序设计
实验七宏指令的调用
1、掌握宏指令的使用。
2、进一步熟悉DOS系统功能调用方法。
宏调用
qpmacroa,b,c,d,e,f
movah,6
moval,f
movbh,e
movch,a
movcl,b
movdh,c
movdl,d
int10h
endm
zgbmacroa,b
movbh,0
movdh,a
movdl,b
qp0,0,24,79,0,0
qp7,19,19,51,04fh,0
qp8,20,18,50,02fh,0
zgb18,20
movcx,30
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 汇编语言 程序设计 实验 报告