- 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
您可能关注的文档
最近下载
- TBIE 004—2023通孔回流焊接技术规范团标.pdf
- 国开《MySQL数据库应用》形考1-4(试题及答案).pdf VIP
- 煤矿安全生产作业规程操作规程安全技术措施编制审批贯彻及执行管理制度.doc
- 2020年光学膜行业研究报告.pdf
- 采血管种类和应用ppt课件.pptx VIP
- 职业生涯报告六篇.pdf VIP
- Unit 4 Plants arounds us PartA Let's talk(课件)人教PEP版(2024)英语三年级上册.pptx
- 七年级上册生物:必考问答式知识点汇总(背诵+默写).docx
- 《青纱帐——甘蔗林》课件【中职专用】高教版 基础模块下册.pptx
- 国家开放大学学位英语历年真题试卷号1909.docx
文档评论(0)