- 1、本文档共31页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
安工大汇编语言实验报告纪平
《汇编语言》
试验报告
班 级
学 号
姓 名
指导教师
实验一 汇编语言运行环境及方法、简单程序设计
一、实验目的:
1、熟悉汇编语言运行环境和方法
2、了解如何使用汇编语言的编制程序。
3、熟悉DEBUG有关命令的使用方法。
4、利用DEBUG掌握有关指令的功能。
5、利用DEBUG运行简单的程序段。
二、实验内容:
编写一程序:比较两个字符串string1和string2所含的字符是否相同。若相同则显示‘match’,否则‘No match’。
三、实验步骤:
1、建立程序所需要的ASM文件,并将实验指导书中的范例程序编写好。
2、用汇编程序MASM对源文件汇编产生目标文件OBJ。
3、用链接程序LINK产生执行文件EXE。
4、执行程序。
5、使用DEBUG调试程序。分别体会g命令、r命令、t命令、u命令、d命令以及q命令的用法。
用-g命令来用运行程序,用-u命令来显示程序,用-d 命令来查看数据段的情况,用-e或-f命令来修改需要改正的部分,用-t指令来逐步执行程序,用-r指令来查看寄存器和修改寄存器的值,-q命令用来退出debug程序。在这些命令的后面加上地址,可以将命令执行到相应的地方。
在Debug中用-g运行:
用-u命令显示程序:
-g0b 将断点设置在指令LEA SI;之前
根据其中指示的ds寄存器内容查看数据段情况:
用e命令修改数据段字符串:
再次运行结果:
用q命令退出debug:
四、程序代码:
;PROGRAM TITLE GOES HERE--Compare string
;******************************************************
datarea segment ;define data segment
string1 db Move the cursor backward.
string2 db Move the cursor backward.
;
mess1 db Match.,13,10,$
mess2 db No match!,13,10,$
datarea ends
;******************************************************
prognam segment ;define code segment
;------------------------------------------------------
main proc far
assume cs:prognam,ds:datarea,es:datarea
start: ;starting execution address
;set up stack for return
push ds ;save old data segment
sub ax,ax ;put zero in AX
push ax ;save it on stack
;set DS register to current data segment
mov ax,datarea ;datarea segment addr
mov ds,ax ;into DS register
mov es,ax ;into ES register
;MAIN PART OF PROGARM GOES HERE
lea si,string1
lea di,string2
cld
mov cx,25
repz cmpsb
jz match
lea dx,mess2
jmp short disp
match:
lea dx,mess1
disp:
mov ah,09
int 21h
ret ;return to DOS
main endp ;end of main part of program
;-------------------------------------------------------
prognam ends ;end od code segment
;********************************************************
end start ;end assembly
实验二 用DEBUG编程:使用堆栈段将
AX和BX的内容进行交换等
一、实验目的:
1、熟练掌握DEBUG的常用命令,学会用DEBUG调试程序。
2、掌握数据在内存中的存放方式和内存操作数的几种寻址方式。
3、掌握简单指令的执行过程。
二、实验内容:
1、设堆栈指针SP=2000H,AX=300
您可能关注的文档
最近下载
- 中心小学传承红色基因活动方案.doc VIP
- 俄罗斯高酸性天然气净化工艺技术评价资料精.pdf
- 084-企业职工伤亡事故经济损失统计标准GB6721-1986.pdf
- 人教版数学八年级上册 (三角形 全等三角形)综合测试题.pdf VIP
- Siemens西门子工业SINUMERIK ONE 最终调试步骤 SINUMERIK ONE 最终调试步骤使用手册.pdf
- 南方全站仪nts350系列说明书.pptx VIP
- 新人教版六年级上册数学全册教学课件.pptx
- 用于电机驱动芯片高压电荷泵电路设计.pdf
- 基金从业资格-证券投资基金基础知识讲义.pdf VIP
- 《残疾人社会工作》教学大纲.doc VIP
文档评论(0)