汇编语言部分 实验
实验一 Turbo Debug使用简介
着重介绍如何使用集成环境Turbo Debug来对程序进行调试。
TD命令行格式
TD.EXE程序是DOS应用程序,用命令行方式运行,TDDOS命令行格式为:
TD  [option]  [program_name [program_args]]
[]中的内容表示可选项,可有可无,根据具体情况选择。[option]可以是下面任意一项或几项的组合,视具体调试要求而定;program_name是待调试的文件,默认的后缀名是.EXE
program_args是待调试程序所需的入口参数。注意option中的命令只能放在调试程序名的前面,即program_name的前面。
TD命令选项参数包括一个连字符-,后面跟一个或多个字母及一个文字或数字变量。TD命令由配置文件的默认设置。要使配置文件中对TD命令的设置无效,需在命令后再加一个连字符-。如:td -c- mypro arg1 arg2各选项功能如表1-1所示。
1-1  TD选项功能表
选项
功能
备注
-c<file>
使用配置文件
-do,-dp,-ds
屏幕更新:do=另外显示,dp=翻页,ds=屏幕切换
-h,-?
显示帮助信息屏
-i
允许处理本身的转换
-k
允许击键记录
-l
汇编程序启动,并显示汇编命令,但是不对起始命令进行编译。
-m<#>
设置堆栈段大小,#应该是具体数字,如<8>表示堆栈段为8K字节
-p 
鼠标支持
-r
使用串行口远程调试,低速
-rn<L;R>
用本地计算机L和远程的计算机R通过网络调试
-rp<#>
为远程连接设置串行通信口COM ##应该是12
-rs<#>
远程连接通信速度:1=最慢速,2=慢速,3=中速,4=快速
-sc
禁止检查标识符
-sd<dir>
源文件目录<列表>
-sm<#>
设置备用标识符存储空间大小,#应该是具体数字表示#K字节(最大256KB),如<8>表示备用标识符存储空间为8K字节
-vg
全屏幕保存
-vn
43/50行显示选项禁止
-vp 
允许EGA/VGA调板设置参数保存
-w
调试远程的Windows程序(必须同时使用-r
-y<#>
#KB(千字节)设置覆盖区域空间大小
-ye<#>
16KB/页为单位来设置扩展内存覆盖区域空间大小,#应该是具体数字
待调试的文件名是填写被调试的可执行程序名,该程序名同样可带可不带,因为在TD环境中有打开一个调试文件的菜单对话框,通过这个对话框来选择被调试的程序(详见TD的菜单功能介绍)。如果待调试的程序名,表示你所编写的源程序exp0.asm经过汇编、连接后产生的可执行程序,命令行格式为:,其中表示回车键。如果不与TD.exe在同一文件夹中,则根据当前路径书写,当前路径在td.exe,如果E:\MYFILE文件夹中,则命令行格式为td e:\;当前路径在,如果td.exeE:\BC\BIN文件夹中,则命令行格式为e:\bc\bin\。或者用PATH命令设置路径随便在哪个路径下可运行,具体参看实验四。
可执行程序附带参数要根据你设计的程序需要与否来填写,例如Win2000中有一个目录树显示文件tree(假设Win2000安装在C盘),调试该程序可以使用如下方式:
1) 不带参数为td c:\winnt\system32\tree表示调试tree程序,结果仅为目录数,按ASCII字符及图形来显示;
2) /ftd c:\winnt\system32\tree /f表示调试tree程序,结果不仅有目录树,并且还包括目录下的文件,按ASCII字符及图形来显示;
3) /atd c:\winnt\system32\tree /a表示调试tree程序,结果仅为目录数,按ASCII字符及扩展字符来显示;
4) /f /atd c:\winnt\system32\tree /f /a表示调试tree程序,不仅有目录树,并且还包括目录下的文件,按ASCII字符及扩展字符来显示;
5) /?td c:\winnt\system32\tree /?帮助信息显示在屏幕上。
运行TD的方法
运行TD的方法主要介绍2种,具体方法如下:
1、 WINDOWS下操作系统启动方法
目前通用微机普遍采用WINDOWS系列操作系统,如Win9xWin2000WinXPWinMENT等,以Win2000为例,首先打开存有TD.EXE的文件夹,如e:\bc\bin文件夹中有TD.EXE,打开本地磁盘(E:)中的BC文件夹下的BIN文件夹,到TD.EXE点击鼠标右键并且移动鼠标到属性(R)再击左键,弹出TD属性中的常规窗,鼠标点击得到图1-1所示的程
序对话框。图1-1所示的命令行(L)表示运行该程序及其所在路径,可以按要求在其后加选择项、被调试程序文件名及其所需的附带参数,例如E:\BC\BIN\TD.EXE EXP0.EXE表示运行TD调试缺省路径文件夹的程序。由于TDDOS程序,故要求各级路径及被调试程序文件名均不超过8ASCII字符,最好不带汉字及全角的字符。工作目录(W)表示进入TD调试环境后的缺省路径,如果你的实验程序放在E:\MYFILE文件夹中,可以填写E:\MYFILE,则进入TD调试环境后的缺省路径为E:\MYFILE,如果不填写任何内容,表示E:\BC\BIN就是缺省路径。
如果鼠标点击屏幕将得到图1-2所示的屏幕对话框。我们仅关注用法一拦,该拦可选全屏幕(F)窗口(W),其中全屏幕(F)表示DOS的全屏幕方式显示TD调试环境,是字符环境,除了支持键盘操作,还支持DOS字符方式的鼠标功能,窗口(W)表示Win2000窗口下显示TD调试环境,该环境为图形方式,仅支持键盘操作,不支持鼠标功能。建议大家选择全屏幕(F) 以便操作。
TD属性设置好后即可在Win2000TD.EXE文件双击,从而TD得到运行。
 
