微机原理实验报告(2010。10)
- 格式:doc
- 大小:125.00 KB
- 文档页数:29
第1篇一、实验目的1. 理解和掌握微机的基本组成和工作原理;2. 熟悉微机硬件设备和实验仪器的使用方法;3. 提高动手实践能力,培养解决实际问题的能力;4. 深入理解微机原理课程内容,为后续课程学习奠定基础。
二、实验内容1. 微机系统认识实验2. 微机硬件组成实验3. 微机指令系统实验4. 微机寻址方式实验5. 微机程序设计实验6. 微机接口技术实验三、实验仪器与设备1. 微机原理实验箱2. 示波器3. 数字万用表4. 计算机一台5. 实验指导书四、实验步骤与内容1. 微机系统认识实验(1)观察实验箱的结构,了解各个模块的功能;(2)熟悉实验箱的电源、复位、运行等按钮的使用方法;(3)学习微机系统的工作流程,包括加电、复位、启动等过程;(4)观察微机系统启动后的运行状态,了解各个模块的协同工作。
2. 微机硬件组成实验(1)观察实验箱的CPU、内存、I/O接口等硬件模块;(2)学习CPU的内部结构,包括寄存器、控制单元、运算单元等;(3)学习内存的存储原理,了解ROM、RAM等存储器的特点;(4)学习I/O接口的工作原理,了解中断、DMA等传输方式。
3. 微机指令系统实验(1)学习微机指令系统的基本格式,包括操作码、地址码等;(2)掌握微机指令系统的寻址方式,包括立即寻址、直接寻址、间接寻址等;(3)编写简单的汇编语言程序,实现加、减、乘、除等运算;(4)学习微机中断处理过程,了解中断向量表、中断服务程序等概念。
4. 微机寻址方式实验(1)学习微机寻址方式的基本概念,包括直接寻址、间接寻址、寄存器寻址等;(2)编写程序,实现不同寻址方式下的数据访问;(3)观察不同寻址方式对程序执行速度的影响。
5. 微机程序设计实验(1)学习汇编语言程序设计的基本方法,包括数据定义、指令编写、程序结构等;(2)编写简单的程序,实现数据交换、排序等操作;(3)学习微机程序的调试方法,包括单步执行、断点设置等。
6. 微机接口技术实验(1)学习微机接口技术的基本概念,包括并行接口、串行接口等;(2)观察实验箱中的并行接口、串行接口等模块,了解其工作原理;(3)编写程序,实现数据在并行接口、串行接口之间的传输;(4)学习微机中断处理在接口技术中的应用。
微机原理实验报告概述:微机原理是计算机科学与技术专业中的一门重要课程,通过实验学习,可以加深对计算机内部运行原理的理解,提高软硬件的开发和调试能力。
本实验报告将介绍我对微机原理实验的学习和思考。
实验一:二进制转换实验在这个实验中,我首先了解了二进制数的概念以及其和十进制数的转换方法。
通过实际操作,我加深了对计算机内部数据表示方式的理解。
这对于后续学习计算机系统结构和编程语言至关重要。
实验二:逻辑门电路实验逻辑门电路是计算机硬件的基础组成部分,通过实验,我学会了使用逻辑门芯片构建各种逻辑电路,并能够通过真值表分析和验证逻辑电路的正确性。
这对于理解计算机内部的数据处理和控制逻辑有着直接的帮助。
实验三:运算器设计实验在这个实验中,我通过学习和设计算术逻辑单元(ALU),了解了计算机的算术操作过程,并能够通过运算器实现基本算术运算。
这对于理解计算机内部数据的处理和计算机指令的执行有着重要的意义。
实验四:存储器与外设实验存储器是计算机系统的重要组成部分,通过实验,我深入了解了存储器的类型、组织结构和访问方式,并通过外设与存储器的交互,实践了计算机系统的输入和输出过程。
实验五:微处理器实验微处理器是计算机系统中最核心的部件,通过实验,我学习了微处理器的基本运行原理,能够通过汇编语言编写程序,并通过微处理器执行程序实现特定的功能。
这个实验为我今后学习计算机体系结构和操作系统打下了坚实的基础。
实验总结:通过这几个实验,我深入了解了微机原理课程的实践内容和相关知识。
实验的过程中,我不仅学会了使用仪器设备和工具,还培养了自己的动手能力和团队合作精神。
通过不断的实践,我对计算机内部结构和运行原理有了更深刻的理解,也提高了我的问题解决能力和创新思维。
未来展望:微机原理实验的学习只是计算机科学与技术专业中的一小部分。
我希望在今后的学习过程中能加深对计算机体系结构、操作系统、编程语言等方面的学习,并不断深入钻研,成为一名优秀的计算机科学与技术专业人才。
一、实验目的1. 理解微机的基本组成和各部件的功能;2. 掌握微机的工作原理和指令系统;3. 熟悉汇编语言程序设计的基本方法;4. 提高动手能力和实际操作技能。
二、实验内容1. 微机系统组成实验(1)实验目的:了解微机的基本组成和各部件的功能。
(2)实验内容:观察并记录微机系统的各个部件,如CPU、内存、硬盘、主板等,并了解它们的功能。
(3)实验步骤:①观察微机系统各个部件的连接情况;②了解各个部件的功能和作用;③分析微机系统的整体结构。
2. 微机工作原理实验(1)实验目的:掌握微机的工作原理。
(2)实验内容:观察并记录微机工作过程中的各个阶段,如指令的取指、译码、执行等。
(3)实验步骤:①观察微机工作过程中的各个阶段;②了解各个阶段的功能和作用;③分析微机工作原理。
3. 指令系统实验(1)实验目的:熟悉汇编语言指令系统。
(2)实验内容:学习汇编语言的基本指令,如数据传送指令、算术运算指令、逻辑运算指令等。
(3)实验步骤:①学习汇编语言的基本指令;②编写简单的汇编语言程序,实现数据传送、算术运算、逻辑运算等功能;③调试程序,观察程序运行结果。
4. 汇编语言程序设计实验(1)实验目的:提高汇编语言程序设计能力。
(2)实验内容:编写一个汇编语言程序,实现以下功能:①计算两个数的和;②判断一个数是否为偶数;③输出程序运行结果。
(3)实验步骤:①编写汇编语言程序,实现上述功能;②调试程序,观察程序运行结果;③分析程序运行过程,确保程序正确性。
三、实验结果与分析1. 微机系统组成实验:通过观察和记录微机系统的各个部件,了解了微机的基本组成和各部件的功能。
2. 微机工作原理实验:通过观察微机工作过程中的各个阶段,掌握了微机的工作原理。
3. 指令系统实验:通过学习汇编语言的基本指令,熟悉了汇编语言指令系统。
4. 汇编语言程序设计实验:通过编写汇编语言程序,提高了汇编语言程序设计能力。
四、实验心得通过本次微机原理实验,我对微机的基本组成、工作原理和指令系统有了更深入的了解。
微机原理实验报告
计算机网络的设计是一个要求动手能力很强的一门实践课程,在课程设计期间我努力将自己以前所学的理论知识向实践方面转化,尽量做到理论与实践相结合,在课程设计期间能够遵守纪律规章,不迟到、早退,认真完成老师布置的任务,同时也发现了自己的许多不足之处。
在课程设计过程中,我一共完成了11个实验,分别是1.制作直通电缆和交叉UTP、2.交换机Console口和Telnet配置、3.交换机端口和常规配置、4.虚拟局域网VLAN配置、5.路由器Console口Telnet 配置方法和接口配置、6.路由器静态路由配置、7单臂路由配置、8.动态路由协议配置、9.PPP协议配置、10路由器访问控制表(ACL)、11.网络地址转换(NAT)。
在制作直通电缆和交换UTP的实验中,我起初不能完全按照要求来剪切电缆,导致连接不通,后来在同学的帮助下,终于将实验完成。
在做到单臂路由配置和动态路由协议配置的实验,由于自身的基础知识掌握不牢,忘掉了一些理论知识,在重新翻阅课本和老师的指导之下,也成功的完成了试验。
从抽象的理论回到了丰富的实践创造,细致的了解了计算机网络连接的的全过程,认真学习了各种配置方法,并掌握了利用虚拟环境配置
的方法,我利用此次难得的机会,努力完成实验,严格要求自己,认真学习计算机网络的基础理论,学习网络电缆的制作等知识,利用空余时间认真学习一些课本内容以外的相关知识,掌握了一些基本的实践技能。
课程设计是培养我们综合运用所学知识,发现、提出、分析、解决问题的一个过程,是对我们所学知识及综合能力的一次考察。
随着科学技术日新月异的不断发展,计算机网络也在不断的变化发展当中,这就要求我们用相应的知识来武装自己,夯实基础,为将来走向工作岗位,贡献社会做好充分的准备。
微机原理与接口技术实验报告班级:学号: 姓名: 实验日期:2010-10-17预习报告成绩:实验成绩:实验一系统认识实验一、实验目的掌握微型计算机汇编软件调试源程序的基本操作。
熟悉传送类指令、简单运算类指令来编写汇编语言源程序,掌握调试过程及实验结果分析。
二、实验内容1、从3500H内存单元开始建立0~15共16个数据(建立的数据为00H,01H~09H,0AH~0FH),并运行之,检查记录结果。
实验程序清单:DATA SEGMENTORG 3500H ;设定起始偏移地址MEM1 DB 16 DUP(?)DATA ENDSCODE SEGMENT ;定义代码段ASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV DI,3500H ;设数据区首址MOV CX,0010H ;字节数送入CXMOV AH,00HSAHF ;清标志寄存器MOV AL,00HA1: MOV [DI],AL ;写入一字节ITC DI ;修改地址指针INC AL ;修改数据LOOP A1 ;未填完转移MOV AH,4CHINT 21HCODE ENDS ;代码段结束END START2、如果1建立的数据为BCD码表示的十进制数据(即建立的数据为00H,01H-09H,10H-15H),修改上述程序并完成调试,检查记录结果。
●实验程序清单:DATA SEGMENTORG 3500HMEM1 DB 16 DUP(?)DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART: MOV AX,DATAMOV DS,AXMOV DI,3500HMOV CX,0010HMOV AH,00HSAHFMOV AL,00HDAAA1: MOV [DI],ALINC DIINC ALDAALOOP A1MOV AH,4CHINT 21HCODE ENDSEND START3、编程完成1+2+3+4+5+6+7+8+9求和运算。
微机原理实验报告一、实验目的本次微机原理实验的主要目的是通过实际操作和观察,深入理解微机系统的工作原理和组成结构,掌握微机系统的编程和调试方法,提高我们对微机原理的实际应用能力。
二、实验设备1、计算机一台2、微机原理实验箱一套三、实验内容1、 8255 并行接口实验了解 8255 芯片的工作原理和编程方法。
通过编程实现 8255 芯片的 A 口、B 口、C 口的输入输出控制。
2、 8253 定时/计数器实验掌握 8253 芯片的工作方式和编程要点。
利用 8253 芯片实现定时和计数功能。
3、 8259 中断控制器实验学习 8259 芯片的中断管理机制。
编写中断服务程序,实现中断响应和处理。
四、实验原理1、 8255 并行接口8255 是一种可编程的并行接口芯片,具有 A、B、C 三个 8 位端口。
通过对控制字的编程,可以设置各个端口的工作方式为输入或输出。
2、 8253 定时/计数器8253 包含三个独立的 16 位计数器,每个计数器可以工作在不同的方式下,如方式 0 到方式 5。
通过对计数器的初值设置和控制字编程,可以实现定时和计数功能。
3、 8259 中断控制器8259 用于管理外部中断请求,可实现中断优先级的判断和中断嵌套。
通过对 8259 的初始化编程,可以设置中断触发方式、中断向量等。
五、实验步骤1、 8255 并行接口实验连接实验电路,将 8255 芯片与实验箱上的相关引脚连接好。
编写程序,设置 8255 的控制字,使 A 口为输出,B 口为输入。
向 A 口输出数据,从 B 口读取数据,并观察实验结果。
2、 8253 定时/计数器实验连接实验电路,将 8253 芯片与实验箱上的相关引脚连接好。
编写程序,设置 8253 计数器 0 的工作方式为方式 2,初值为 1000。
启动计数器,观察输出引脚的波形变化。
3、 8259 中断控制器实验连接实验电路,将 8259 芯片与实验箱上的相关引脚连接好。
微机原理的实验报告一、实验目的本实验旨在深入理解微机原理的相关知识,并通过实践操作,掌握微机原理的实验方法与技巧。
二、实验内容1. 搭建微机实验系统:根据实验所需,搭建适当的微机实验系统,包括各种硬件设备的连接与设置。
2. 硬件接口的实验:通过连接不同的硬件接口,进行实验操作,学习硬件接口的使用方法和原理。
3. 程序设计与调试实验:使用相应的汇编语言或高级语言,编写程序并进行调试,观察程序的执行结果。
4. 中断实验:通过调用不同的中断服务例程,进行实验操作,学习中断的使用原理和应用场景。
三、实验步骤与结果1. 实验步骤:(1) 搭建微机实验系统:按照实验指导书的要求,连接各种硬件设备,确保能够正常工作。
(2) 硬件接口的实验:选择一个硬件接口,例如并行口,通过编写相应的程序,实现读取和输出数据的功能。
观察实验现象并记录。
(3) 程序设计与调试实验:根据实验要求,选择适当的编程语言,编写相应的程序,并进行调试。
观察程序的执行结果,并记录相关数据。
(4) 中断实验:选择一个中断服务例程,例如键盘中断,通过编写相应的程序,实现对键盘输入的响应。
观察实验现象并记录相关数据。
2. 实验结果:(1) 硬件接口的实验结果:通过编写程序并连接硬件接口,成功读取和输出数据,实现了相应的功能。
(2) 程序设计与调试实验结果:编写的程序能够正确执行,并得到了预期的结果。
(3) 中断实验结果:编写的程序能够响应相应的中断信号,并实现了对键盘输入的处理。
四、实验分析与讨论1. 实验分析:通过本次实验,我们深入了解了微机原理的相关知识,并通过实践操作,掌握了微机原理的实验方法和技巧。
2. 实验讨论:在实验过程中,我们遇到了一些困难和问题,例如硬件接口的连接和调试,程序的编写和调试等。
但通过彼此的合作与讨论,我们最终解决了这些问题,并成功完成了实验。
五、实验总结通过本次实验,我们对微机原理有了更深入的理解,并通过实践操作,掌握了微机原理的实验方法和技巧。
实验一 Debug程序的使用一、实验目的1.学习使用DEBUG调试命令。
2.学习用DEBUG调试简单程序。
3.通过程序验证码制及其对标志位的影响。
4.通过调试熟悉和掌握个寄存器的作用与特点。
二、实验内容用DEBUG调试简单程序。
三、实验仪器微机一台四、实验步骤1.由DOS进入DEBUG调试环境。
(1)C:>DEBUG将调试程序装入内存注意:当机器控制权由DOS成功地转移给调试程序后,将显示“-”号,它是DEBUG 的状态提示符,表示可以接受调试子命令了。
2.用DEBUG调试简单程序例1 -A CS:0106MOV AX,1234MOV BX,2345MOV CX,0ADD AX,BXMOV CX,AXINT 20运行程序(注:执行程序时IP应指向要执行的指令,需要修改时-RIP当前值输入需要值该处为0106当然也可以在T或G命令中指出程序起始地址)-R 显示各寄存器当前内容及首条指令-T 3 跟踪执行三条赋值传送指令,观察寄存器及标志位变化-T 2跟踪执行相加及送和数指令,观察寄存器及标志位变化-G 执行软件中断指令INT 20,机器将显示“程序正常终止”的信息,并显示“-”,表明仍处在DEBUG的调试控制状态下,注意未用T命令,因为我们不想进入到20H 中断处理程序中去,P命令也可实现相同操作实验现象记录:观察每条指令执行后各相关寄存器值及标志位状态例2 -A CS:116MOV AX,[0124]MOV BX ,[0126]ADD AX,BXMOV [0128],AXINT 20DW 2222DW 8888DW 0设置断点分段运行程序-G=CS:116 11D 从指定入口运行程序,至断点11D停,可见两个数已取至AX,BX,但还没有求和-G122 从上一断点运行至新断点停,已完成求和并存入指定结果单元-G 完成程序观看内存内容-DCS:116 12A 显示本程序小段目标代码和数据单元内容-UCS:116 12A 反汇编指定范围的内存内容-实验现象记录:通过反汇编,记录程序执行前指定范围的内存内容,并记录每条指令执行后各相关寄存器值及指定范围的内存内容)例3 -A CS:0192MOV DX,19BMOV AH,9INT 21INT 20DB ‘HELLO,WORLD! $’-P 命令单步执行实验现象记录:观察每条指令执行后各寄存器的变化,记录DX,AX的变化。
微机原理综合实验报告随着计算机技术的不断发展,微机已经成为了我们日常工作和生活中不可或缺的一部分。
为了更好地了解微机的工作原理和实践应用,我们进行了微机原理的综合实验,本文将对此次实验进行详细的讲解和总结。
一、实验目的本次实验的主要目的是通过搭建计算机系统的全部硬件及连接,熟悉和掌握微机的工作原理和实际应用,实践操作模拟简单的计算机应用程序等。
二、实验步骤1.准备工作:搭建计算机实验系统所需的硬件和软件,包括主板、处理器、硬盘、内存、显示器等,同时,将各部件连接起来。
2.开机自检:按下计算机开机键后进行自检,检查各部件是否正常工作。
3.进入BIOS:进入BIOS设置,为系统配置提供支持。
4.安装操作系统:安装Windows操作系统5.应用程序:安装并应用简单的计算机应用程序,如表格制作、文档编辑等。
三、实验结果分析通过本次实验,我们深入了解了微机的硬件构成和软件运行原理,加深了对微机工作原理的认识。
在实践操作中,我们对计算机系统在实际应用中的硬件和软件环境有了深刻的认识和了解。
四、实验中遇到的问题及解决方法在实验中,我们遇到了一些问题,如计算机开机时无法启动、操作系统无法正常安装、硬件连接不正确等。
这些问题的出现主要是由于我们操作时没有细心和认真,没有按照实验指导书的步骤操作。
针对这些问题,我们仔细检查操作过程中的每一个步骤,重新进行操作,直至问题得到解决。
五、结论通过本次实验,我们深刻了解了微机的硬件构成和软件运行原理,了解了微机在实际应用中的硬件和软件环境。
同时,我们还掌握了微机应用的基本技能,如软件安装、简单文件的制作和编辑等。
通过实验的过程,我们深入体验了计算机系统的基本构成及实践应用,并发现并解决了其中存在的问题和疑问,从而加深了对计算机系统的理解和认识,为今后我们的进一步学习和实践打下了坚实的基础。
微机原理实验报告院别:物理与电子工程学院专业:电子信息工程1011班姓名:刘小云学号:2010128134实验一两个多位十进制数相加的实验一、实验目的学习数据传送和算术运算指令的用法熟悉在PC机上建立、汇编、链接、调试和运行汇编语言程序的过程。
二、实验内容将两个多位十进制数相加,要求被加数和加数均以ASCII码形式各自顺序存放在以DATA1、DATA2为首的5个内存单元中(低位在前),结果送回DATA1处。
三、程序框图四、实验所用程序DATA SEGMENTDATA1 DB 33H,39H,31H,37H,34H;被加数DATA1END EQU $-1DATA2 DB 34H,35H,30H,38H,32H;加数DATA2END EQU $-1SUM DB 5 DUP(?)DATA ENDSSTACK SEGMENTSTA DB 20 DUP(?)TOP EQU LENGTH STASTACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACK,ES:DATA START: MOV AX,DATAMOV DS,AXMOV AX,STACKMOV SS,AXMOV AX,TOPMOV SP,AXMOV SI,OFFSET DATA1ENDMOV DI,OFFSET DATA2ENDCALL ADDAMOV AX,4C00HINT 21HADDA PROC NEARMOV DX,SIMOV BP,DIMOV BX,05HAD1: SUB BYTE PTR [SI],30HSUB BYTE PTR [DI],30HDEC SIDEC DIDEC BXJNZ AD1MOV SI,DXMOV DI,BPMOV CX,05HCLCAD2: MOV AL,[SI]MOV BL,[DI]ADC AL,BLAAAMOV [SI],ALDEC SIDEC DILOOP AD2MOV SI,DXMOV DI,BPMOV BX,05HAD3: ADD BYTE PTR [SI],30H ADD BYTE PTR [DI],30H DEC SIDEC DIDEC BXJNZ AD3RETADDA ENDPCODE ENDSEND START五、实验程序分析及预计结果数据定义段省略分析MOV SI,OFFSET DATA1END ;将DATA1的偏移地址给SI,SI中存放的是0004 MOV DI,OFFSET DATA2END ;将DATA2的偏移地址给DI,DI中存放的是0009 CALL ADDA;调用子程序ADDAMOV AX,4C00HINT 21HADDA PROC NEARMOV DX,SIMOV BP,DIMOV BX,05HAD1: SUB BYTE PTR [SI],30H;将SI中的数值变为十进制数SUB BYTE PTR [DI],30H;将DI中的数值变为十进制数DEC SI;将SI中的地址前移一位改变下一个数值DEC DI;将DI中的地址前移一位改变下一个数值DEC BX;定义循环的次数JNZ AD1;在BX中的数值不等于0的情况下循环执行AD1MOV SI,DX;重新初始化SIMOV DI,BP;重新初始化DIMOV CX,05HCLC ;将进位标志位清零AD2: MOV AL,[SI]MOV BL,[DI]ADC AL,BL;将AL,BL中的数据用带进位的加法相加,保存到AL中AAAMOV [SI],ALDEC SIDEC DILOOP AD2MOV SI,DXMOV DI,BPMOV BX,05HAD3: ADD BYTE PTR [SI],30H;将十进制数转化为十六进制,并存到SI中ADD BYTE PTR [DI],30H;将十进制数转化为十六进制,并存到DI中DEC SIDEC DIDEC BXJNZ AD31、在数据段,定义了一个data1,分配的地址是00~04,data1end里面的内容是04h,且不占内存,定义的data2,分配的地址是05~09,类似的,data2end里面的内容是09h2、在循环AD1过程中,data1里面的内容从开始的33h,39h,31h,37h,34h变为3,9,1,7,4;data2里面的内容也从开始的34h,35h,30h,38h,32h变为4,5,0,8,2。
计算机应用基础实验山东科技大学材料学院目录一、计算机组装二、调试程序DEBUG三、内存操作数及寻址方法四、熟悉80486指令系统五、熟悉汇编语言汇编程序上机过程六、汇编程序分支程序设计1七、汇编程序分支程序设计2八、汇编程序循环程序设计1九、汇编程序循环程序设计2十、汇编综合程序1实验一计算机组装一、实验题目:计算机组装二、实验目的:1. 认识计算机的各组成部分2. 熟悉各类芯片3. 掌握组装步骤三、实验内容:组装一台PC机。
要求记录计算机组装步骤及实验过程中出现的问题。
四、思考题:1.硬盘的接口类型有哪些?2.计算机存储器系统的分级结构。
实验报告内容1、实验题目2、实验目的3、实验内容4、思考题实验二调试程序DEBUG一、实验题目:调试程序DEBUG二、实验目的:1. 熟悉调试程序DEBUG2. 掌握调试程序DEBUG的操作步骤调试程序DEBUG:调试程序DEBUG.EXE是DOS提供的一个调试汇编语言程序的程序,每个版本的DOS都带有该程序,具有跟踪程序运行、设置断点、显示修改内存与寄存器的内容等功能,还可对小段程序进行汇编调试。
动态调试程序在编写和运行汇编程序的过程中,会遇到一些错误和问题,需要对程序进行分析和调试,调试程序DEBUG 就是专为汇编语言设计的一种调试工具。
它在调试汇编语言程序时有很强的功能,能使程序设计者接触到机器内部,能观察和修改寄存器和存储单元内容,并能监视目标程序的执行情况,使用户真正接触到CPU 内部,与计算机产生最紧密的工作联系。
DEBUG 的执行DEBUG 命令格式主要DEBUG 命令DEBUG 的执行在操作系统(DOS 或WIndows )命令行方式下,直接调入DEBUG 程序,键入命令的格式如下:D>DEBUG [d:][Path][filename[.ext]][Parm1][Parm2]其中[] 的内容为可选项,可以有也可以缺省。
[d:] 为驱动器号,指要调入DEBUG 状态的可执行文件在哪个驱动器中,如A: 、B: 、C: 等。
[Path] 为路径,指要调入DEBUG 状态的可执行文件是在哪个目录下或子目录下。
[filename[.ext]] ,指要调入DEBUG 状态下的可执行文件的文件名,该文件可以是通过编辑、汇编、连接后产生的可执行文件,也可以是在DEBUG状态下汇编的程序段,通过写盘命令W 写入磁盘的文件。
[Parm1][Parm2] 为任选参数,是给定文件的说明参数。
在启动DEBUG 时,如果输入filename (文件名),则DEBUG 程序把指定文件装入内存,用户可以通过DEBUG 的命令对指定文件进行修改、显示或执行。
如果没有文件名,则是以当前内存的内容工作,或者用命名命令或装入命令把需要的文件装入内存,然后再通过DEBUG命令进行修改、显示或执行。
当启动DEBUG 程序后,屏幕上出现“—”,说明系统已进入DEBUG 状态。
DEBUG 命令格式(1 )DEBUG 命令都是一个英文字母,后面跟着一个或多个有关参数。
多个操作参数之间用“, ”或空格隔开。
(2 )DEBUG 命令必须接着按ENTER 键,命令才有效。
(3 )参数中不论是地址还是数据,均用十六进制数表示,但十六进制数据后面不要用“H ”。
(4 )可以用Ctrl 和Break 键来停止一个命令的执行,返回到DEBUG 的提示符“—”下。
(5 )用Ctrl -Num Lock 键中止正在上卷的输出行,再通过按任意键继续输出信息。
主要DEBUG 命令(1 )汇编命令A格式: a. A [ 段寄存器名]:[ 偏移地址]b. A [ 段地址]:[ 偏移地址]c. A [ 偏移地址]d. A功能:用该命令可以将汇编语言程序直接汇编进入内存。
当键入 A 命令后,显示段地址和偏移地址等待用户键入汇编指令,每键入一条汇编指令回车后,自动显示下一条指令的段地址和偏移地址,再键入下一条汇编指令,直到汇编语言程序全部键入,又显示下一地址时可直接键入回车返回到提示符“-”为止。
其中 a 的段地址在段地址寄存器中,因此在使用该命令时必须将段地址寄存器送入段地址,c 的地址在CS 中,d 的段地址在CS 中,偏移地址为100H 。
(2 )显示内存命令D格式: a. D [ 地址]b. D [ 地址范围]c. D功能:显示指定内存范围的内容。
显示的内容为两种形式:一种为十六进制内容,一种为与十六进制相对应的ASCII 码字符,对不可见字符以“·”代替。
对于 a 、 c 每次显示128 个字节内容,b 显示的字节数由地址范围来决定。
若命令中有地址,则显示的内容从指定地址开始,若中中无地址(如c )则从上一个 D 命令所显示的最后一个单元的下一个单元开始。
若以前没有使用过 D 命令,则以DEBUG 初始化的段寄存器的内容为起始段地址,起始偏移地址为100H ,即CS:100 。
对于 a 中的地址为偏移地址,段地址为CS 的内容,对 b 中的地址范围,可以指定段地址和起始偏移地址和终止偏移地址。
(3 )修改存储单元内容命令E格式: a · E [ 地址] [ 内容表]b ·E [ 地址]功能: a ·用命令所给定的内容表去代替指定地址范围的内存单元内容。
b ·一个单元一个单元地连续修改单元内容。
其中:内容表为一个十六进制数,也可以是用单引号括起的一串字符。
(4 )填充内存命令F格式: F [ 范围][ 单元内容表]功能:将单元内容表中的内容重复装入内存的指定范围内。
(5 )内存搬家命令M格式:M [ 源地址范围][ 目标起始地址]其中源地址范围和目的起始地址为偏移地址,段地址为DS 的内容。
功能:把源地址范围的内容搬至以目标起始地址开始的存储单元中。
(6 )比较命令C格式: C [ 源地址范围] ,[ 目标地址]其中源地址范围是由起始地址和终止地址指出的一片连续的存储单元,目标地址为与源地址所指单元对比的目标地址起始地址。
功能:从源地址范围是由起始的地址单元开始逐个与目标起始地址往后的单元顺序比较每个单元内容,比较到源终止地址为止。
比较结果如果一致则不显示任何信息,如果不一致,则以[ 源地址][ 源内容][ 目的内容][ 目的地址] 的形式显示失败单元地址及内容。
(7 )搜索指定内容命令S格式:S [ 地址范围][ 表]功能:在指定地址范围内搜索表中内容,搜索到就显示表中元素所在地址。
(8 )检查和修改寄存器内容命令R格式: a ·Rb ·R [ 寄存器名]功能: a ·显示CPU 内部所有寄存器的内容和全部标志位的状态。
b ·显示和修改一个指定寄定器的内容和标志位的状态。
其中对状态标志寄存器FLAG 以位的形式显示,显示时,8 个状态标志的显示次序和符号如表B - 1 所示。
表B - 1 状态标志显示形式标志位状态显示形式(置位/ 复位)溢出标志OF 有/ 无OV/NV方向标志DF 增/ 减DN/UP中断标志IF 开/ 关EI/DI符号标志SF 负/ 正NG/PL零标志ZF 零/ 非ZR/NZ辅助进位AF 有/ 无AC/NA奇偶标志PF 偶/ 奇PE/PO进位标志CF 有/ 无CY/NC(9 )跟踪与显示命令T格式: a ·T[ =地址] 或T [ 地址]b ·T[ =地址][ 条数] 或T [ 地址][ 条数]功能: a ·执行一条指定地址处的指令,停下来,显示CPU 所有寄存器内容和全部标志位的状态,以及下一条指令的地址和内容。
b ·为多条跟踪命令,从指定地址开始;若命令中用[ 地址] 给定了起始地址,则从起始地址开始,若未给定,则从当前地址(CS:IP )开始,执行命令中的[ 条数] 决定一共跟踪几条指令后返回DEBUG 状态。
(10 )反汇编命令U格式: a ·U [ 地址]b ·U [ 地址范围]功能:将指定范围内的代码以汇编语言形式显示,同时显示该代码位于内存的地址和机器。
若在命令中没有指定地址则以上一个U 命令的最后一条指令地址的下一个单元作为起始地址;若没有输入过U 命令,则以DEBUG 初始化段寄存器的值作为段地址,以0100H 作为偏移地址。
(11) 命名命令N格式:N 文件名功能:在调用DEBUG 时,没有文件名,则需要用N 命令将要调用的文件名格式化到CS:5CH 的文件控制块中,才能用L 命令把它调入内存进行调试(其它形式参考DOS 手册)。
(12 )读盘命令L格式: a ·L [ 地址][ 驱动器号][ 起始扇区号][ 所读扇区个数]b ·L [ 地址]c ·L功能: a ·把指定驱动器和指定扇区范围的内容读到内存的指定区域中。
其中地址是读入内存的起始地址,当输入时没有给定地址,则隐含地址为CS:100H 。
起始扇区号指逻辑扇区号的起始位置。
所读扇区个数是指从起始扇区号开始读到内存几个扇区的内容。
驱动器号为0 或1 ,0 表示A 盘,1 表示B 盘。
b ·读入已在CS:5CH 中格式化的文件控制块所指定的文件。
在使用该命令前用N 命令命名即可将要读入的文件名格式化到CS:5CH 的文件控制块中,其中地址为内存地址。
c ·同b ·地址隐含在CS :100H 中。
当读入的文件有扩展名.COM 或.EXE ,则始终装入CS:100H 中,命令中指定了地址也没用。
其中BX 和CX 中存放所读文件的字节数。
(13) 写盘命令W格式: a ·W[ 地址][ 驱动器号][ 起始扇区号][ 所写扇区个数]b ·W[ 地址]c ·W功能:a ·把在DEBUGU 状态下调试的程序或数据写入指定的驱动器中, 起始扇区号, 所写扇区个数为要占盘中几个扇区。
写盘指定扇区的操作应十分小心,如有差错将会破坏盘上的原有内容。
如果在命令行中的地址只包含偏移地址,W 命令认为段地址在CS 中。
b ·当键入不带参数的写盘命令时,( 或只键入地址参数的写盘命令) ,写盘命令把文件写到软盘上。
该文件在用W 命令之前用命名命令N 将文件格式化在CS:5CH 的文件控制块中。
c ·只有W 命令以前而没有任何参数时,与N 配合使用进行写盘操作。
在用W 命令以前在BX 和CX 中应写入文件的字节数。
(15 )输出命令O格式:O[ 端口地址] [ 字节值]功能:向指定端口地址输出一个字节。
(16 )运行命令G格式:G [ =地址][ 地址[ 地址…]]功能:执行用户正在调试的程序。
其中地址为执行的起始地址,以CS 中内容作为段地址,以等号后面的地址为偏移地址。