欢迎来到得力文库 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
得力文库 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    基于32位的微机原理与接口技术实验指导书.doc

    • 资源ID:88280918       资源大小:824KB        全文页数:95页
    • 资源格式: DOC        下载积分:12金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要12金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于32位的微机原理与接口技术实验指导书.doc

    微机原理与接口技术实验指导书授课教师:王春武(内部资料)目 录实验一、 算术逻辑运算单元实验1实验二、 通用寄存器单元实验3实验三、存储器和总线实验5实验四、堆栈寄存器实验6实验五、熟悉MASMPlus编程环境12实验六、顺序程序设计12实验七、分支程序设计12实验八、循环程序设计12实验九、子程序设计12实验十、 综合实验12实验十一、8253 发声控制实验128086汇编语言初学者教程12什么是汇编语言?(汇编语言学习参考)1226第一部分8位模型机实验实验一、 算术逻辑运算单元实验一 实验目的 1            掌握简单运算器的数据传输方式 2            掌握74LS181的功能和应用 二.实验要求 完成不带进位位算术运算实验、带进位位算术加法运算实验、逻辑运算单元实验。按照实验步骤完成实验项目,了解算术逻辑运算单元运用。三实验说明 1ALU单元实验构成: 1)运算器由两片74LS181构成8位字长的ALU单元。2)运算器的2个数据输入端分别由2个74LS374锁存,可通过8芯扁平电缆直接连接到数据总线。3)运算器的数据输出由一片74LS244(输出缓冲器)来控制,可通过8芯扁平电缆直接连接到数据总线。2ALU单元的工作原理: 输入寄存器DR1的EDR1为低电平并且D1CK为电平正跳变时,把来自数据总线的数据打入寄存器DR1,同样通过EDR2、D2CK可把数据打入输入寄存器DR2。算术逻辑运算单元的核心是由2片74LS181组成,它可以进行2个8位的二进制数算术逻辑运算,74LS181的各种工作方式可通过设置控制信号(S0、S1、S2、S3、M、CN)来实现。当实验者正确设置了74LS181的各个控制信号,74LS181会把DR1、DR2寄存器内的数据进行相应地运算。由于DR1、DR2已经把数据锁存,只要74LS181的控制信号不变,那么74LS181的输出数据也不会改变。输出缓冲器采用三态门74LS244,当控制信号ALU-O0时,74LS244开通,把74LS181的运算结果输出到数据总线;当ALU-O1时,74LS244的输出为高阻。  3控制信号说明:  信号名称 作用 有效电平 EDR1选通DR1寄存器低电平有效EDR2选通DR2寄存器低电平有效DR1CKDR1寄存器工作脉冲上升延有效DR2CKDR2寄存器工作脉冲上升延有效S3S074LS181工作方式选择16种组合M逻辑或算术选择M=0算术,M=1逻辑CN有无进位输入CN=0带进位CN=1不带进位CCK进位寄存器的工作脉冲上升延有效ALU-O计算结果输出至总线低电平有效四实验步骤取一根长数据线,一头插入ALU-IN(8芯的盒型插座)另一头插入实验箱右侧的J1插座(对应二进制开关H16-H23),把ALU-OUT(8芯的盒型插座)插入总线的数据总线DJ2 。(实验箱默认的信号为高电平,实验中只需连接低电平信号即可)1. 把D1CK和D2CK用连线连到脉冲单元的PLS1,把EDR1、ALU-O,S0、S1、S2、S3、CN、M接入试验箱右侧对应二进制拨动开关。2. 置EDR1=0,EDR2=1、ALU-O=1。把二进制开关H16-H23置0X65。3. 按PLS1脉冲按键,在PLS1上产生一个上升沿的脉冲,把0X65打入DR1寄存器,通过逻辑笔或示波器来测量确定DR1寄存器(74LS374)的输出端(引脚对应关系为:2-Q0 5-Q1 6-Q2 9-Q3 12-Q4 15-Q5 16-Q6 19-Q7),来确定总线数据是否进入DR1中。4. 同样方法,置EDR2=0把二进制H16-H23开关置0XA7。5. 按PLS1脉冲按键,再产生一个上升沿的脉冲,把0XA7打入DR2(74LS374)。6. 参照表一,设置M CN S3 S2 S1 S0的状态,实现观察DR1(A)、DR2(B)以及实验结果。五. 实验思考 验证74LS181的算术运算和逻辑功能,在保持DR1=0x65、DR2=0xA7时,改变运行运算器的功能设置,实现观察A,B,A+B,A加B功能。表1 74LS181的逻辑方式 M=1 M=0算术运算 S3 S2 S1 S0逻辑运算CN=1(无进位)CN=0(有进位)0000F=/AF=AF=A加10001F=/(A+B)F=A+BF=(A+B)加10010F=/A BF=A+/BF=(A+/B)加10011F=0F=减1(2的补)F=00100F=/(AB)F=A加A/BF=A加A/B加10101F=/BF=(A+B)加A/BF=(A+B)加A/B加10110F=/(AB)F=A减B减1F=A减B0111F=A /BF=A/B减1F=A/B1000F=/A+BF=A 加ABF=A 加AB加 11001F= ABF=A加BF=A加B加11010F=BF=(A+/B)加ABF=(A+/B)加AB加11011F=ABF=AB减1F=AB1100F=1F=A加 AF=A加 A 加11101F=A+/BF=(A+B) 加 AF=(A+B) 加 A 加11110F=A+BF=(A+/B)加AF=(A+/B)加A加11111F=AF=A减1F=A实验二、 通用寄存器单元实验一实验目的 1了解寄存器的组成和硬件电路 2利用寄存器进行数据传输 二实验要求 按照实验步骤完成实验项目, 实现寄存器移位操作。了解通用寄存器单元运用。 三实验说明 1  寄存器实验构成: (1)通用寄存器由74LS198构成8位字长的寄存器单元,可通过8芯扁平电缆直接连接到数据总线。(由于74LS198的使用率不高,有的型号实验机上采用2片GAL来替代它,使用方法和74LS198基本相同)。(2)数据输出由一片74LS244(输出缓冲器)来控制,可通过8芯扁平电缆直接连接到数据总线。(3)由1片GAL、1片7474和一些常规芯片组成判零和进位电路,分别由2个LED发光管来显示其状态。2通用寄存器单元的工作原理: 通用寄存器单元的核心部件为74LS198,它具有锁存、左移、右移、保存等功能,各个功能都有X1、X2信号和RACK工作脉冲来决定。当置ERA=0、X0=1、X1=0,RACK为脉冲的上升沿时,把总线上的数据打入74LS198。可通过设置X0、X1来指定74LS198的工作方式,74LS198的输出端Q0Q7接入判零电路。LED亮时表示数据为0。输出缓冲器采用三态门74LS244,当控制信号RA-O为低时,74LS244开通,把通用寄存器内容输出到总线;当RA-O为高时,74LS244的输出为高阻。 3控制信号说明:  信号名称 作用 有效电平 X0、X174LS198的工作模式低电平ERA选通74LS198寄存器低电平RA-O74LS198寄存器内容输出至总线低电平RACK74LS198寄存器工作脉冲上升沿M在ALU单元中作为逻辑和算术运算的选择。在本实验中决定是否带进位移位0 带进位1 不带进位四. 实验步骤(数据输入)1. 把RA-IN(8芯的盒型插座)插入数据输出板上的J1 8芯的盒型插座(对应二进制开关),把RA-OUT(8芯的盒型插座)插入总线的数据总线DJ6。2. 把RACK连到脉冲单元的PLS11,把ERA、X0、X1、RA-O、M接入实验板右侧的对应开关。3. 实现置数功能:置ERA=0、RA-O=0、X0=1、X1=1把二进制开关H16-H23置01000010(对应开关如下表)。4. 按PLS1脉冲按键,按PLS1,把0100 0010打入74LS198。此时数据总线上的指示灯IOB0-IOB7 应该显示为0100 0010,由于寄存器内容不为0,所以ZD LED灯灭。 5. 保持M=0,将X1=0,X0=1, 按PLS1,观察实验现象;6. 保持M=0,将X1=1,X0=0, 按PLS1,观察实验现象7. 保持M=1,重新完成步骤5和6观察实验现象8. 将CCK(进位脉冲)与RACK相连,重新完成实验57观察实验现象。提示:M=1 功能:8位循环移位,与CCK无关M=0 无CCK时 功能:8位移位,移入数据取决于当前CY状态M=0 有CCK时 功能:9位循环移位表二 控制逻辑X1 X0 CLK Q7Q0 0 0上升沿保持1 1上升沿置数0 1上升沿右移1 0上升沿左移 实验三、存储器和总线实验一实验目的 1  熟悉存储器和总线组成和硬件电路 二实验要求 按照实验步骤完成实验项目,利用存储器和总线传输数据。 三实验说明 1  存储器实验的构成:   (1)存储器采用静态RAM(6264)(2)存储器的控制电路由1片74LS32和74LS08组成。(3)总线由2片74LS245组成,把整个系统分为内部总线和外部总线。2存储器和总线的原理 (1)总线的原理:由于本系统内使用8根地址线、8位数据线,所以使用1片74LS245作为数据总线另1片作为地址总线(见图)。总线把整个系统分为内部总线和外部总线,由于数据总线需要进行内、外部数据的交换所以由BUS信号来控制数据的流向,当BUS=1时数据由内到外,当BUS=0时,数据由外到内。信号EBUS=0时,表示当前有效。 (2)由于本系统内使用8根地址线、8位数据,所以6264的A8A12接地,其实际容量为256个字节。6264的数据、地址总线已经接在总线单元的外部总线上。存储器有3个控制信号:外部地址总线设置存储器地址,RM=0时,把存储器中的数据读出到总线上。当WM=0,并且EMCK有一个上升沿时,把外部总线上的数据写入存储器中。为了更方便的编辑内存中的数据,在实验机处于停机状态时,可由监控来编辑其中的数据。(3)控制信号说明:  信号名称作用有效电平BUS总线方向选择  RM6264的读允许信号低电平有效WM6264的写允许信号低电平有效EMCK6264的写入脉冲信号上升延有效四实验步骤   l         把数据总线一端插入DJ8另一端插入实验板右侧的J2口、地址总线上一端插入B10单元的AJ1另一端插入实验板右侧的J3口。l 把EMCK连到脉冲单元的PLS1,把WM、RM、BUS接入右侧对应二进制的开关,由于BUS与RM状态一直相同,因此可以将BUS也连接到RM孔上。拨动二进制开关,置数据为0X55,地址为0X02(对应开关如下表)。H23H22H21H20H19H18H17H1600000010l       此时在数据总线LED灯IDB0-IDB7显示0X55, 地址总线上LED灯IAB0-IAB7显示0X02,l       内部数据总线上的数据输出到外部数据总线。置WC=0,RC=1(对应开关如下表)。H15H14H13WRRCBUS011按PLS1脉冲按键,脉冲单元的PLS1,在EMCK上产生1个上升沿,此时0X55写入存储器的地址0X02中。读存储器的数据到总线上,置当前地址为0X02(对应开关如下表)。H23H22H21H20H19H18H17H1600000010l       置WM=1,RM=0,(对应开关如下表)。H15H14H13WMRMBUS100  此时数据总线上的LED灯IDB0-IDB7显示0X55。实验四、堆栈寄存器实验一实验目的 1  熟悉堆栈概念 2  熟悉堆栈寄存器的组成和硬件电路 二实验要求 按照实验步骤完成实验项目,对4个堆栈寄存器读出、写入数据。 三实验说明 1、堆栈寄存器组实验构成: 本系统内有4个寄存器R0R3,寄存器组由4个74LS374组成,由1片74LS139(2、4译码器)来选择4个74LS374,并且由2片74LS08和1片74LS32来组成控制线。可通过8芯扁平电缆把数据输入、输出直接连接到数据总线上。2、堆栈寄存器组原理: 由SA、SB两根控制线通过74LS139译码来选择4个寄存器(74LS374)。当WR0时,表示数据总线将要向寄存器中写入数据,RCLK作为寄存器的工作脉冲,在有上升沿时把总线数据打入74LS139选择的那个寄存器。当74LS139选择了某个寄存器,并且RR=0时,寄存器上的数据输出至数据总线。在本系统内使用了WR=0作为写入允许,RCK信号为上升沿打入数据、RR=0时数据输出、ER0ER3作为4个寄存器的选通。  3、控制信号说明:  信号名称作用有效电平SA、SB选通寄存器低电平有效RR数据输出允许低电平有效WR数据写入允许低电平有效 RCK寄存器的工作脉冲上升延有效四实验步骤 l         将R-IN(8芯的盒型插座)插入数据输出板上的8芯的盒型插座,将R-OUT(8芯的盒型插座)插入左侧的数据总线。l         把RR、WR、SA、SB接入二进制的拨位开关,把RCK连到脉冲单元的PLS1。(请按下表接线)。信号定义   接入开关位号 RCK   PLS1 孔 RR   H15孔 WR   H14孔 SA   H13孔 SB   H12孔 把数据写入寄存器R0 l       置WR=0、RR=1、SB=0、SA=0 (对应开关如下表)。H15H14H13H12RRWRSASB1000l       在二进制的拨位开关上置0X01(对应开关如下表)。H23H22H21H20H19H18H17H1600000001l       按PLS1脉冲按键,脉冲单元的PLS1+,在RCK上产生一个上升沿,此时把数据写入寄存器R0。   把寄存器R0数据读出 l       置WR=1、RR=0、SB=0、SA=0 (对应开关如下表)。H15H14H13H12RRWRSASB0100l       此时把寄存器R0数据读出。l       总线数据发光二极管IDB0-IDB7将分别显示0X01补充试验:DEBUG的基本操作(参见附件2)。过程:1、 开始 à运行àDEBUG 确定,出现黑色屏幕并有短线提示,表示进入DEBUG成功。2、 收入 ? 号,查看DEBUG 命令。3、 依次试验各个命令的用法。第二部分debug命令DEBUG是一个DOS实用程序,是供程序员使用的程序调试工具,可以用它检查内存中任何地方的字节以及修改任何地方的字节。它可以用于逐指令执行某个程序以验证程序运行的正确性,也可以追踪执行过程、比较一个指令执行前后的值以及比较与移动内存中数据的范围,读写文件与磁盘扇区。目录DEBUG命令介绍 DEBUG的命令及功能如下: 1. * A地址 汇编命令 2. * C源地址范围目的地址比较命令 3. 转储命令 4. * G=起始地址 断点 执行命令 5. * I端口地址 6. * L地址盘号:逻辑扇区号扇区数 7. * M地址范围起始地址 数据传送命令 8. * N盘号: 路径 文件名 扩展名 9. * O端口地址数据 输出命令 10. * P=地址 数据 进程命令 11. * Q 退出命令。 12. * R寄存器 寄存器命令 13. * S地址范围 字符串 14. * T=地址指令条数 跟踪命令 15. * U起始地址或者地址范围 16. * W写盘命令debug命令实际应用DEBUG命令介绍 DEBUG的命令及功能如下: 1. * A地址 汇编命令 2. * C源地址范围目的地址比较命令 3. 转储命令 4. * G=起始地址 断点 执行命令 5. * I端口地址 6. * L地址盘号:逻辑扇区号扇区数 7. * M地址范围起始地址 数据传送命令 8. * N盘号: 路径 文件名 扩展名 9. * O端口地址数据 输出命令 10. * P=地址 数据 进程命令 11. * Q 退出命令。 12. * R寄存器 寄存器命令 13. * S地址范围 字符串 14. * T=地址指令条数 跟踪命令 15. * U起始地址或者地址范围 16. * W写盘命令debug命令实际应用展开DEBUG命令介绍它的功能包括以下几个方面。 1,直接输入,更改,跟踪,运行汇编语言源程序; 2,观察操作系统的内容;   3,查看ROM BIOS的内容; 4,观察更改RAM内部的设置值; 5,以扇区或文件的方式读写软盘数据 DEBUG把所有数据都作为字节序列处理。因此它可以读任何类型的文件。DEBUG可以识别两种数据: 十六进制数据和ASC码字符。它的显示格式是各个字节的十六进制值以及值在32与126之间的字节的相应ASC码字符。 在DEBUG中输入数据有两种方法: 提示方法和非提示方法。在用提示方法时,用户可以输入要求输入数据的命令,后跟数据所要输入的地址。然后用户就可以看到该地之中已有内容及一个冒号提示符。此时用户可以在提示符下输入一个新的值或者按下回车键或CTRL+C回到短横(-)提示符。在运用非提示方法时,用户可以输入要输入数据的内存地址以及要输入的字节。但与使用字处理程序或正文编辑程序时不一样,在使用DEBUG时,用户不能直接移动光标到一入口点输入或修改数据,而要一次输入一个或几个字节。 在使用DEBUG时可以只涉及内存中的数据,从而一般都要指定所要处理的内存地址,地址的输入格式是: 段地址: 位移。如果没有输入地址,DEBUG将假定为当前内存段,从位于地址100H的字节开始。前100H字节保留给程序段前缀使用,这一专用区域用于建立DOS与程序之间的联系。DEBUG总是用四位十六进制数表示地址。用两位数表示十六进制数据。 讲到这里大家应该对DEBUG有了初步的了解,但是光知道这些可不够,接下来我来讲讲DEBUG的命令格式和命令。当输入 DEBUG 调用了DEBUG程序,就会出现一个短横提示符,用户就可以在这一短横后输入DEBUG程序的命令。有些DEBUG命令会显示一个内存地址并产生一个作为提示符的冒号。在这些提示符后,用户可以输入一个新值以改变所显示位置原来的值。如果用户不输入一个新值而是按下回车或CTRL+C,那么原来的值不会改变。 一般用不着把地址和命令名字分开。例如,用转储命令D察看100号地址的数据,那么这个命令可以用以下任一种形势输入: D100 D 100 D。100 D,100 如果输入的命令中出现了错误,DEBUG将在下一行对着错误的位置标记出来,例如: -s100 d 12 Error DEBUG的命令及功能如下:A地址 汇编命令功能: 将指令直接汇编成机器码输入到内存中。 说明: 用于小段程序的汇编及修改目标程序,所有输入的数字均采用十六进制, 用户装入内存的汇编语句是连续存放的,若没有指定地址,并且前面没有使用汇编命令,改语句被汇编到 CS:0100区域。 例A:>DEBUG -a 0100 08F1:0100 MOV AH,09 08F1:0102 MOV DX,109 08F1:0105 INT 21H; 08F1:0107 INT 21H;<-XP下运行cmd debug时,应该是INT 20H,21H会出遇无效指令错误 08F1:0109 db 'May I help you $' 08F1:0115离开a状态 -g =100 109运行 May I help you 运行结果 Program terminated normally表示运行正常 C源地址范围目的地址比较命令功能: 比较两内存区域中的内容是否相同,若不同则显示其地址和内容。 C 源起始地址 个数 目的起始地址如:C 0 4 10 就是用来比较4000:0000与DS:0100 两段地址中的3F个单元的内容:其显示格式如下: 例:比较4000:0 3F 100内容的差异 -C 4000:0 3F 100 4000:0000 64 43 08F1:0100 4000:0001 3E 69 08F1:0101 显示内容的差异处 4000:0002 78 FF 08F1:0102 如果要比较的范围在DS内,则段地址不必指出: 如:-C 0 4 100;比较DS:0-DS:4与DS:100-DS:104 C命令的另一种格式如下:C地址1 L 长度 地址2 如:-C000:0 L4 0;由0000:0与与DS:0开始比较它同-C0000:0 3 0命令相等,显示结果如下: 0000:0000 8A C0 08F1:0000 0000:0001 10 20 08F1:0001 它们都比较4个字节 0000:0002 1C 00 08F1:0002 0000:0003 49 7F 08F1:0003 转储命令D D地址 或D起始地址目的地址 转储命令 功能: 以内存映象方式显示内存中的信息。 说明: 转储用左右两部分显示内存映象内容,左边以十六进制,右边以ASCII字符显示,所有不可打印字符用句号 . 表示。每行显示16个字节的内容,在第八和第九个字节之间有一个连字符 - 此命令隐含的段地址为DS的值。若未指定起始地址,则D命令从显示的最后一个单元的下一个单元开始显示,若以前没有使用给D命令, 则从初使化的段寄存器的内容,加上地址偏移量 0100H 开始显示。 例:-d 10 4f即为显示DS:4f的内容在D命令中如不指出段地址,则其默认为DS段。 如指明段地址,则从指明的段地址列出指定的范围 如:-d fff:00 0f 我们也可以指定长度来列出所需要内存内容 如:-d 100 L20即为显示由DS:100-DS:11F的内容,共20H个字节: 修改内存命令 E地址 字节串) 功能: 从指定的地址开始修改内存值。 格式:E起始地址数据行 (1)用给定内容代替指定范围的单元内容 -E地址 内容表 例:-E 100 41 42 43 44 48 47 46 45 -D 100 L08 08F1:0100 41 42 43 44 48 47 46 45 ABCDHGFE (2)逐个内存内容 例:-E 100: 08F1:0100 76 42 :42是操作员键入 此命令是将原100号内存内容76修改为42,用D命令可察看。 F地址范围 字节或字节串 填写命令 功能: 将要填写的字节或字节串填入由地址范围指定的存储器中。 例:-f100 120 61 62 63 64 -d100 11f 08F1:0100 61 62 63 64 61 62 63 64 -61 62 63 64 61 62 63 abcd abcd abcd abcd 08F1:0110 13 67 98 E3 C8 2E B3 B6 -03 21 AC 19 3121 4E 96 g1 如果数据行超出指定的范围,则填不下的数值会被忽略。 例:-f 100 107 41 43 43 44 45 46 47 48 49 4A 4B 4C 4D -d 100,lof 08F1:0100 41 42 43 44 45 46 47 64 -61 62 63 64 ABCDEFGdabcdabcd 由上例可看出,超出范围的数据被忽略 另外,F和E命令都可填入字符串: 如:-F 100 105 "MSDOS" -d 100 l0f 08F1:0100 4D 53 44 4F 53 46 47 64 -61 62 63 64 MS DOS FGabcd abcd * G=起始地址 断点 执行命令功能: 执行正在调试的程序,当达到断点时停止执行, 并且显示寄存器标志和下一条要执行的命令。 说明: 如果没有指定起始地址,那么当前指令地址由CS:IP寄存器的内容来决定,如果用户指定起始地址就从指定的起始地址开始执行。如果指定断点,当指令到达指令地址时停止执行,并显示各寄存器标志位的内容和下一条要执行的命令,最多允许用户设定10个断点。 例:A:>debug tan.exe -u:反编译成汇编语言程码 . . -g 100 指定中断点 Program terminated normally: 另外:我们在DEBUG下可运行一个文件.EXE 如:A:>debug tan.exe -g 即可开始运行此程序,和在DOS下完全一样: * H数值数值 十六进制算术运算命令 功能: 分别显示两个十六进制数相加的和以及第一个数减去第二个数的差。 说明: 替用户完成简单的十六进制数的运算。 例:-h4538 5623 9B5B EF15 * I端口地址功能: 从指定的端口输入并显示(用十六进制)的一个字节。 例:-I 70 F9;显示70端口的内容为F9 I命令可由80X86的64K个端口取数据 * L地址盘号:逻辑扇区号扇区数功能: 将一个文件或盘的绝对扇区装入存储器。 说明: 单个L命令能够装入的最大扇区数是 80H,其中盘号 0,1,2,3分别代表 A,B,C,出现读盘错,显示错误信息。 (1)格式1: L装入地址 驱动器名 起始扇区/扇区数 这种方式可把磁盘上指定扇区范围的内容装入到存储器从指定地址开始的区域中,在此外扇区编号引用逻辑/扇区的方式。 例:-L 100 0 01,将A驱的0扇区装至CS:100上 -d 100 10f 08F1:0100 EB 3C 90 3C 53 44 4F 53 -36 2E 32 32 02 01 01 00.L,MSDOS 6.22 (2)格式2:L装入地址 这种方式可把指定文件装入内存,装入的文件可在进入DEBUG时指定亦可用N命令建立,格式为-n文件名: 例1 DEBUG tan.pas -L 100 例2 DEBUG -n tan.pas -L 100 须知:L命令只能读取逻辑扇区,不能读取硬盘分区表 L命令中所用的磁盘代码A=00,B=01,C=02 * M地址范围起始地址 数据传送命令功能: 把地址范围内的存储器单元的内容移到起始地址的指定地址中 说明: 传送期间,源区和目标区可以部分重叠;传送后源区域数据保持不变。 例:-e100 41 42 43 44 45 -d100 10f 08F1:0100 41 42 43 44 45 62 62 63 64 -61 62 63 64 61 62 63 64 ABCDEBCDABCDABCD -M 100 104 110 -d110 L1F 08F1:0100 41 42 43 45 0A 21 19-20 01 01 20 07 96 87 9F ABCDE * N盘号: 路径 文件名 扩展名功能: 定义操作文件名。 说明: 可同时定义两个操作文件,并将形成的文件控制块相应的设置在内存 CS:5C和CS:6C上,供以后的L和W命令操作之用。我们在运行程序侦错时,在启动DEBUG时在其后加文件程序名以及该程序的参数或运行文件,但当我们侦错一段后,可能装入其它文件来测试,这时我们可利用N命令来设置而无需退出DEBUG。 例:A:>DEBUG tan.exe -n youg.pas 当程序侦错一段时间后,若要把tan.exe装入tan1.pas则-n tanl.pas * O端口地址数据 输出命令功能: 发送字节到指定的输出端口。 例:当我们遇到开机要求输入口令时,可用如下方式取消 -O 70 10 _O 71 00 * P=地址 数据 进程命令功能: 将一个子程序调用指令,循环指令,中断指令或一个重复字符串指令,停止在下一条指令上。 说明: 在执行一条子程序调用指令,循环指令,中断指令或一个重复字符串指令时,发出P命令去执行有关指令,并且返回到要执行的下一条指令。 P命令和T一样选用来跟踪程序运行过程用的命令,我们可以在P命令中指定程序运行的起始地址,指令个数,如未指定则CS:IP所指定程序的地址开始一次运行一条令。 P与T命令的差别在于P命令把CALL/INT当成一条指令来执行,简化了跟踪过程,P命令只运行RAM内存的命令,而T命令则可运行RAM和ROM里的程序。 * Q 退出命令。* R寄存器 寄存器命令功能: 一,显示单个寄存器的内容,并提供修改功能。 二,显示所有寄存器内容, 再加上字母标志位状态以及要执行的下一条指令。 三,显示8个标志位状态, 并提供修改功能。若不想改变则回车即可。 例:-r bx bx 0050 :51 -r AX=0000 BX=0051 CX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=0003 ES=0CD3 SS=0CD3 IP=0100 NV UP EI PL NZ NA OP NC 0CD3:0100 0F DB OF 若想改变标志寄存器,用-RF回车,则DEBUG会将标志内容显示出来,若想改变任一标志,只要输入该标志的名称即可。 标志名称 设置 未设置 标志名称 设置 未设置 滋出 OV(未溢出) NV(未溢出) 零位 ZR NZ(不等于零) 方向 DN(减少) UP(增加) 辅助进位 AC NA(无进位) 中断 EI(许可) DI(禁止) 奇偶标志 PE(偶) PO(奇) 符号 NG(负) PL(正) 进位 CY NC(清除进位) 例:-Rf NV UP EI PL NZ NA PO NC :-OV DI 输入值 * S地址范围 字符串功能: 在指定的地址范围内查找给定的字符串。 说明: 用来指定在地址范围内查找一个字符串,若找到则显示其地址, 否则直接显示DEBUG提示符。隐含地址为DS段值。 在此内存可以用(起始地址)(终止地址)或(起始地址)L(长度)的方式来表示,而字符串与数据行则可混合使用:如:02.76"BC"。 例:-d100 lof 08F1:0100 OF 2A 41 43 0B 31 42 96 -FF F0 B9 8A F3 00 B1. AC,1B. -S 100 L 0f "AC" 08F1:0102 表示找到,由0102开始, * T=地址指令条数 跟踪命令功能: 逐条跟踪程序的执行,每条指令执行后都将显示各寄存器的内容。 说明: 通常采用跟踪一条指令,但用户也可以用指令条数设定一次跟踪多条指令, 每执行一条指令之后,显示所有寄存器的内容和标志状态。 逐条指令跟踪 -T=起始地址 从指定地址起执行一条指令后停下来,显示所有寄存器内容及标志位的值,如来指定地址则从当前CS:IP开始执行。 A:>DEBUG -A 08F1:0100 MOV DL,03H 08F1:0102 MOV AH,02H 08F1:0104 INT 21H 08F1:0106 INT 20H 08F1:0108 -T AX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=08F1 ES=08F1 SS=08F1 CS=08F1 1P=0105 NV UP EI PL NZ PO CY 09F1:0102 B402 MOV AH,02 若指定起始地址,则T命令会从指定的地址开始跟踪,我们还可以指定跟踪一次所运行指令的个数,用Ctrl+S暂停屏幕的显示,以便观察。 -t=100 10;由CS:100开始跟踪10条指令 * U起始地址或者地址范围功能: 将内存中的内容转换为汇编语句。 说明: 反汇编的字节数取决与用户的系统显示形式,以及在U命令中使用的可选项。 (1)从指定地址开始编译,反汇编32个字节 -U地址从CS:100开始,其反汇编32个字节 如果地址被省略,则从一个U

    注意事项

    本文(基于32位的微机原理与接口技术实验指导书.doc)为本站会员(教****)主动上传,得力文库 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知得力文库 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于得利文库 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

    © 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

    黑龙江省互联网违法和不良信息举报
    举报电话:0468-3380021 邮箱:hgswwxb@163.com  

    收起
    展开