8086-8088微机原理与应用II实验指导书.doc

  1. 1、本文档共24页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
8086-8088微机原理与应用II实验指导书

第一部分 软件部分实验 实验一 汇编语言上机环境的熟悉和命令使用 【实验目的及要求】 学习及掌握汇编语言源程序的书写格式和要求,明确程序中各段的功能和相互之间的关系。 学会使用MASM在计算机上汇编、连接、调试及运行程序的方法。 掌握用DEBUG调试汇编程序的方法,为以后实验打下基础。 【实验内容】 建立软件工作环境 为了正常运行汇编程序,需要如下程序: masm.exe 或 tasm.exe ;汇编命令 link.exe ;链接命令 debug.exe ;调试命令 二、按照要求完成以下题目 1、在屏幕上输出 This is a masm sample! (1)使用文本文档编辑如下源程序,并保存为sample.asm: ;Program is an example data segment astr DB This is a masm sample!,0dh,0AH,$ data ends code segment assume CS:code,DS:data main proc far start: PUSH DS ;保护环境,返回DOS XOR AX, AX PUSH AX MOV AX, data ;数据段的初始化 MOV DS, AX LEA DX, astr ;取得字符串的首地址 MOV AH, 09h ;9号功能调用 INT 21h RET main endp code ends end start (2)使用masm汇编命令汇编源程序 c:\ masm sample.asm ---开始汇编 Microsoft (R) Macro Assembler Version 5.00 Copyright (C) Microsoft Corp 1981-1985, 1987. …… --软件提示 Object Filename[sample.obj]: --提示输入目标文件名,可省略直接回车 Source listing[Nul.lst]: --提示输入列表文件名,可省略直接回车 Cross reference[NUL.crf]: Warning errors 0 Severe errors 0 注意:若汇编的错误提示不为0,则须重新修改sample.asm,然后再汇编,该过程直到错误提示为0为止。 (3)使用link产生EXE文件 c:\link sample.obj …………. ………… Run file[sample.exe]:--提示输入可执行文件名,可以省略直接回车 List file [NUL.map]:--提示输入连接映象文件,可以省略直接回车 Libraries[.lib] --输入文件用到的库文件名,可以省略直接回车 …… ….. (4)运行生成的可执行文件 c:\sample.exe (5)使用DEBUG命令调试、运行可执行文件 c:\debug sample.exe 进入DEBUG后,首先用命令R查看当前DS和IP寄存器内容,记录此值。 用u反汇编,查看机器指令地址CS:IP。 用命令-D查看程序中数据段DATA中定义的变量。 -D DS的内容:偏移地址 -D1421:0000 (1421为数据段的段首址) 用命令-G运行程序,以便查看结果。 -G 程序结束指令的偏移地址 -G0023 2、参照上题完成课本第95页的程序。 附1:DEBUG各命令的使用练习 用命令A汇编下列指令,并判断指令正误并说明原因。 ROR AX,8 LEA DI,[AX] MOV DS,2010 PUSH AL OUT 900,AL MOV [BX],0 用D命令查看DS:200~22F和F000:200~22F两内存块内容,用F命令将字符“A”分别填入这两个内存块,比较填入前后结果,了解可读写内存RAM和只读内存ROM的区别。 利用T,P,G命令,执行下列程序段,注意它们的不同之处。 MOV DI,300 MOV SI,400 MOV CX,3 CLD REP MOVSB INT 3 4. 先在CS:200处汇编一条RET指令,再在CS:100处汇编。 MOV BX,200 CALL BX INT 3 然后从MOV BX,200处开始执行。 用A命令汇编下列程序段,完成将DS:2000开始的5个字节内存内容相加,并把相加的结果存放在DS:2005内存单元中,将程序写到硬盘上,然后用DEBUG调试﹑运行该程序,查看运行结果,观察程序段能

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档