汇编语言程序设计的实验环境及实验步骤

汇编语言程序设计的实验环境及实验步骤
1,汇编语言源程序编写好以后, 必须经过下列几个步骤才能在机器上运行: (1) 编辑源程序(生成.ASM 文件) (2) 汇编源程序(.ASM → .OBJ) (3) 连接目标程序(.OBJ → .EXE ) (4) 调试可执行程序(使用调试程序 Debug 调试生成的.EXE 文件) (5) 运行程序输出结果. 2, Windows 环境下的汇编语言集成编程环境的使用

环境下的汇编语言编程环境使用(基础与验证型) 实验一 DOS 环境下的汇编语言编程环境使用(基础与验证型)
实验要求和目的
1,掌握汇编语言程序设计的基本方法和技能; 2,熟练掌握使用全屏幕编辑程序 EDIT 编辑汇编语言源程序; 3,熟练掌握宏汇编程序 MASM 的使用; 4,熟练掌握连接程序 LINK 的使用.

实验涉及的主要知识单元
1,编辑源程序 ,
例如,编写程序,可以在 DOS 模式下用编辑程序 edit.exe 建立汇编语言源程序文件 Hello.asm,注意 文件名的扩展名必须是.asm. 也可以在 Windows 2000 或者在 Windows XP 环境下鼠标单击"开始"→"运行",在"运行"中输入"cmd" 进入 DOS 模式,运行 edit 软件,例如: C:> edit hello.asm

2,汇编语言源程序的汇编过程 汇编程序调入后,首先显示版本号,然后出现三个提示行.

第一个提示行为:Object filename [HELLO.OBJ]: 询问目标程序文件名,方括号内为机器规定的默认的文件名,通常直接按回车键,表示采用默认的文 件名(如上所示). 第二个提示行为: Source listing [NUL.LST]: 询问是否建立列表文件.若不建立,直接回车;若要建立,可以输入文件名 hello 再回车.列表文件 中同时列出源程序和机器语言程序清单,并给出符号表,有利于程序调试. 第三个提示行为:Cross-reference [NUL.CRF]: 询问是否要建立交叉索引文件.若不建立,则直接回车;若要建立,可以输入文件名. 一步完成. 最后的; 命令全部用默认选项, 不出现三个提示. 以上过程也可用 masm hello; ; 一步完成. 最后的; 表示 masm 命令全部用默认选项, 不出现三个提示.

2,目标程序的连接过程
在连接程序调入后,首先显示版本号,然后出现三个提示行.

第一个提示行为:Run File [HELLO.EXE]: 询问要产生的可执行文件的文件名.一般直接回车采用规定的隐含文件名. 第二个提示行为:List File [NUL.MAP]: 询问是否要建立连接映象文件.若不建立,则直接回车;若要建立,则输入文件名再回车.

第三个提示行为:Libraries [.LIB]: 询问是否用到库文件.若无特殊需要,则直接回车即可. 命令全部用默认选项,不出现三个提示. 以上过程也可使用 link hello;一步完成.最后的;表示 link 命令全部用默认选项,不出现三个提示. ;一步完成.最后的

下执行该程序: 4,当建立了可执行文件 HELLO.EXE 后,就可直接在 DOS 下执行该程序:

5,MASM 编译源文件后,用 DEBUG 调试可执行文件. , 编译源文件后, 调试可执行文件. 在"命令提示符"窗口下执行"DEBUG<文件所在路径+文件名>"指令

的使用(基础与验证型) 实验二 Debug 的使用(基础与验证型)
实验要求和目的
熟练掌握动态调试程序 DEBUG 的使用;

实验涉及的主要知识单元
启动 Debug 程序:在 DOS 状态下可以用下面的命令启动 Debug 程序: DEBUG [路径文件名.扩展名] Debug 后面的文件名及路径是指被调试程序的文件名及路径,Debug 后面的文件必须是程序的可执行 文件,其扩展名可以是.EXE 或.COM.在此命令后,DOS 将调试程序 Debug 调入内存,Debug 接着将被调 程序送入内存.比如:DEBUG 123.EXE

