微机原理与嵌入式系统第二次实验报告北京联合大学_第1页
微机原理与嵌入式系统第二次实验报告北京联合大学_第2页
微机原理与嵌入式系统第二次实验报告北京联合大学_第3页
微机原理与嵌入式系统第二次实验报告北京联合大学_第4页
微机原理与嵌入式系统第二次实验报告北京联合大学_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 . . 7/7联合大学微机原理与嵌入式系统实验报告学 院:信息学院专 业:计算机科学与技术课 程:微机原理与嵌入式系统 班 级:计科1203B姓 名:王晴学 号:21 2015年5月27日Debug的使用(基础与验证型)实验目的与任务目的:掌握汇编语言程序设计的基本方法和技能;熟练掌握使用全屏幕编辑程序EDIT编辑汇编语言源程序;熟练掌握宏汇编程序MASM的使用;熟练掌握连接程序LINK的使用。任务:1、实验容汇编语言程序设计上机过程如图1.1所示。图1.1汇编语言程序上机过程(一)用编辑程序EDIT建立汇编语言源程序文件(ASM文件)在Windows 2000或者在Windows XP环境

2、下鼠标单击“开始”“运行”,在“运行”中输入“CMD”进入DOS模式,运行EDIT软件,例如:D EDIT hello.ASM进入EDIT的程序编辑画面时,输入汇编语言源程序(二)用汇编程序MASM将ASM文件汇编成目标程序文件(OBJ文件)当源程序建立以后,仍以hello.asm程序为例,我们用汇编程序MASM对hello.asm源程序文件进行汇编,以便产生机器码的目标程序文件hello.obj(三) 用连接程序LINK生成可执行程序文件(EXE文件)经汇编后产生的二进制的目标程序文件(OBJ文件)并不是可执行程序文件(EXE文件),必须经连接以后,才能成为可执行文件。连接程序并不是专为汇编

3、语言程序设计的。如果一个程序是由若干个模块组成的,也可通过连接程序LINK把它们连接在一起。这些模块可以是汇编程序产生的目标文件,也可以是高级语言编译程序产生的目标文件。(四) 程序的执行当我们建立了可执行文件hello.EXE后,就可直接在DOS下执行该程序: Chello.exe原理1、汇编语言源程序的汇编过程汇编语言源程序的汇编过程是是利用汇编程序(MASM)对已编辑好的源程序文件(.ASM)进行汇编,将源程序文件中以ASCII码表示的助记符指令逐条翻译成机器码指令,并完成源程序中的伪指令所指出的各种操作,最后可以建立3个文件:扩展名为 .OBJ的目标文件、扩展名为 .LST 的列表文件

4、和扩展名为.CRF 的交叉索引文件。目标文件是必须建立的,它包含了程序中所有的机器码指令和伪指令指出的各种有关信息,但该文件中的操作数地址还不是存的绝对地址,只是一个可浮动的相对地址。列表文件(.LST)中包含了源程序的全部信息(包括注释)和汇编后的目标程序,列表文件可以打印输出,可供调试检查用。交叉索引文件(.CRF)是用来了解源程序中各符号的定义和引用情况的。.LST和.CRF两个文件不是必须建立的,可有有无,可以通过汇编时的命令加以选择。在对源程序文件(ASM文件)汇编时,汇编程序将对ASM文件进行两遍扫描,若程序文件中有语法错误,则结束汇编,汇编程序将指出源程序中存在的错误,这时应返回

5、编辑环境修改源程序中的错误,再经过汇编,直到最后得到无错误的目标程序,即OBJ文件。因此,汇编程序的主要功能可以概括为以下三点:(1) 检查源程序中的语法错误,并给出错误信息;(2) 产生目标程序文件(OBJ文件),并可给出列表文件(.LST文件);(3) 展开宏指令。汇编程序是系统提供的用于汇编的系统软件,目前常用的汇编程序有Microsoft公司推出的宏汇编程MASM(MACRO ASSEMBLER)和BORLAND公司推出的TASM(TURBO ASSEMBLER)两种。Microsoft公司推出有宏汇编程序MASM和小汇编程序ASM两种,二者的区别在于:MASM有宏处理功能,而ASM没

