logo资料库

MASM_6.11安装和使用方法很详细.doc

第1页 / 共10页
第2页 / 共10页
第3页 / 共10页
第4页 / 共10页
第5页 / 共10页
第6页 / 共10页
第7页 / 共10页
第8页 / 共10页
资料共10页,剩余部分请下载后查看
主题:[07计应(3)班] | | 浏览数(1568) | 评论数(0) | 2008-12-16 实验1 MASM 6.11的安装与设置 1 实验目的 ⒈ 实验 MASM 6.11的安装方法。 ⒉ 实验 MASM 6.11的启动方法。 ⒊ 实验 MASM 6.11的设置方法。 2 预习要求 ⒈ 认真阅读实验指导中实验1的内容。 ⒉ 了解本次实验的各项要求。 ⒊ 认真阅读教材中的附录。 3 实验内容 ⒈ MASM 6.11的安装 ⒉ MASM 6.11的启动 ⒊ MASM 6.11的设置 4 实验环境 ⒈ 硬件:PC 计算机。 ⒉ 软件:Windows 98操作系统。 5 实验过程 5.1 MASM 6.11的安装 5.1.1 安装前的准备工作 1. 安装 MASM 6.11的操作系统要求为 Windows 98。 2. 在 D∶\ 盘 或 别 的 硬 盘 上 建 一 个 文 件 夹 。 今 假 设 在 D∶\ 盘 上 建 立 一 个 如 下 的 文 件 夹 : “D∶\xxxxxyyyyyy”,其中“xxxxx”是班级名,“yyyyyy”是本人姓名。 3. 从教师机上下载文件夹“MASM611SETUP”及其内容,并放入文件夹“D∶\xxxxxyyyyyy”。 4. 在文件夹“D∶\xxxxxyyyyyy”下建立一个如下的工作目录:“D∶\xxxxxyyyyyy \mymasm”, 以备将来在工作的时候存放 MASM 6.11汇编语言源文件、目标文件、可执行文件。
5.1.2 安装过程 1. 打开 MASM611SETUP 文件夹,运行“Setup”。 2. 在出现“Microsoft MASM 6.11 Setup”屏幕之后,按“ENTER”键。 3. 在出现的“Microsoft MASM 6.11 Setup Main Menu”屏幕上, 选中“Install the Microsoft Macro Assembler” ,按“ENTER”键。 4. 在出现的“Microsoft MASM 6.11 Setup System Configuration”屏幕上, 选中“MS-DOS/Microsoft WINDOWS”,按“ENTER”键。 5. 在出现的“Microsoft MASM 6.11 Setup Microsoft Windows Files”屏幕上,对于“Install Files for Microsoft Windows?”,选中“Yes”,按“ENTER”键。 6. 在出现的“Microsoft MASM 6.11 Setup Programmer’s WorkBench”屏幕上,对于“Install PWB?”, 选中“Yes”,按“ENTER”键。 7. 在出现的“Microsoft MASM 6.11 Setup Brief Compatibility”屏幕上, 对于“Install Brief Compatibility?”,选中“No”,按“ENTER”键。 8. 在出现的“Microsoft MASM 6.11 Setup Mouse Driver”屏幕上, 对于“Copy the Microsoft Mouse Driver?”,选中“Yes”, 按“ENTER”键。 9. 在出现的“Microsoft MASM 6.11 Setup MAS.EXE Utility” 屏幕上, 对于“Install the MASM.EXE Utility?”,选中“Yes”, 按“ENTER”键。 10. 在出现的“Microsoft MASM 6.11 Setup Help Files”屏幕上, 对于“Copy the Help Files?”,选中“Yes”, 按“ENTER”键。 11. 在出现的“Microsoft MASM 6.11 Setup Sample Programs” 屏幕上, 对于“Copy the Sample Programs?”,选中“Yes”, 按“ENTER”键。 12. 在出现的“Microsoft MASM 6.11 Setup Destination Drive” 屏幕上, 对于 “Please Select the Destination Drive∶”中所列出的硬盘驱动器,可任选其一,此处选中“Hard Drive D”, 按“ENTER”键。 13. 在出现的“Microsoft MASM 6.11 Setup Executable Files” 屏幕上, 对于“D∶MASM611\BIN”,不改变,按“ENTER”键。 14. 在出现的“Microsoft MASM 6.11 Setup Library Files” 屏幕上, 对于“D∶\ MASM611\LIB”, 不改变,按“ENTER”键。 15. 在出现的“Microsoft MASM 6.11 Setup Include Files” 屏幕上, 对于“D∶\ MASM611\INCLUDE”, 不改变,按“ENTER”键。 16. 在出现的“Microsoft MASM 6.11 Setup Initialization Files” 屏幕上, 对于“D∶MASM611\INIT”,不改变,按“ENTER”键。 17. 在出现的“Microsoft MASM 6.11 Setup Help Files” 屏幕上, 对于“D∶MASM611\HELP”,不改变,按“ENTER”键。 18. 在出现的“Microsoft MASM 6.11 Setup Sample Files” 屏幕上, 对于“D∶MASM611\SAMPLES”,不改变,按“ENTER”键。 19. 此后,出现“Microsoft MASM 6.11 Setup Confirm Your Choices”屏幕,列出了前面各步所做出的各项选择的 清单,供用户校核。如果发现有选择不当的项目,依然可以进行修改。 修改的方法是:先用箭头键选中欲修改的项目,按“ENTER”键,然后再用箭头键选中“Yes”或“No”,最后再按 “ENTER”键。 如果校核无误,可以按“ENTER”键,以给出确认信息。 20. 此后,出现“Microsoft MASM 6.11 Setup Installing”屏幕,安装程序进行拷贝文件的操作,此时仅需等待一 会儿。
21. 拷贝文件操作结束之后,出现“Microsoft MASM 6.11 Setup Installation Complete”屏幕,按“CTRL+C”键, 退出安装。 5.2 MASM6.11的启动 MASM 6.11的人机操作接口有两类窗口:一类是 PWB(Programmer’s Work Bench)窗口,支持用户进 行汇编语言源程序文件的编辑、汇编和链接操作。另一类是 CodeView 窗口,支持用户进行各种调试操 作。 MASM 6.11的启动过程是:首先启动 PWB 的主窗口,然后通过 PWB 的主窗口,再启动 PWB 的其他子窗 口和启动 CodeView 类窗口。 PWB 主窗口的启动方法如下: 1. 打开“D∶MASM611\INIT”,把其中的文件“Tools.pre”改名为“Tools.ini”。 2. 打开“D∶MASM611\BIN”,运行其中的文件“PWB.EXE”,屏幕上即会出现 PWB 的主窗口。 5.3 MASM6.11 PWB 的设置 通常在使用 PWB 以前,需要进行设置,请按以下过程对 MASM 6.11 PWB 进行设置: 5.3.1 “Editor Settings”项目的设置 在 PWB 的主窗口中,单击“Options”。然后,在弹出的选单上,单击“Editor Settings”。此后, 会弹出“Editor Settings”窗口。接着,在“Editor Settings”窗口中,应进行开关“autosave”、 “envcursave”和“envprojsave”的修改设置,即把它们由“no”改为“yes”,方法如下: 1. 在“Switch List”项目下列出的开关清单上,单击欲修改设置的开关。 2. 在“Switch”项目下,进行开关的状态修改,每次一个开关。 3. 单击“Set Switch”。 4. 重复 A、B、C 三步,直至把欲修改设置的开关全部完成为止。 5. 单击“Save”。 6. 在弹出的“Save Editor Settings”窗口中,检查“Modified Switches List”项目下所列出 的开关清单应正确无误,之后单击“OK”。 7. 单击“Editor Settings”窗口中的“OK”。 8. 结束。 5.3.2 “Environment Variables”项目的设置 在 PWB 的主窗口中,单击“Options”。然后,在弹出的选单上,单击“Environment Variables”。 此后,会弹出“Environment Variables”窗口。接着,在 Environment Variables”窗口中,在原有 的“PATH=”行上增加“D∶\mymasm”和“D∶\MASM611\BIN”两项,从而把原有的“PATH=”行修改 为: PATH=D∶\mymasm;D∶\MASM611\BIN;C∶\WINDOWS;C∶\WINDOWS\COMMAND, 其中的“D∶\mymasm”,为用户在启动 PWB 之前自建的工作目录。增加如下项目: LIB=D∶\MASM611\LIB,
INCLUDE=D∶\MASM611\INCLUDE, INIT=D∶\MASM611\INIT HELPFILES=D∶\MASM611\HELP\*.HLP, ASMEX=D∶\MASM611\SAMPLES。 修改和增加项目的方法如下: 1. 在“Variable”项目下输入欲修改或增加的项目。 2. 单击“Set Variable”。 3. 重复 A、B 两步,直至欲修改和增加的项目全部完成为止。 4. 单击“OK”。 5. 结束。 5.3.3 “Build Options”项目的设置 在 PWB 的主窗口中,单击“Options”。然后,在弹出的选单上,单击“Build Options ”。此后, 会弹出“Build Options”窗口。接着,在“Build Options ”窗口中,选中“Use Debug Options”。 单击“OK”。结束。 6 实验结果处理 学生在按照5中要求完成 MASM 6.11的安装、启动、设置之后,报告老师检查、通过即可。 本次实验不要求写实验报告。
主题:[07计应(3)班] | | 浏览数(434) | 评论数(0) | 2008-12-16 实验2 熟悉 MASM 6.11汇编语言环境 1 实验目的 ⒈ 实验建立汇编语言源程序文件的方法。 ⒉ 实验建立可执行程序文件的方法。 ⒊ 实验调试可执行程序的方法。 2 预习要求 ⒈ 认真阅读实验指导中实验2的内容。 ⒉ 了解本次实验的各项要求。 ⒊ 认真阅读教材中的附录。 3 实验内容 ⒈ 建立汇编语言源程序文件。 ⒉ 建立可执行程序文件。 ⒊ 调试可执行程序。 4 实验环境 ⒈ 硬件:PC 计算机。 ⒉ 软件:Windows 98操作系统、MASM 6.11汇编语言。 5 实验过程 5.1 建立汇编语言源程序文件 建立汇编语言源程序文件的过程是:首先启动 PWB 主窗口,然后再调用编辑程序。具体操作按下列 步骤进行: 1. 启动 PWB。 2. 点击“File”。 3. 点击“New”。 4. 在“Editor”窗口弹出后,把下列汇编语言源程序打入计算机。 .model .data byte byte string index small ;初始化内存模型为代码段和数据段各一个 ;以下为定义数据段 20h,20h,41h,42h,43h,0dh ;空格、A、B、C 和回车的 ASCII 代码 ? ;预留一个字节单元
.stack .code next: start: mov mov mov inc cmp jz cmp jz jne nospace: mov mov ok: .exit end 40h ;定义堆栈区的大小为40个字节单元 ax,@data ds,ax bx,-1 bx string[bx],0dh ;(string)与0dh(回车的 ASCII 码)比较 ;以下为定义代码段 ;数据段基址传送到 ax ;初始化数据段 ds ;进入循环前,(bx)初始化为-1 ;(bx)增量1 nospace string[bx],20h ;(string)与20h(空格的 ASCII 码)比较 ;是空格时循环 next ok bl,0ffh index,bl start 5. 点击“File”。 6. 点击“Save as……”。 7. 在弹出的窗口中,在“File Name”项目下输入自己命名的汇编语言源程序文件名。假设此处 的汇编语言源程序文件命名为“space.asm”,事先所建立的工作目录为“mymasm”, 驱动器名为 “D∶”,则在“File Name”项目下应输入:“D∶\ mymasmspace.asm”。如果要使用与上述不同的 汇编语言源程序文件名、工作目录和驱动器名,则应作相应的修改。 8. 点击“OK”。 5.2 建立可执行程序文件 在本实验中,采用把汇编和链接两步操作连起来进行的方法。结果,可由“.asm”文件生成“.exe” 文件。具体操作按下列步骤进行: 1. 在 PWB 主窗口中,单击“File”。 2. 在弹出的选单上,单击“Open”。 3. 转到自建的“mymasm”工作目录中,打开“space.asm”文件。 4. 在 PWB 主窗口中,单击“Project”。 5. 在弹出的选单上,单击“Build:space.exe”。 6. 在弹出的“Build Operation Complete” 窗口中,可以单击“View Results”查看汇编和链 接的结果。如发现有错误产生时,右键单击该错误的数字代码,即可查看其原因。然后,重新编辑并 纠正源程序文件中的错误,之后再汇编和链接,并生成可执行程序文件,直至正确无误为止。 7. 结束。 5.3 调试可执行程序 调试可执行程序文件“space.exe”,应在 CodeView 类窗口中进行。常用的 CodeView 类窗口,主 要有 CodeView 主窗口,显示源程序(内存代码段 CS 中指令代码的反汇编)的窗口“source x”,显示 寄存器内容的窗口“register”,显示数据(内存数据段)的窗口“memory x”,监视变量值的窗口
“watch”,断点设置窗口“Set Breakpoint”,断点编辑窗口“Edit Breakpoints”和命令窗口 “command”。 5.3.1 “source x” 窗口的应用 “source x” 窗口包含“source 1”和“source 2”两个窗口,他们可以用不同的格式显示内存 代码段 CS 中的反汇编指令代码,以方便错误分析。这样,我们可以利用“source x” 窗口显示内存 代码段 CS 中的反汇编指令代码的功能,检查进入内存代码段 CS 中的指令代码是否符合程序的要求。 启动“source 1”窗口,既可以从 PWB 主窗口中启动,也可以从 CodeView 主窗口中的“Windows” 选单上启动。“source 2”窗口则仅能从 CodeView 主窗口中的“Windows” 选单上启动。 从 PWB 主窗口中,启动“source 1”窗口的方法如下: 1. 在 PWB 主窗口中,单击“Run”。 2. 在弹出的选单上,单击“Debug:space.exe”。 3. 在弹出 CodeView 主窗口的同时,“source 1”窗口也被启动,其名称为:“source 1 CS:IP space.asm”。 如欲启动“source 2”窗口,在 CodeView 主窗口中,单击“Windows” 选单项目,在弹出的选单 上,再单击“source 2”即可。 在使用“source x”窗口之前,如能进行必要的设置,则会给调试工作带来很大方便。在对“source x”窗口进行设置之前,必须先激活“source 1”或“source 2”窗口。以“source 1” 窗口为例, 具体的設置方法如下: 1. 在 CodeView 主窗口中,单击“Options”。 2. 在弹出的选单上,单击“Source 1 Window”。 3. 在弹出的“Source 1 Window Options”窗口中,主要的项目有“Display Mode”(显示方式 选项)和“Disassembly Options”(反汇编选项)。 在“Display Mode”项目下,共有三个单选项:“Source”(显示源程序指令代码行)、“Mixed Source and Assembly”(混合显示源程序指令代码行和反汇编指令代码行)和“Assembly”(显示反汇 编指令代码行)。每次设置仅可以从中选中一个。通常情况下,可以选中“Source”。 对于“Source” 选项,以格式“行号∶ 源程序指令代码”, 显示源程序指令代码行。对于 “Mixed Source and Assembly” 选项,一行是与“Source”方式下相同的源程序指令代码行,紧接 着的下一行是与“Assembly” 方式下相同的标准反汇编指令代码行。对于“Assembly” 选项,指令 代码行的显示格式与“Disassembly Options”项目下的设置相一致,即“CS∶IP 指令机器代码 反汇编指令代码”。 在“Disassembly Options”项目下共有四个复选项:“Show Machine Code”(显示指令机器代码)、 “Show addresses”(显示地址 CS∶IP)、“Lower Case Instructions”(用小写字母显示源程序指 令代码)和“Show Symbolic Name”(显示符号名)。可以根据需要选中他们。通常情况下,可以选中 “Show Machine Code”、“Show addresses”、和“Show Symbolic Name”。 4. 单击“OK”。 5.3.2 “register”窗口的应用 在调试程序的过程中,CPU 各寄存器内容的变化情况,对发现错误是至关重要的。为了有效地监视 CPU 各寄存器内容的变化情况,这就要用到“register“窗口。此窗口的启动与设置方法如下: 1. 在 CodeView 主窗口中,单击“Windows”。 2. 在弹出的选单上,单击“Register”。
3. 在弹出的“register”窗口中,不仅显示出了 CPU 各寄存器的内容,而且还可以进行修改。 4. 请注意记录 CPU 各寄存器内容的变化情况,以备在设置“memory x”窗口和分析错误时使用。 例如,在设置“memory x”窗口时,就要用到数据段寄存器 DS 和 ES 的内容。 在“register”窗口的上部,显示的是 CPU 各个寄存器的当前值。在隐含情况下,显示16位寄存器 的当前值。如欲显示32位寄存器的当前值,可按如下方法进行设置: 1. 在 CodeView 主窗口中,单击“Options”。 2. 在弹出的选单上,单击“32-Bit Registers”。 3. 命令“32-Bit Registers”具有开关性质,即该命令可以在16位寄存器显示和32位寄存器显示 之间切换。 在“register”窗口的下部,显示的是 CPU 中 FLAGS 寄存器中常用的8个标志位的状态,上边1行显 示的是 OF、DF、IF、SF 等4个标志位的状态,下边1行显示的是 ZF、AF、PF、CF 等4个标志位的状态, 8个标志位状态的显示方法如表2.1所示。 表2.1 8个标志位的位号、名称与状态的显示方法 标志位的状态 标志位在 FLAGS 寄存器中的位号与名称 位号 缩写 全称 b11 b10 b9 b7 b6 b4 b2 b0 OF DF IF SF ZF AF PF CF Overflow Flag Direction Flag Interrupt Flag Sign Flag Zero Flag Auxiliary carry Flag Parity Flag Carry Flag 1 OV DN EI NG ZR AC PE CY 0 NV UP DI PL NZ NA PO NC 5.3.3 “watch”窗口的应用 在调试程序的过程中,经常需要监视变量在程序执行过程中的变化情况,以便发现该程序所引用的 变量中的原始数据和执行该程序所产生的结果数据是否正确。这就要用到“watch”窗口。此窗口的启 动与设置方法如下: 1. 在 CodeView 主窗口中,单击“Data”。 2. 在弹出的选单上,单击“Add Watch”。 3. 在弹出的“Add Watch”窗口中,可在 Expression:[……]项目的会话框中输入变量名,例如 源程序文件“space.asm”中的变量名“index”。 注意,如果仅输入变量名时,系统以隐含方式显示变量的值,以下输入方式可以改变隐含方式: index,d—带符号十进制整数方式显示变量 index 的值。 index,u—无符号十进制整数方式显示变量 index 的值。 index,x—十六进制整数方式显示变量 index 的值。 4. 单击“OK”。 5.3.4 “Memory x”窗口的应用 “Memory x”窗口包含“Memory 1”和“Memory 2”两个窗口,他们可以显示内存数据段 DS 中不 同区域的数据。这样,我们可以利用“Memory x” 窗口显示内存数据段 DS 中不同区域数据的功能,
分享到:
收藏