的主要命令如下: 调试程序 Debug 的主要命令如下:
(一)显示内存单元内容的命令 D 格式(1):-D 地址 从指定地址开始,显示 128 个字节的内容,每一行的左边显示段内偏移地址,接着显示 16 个单元的 内容,最右边区域则显示这一行的 16 个单元所对应的可显示的字符.若无可显示的字符,则用圆点(小数 点)填充. D 命令中的地址可为段内偏移量, 也可为段基址和段内偏移量两部分, 中间用冒号隔开, 1680: 如 0110, 即指段基址为 1680H,段内偏移量为 0110H.Debug 中所显示的数据均为十六进制数,且省去了后面的 H 标志. 格式(2):-D 范围 将显示指定地址范围内的内存单元的内容,起始地址可由段基址及段内偏移量两个部分组成,中间用 冒号":"隔开,也可以只指出段内偏移量,而此时的段基址在 DS 中.这里所说的范围包含起始地址和 结束地址.比如 –D DS:1000 1020 将显示数据段偏移地址为 1000H 到 1020H 的内容. (二)修改内存单元内容的命令 E 格式(1):-E 地址 内容表 它的功能是用给定的内容表去代替所指定的内存单元的内容. 例如: E DS:0110 41 'CLOSE' 41 该命令执行后,将用列表中的 7 个字符填入从 DS:0110 到 DS:0116 的 7 个存储单元中. 格式(2):-E 地址 它的功能是可以连续地逐个修改内存单元的内容.当屏幕上显示指定单元的地址和内容之后,可采取 下列办法: ①若指定单元的内容需要修改,则将新的内容的十六进制数输入,再按空格键,修改便告完成,然后 显示下一个存储单元的地址及内容,若需要修改,可进行同样的操作.若某一个单元的内容不需要修改, 而操作又要进行下去,则可直接按空格键. ②若需要显示前一个单元的地址和内容,则输入连接号′-′,若要修改,则输入新的内容;若显示前 一个单元的地址和内容仍要修改,则可进行同样的操作;若显示的内容不需要修改,则可直接按′-′键, 使该操作由高地址向低地址单元连续不断地进行. ③按<CR>键,结束 E 命令.

(三)检查和修改寄存器内容的命令 R 格式(1):R 此时将显示所有寄存器的内容和全部标志位的状态,以及现行 CS:IP 所指的机器指令代码和反汇编 符号. 格式(2):R 寄存器名 该格式可用于检查和修改指定寄存器的内容.若不修改其内容,可按<CR>键,若需要修改其内容, 可以输入 1-4 个十六进制数,再按<CR>键. 格式(3):RF 该格式可用于显示标志和修改标志位状态. 当系统给出标志位状态后,可采取下列办法: ①若不需要修改任一标志位,可按<CR>键. ②若需要修改一个或多个标志位,可输入其相反的值.各标志位之间可以无空格且与顺序无关,修改 后按<CR>键. 由于标志位状态显示时,是用下列特殊符号表示的,因而修改时,只要输入规定的符号即可.下面是 标志名和状态符号的对照表: 标志名置 位符号复 位符号 溢出标志 OF(是/否) OV NV 方向标志 DF(减/增) DN UP 中断标志 IF(允许/禁止) EI DI 符号标志 SF(负/正) NG PL 零标志 ZF(是/否) ZR NZ 辅助进位标志 AF(是/否) AC NA 奇偶校验标志 PF(偶/奇) PE PO 进位标志 CF(是/否) CY NC 只有追踪标志 TF,不能用指令直接修改. 例如:输入 RF 命令,系统可能作出如下响应: OV DN EI NG ZR AC PE CY 若现在要修改奇偶,零,中断和溢出标志位,可在光标处输入: PO NZ DI NV<CR> (四)运行程序命令 G 格式:G [=地址][地址[地址…]] 该命令可以在程序运行中设置断点.它是 Debug 程序进行程序调试的主要命令之一. 示例:-g 001a 则执行从当前 cs:ip 至 001a 的指令,注意:地址设置必须从指令的第一字节设起. ①第一个参数"=地址"规定了程序执行的起始地址,以 CS 内容作段地址,等号后面的地址只需给出 地址偏移量.此时,命令 G 与地址之间的等号不能省去. 如果在 G 命令执行前,已经设置了 CS 值和 IP 值,则也可以直接用 G 命令,从指定地址执行程序. ②格式中后面给出的地址是指断点地址,最多可设置 10 个断点.当程序执行到一个断点时,就停下 来,显示 CPU 各寄存器的内容和标志位的状态,以及下一条待执行的指令,被调试程序的所有断点全部 被取消,并返回 Debug. ③地址参数所指的单元,必须包含有有效的 8088 指令的第一个字节,否则将产生不可预料的结果. ④堆栈必须至少包含有 6 个可用字节,否则也将产生不可预料的结果. ⑤若断点地址只包括地址偏移量,则认为段地址在 CS 寄存器中.