1-1  TD属性中程序对话框                  1-2  TD属性中屏幕对话框
2、 操作系统为DOS环境的TD运行方法
进入DOS操作系统的方法如1-3所示。进入DOS操作系统后,如果你要调试的程序是,存放在E:\MYFILE文件夹中,则按如下方式操作:
1e:
2cd\
3cd myfile
4E:\BC\BIN\TD EXP0.EXE
其中,大小写无所谓,第4行表示运行E:\BC\BIN文件夹中TD.EXE调试程序,对EXP0.EXE进行调试。
TD的基本使用
Turbo DebugBorland公司推出的一个集成调试软件,可以调试DOSWindows程序。比起更传统的debug,它的功能强大,使用方便。如果只要调试DOS程序,仅需要TD.EXE一个文件(476K)即可。图13Turbo Debug的界面。它的CPU窗包括代码段子视窗、寄存器子视窗、标志位子视窗、堆栈段子视窗和数据段子视窗。
屏幕顶部显示的是菜单条,为了从菜单条处下拉出一个菜单,一般可以直接用鼠标点击菜单(注意Win操作系统的窗口显示时不支持鼠标操作),或者要先按F10功能键、后再用键使想要的选项变为高亮、最后按ENTER键即可。另一种方法是按住Alt+菜单名称的第一个字母组合键。
TD除了键盘操作外,我们还可以很容易地通过鼠标对界面进行操作。例如要修改窗口外观的大小,我们可以按ALTO,打开菜单中的Option项(图1-4),从中选取Display options来打开一个对话框(图1-5)。也可以直接用鼠标点击菜单上的Options项后得到。图1-5的对话框允许我们修改窗口的大小,通过改变Screen Lines的值。
1-4  Option菜单
1-5  Display options对话框
F5快捷键是TD菜单中windows下拉菜单的Zoom来把视窗窗在最大化和最小化间切换的键,也可以直接用鼠标点住窗口右下角并拖动到理想的位置(图1-6)。
1-6 拖动右下角改变窗口大小
TD还有一个优势就是它的状态行提示的快捷键。屏幕底部的状态行显示的是相关的功能键及其用途,如图1-7所示
1-7  状态行提示
状态行的内容会随用户输入的不同而发生变化(例如菜单发生变化、命令对话框的变化等)。若按住Alt一会儿,可以发现状态行的内容改变为用户可用Alt键获取的功能键信息。按住Ctrl一会儿,状态行显示的命令是当前视窗窗口部分所对应的局部菜单命令(LOCAL MENU COMMAND)的热键。它们随用户所在的窗口类型和所在视窗不同而发生变化。一旦进入菜单系统,状态行将再次改变为显示当前高亮度菜单选择的功能。用ESC键可以离开菜单系统。
TD的菜单功能介绍
一. 系统菜单
菜单命令
使用说明
快捷键
Repaint desktop
重新显示整个屏幕
Restore standard
恢复标准的windows设置
About…
获取Turbo Debugger的信息
二. File菜单
菜单命令
汇编语言指导书使用说明
快捷键
Open…
打开一个要调试的新程序
Change dir…
改变缺省工作路径
Get info…
显示调试程序的当前信息
Dos shell
运行DOS命令处理机
Resident
终止T D并驻留内存
Symbol load…
加载一个新的符号表
Table relocate
符号表指定新的段基地址
Quit 
退出Turbo Debugger
Alt-X
三. Edit菜单
菜单命令
使用说明
快捷键
Copy
复制项目
Shift-F3
Paste
粘贴项目
Shift-F4
Copy to log
将项目复制入日志文件中
Dump pane to log
将当前窗转入日志文件中
四. View菜单
菜单命令
使用说明
快捷键
Breakpoints
打开断点窗
Stack
打开堆栈窗
Log
打开日志窗
Watches
打开监视窗
Variables
打开变量窗
Module…
打开模块窗
F3
File…
打开文件窗
CPU
打开CPU
Dump
打开转储窗口
Registers
打开CPU寄存器窗
Numeric processor
打开数字协处理器窗
Execution history
打开执行任务历史窗
Hierarchy
打开类的分层窗
Windows messages
打开Windows消息窗
Clipboard
打开粘贴板窗
Another
Module…
打开另模块窗
Dump
打开另转储窗口
File…
打开另文件窗口
Run菜单
菜单命令
使用说明
快捷键
Run
全速运行
F9
Go to curse
运行到光标处停止
F4
Trace into
一条一条跟踪运行程序指令
F7
Step ovrer
跳过指令
F8
Execute to…
执行到指定的指令代码处
Alt-F9
Until return
一直运行直到返回
Alt-F8
Animate…
以动画方式运行程序
Back trace
向后跟踪
Alt-F4
Istruction trace
指令跟踪
Alt-F7
Arguments…
参数
Program reset
程序复位
Ctrl-F2
Run部分二级菜单
1. Execute to…
显示信息说明
在空格中输入要执行停止的指令地址,点击OK确定,Clip…从粘贴板粘贴指令地址,Cancel取消,Help获取帮助信息
2. Animate…
显示信息说明
在空格中输入10倍的动画间隔时间(单位:秒),点击OK确定,Clip…从粘贴板粘贴时间,Cancel取消,Help获取帮助信息
3. Arguments
显示信息说明
在空格中输入命令行参数,点击OK确定,Clip…从粘贴板粘贴命令行参数,Cancel取消,Help获取帮助信息
六.Breakpoints菜单
菜单命令
使用说明
快捷键
Toggle
切换
F2
At
设置断点地址
Alt-F2
Changed memory global
改变全局断点地址
Expressioon true global
全局条件表达式
Hardware breakpoint
硬件断点
Delete all
删除全部
七.Data菜单

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。