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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

本文(实验一掌握DEBUG的基本命令及其功能.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

实验一掌握DEBUG的基本命令及其功能.docx

1、实验一掌握DEBUG的基本命令及其功能实验一-掌握DEBUG-的基本命令及其功能实验一 掌握DEBUG 基本命令及其功能 【上篇】 查看CPU和内存,用机器指令和汇编指令编程一实验目的:掌握DEBUG 的基本命令及其功能掌握win7 win8 使用DEBUG功能二实验内容:1. 预备知识:Debug的使用(1) 什么是Debug?Debug是DOS、Windows都提供的实模式(8086方式)程序的调试工具。使用它,可以查看CPU各种寄存器中的内容、内存的情况和在机器码级跟踪程序的运行。(2) 我们用到的Debug功能用Debug的R命令查看、改变CPU寄存器的内容;用Debug的D命令查看内

2、存中的内容;用Debug的E命令改写内存中的内容;用Debug的U命令将内存中的机器指令翻译成汇编指令;用Debug的T命令执行一条机器指令;用Debug的A命令以汇编指令的格式在内存中写入一条机器指令。(3) 进入DebugDebug是在DOS方式下使用的程序。我们在进入Debug前,应先进入到DOS方式。用以下方式可以进入DOS: 重新启动计算机,进入DOS方式,此时进入的是实模式的DOS。 在Windows中进入DOS方式,此时进入的是虚拟8086模式的DOS。 三.实验任务解决方案1.从网上下载Dosbox和debug.exe(文件夹中有)。2.debug.exe放在D:根目录,然后安

3、装,安装完成以后,点击快捷方式进入Dos界面:3.输入mount c d: 接着输入c:01 d8 add ax,bx89 c3 mov bx,ax01 d8 add ax,bxb8 1a 00 mov ax,001AHbb 26 00 mov bx,0026H00 d8 add al,bl00 dc add ah,bl00 c7 add bh,alb4 00 mov ah,000 d8 add al,bl04 9c add al,9CH提示: 可用E命令和A命令以两种方式将指令写入内存。注意用T命令执行时,CS:IP的指向。(2) 将下面3条指令写入从2000:0开始的内存单元中,利用这3条

4、指令计算2的8次方。mov ax,1add ax,axjmp 2000:0003(3) 查看内存中的内容PC机主板上的ROM中写有一个生产日期,在内存FFF00HFFFFFH的某几个单元中,请找到这个生产日期并试图改变它。(内存ffff:0005ffff:000C(共8个字节单元中)处)无法改变,修改之后内容并没有变。【下篇】用机器指令和汇编指令编程一实验内容1. 预备知识:Debug命令的补充(1) 在D命令中使用段寄存器格式:“d 段寄存器:偏移地址”,以段寄存器中的数据为段地址SA,列出从SA:偏移地址开始的内存区间中的数据。以下是4个例子: -r ds:1000-d ds:0 ;查看从

5、1000:0开始的内存区间中的内容 -r ds:1000-d ds:10 18 ;查看1000:101000:18中的内容 -d cs:0 ;查看当前代码段中的指令代码 -d ss:0 ;查看当前栈段中的内容(2) 在E、A、U命令中使用段寄存器在E、A、U这些可以带有内存单元地址的命令中,也可以同D命令一样,用段寄存器表示内存单元的段地址。以下是3个例子: -r ds:1000-e ds:0 11 22 33 44 55 66 ;在从1000:0开始的内存区间中写入数据 -u cs:0 ;以汇编指令的形式,显示当前代码段中的代码,0代码的偏移地址 -r ds:1000-a ds:0 ;以汇编

6、指令的形式,向从1000:0开始的内存单元中写入指令(3) 下一条指令执行了吗? 在Debug中,用A命令写一段程序:mov ax,2000mov ss,axmov sp,10 ;安排2000:00002000:000F 为栈空间,初始化栈顶。mov ax,3123 push axmov ax,3366push ax ;在栈中压入两个数据。在用T命令单步执行mov ax,2000后,显示出当前CPU各个寄存器的状态和下一步要执行的指令:mov ss,ax;在用T命令单步执行mov ss,ax后,下一条指令应该是mov sp,10,却变成了mov ax,3123?注意,在用T命令单步执行mov

7、ss,ax 前,ax=0000,ss=0b39,sp=ffee,而执行后 ss=2000,sp=0010。ss变为2000是正常的,这正是mov ss,ax的执行结果。而能够将sp设为0010的只有指令mov sp,10,看来,mov sp,10一定是得到了执行。在用T命令执行mov ss,ax的时候,它的下一条指令mov sp,10也紧接着执行了。整理一下我们分析的结果:在用T命令执行mov ss,ax的时候,它的下一条指令mov sp,10也紧接着执行了。一般情况下,用T命令执行一条指令后,会停止继续执行,显示出当前CPU各个寄存器的状态和下一步要执行的指令,但T命令执行mov ss,ax

8、的时候,没有做到这一点。不单是mov ss,ax,对于如:mov ss,bx,mov ss,0,pop ss等指令都会发生上面的情况,这些指令有哪些共性呢?它们都是修改栈段寄存器SS的指令。结论:Debug的T命令在执行修改寄存器SS的指令时,下一条指令也紧接着被执行。二实验任务(1) 使用Debug,将上面的程序段写入内存,逐条执行,根据指令执行后的实际运行情况填空。(逐条执行,每条指令执行结果截图)mov ax,ffffmov ds,axmov ax,2200mov ss,axmov sp,0100mov ax,0 ;ax= C0EA add ax,2 ;ax= C0FC mov bx,4

9、 ;bx= 30F0 add bx,6 ;bx= 6021 push ax ;sp= 00FE ;修改的内存单元的地址是 2200:00FE 内容为 C0FC push bx ;sp= 00FC ;修改的内存单元的地址是 2200:00FC 内容为 6021 pop ax ;sp= 00FE ;ax= 6021 pop bx ;sp= 0010 ;bx= C0FC push 4 ;sp= 00FE ;修改的内存单元的地址是 2200:00FE 内容为 30F0 push 6 ;sp= 00FC ;修改的内存单元的地址是 2200:00FC 内容为 2F31 (2) 使用Debug,将下面的程序

10、段写入内存,逐条执行,观察每条指令执行后,CPU中相关寄存器中内容的变化。(逐条执行,每条指令执行结果截图) 如果有问题请说明原因汇编指令mov ax,1000Hmov ds,axmov ds,0add ds,axDs为段寄存器,无法用在算术运算指令中。(3) 仔细观察下图中的实验过程,然后分析:为什么2000:02000:f中的内容会发生改变?发生改变的数据分别是SS、IP、 CS 等的值,其数据发生了改变 ,是对定义栈段时部分运行环境变量进行暂存。实验一补充:Masm5.0解决方案1从网上下载Dosbox和masm5。2先把masm5目录放在D:中(也可以自己选择路径),然后安装Dosbox,安装完成以后,点击快捷方式DOSBox 0.74进入软件虚拟的Dos界面,如下所示3.把需要编译的asm程序放在masm5目录中,输入mount c d:masm5 (虚拟加载你的d:masm5).接着输入c: 4. masm hw.asm4.link hw.obj6. 当你使用dir命令的时候,可以看到我们已经生成了HW.exe 可执行文件8. 输入hw

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

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