(五)追踪命令 T 格式(1):T [=地址] 该命令可以在指令执行中进行追踪,若略去地址,则从 CS:IP 现行值执行.每一次 T 命令都执行一 条指令. 格式(2):T [=地址][值] 此时,它可对多条指令进行追踪,即在执行了由值所指定的若干条指令之后,停止执行并显示各寄存 器的内容和各标志位,还指出下一条待执行的指令. (六)汇编命令 A 若在调试目标程序的过程中,要求改写或增添一段目标程序,则可以用 A 命令直接在 Debug 下实现. 格式:A [地址] 该命令可以从指定地址开始,将输入的汇编语言语句立即汇编成机器代码,连续存放在内存单元中. 在程序输入完毕后,最后一行不输入内容,直接按回车键,即可返回 DEBUG 程序,还可用反汇编命令 U 对刚输入的内容进行反汇编,以验证输入的程序是否正确. 使用 A 命令应遵守以下规则: ① 所有输入数值,均为十六进制数. ② 前缀助记符,必须在相关指令的前面输入,可以在同一行,也可以在不同行输入. ③ 段超越助记符为 CS:, DS:, ES:, SS:. ④ 远调用时的返回指令助记符用 RETF. ⑤ 使用串操作指令时,助记符中必须注明是字节还是字传送. ⑥ 汇编语言能自动汇编短,近和远的转移及近和远的调用,也能由 NEAR 和 FAR 前缀来超越. 例如: 0110:0600 JMP 602;短转移 0110:0602 JMP NEAR 605;近转移 0110:0605 JMP FAR 60A;远转移 第一条 JMP 指令中含有一个字节偏移量. 第二条 JMP 指令中含有两个字节偏移量. 第三条 JMP 指令中含有两个字节的偏移量及两个字节的段地址. ⑦ 当 DEBUG 不能确定某些操作数涉及的是字类型存储单元还是字节类型的存储单元时,在这种情 况下,必须用前缀"WORD PTR"或"BYTE PTR"来加以说明. 例如: NEG BYTE PTR [128] DEC WORD [SI] ⑧ 当 Debug 不能确定一个操作数是立即数还是存储单元的地址时,可以把地址放在方括号中. ⑨ 两个最常用的伪指令 DB 和 DW 可以在 A 命令中使用,用来直接把字节或字的值送入相应的存储 单元. 例如: DB 2,5,3,4,′THIS IS AN EXAMPLE′ DW 6000, 2000, 7000,′BA′ ⑩Debug 支持所有形式的寄存器间接寻址命令. 例如:ADD BX,74[BP+3][SI-5] POP[BX+DI] (七)反汇编命令 U 格式(1):U 地址

该命令从指定的地址开始,反汇编 32 个字节.若略去指定地址,则以上一个 U 命令反汇编的最后一 条指令地址的下一条指令地址作为起始地址; 若没有用过 U 命令, 则以由 Debug 初始化的段寄存器的值作 段地址,以 100 作为地址偏移量. 格式(2):U 范围这种格式的命令,可以对指定范围的内存单元进行反汇编,范围可以由起始地址,结 束地址(只能包含地址偏移量)或起始地址及长度来指定.其命令格式如: U 04BA:100 0108 或 U 04BA:0100 L7 两者是等效的. (八)输入命令 I 格式:I 端口地址 该命令从指定端口输入一个字节并显示. 例如: I 2E8 C C 它表示所显示的是从 02E8 端口输入的一个字节为 CC. (九)输出命令 O 格式:O 端口地址 字节值 其功能是向指定的端口输出一个字节. 例如:O 2E8 12 它表示将一个字节 12H 送到输出端口 2E8. (十)命名命令 N 格式:N 文件标识符[文件标识符] 该命令用给定的两个文件标识符格式化在 CS:5C 和 CS:6C 的两个文件控制块中(若在调用 Debug 时具 有一个文件标识符,则它已格式化在 CS:5C 的文件控制块中),文件控制块是将要介绍的装入命令 L 和写 命令 W 所需要的. N 命令能把文件标识符和别的参数放至 CS:81 开始的参数保存区中. CS:80 中保存输入的字符个数, 在 寄存器 AX 保存前两个文件标识符中的驱动器标志. 例如: A> DEBUG<CR> N TEST<CR> L<CR> N 命令后, L 命令可将 TEST 调入自己的 CS:100 开始的存储区中. 用 若对正在调试的程序 TEST 进行 调试时,需要用到其它的文件标识符及其它参数,也可用 N 命令加以实现.; 例如: A> DEBUG TEST<CR> N 文件 1 文件 2<CR> (十一)装入命令 L 格式 1: L <地址> <驱动器号> <起始逻辑扇区> <所读扇区个数 n> 其中<地址>的缺省值为 CS:100.逻辑扇区可由物理扇区号换算得到,以双面双密度盘为例:物理扇区 是按 0 面 0 道 1 区,0 面 0 道 2 区,……,0 面 0 道 9 区,0 面 1 道 1 区,……,0 面 39 道 9 区,1 面 0 道 1 区,……,1 面 39 道 9 区排列.而逻辑扇区与物理扇区号的对应关系为物理扇区 0 面 0 道 1 扇区至 9 扇 区,逻辑扇区号为 0—8;物理扇区 1 面 0 道 1 扇区至 9 扇区,逻辑扇区号为 9—11H;物理扇区 0 面 1 道 1 扇区至 9 扇区,逻辑扇区号为 12—1AH;…….这样每道先 0 面后 1 面一直排下去.

