ImageVerifierCode 换一换
格式:DOCX , 页数:113 ,大小:1.84MB ,
资源ID:18649722      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/18649722.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(1632位微机原理与接口技术实验指导书Word格式.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

1632位微机原理与接口技术实验指导书Word格式.docx

1、用编辑软件建立的源程序.ASM文件,必须经过汇编才能产生.OBJ文件。在Windows环境下,点击屏幕左下角的“开始”“所有程序”“附件”“命令提示符”, 键入D: 并回车,再键入cd masm并回车,则显示如图1-2所示:图1-2 命令提示符窗口 在D:masm提示符下键入MASM并回车,则在屏幕上显示: Microsoft(R) Macro assemble Version 5.00 Copyright(C) Microsoft Corp 1981-1985,1987 ALL rights reservedSource filename .ASM:输入要汇编的汇编语言源程序文件名,并回车,

2、则屏幕显示:OBJ filename.obj:直接键入回车,则生成中括号中指定文件名的.obj文件;也可以在上述输入自己的文件名后再键入回车,则生成自己指定文件名的.obj文件。然后屏幕显示: Source listingnul.lst: 直接键入回车,则不生成.lst文件;若要生成.lst文件,则键入一个文件名后键入回车,屏幕显示: Cross-referencenul.crf:直接键入回车,则不生成.crf文件;若要生成.crf文件,则键入一个文件名后键入回车,屏幕显示: 49748 + 451356 Bytes symbol space free 0 Warning Errors 0 S

3、evere ErrorsD:说明:通过上述汇编后生成以下几个文件。(1).OBJ文件.OBJ文件是必须生成的一个目标代码文件,当源程序中无语法错误时,则在当前工作盘上自动存入一个.OBJ文件,供下一步连接用。若源程序有语法错误时,会出现错误信息提示:文件名.ASM(12): error A2009: Symbol not defined: AX1文件名.ASM(15): BRANCH1 50824 + 450280 Bytes symbol space free 0 Warning Errors (警告错误) 2 Severe Errors (严重错误) 上述有两行错误信息,错误信息格式是:源

4、程序文件(行号): 错误信息代码 : 错误信息说明若严重错误总数不为0,则.OBJ文件没有生成,需回到编辑状态下修改汇编源程序,并重新汇编,如此往复,直到无错误为止。(2).LST文件(列表文件).LST文件对调试程序有帮助,它是将源程序中各语句及其对应的目标代码和符号表以清单方式列出,如果需要,在屏幕显示的第二个提问的冒号后输入文件名即可,如果不需要,直接按回车键。(3).CRF文件(交叉引用文件)交叉引用.CRF文件给出了源程序中定义的符号引用情况,按字母顺序排列。.CRF文件不可显示,须用CREF.EXE系统程序将.CRF文件转换成为.REF文件后方可显示输出。若按后一种格式输入,系统会

5、依次出现四个提示信息,比第一种格式多了一项源程序文件名的输入。应答方式与第一种格式相同。3、连接目标程序 汇编后生成的.OBJ文件,其目标代码中的所有地址都是浮动的偏移地址,机器不能直接运行。必须用连接程序(LINK.EXE)对其进行连接装配定位,产生.EXE可执行文件,方可运行。在系统提示符(D:)下键入LINK ,并回车,屏幕上出现以下提示信息: Microsoft (R) Overlay Linker Version 3.60Copyright (C) Microsoft Corp 1983-1987. All rights reserved.Run File LINK files1+f

6、iles2+files3屏幕显示同LINK一个模块目标程序一样。4、调试和运行程序经过汇编、连接后生成的.EXE文件,可在DOS系统直接运行,只要键入可执行文件的文件名,并回车即可。例如:DOS的COMMAND.COM模块将该程序装配到内存,并设置和分配启动地址。也可在DEBUG调试程序下运行。如何用DEBUG程序来运行和调试程序将在DEBUG调试程序中详细讨论。5、DEBUG调试程序 DEBUG.EXE程序是专门为开发汇编语言程序而设计的一种调试工具,具有跟踪程序执行、观察中间运行结果、显示和修改寄存器或存储单元内容等多种功能。它能使程序设计人员或用户触及到机器内部,因此可以说它是80X86

7、CPU的心灵窗口,也是我们学习汇编语言必须掌握的调试工具。6、DEBUG程序使用在DOS系统提示符下键入命令并回车: D:DEBUG 盘符:路径文件名.EXE这时屏幕上出现DEBUG的提示符“-”,表示系统在DEBUG管理之下,此时可以用DEBUG进行程序调试。若所有选项省略,仅把DEBUG装入内存,可对当前内存中的内容进行调试,或者再用N和L命令,从指定盘上装入要调试的程序;若命令行中有文件名,则DOS系统把DEBUG程序调入内存后,再由DEBUG将指定可执行文件装入内存。7、DEBUG常用命令简介(1)汇编命令 A格式:A 起始地址功能:将输入源程序的指令汇编成目标代码并从指定地址单元开始

8、存放。若缺省起始地址,则从当前CS:100地址开始存放。A命令按行汇编,主要是用于小段程序的汇编或对目标程序的修改。(2)反汇编命令 U 格式1:U 起始地址 格式2:U 起始地址 结束地址 字节数 功能:格式1从指定起始地址处开始将32个字节的目标代码转换成汇编指令形式,缺省起始地址,则从当前地址CS:IP开始。 格式2将指定范围的内存单元中的目标代码转换成汇编指令。(3)显示、修改寄存器命令 RR 寄存器名若给出寄存器名,则显示该寄存器的内容并可进行修改。缺省寄存器名,则按以下格式显示所有寄存器的内容及当前值(不能修改)。-RAX=0000 BX=0000 CX=0000 DX=0000

9、SP=FFEE BP=0000 SI=0000 DI=0000DS=0B03 ES=0B03 SS=0B03 CS=0B03 IP=0100 NV UP EI PL NZ NA PO NC -R AX ;输入命令 AX 0000 ;显示AX的内容 : ;供修改,直接键入AX新值并回车;若不修改,则直接键入回车。若对标志寄存器进行修改,在DEBUG提示符下键入R F,并回车。-R F NV UP DI PL NZ NA PO NC 屏幕显示如上信息,分别表示OF、DF、IF、SF、ZF、AF、PF、CF的状态。不修改按回车键。要修改,则个别输入一个或多个此标志的相反值,再按回车键。R命令只能显示

10、、修改16位寄存器。(4)显示存储单元命令 D格式1:D 起始地址格式2:D 起始地址 结束地址 字节数格式1从起始地址开始按十六进制显示80H个单元的内容,每行16个单元,共8行,每行右边显示16个单元的ASCII码,不可显示的ASCII码则显示“”。格式2显示指定范围内存储单元的内容,显示方式与格式1一样。如果不写起始地址或地址范围,则从当前地址开始按格式1显示。例如,键入D 200并回车,屏幕显示如下:-D 2000B03:0200 43 46 49 FE C4 8A 07 3C-20 74 01 AA 43 E2 BC C3 CFI.!.0250 80 75 53 F6 46 04 0

11、4 74-4D 8B 56 05 80 FA 00 74 .uS.F.tM.V.t0260 05 80 FE 3A 74 02 B2 40-80 CA 20 80 EA 60 E8 3C .:t. .0270 E4 73 06 E8 47 DB E9 75-D8 8B D5 83 C2 05 8A 7E .s.G.u.表示从DS:0200H开始显示128个单元内容,其中DS值不同的计算机环境其值不同。-D 100 120 ;表示显示DS:0100-DS:0120单元的内容在DEBUG中,地址表示方式有如下形式: 段寄存器名:相对地址,如:DS:100段基值:偏移地址(相对地址),如:23A0:

12、1500(5)修改存储单元命令 EE 起始地址 内容表E 地址格式1按内容表的内容修改从起始地址开始的多个存储单元内容,即用内容表指定的内容来代替存储单元当前内容。E DS:0100 VAR 12 340100 为起始单元的连续五个字节单元内容依次被修改为 V、AR、12H、34H。格式2是逐个修改指定地址单元的当前内容。0010156F:0010 41.5F其中156F:0010单元(注意:不同计算机环境DS值不一定是156F)原来的值是41H,5FH为输入的修改值。若只修改一个单元内容,这时按回车键即可;若还想继续修改下一个单元内容,则应按空格键,就显示下一个单元内容,需修改就键入新内容,

13、不修改再按空格跳过,如此重复直到修改完毕,按回车键返回DEBUG“-”提示符。如果在修改过程中,将空格键换成按“-”键,则表示可以修改前一个单元内容。(6)运行命令 GG=起始地址 第一断点地址 第二断点地址CPU从指定起始地址开始执行,依次在第一、第二等断点处中断。若缺省起始地址,则从当前CS:IP指示地址开始执行一条指令。最多可设置10个断点。(7)跟踪命令 TT 起始地址 正整数从指定地址开始执行正整数条指令,若缺省正整数,表示执行一条指令,若两项都缺省,表示从当前CS:(8)指定文件命令 NN 指定即将调入内存或从内存写入磁盘的文件名。该命令应该用在L命令和W命令之前。(9)装入命令

14、LL 起始地址 盘符号扇区号扇区数L 起始地址格式1根据盘符号,将指定扇区的内容装入到指定起始地址的存储区中。格式2将N命令指定的文件装入到指定起始地址的存储区中,若省略起始地址,则装入到CS:100处或按原来文件定位约定装入到相应位置。(10)写磁盘命令 WW 驱动器号扇区数W 起始地址格式1把指定地址开始的内容数据写到磁盘上指定扇区中。格式2将起始地址的BX10000H+CX个字节内容存放到由N命令指定的文件中。在格式2的W命令之前,除用N命令指定存盘文件名外,还必须将要写的字节数用R命令送入BX和CX中。(11)退出命令 QQ退出DEBUG,返回到操作系统。1.2.2 其他Debug调试

15、命令DEBUG调试的其他命令见表 1-1,请参考有关书籍。表1-1 DEBUG常用命令名称含义命令格式A(Assemble)逐行汇编AaddressC(Compare)比较两内存块C range addressD(Dump)显示内存单元(区域)内容DaddressDrangeE(Enter)修改内存单元(区域)内容E address listF(Fill)填充内存单元(区域)F range listG(GO)连续执行程序G=address addressH(Hexarthmetic)两参数进行十六进制运算H Value ValueI(Input)从指定端口地址读取并显示一个字节值I port

16、addressL(Load)装入某个文件或特定磁盘扇区的内容到内存LaddressM(Move)将内存块内容复制到另一个内存块M range rangeN(Name)指定要调试的可执行文件参数Nd:pathfilename.exeO(Output)将字节值发送到输出端口O port address byteQ(Quit)退出DEBUGR(Register)显示或修改一个或多个寄存器内容Rregister nameS(Search)在某个地址范围搜索一个或多个字节值S range listT(Trace)单步多步跟踪T or TaddressValueU(Unassmble)反汇编并显示相应原语

17、句Uaddress or UrangeW(Write)文件或数据写入特定扇区Waddressdrive sector sector ?显示帮助信息第2章 80X86汇编语言实验内容1.实验设备硬件:PC计算机一台;软件,汇编软件2.实验目的(1)熟悉汇编语言程序设计方法;(2)熟悉汇编程序调试过程;(3)掌握使用数据传送、运算类、转移等指令编程及调试方法。(4)掌握顺序结构、分支结构、循环结构和子程序调用的编程方法。3.实验及实验报告要求(1)编程、调试、运行、检查结果,并记录要求:对程序反复输入几组数据,并运行程序,记录结果。(2)实验报告要求实验报告中应包含实验内容、源程序、实验步骤、运行

18、结果、结果分析是否正确及存在的问题。2.1 系统认识实验2.1.1 实验目的 掌握微型计算机汇编软件调试汇编源程序的基本操作。熟悉传送类指令、简单运算类指令来编写汇编语言源程序,掌握调试过程及实验结果分析。4.1.2 实验内容 1、从3500H内存单元开始建立015共16个数据(建立的数据为00H,01H09H.0AH0FH)。并运行之,检查记录结果。(1)分析3500H为偏移地址,对应的段基址采用默认的DS当前值; 程序中,如果不涉及到堆栈,则堆栈段可省略。(2)实验程序DATA SEGMENT ORG 3500H ;设定起始偏移地址,如果没有该语句,默认的偏移地址为0000H MEM1 D

19、B 16 DUP(?)DATA ENDSCODE SEGMENT ;定义代码段 ASSUME CS:CODE,DS:DATASTART: MOV AX, DATA MOV DS,AXMOV DI,3500H ;程序开始设数据区首址 MOV CX,0010H ;字节数送入CX中MOV AH, 00H ;SAHF ; 清标志寄存器指令MOV AL, 00HA1: MOV DI,AL ;写入一字节INC DI ;修改地址指针INC AL ;修改数据 LOOP A1 ;未填完转移CODE ENDS ;代码段结束 END START ;程序结束2、如果1-1题建立的数据为BCD码表示的十进制数据(即建立

20、的数据为00H,01H09H,10H15H),修改上述程序并调试运行,检查记录结果。提示:BCD运算,是二进制编码的十进制运算,使用指令ADD和DAA或INC和DAA共同完成,仅能使用AL进行运算。 15+28进行运算,编程如下:MOV AL,15H ;15H是15的BCD码表示ADD AL,28H ;28H是28的BCD码表示,这里完成15H+28H=3DH运算 DAA ;将AL中的结果3DH调整为BCD码,结果为43H3、编程完成的求和运算。调试运行程序,并记录运算结果。4、将内存3500H单元开始存放的09共10个字节数传递到3600H单元开始的数据区中(可分同一段内传送和段间专送)。该

21、程序应该编写数据段,从3500H开始存放09共10个数;从3600定义10个字节单元,准备接收数据。数据段定义如下: ORG 3500HMEM1 DB 0,1,2,3,4,5,6,7,8,9 ORG 3600HMEM2 DB 10 DUP(?思考题:(1)如果上述数据段定义中没有ORG语句,则从什么内存地址开始存放数据?(2)如果采用字数据传送,请修改程序,并调试运行程序,记录运行结果。(3)如果采用串传送指令(MOVSB,MOVSW),请修改程序,并调试运行程序,记录运行结果。如果使用MOVSB,MOVSW指令,要将原始数据串的段基地址放入DS寄存器,接收数据的目的串段基地址放入ES寄存器,

22、可以使DS与ES设置成同一个段基址(即逻辑段重叠);也可以设置成不同逻辑段,即数据段和附加数据段。4.1.3 实验步骤以实验内容1为例实验步骤如下。实验内容2、3、4请自行依照实验步骤完成调试并记录实验结果。第1步 输入源程序打开WINDOWS环境下的汇编开发环境,输入源程序。在桌面上双击快捷方式图标“Masm for Windows 集成实验环境”。出现下面界面,其中右侧是源程序模板,如图2-1:按提示输入编写好的源程序。图2-1 汇编源程序模板图2-1 说明:在右侧窗口给出了段结构模板,根据模板输入源程序。模板中的段名可以自己修改定义,没有涉及到的段可省略不写。输入汇编语言源程序后,保存程

23、序(规定扩展名为.ASM),使用ALT+X返回集成软件环境。输入源程序后,如图2-2所示。图2-2 输入源程序后界面第2步:汇编 编译/汇编成目标文件,点击运行菜单下“编译成目标文件(OBJ)”,等待系统汇编,汇编成功后,汇编信息显示于屏幕下面的窗口中,显示编译成功。如图2-3所示。则可进行第3步。如果显示错误提示信息,则返回第1步修改源程序后在汇编,直到无错误为止。图2-3 编译/汇编命令第3步:连接连接生成可执行文件。点击运行菜单下“生成可执行文件(EXE)”,等待系统对汇编生成的.obj文件进行连接,连接成功后,生成相应的可执行文件(.EXE),信息显示于屏幕下方的窗口上,如图2-4所示。如果连接成功,显示生成*.EXE文件成功,进行下一步DEBUG调试。否则,返回第1步,修改源程序,再汇编、连接,直到无错误信息为止。图2-4 连接命令及连接成功后的信息显示第4步:在DEBUG调试环境下进行程序的调试过程通过DEBUG调试可以检查程序每一条指令及程序执行结果,以便查错和纠

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1