6、有宏处理功能,因此,MASM比ASM的功能强大,但MASM需要占据较大的存空间,当存空间较小时(如64 KB),只能使用ASM。2、目标程序的连接过程汇编后产生的目标程序(OBJ文件)并不是可执行程序文件(EXE文件),还不能直接运行,它必须通过连接程序(LINK)连接成一个可执行程序后才能运行。连接程序进行连接时,其输入有两个部分:一是目标文件(.OBJ),目标文件可以是一个也可以是多个,可以是汇编语言经汇编后产生的目标文件,也可以是高级语言(例如C语言)经编译后产生的目标文件;另一是库文件(.LIB),库文件是系统中已经建立的,主要是为高级语言提供的。连接后输出两个文件,一是扩展名为 .E

7、XE的可执行文件,另一个是扩展名为 .MAP 的存分配文件,它是连接程序的列表文件,又称为连接映像(Link Map),它给出每个段在存储器中的分配情况,该文件可有可无。连接程序给出的“无堆栈段的警告性错误”并不影响程序的运行。所以,到此为止,连接过程已经结束,可以在操作系统下执行该.EXE程序了。代码与截图分析1.程序一代码HELLO .model small .stack .databvar1 db 100,01100100b,64h,dminint = 5bvar2 db -1,minint,minint+5 db ?,2 dup(20h)wvar1 dw 2010h,4*4wvar2

8、dw ?dvar dd 12347777h,87651111h,?abc db a,b,c,?maxint equ 0ahstring db ABCDEFGHIJcrlfs db 13,10,$array1 dw maxint dup(0)array db 2 dup(2,3,2 dup(4) .codestart: mov ax,data mov ds,ax mov dl,bvar1 dec bvar2+1mov abc3,dl mov ax,word ptr dvar0 mov dx,word ptr dvar2 add ax,word ptr dvar4 adc dx,word ptr

9、dvar6 mov word ptr dvar8,ax mov word ptr dvar6,dx mov cx,maxint mov bx,0again: add stringbx,3 inc bx loop again lea dx,abc mov ah,09h int 21h mov ax,4c00h int 21h end start 2.程序二代码WORLD .model small .stack .datakeynum = 255keybuf db keynum db 0 db keynum dup(0) .codestart: mov ax,data mov ds,ax mov

10、dx,offset keybuf mov ah,0ah int 21h mov dl,0ah mov ah,2 int 21h mov bx,offset keybuf+1 mov cl,bx mov ch,0again: inc bx mov dl,bx cmp dl,a disp cmp dl,z ja disp sub dl,20hdisp: mov ah,2 int 21h loop again mov ax,4c00h int 21h end start3.程序三代码ADD .model small .stack .datakeynum = 255keybuf db keynum d

11、b 0 db keynum dup(0) .codestart: mov ax,data mov ds,ax mov dx,offset keybuf mov ah,0ah int 21h mov dl,0ah mov ah,2 int 21h mov bx,offset keybuf+1 mov cl,bx mov ch,0again: inc bx mov dl,bx cmp dl,A disp cmp dl,Z ja disp ADD dl,20hdisp: mov ah,2 int 21h loop again mov ax,4c00h int 21h end start3.程序一结果4.程序二结果5.程序三结果四、思考与练习以与测评标准(1)汇编过程中 MASM hello和 MASM hello.ASM的结果是否一致。答:一致连接过程中 LINK hello和LINK hello.OBJ的结果是否一致。答:一致(3) 使用Word如何录入汇编语言源程序。答:复制到记事本即可。五、实验总结通过这次实验我

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论