其中<驱动器号>为 0,1 或 2,0 表示 A 驱,1 表示 B 驱,2 表示硬盘. 功能: 将<驱动器号>指定的盘上,从<起始逻辑扇区>起,共 n 个逻辑扇区上的所有字节顺序读入指定 内存地址开始的一片连续单元.当 L 后的参数缺省时,必须在 L 之前由 N 命令指定(或进入 DEBUG 时一并 指出)所读驱动器文件名.此时 L 执行后将该文件装入内存. 例如:-N EXAMPLE <Enter> -L <Enter> 将当前驱动器上的 EXAMPLE 文件装入 CS:100 起始的一片内存单元. 格式 2:L 地址或 L 该命令把已在 CS:5C 中格式化的文件控制块所指定的文件装入到指定区域中. 若省略地址,则装入到 CS:100 开始的内存区域中. 若是带有扩展名.COM 或.EXE 文件,无论命令中是否指定了地址,一律装入到 CS:100 开始的内存区 域中去. 通常在 BX 和 CX 中包含了所读入文件的字节数,但对具有扩展名.EXE 文件,则 BX 和 CX 中还包含 实际程序长度. (十二)写命令 W 功能: 为 L/W 命令指定待装入/写盘文件 格式 1:W <地址> <盘号> <起始逻辑扇区> <所写逻辑扇区数 n> 功能:与 L 命令不同的地方是将内存从<地址>起始的一片单元内容写入指定扇区.只有 W 而没有参 数时,与 N 命令配合使用将文件写盘.该命令把由地址所指定的内存区域中的数据写入指定的驱动器.若 地址中只包含偏移量,则段地址在 CS 中. 其中,扇区号决定了写入起始扇区;区段数决定了写入的区段个数;扇区号和区段数均用十六进制数 表示. 格式 2:W 地址或 W 该命令把指定内存区域中的数据,写入到由 CS:5C 处的文件控制块所规定的文件中去.若省略地址, 则内存区域从 CS:100 开始. 对于扩展名为.EXE 或.HEX 文件不能写入.因为这些文件的写入要用一种特殊格式,而此格式 Debug 程序不支持. (十三)退出 Debug 命令 Q 格式:Q 该命令退出 Debug 程序并返回 DOS. Q 命令并不把内存中的文件存盘,若需要存盘的话,应在退出前用 W 命令写入磁盘.

四,实验内容与步骤
1,实验内容 (1) 进入和退出 Debug 程序 (2) 学会 Debug 中的 D 命令,E 命令,R 命令,T 命令,A 命令,G 命令,U 命令,N 命令,W 命令等的 使用. (3) 利用 Debug,验证乘法,除法,加法,减法,带进位加,带借位减,堆栈操作指令,串操作指令 的功能. (4)使用 Debug 调试程序调试汇编程序.

2,实验步骤 (1) 在 DOS 提示符下,进入 Debug 程序. (2) 详细记录每一步所用的命令,以及查看结果的方法和具体结果. (3)现有一个双字加法源程序如下,其中存在错误.现假设已汇编,连结生成了可执行文件 HB.EXE, 存放在 d:\MASM 目录下.请使用 Debug 对其进行调试. Code SEGMENT ASSUME CS:code,DS:code ORG 100H Start:MOV AX,code MOV DS,AX MOV SI,200H MOV AX,[SI] MOV DI,204H ADD AX,[DI] MOV [SI+8],AX MOV AX,[SI+2] ADD AX,[DI+2] MOV [SI+0AH],AX MOV AX,4C00H INT 21H ORG 200H ;取第一个数的首地址 ;将第一个数的低 16 位取到 AX ;取第二个数的首地址 ;第一个数和第二个数的低 16 应相加 ;低 16 位相加的结果送到 208H 和 209H 单元 ;取第一个数的高 16 位送到 AX 中 ;两个数的高 16 位相加 ;高 16 位相加的结果送到 20AH,20BH 单元 ;使用 DOS 的 4CH 号功能调用 ;进入功能调用,返回 DOS ;从 200H 处开始存放下列数据 ;从 100H 处开始存放下列指令 ;将 DS 置成 code 段的首地址

DD 12345678h,654387A9h,0h ;被加数,加数,和 Code ENDS END start 调试过程: ① 进入 Debug 并装入可执行文件 HB.EXE D:\MASM>Debug HB.EXE<Enter> ② 观察寄存器初始状态 -R <Enter> AX=0000 DS=1892 BX=0000 CX=020C ES=1892 SS=18A2 MOV DX=0000 CS=18A2 SP=0000 BP=0000 SI=0000 IP=0100 DI=0000

NV UP EI PL NZ NA PO NC

18A2:0100 B8A218

AX,18A2

注:(1)以上显示的寄存器值,可能和你的电脑显示的不一样. (2)Debug 中默认的进制是十六进制. ③ 以单步工作方式开始运行程序 首先用 T 命令顺序执行用户程序的前 l 两条指令,将段寄存器 DS 预置为用户的数据段.

-T <Enter> AX=18A2 DS=1892 BX=0000 CX=020C ES=1892 SS=18A2 MOV DX=0000 CS=18A2 SP=0000 BP=0000 SI=0000 IP=0103 DI=0000

NV UP EI PL NZ NA PO NC

18A2:0103 8ED8 -T <Enter> AX=18A2 DS=18A2

DS,AX

BX=0000 CX=020C ES=1892 SS=18A2 MOV

DX=0000 CS=18A2

SP=0000 BP=0000 SI=0000 IP=0105

DI=0000

NV UP EI PL NZ NA PO NC

18A2:0105 BE0002

SI,0200

④ 观察用户程序数据段初始内容 -D 200 20F <Enter> 18A2:0200 78 56 34 12 A9 87 43 65-00 00 00 00 00 74 13 50 ⑤ 连续工作方式运行程序至返回 DOS 前(设断点) ,查看运行结果.为此,现使用 U 命令反汇编. -U 100 <Enter> 18A2:0100 B8A218 18A2:0103 8ED8 18A2:0105 BE0002 18A2:0108 8B04 18A2:010A BF0402 18A2:010D 0305 18A2:010F 894408 18A2:0112 8B4402 18A2:0115 034502 18A2:0118 89440A 18A2:011B B8004C 18A2:011E CD21 可见,要执行 10 条指令,至 011B 处停止 -G=100,011B <Enter> AX=7777 BX=0000 CX=020C DS=18A2 ES=1892 SS=18A2 18A2:011B B8004C -D 200 20F <Enter> 18A2:0200 78 56 34 12 A9 87 43 65-21 DE 77 77 43 43 83 06 xV4...Ce!.wwCC.. MOV DX=0000 SP=0000 BP=0000 CS=18A2 IP=011B AX,4C00 SI=0200 DI=0204 MOV MOV MOV MOV MOV ADD MOV MOV ADD MOV MOV INT AX,18A2 DS,AX SI,0200 AX,[SI] DI,0204 AX,[DI] [SI+08],AX AX,[SI+02] AX,[DI+02] [SI+0A],AX AX,4C00 21 xV4...Ce.....t.P

NV UP EI PL NZ NA PE NC

和为 7777DE21H,正确. ⑥ 再取一组数据,查看运行结果.为此,首先用 E 命令修改数据. -E 200 CD,AB,78,56,90,EF,34,12 <Enter> -D 200 20F <Enter> 18A2:0200 CD AB 78 56 90 EF 34 12-21 DE 77 77 43 43 83 06 -G=100,11B <Enter> AX=68AC BX=0000 CX=020C DS=18A2 ES=1892 SS=18A2 18A2:011B B8004C -D 200 20F <Enter> 18A2:0200 CD AB 78 56 90 EF 34 12-5D 9B AC 68 43 43 83 06 和为 68AC9B5DH,错误.说明程序有问题. ⑦ 再将断点设在完成低位字加法后,查看运行结果. -G=100,112 <Enter> AX=9B5D BX=0000 CX=020C DS=18A2 ES=1892 SS=18A2 18A2:0112 8B4402 -D 200 20F <Enter> 18A2:0200 CD AB 78 56 90 EF 34 12-5D 9B AC 68 43 43 83 06 低位和为 9B5D,正确.说明错误可能出在后面 ⑧ 使用 T 命令从刚才的断点处向后单步调试,查看运行结果. -T=112 <Enter> AX=5678 BX=0000 CX=020C DS=18A2 ES=1892 SS=18A2 18A2:0115 034502 -T <Enter> AX=68AC BX=0000 CX=020C DX=0000 SP=0000 BP=0000 SI=0200 DI=0204 ADD DX=0000 SP=0000 BP=0000 CS=18A2 IP=0115 AX,[DI+02] SI=0200 DI=0204 ..xV..4.]..hCC.. MOV DX=0000 SP=0000 BP=0000 CS=18A2 IP=0112 AX,[SI+02] SI=0200 DI=0204 ..xV..4.]..hCC.. MOV DX=0000 SP=0000 BP=0000 CS=18A2 IP=011B AX,4C00 SI=0200 DI=0204 ..xV..4.!.wwCC..

NV UP EI PL NZ NA PE NC

NV UP EI NG NZ NA PO CY DS:0202=5678

NV UP EI NG NZ NA PO CY DS:0206=1234

DS=18A2 ES=1892 SS=18A2 18A2:0118 89440A MOV

CS=18A2 IP=0118 [SI+0A],AX

NV UP EI PL NZ NA PE NC DS:020A=68AC

AX 寄存器的结果为 68AC,而应为 68AD.可见是本条加法指令使用错误,这里应使用带进位加法指令. ⑨ 使用 A 命令装入正确指令后再次运行,察看结果. -A 115 <Enter>

18A2:0115 ADC AX,[DI+02] <Enter> 18A2:0118 <Enter> -G=100,11B <Enter> AX=68AD BX=0000 CX=020C DS=18A2 ES=1892 SS=18A2 18A2:011B B8004C -D 200 20F <Enter> 18A2:0200 CD AB 78 56 90 EF 34 12-5D 9B AD 68 43 43 83 06 和为 68AD9B5DH,正确.对于这样一个简单程序一般来说不会再有问题.退出后修改源程序即可. ⑩ 退出 -Q <Enter> D:\> 需要说明的是此程序很简单, 只需使用 T 命令逐条单步调试即可. 本例采用的调试方法似乎过于繁琐, 但这是为了说明程序调试的一般方法,以便读者调试复杂程序时借鉴. ..xV..4.]..hCC.. MOV DX=0000 SP=0000 BP=0000 CS=18A2 IP=011B AX,4C00 SI=0200 DI=0204

NV UP EI PL NZ NA PO NC

实验要求与提示
1,实验要求 (1)熟练掌握 Debug 的命令; (2)熟练掌握使用 Debug 调试汇编程序; (3)回答思考问题; (4)记录实验结果. 2,实验提示 一般使用 Debug 调试汇编程序的步筹如下: (1) 调用 DEBUG,装入用户程序 (2) 观察寄存器初始状态 (3) 以单步工作方式开始运行程序 (4) 观察用户程序数据段初始内容 (5) 继续以单步工作方式运行程序 (6) 连续工作方式运行程序 (7) 修改程序和数据 (8) 运用断点调试程序


相关文档

汇编语言程序设计的实验环境及上机步骤
汇编语言程序设计的试验环境及实验步骤
汇编实验环境及上机步骤
深圳大学汇编语言程序设计的实验环境及上机步骤
实验一 汇编语言程序设计的实验环境及上机步骤
汇编实验环境及上机步骤常用指令
汇编语言程序设计过程及实例
实验五 熟悉汇编语言环境及建立汇编的过程00
实验一 C语言的运行环境和运行过程
实验一C++开发环境与程序设计步骤
学霸百科
电脑版 | | 学霸百科