微机原理实验与调试软件的使用

合集下载

微机原理实验系统调试命令与编程应用

微机原理实验系统调试命令与编程应用

微机原理实验系统调试命令与编程应用
微机原理实验系统通常是一个模拟的计算机系统,用于学习和实践微机原理相关的知识和技能。

在调试微机原理实验系统时,你可以使用一些命令和编程应用来执行各种操作。

以下是一些常见的命令和编程应用的示例:
1. 汇编语言编程:使用汇编语言编写程序,并通过汇编器将其转换为机器码。

可以使用指令集手册来了解特定处理器的指令集,并使用汇编语言进行编程。

2. 调试器:调试器是一个用于程序调试的工具,可以逐步执行程序,并检查程序状态、寄存器值和内存内容。

你可以使用调试器来跟踪程序的执行流程,定位问题和错误。

3. 单步执行:单步执行是指一次执行一条机器指令,并观察执行结果。

可以使用单步执行来逐步调试程序,以查看每个指令的影响和结果。

4. 断点设置:通过设置断点,你可以在程序执行到指定位置时暂停执行。

这允许你检查程序在该位置的状态,并进行必要的调试操作。

5. 寄存器操作:在微机原理实验系统中,你可以使用一些命令来读取和修改CPU寄存器的值。

这对于观察和调试程序时的寄存器状态非常有用。

6. 内存操作:可以使用命令来读取和写入内存中的数据。

你可以使用这些命令来观察和修改程序的数据区域,以及进行其他与内存相关的操作。

7. 输入/输出模拟:微机原理实验系统通常提供了输入和输出设备的模拟。

你可以使用相关的命令和编程应用来模拟输入设备(如键盘)的输入和输出设备(如显示器)的输出。

请注意,具体的命令和编程应用取决于你使用的微机原理实验系统的软件和硬件平台。

建议参考相关的文档和教材,以了解特定系统的详细调试命令和编程应用。

[微机原理与接口技术课件]实验一DEBUG软件的使用

[微机原理与接口技术课件]实验一DEBUG软件的使用

实 验 一 DEBUG 软 件 的 使 用是专为8086/8088汇编语言设计的一种调试工具,是汇编语言程序设计者必须掌握的工具。

具有显示、修改、动态跟踪等功能。

使用它可以对*.COM 、*.EXE文件进行动态跟踪。

DEBUG可以显示和修改内存与寄存器内容,以便在调试中检查程序,查找与改错;亦支持小汇编,直接对小段程序进行汇编;也可对磁盘进行读写。

一、实验目的1.通过实验掌握DEBUG软件的基本使用方法。

2.进一步熟悉、理解8088/8086的寻址方式。

3.掌握数据传送、算术运算、逻辑运算等类指令的基本操作。

二、实验内容与步骤本实验进行前必须保证系统盘上有DEBUG.EXE文件。

进入DEBUG只需在DOS环境下执行 DEBUG命令,即键入DEBUG回车后,屏幕上显示 DEBUG提示符:“_”(短划线)。

操作如下:C:>DEBUG-注: 字符下有下划线的为键入的内容,\代表回车,后面内容均如此.1.程序输入汇编命令(A命令)在输入程序应注意以下几点:(1)输入的数字必须是十六进制数,并且不输入H。

(2)分号后面的内容(注释)不要输入。

(3)不输入标号,条件转移指令中的标号用偏移地址代替。

方法:先用一个离本转移指令的IP不远的但不一定准确的偏移地址代替标号 ,待程序输入且完成反汇编后获得标号所在处的准确的偏移地址时再修改。

在DEBUG提示符下键入A即进入汇编输入状态-A \键入下面的汇编程序13F2:0100 MOV AX,200013F2:0103 MOV DS,AX13F2:0105 MOV SS,AX13F2:0107 MOV BX,205013F2:010A MOV SI,BX13F2:010C MOV DI,305013F2:010F MOV SI,DI13F2:0111 MOV SP,5FFF13F2:0114 MOV CL,1913F2:0116 MOV BL,CL13F2:0118 MOV AH,F013F2:011A MOV CH,AH13F2:011C MOV BYTE PTR [DI],4013F2:011F MOV WORD PTR [SI],010013F2:0123 MOV DL,[SI+01]13F2:0126 MOV DH,[SI+01]13F2:0129 MOV AL,[SI+01]13F2:012C MOV WORD PTR [BX+SI],0022 13F2:0130 MOV [BX+SI+02],BX13F2:0133 MOV [BX+SI+02],BX13F2:0136 MOV BP,[BX+DI+02]13F2:0139 MOV [BX+DI],BX13F2:013B MOV AX,[BP+DI]13F2:013D MOV BL,AL13F2:013F MOV ES,BX13F2:0141 PUSH BX13F2:0142 PUSH DI13F2:0143 PUSH DI13F2:0144 POP CX13F2:0145 POP DX13F2:0146 XCHG BP,AX13F2:0147 XCHG DH,BL13F2:0149 SAHF13F2:014A CMC13F2:014B LAHF13F2:014C STD13F2:014D CLI13F2:014E PUSHF13F2:014F CLD13F2:0150 POPF13F2:0151 INT2113F2:0153 ^C重新回到DEBUG提示符“-”状态,表示汇编命令已结束。

微机原理实验---Emu8086仿真软件的使用实验

微机原理实验---Emu8086仿真软件的使用实验
新建文件(四种模板): COM模板:适合简单程序段,从代 码段的偏移地址为100H处开始存放 指令(即:源代码之前应有ORG 100H)。
EXE模板:适合完整程序的编写。 BIN模板:一般不用,因为不能 正确解释伪指令。
BOOT模板:编写程序,数据段 的段地址为07C0H。
选择COM模板, 软件出现源代码编辑器的界面, 如图所示:
(2)
存器的内容:
MOV AX,1000H ; AX=?
MOV BX,2000H ;BX=?
MOV CX,3000H ;CX=?
MOV DX, AX ;AX=? , DX=?
MOV AX, CX ;CX=?, AX =?
MOV CX, BX ;BX =?, CX =?
MOV BX, DX ;DX=?, BX=?
HLT
思考:该程序段实现什么功能?(3) 记录每条指来自执行后相关寄存器、存储器的内容:
MOV AX, 0B800H MOV DS, AX ; DS AX MOV CX, 5F41H MOV BX, 15EH MOV [BX], CX ; 将 CX的值传送到 BX 指出的内存
单元B800H:015EH中 HLT
(3)编辑源程序并保存,汇编源程序的文件扩展名 必须是ASM 。 在源代码编辑器的空白区域,编写程序。
程序编写结束,点击菜单【文件】【另存为……】, 将源程序保存,文件扩展名为.asm。
(4)编译程序 点击工具栏的【编译】按钮,对程序编译,检查语法 是否有错。如果程序有错误,编译不通过,并给出错 误提示的信息。
EMU8086集源代码编辑器,汇编/反汇编工 具以及可以运行debug的模拟器(虚拟机器) 于一身。它能够编译源代码,并在模拟器上一 步一步的执行。

微机原理实验操作步骤:微机原理实验联机运行步骤

微机原理实验操作步骤:微机原理实验联机运行步骤

微机原理实验联机运行步骤
1、开机进入DV88系统;
2、结合电路图并按实验内容正确连线;
3、用数据线连接计算机与试验箱;
4、打开程序;
5、按复位键(试验箱)后机箱显示“P.”,再按PCDBG
键(试验箱);
6、点击联接(计算机),随后点击一下屏幕中间的任意位
置;
7、再点击编译(计算机),若有错误则改正程序;
8、继续点击调试(计算机);
9、最后点击运行(此时屏幕显示OK),查看并记录运行
结果;
10、按复位键(试验箱),再按PCDBG键(试验箱),并
点击OK(计算机)退出实验。

查看存储器内容步骤:在实验步骤6后面,用右键点击数据窗口,然后输入要查看的地址,会显示相应地址下的内容。

微机原理实验指导书

微机原理实验指导书
主界面窗口如下,主要分为三部分:程序编辑区、寄存器/变量/堆栈区和输出 区,下面分别加以介绍。
1
微机原理与接口技术实验指导书
微机原理实验室·BIM
1.程序编辑区: 位于界面右上部,用户可在程序编辑区用“新建”命令打开一个新文档或用 “打开”命令打开一个已存在的文档,在文档中用户可编辑程序。用户可在程序编 辑区打开多个文档,点击文档标签可激活任一文档。编译、链接、加载以及调试命 令只针对当前活动文档。用户调试程序时,调试界面亦在文档中显示。 2.寄存器/变量/堆栈区: 位于界面左上部,包括三个部分:寄存器区、变量区和堆栈区。寄存器区和变 量区用于实时监视寄存器和变量,也能够修改寄存器和变量的值,堆栈区主要用于 实时监视堆栈寄存器。点击寄存器区标签可观察和修改寄存器,点击变量区标签可 观察和修改变量,点击堆栈区标签可观察堆栈寄存器。执行相关操作后寄存器、变 量和堆栈寄存器的值自动刷新,如果寄存器区刷新后的值和刷新前的值相同,则显 示为蓝色,如果不同,则显示为红色。变量区和堆栈区刷新前和刷新后都为蓝色。 想修改寄存器或变量,用鼠标左键单击某寄存器或变量,当寄存器或变量值的区域 变为蓝色后输入修改后的值,然后回车。如果修改的是寄存器,输入的值的长度与 寄存器的长度相同,回车后修改正确,如果输入的值的长度和寄存器的长度不相同, 寄存器的值没有被修改,保持原来的值且可以继续修改该寄存器的值。如果修改的 是变量,输入的值的长度与变量的长度相同,回车后修改正确,如果输入的值的长 度小于变量的长度,回车后输入值的前面自动添零,如果输入值的长度大于变量的 长度,回车后输入值的后面的多余部分自动删除。堆栈区只用于监视,不能够被修 改。 3.输出区: 位于界面下部,输出区包含三个部分:编译区、调试区和结果区。编译区显示 编译和链接的结果,如果编译时有错误或警告,双击错误或警告信息,错误标识符 会指示到相应的有错误或警告的行。调试区主要用于 DEBUG 调试。结果区主要用于 显示程序加载结果、程序运行输出结果和复位结果。结果区中有“加载中,请稍

学微机原理好用的软件

学微机原理好用的软件

学微机原理好用的软件学习微机原理时,有许多好用的软件可以辅助我们的学习和实践。

这些软件可以帮助我们理解和应用微机原理的基本概念、实验和设计。

下面,我将介绍一些我认为非常好用的微机原理软件,并简要说明它们的功能和使用方法。

首先,我想推荐的是Proteus软件。

Proteus是一款用于模拟电子线路并进行PCB布局的综合软件。

它的主要功能是通过仿真电子线路来验证我们的设计,并可进行PCB设计。

在学习微机原理时,我们可以使用Proteus来模拟和验证各种数字电路、模拟电路和微控制器等的工作原理。

我们可以通过添加元件、连线和配置电源等设置来构建电路,并进行仿真和调试。

Proteus还提供了许多实验模块和组件库,以及示波器和逻辑分析仪等工具,方便我们观察电路的运行情况。

此外,Proteus还支持与其他软件、硬件和CAD工具的集成,可以方便地进行项目管理和文件共享。

另一个我推荐的软件是Multisim。

Multisim是由NI(National Instruments)开发的一款基于电子线路仿真和调试的软件。

它可以帮助我们学习并实践各种电子电路的设计原理和工作方式。

Multisim提供了丰富的电子元件库,我们可以通过拖放操作将元件放置到工作区,并进行连线和参数设置。

然后,我们可以进行仿真和分析,观察电路的响应和输出结果。

Multisim还支持虚拟仪器和测量工具,如示波器、函数发生器和信号采样器等,用于观察电路的动态性能。

此外,Multisim还提供了许多实验教学模块和实验报告模板,方便我们进行实验和报告编写。

除了Proteus和Multisim,还有一些其他好用的微机原理软件,如Keil MDK (Microcontroller Development Kit)和MPLAB X IDE(Integrated Development Environment)。

这些软件主要用于单片机的开发和编程。

Keil MDK是一套综合的软件开发工具,提供了基于ARM Cortex-M处理器的嵌入式系统设计和调试环境。

微机原理及应用中南大学实验报告

微机原理及应用中南大学实验报告

微机原理及应用实验报告实验一单片机仿真开发机操作和MCS-51指令系统应用一、实验目的1、熟悉MCS-51单片机仿真开发机和开发调试软件的操作使用和调整;2、学会编写和输入汇编语言源程序、对输入的源程序进行汇编;3、掌握程序的调试和运行的各种方法。

二、实验说明1.输入给定程序,配置选项,调试并运行程序,观察程序控制下寄存器的变化。

2.选中此项keil为纯软件仿真。

3.编写程序上机调试通过,实验报告要求提交程序流程图及源程序。

三、实验内容及步骤(完成分值:60分)本实验秩序运行Keil uVersion2程序,设置为keil为纯软件仿真(不需要连接仿真器就可以仿真)。

1.新建工程项目2.设置工程文件参数3.编写新程序事例4.调试程序直至能够运行出结果。

四、参考实验程序AJMP MAINORG 0030HMAIN: MOV R0,#20HMOV R2,#0FHMOV A,#00HA1: MOV @R0,AINC R0INC ADJNZ R2,A1MOV R0,#20H ;暂停,观察并记录!MOV DPTR,#7000HMOV R2,#0FHA2: MOV A,@R0MOVX @DPTR,AINC R0INC DPTRDJNZ R2,A2MOV R0,#030H ;断点,观察并记录!MOV DPTR,#7000HMOV R2,#0FHA3: MOVX A,@DPTRMOVX @R0,AINC R0INC DPTRDJNZ R2,A3DO: LJMP DOEND ;内部存储器数据块赋值,搬运数据块到外部存储器,再搬运回内部数据存储器。

五、附加题(完成分值:10分/单个附加题,附加题要求当场给指导老师检查结果,否则无效。

其中1、2、3附加题要求写在实验报告上)1.将光标移到想要暂停的地方,MOV R0,#20H所在行,选择“执行到光标处”功能,程序快速执行到光标所在行。

观察运行情况,并记录下表。

R0 R2 A 20H 21H 22H 23H 24H 25H2FH 00H 0FH 00H 01H 02H 03H 04H 05H26H 27H 28H 29H 2AH 2BH 2CH 2DH 2EH06H 07H 08H 09H0AH 0BH 0CH 0DH 0EH2.在MOV R0,#0A0H行设置断点,全速执行,暂停后观察并记录以下单元内容R0 DPL 7000H 7001H 7002H 7003H 7004H 7005H 7006H2FH 01H 0FH 01H 02H 03H 04H 05H 06H7007H 7008H 7009H 700AH 700BH 700CH 700DH 700EH07H 08H 09H 0AH 0BH 0CH 0DH 0EH3.画出程序流程图4.修改程序,实现新功能(例如搬运数据时实现倒序,变成对应的BCD码,请自行考虑与别人不同的功能,同组同学已经实现过的功能不算新功能)答:由程序可知,子程序Al产生数据,子程序A2将产生的数据搬运至7000H开头的地址,子程序A3将7000H开头的地址搬运至30H开头的地址。

微机原理实验源程序配合伟福lab8000试验箱使用

微机原理实验源程序配合伟福lab8000试验箱使用

实验一汇编语言上机实验一、实验目的1、熟悉掌握汇编程序的编辑、编译、连接、运行,要求在Debug状态下查看结果。

2、熟悉Debug对程序进行调试的方法及步骤。

3、熟悉掌握8086常用的汇编语言指令。

4、掌握简单的程序设计方法。

二、实验属性验证性实验。

三、实验仪器设备及器材计算机(含有汇编软件)。

四、实验要求1、实验前:在熟练掌握指令系统的基础上,要求学生对上机基础知识(见附录A、B、和C)有一定的了解,能掌握汇编语言的上机过程及常用的DEBUG调试命令,按要求写出预习报告;2、实验时:认真理解实验内容,掌握汇编程序的编辑、编译、连接、运行及Debug程序的使用;3、实验后:写出实验报告(包括程序流程图、源程序、实验结果)。

五、实验内容及原理1、内存中存放有两个双字的数据,用加法指令和带进位加法指令完成两数相加。

用Debug观察相加结果。

相加时应注意,低位字在前、高位字在后,高位字与高字位、低位字与低位字对应相加,高位字相加时,应采用带进位的加法指令。

实验参考程序如下:DA TA SEGMENTBUFFER1 DW 20H,5040HBUFFER2 DW 2434H,2034HDA TA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATA ;取数据段段基址MOV DS,AXLEA SI,BUFFER1 ;取BUFFER1的有效地址送指针SIMOV AX,[SI]MOV DI,OFFSET BUFFER2 ;取BUFFER2的有效地址送指针DIADD AX,[DI] ;低位字相加MOV [SI],AX ;相加和送变量BUFFER1保存ADD SI,2 ;修改指针,指向高位字ADD DI,2MOV AX,[SI]ADC AX,[DI]MOV [SI],AXMOV AH,4CH;返回DOS,但如在DEBUG下调试,INT21H ;可不用此软中断HLT ;暂停CODE ENDSEND START2.码制转换:把寄存器中(或存储器中)一个字的组合BCD码,转换为4位ASCII码,存入相应的内存单元中,并在DEBUG状态下查看运行结果。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
二.实验内容
1.(重做,用宏定义表格,不用xlat指令,)定义一数据段data,从 10H开始存放y函数值表,table为首指针( Y=X2-2X+3 ; X=3,4,5,6,7,8,9,10)。编一程序根据X值查table表,把对应Y值存入 Y变量中。
2.字节变量BCDC中定义了10个字节的压缩BCD码(20十进制数), 编一程序按顺序把它们转换成字符(ASC码),存入ASCC开始的 字节数据区。
四.实验小结(或收获、感受、经验、意见、建议等)
指令学习: 实验三 分支程序设计与调试
一.实验目的:
1.学习条件转移指令功能和简单分支程序设计。 2.学习在debug中调试分支程序的方法。 二.实验内容
1.写一段程序完成Z=|X-Y|,设X和Y为单字节无符号数, 分别在[10]和[20],Z在[30]单元。
实验一 debug调试工具软件的使用
三.实验步骤(根据具体题目细化) 1.进入DOS模式界面窗口,进入DEBUG。(根据实验室 系统介绍WIN98或WIN XP系统的进入方法) 2.用A和U命令输入和检察程序(注程序空间的选取)。 3.用E和D命令输入和检察数据(注数据空间的选取)。 4.用T、G或P命令运行。 5.检察运行结果,并调试程序。 6.用不同数据反复验正程序的正确性。 7.综合实验结果,得出结论或感受。
实验三 分支程序设计与调试
三.实验步骤(根据具体题目细化) 1.进入DOS模式界面窗口,进入DEBUG。(根据实验 室系统介绍WIN98或WIN XP系统的进入方法) 2.用A和U命令输入和检察程序(注程序空间的选取)。 3.用E和D命令输入和检察数据(注数据空间的选取)。 4.用T、G或P命令运行。 5.检察运行结果,并调试程序。 6.用不同数据反复验正程序的正确性。 7.综合实验结果,得出结论或感受。
2.把[40]单元中的二位十六进制数转换成ASC码,结果 存入[42-43H]单元。
*3.从50H-57H地址单元中的一字符串,用串指令搜索其 中的第一个字母‘K’,若找到则把其地址送[60H]字单 元;否则把-1(0FFFFH)送[60H]字单元。
*4.写一段程序完成根据字变量X中数是>0、=0或是<0, 分别给符号单元Y(字节)赋字符‘+’、‘0’或‘-’。
四.实验小结(或收获、感受、经验、意见、建议等)
编程学习:实验四 Masm、Link、CodeView编译调试工具软 件的使用
一.实验目的: 1.CodeView编译调试工具软件的使用 2.学习汇编语言规范,汇编语言程序结构,伪指令的功 能和使用 3.汇编语言程序设计与调试
二.实验内容 1.定义一数据段data,从10H开始存放y函数值表,table 为首指针( Y=X2-2X+3 ;X=3,4,5,6,7,8,9,10)。编一程 序根据X值查table表,把对应Y值存入Y变量中。 2.在Val开始的数据区有10个单字节有符号数(有正、负 数组成),找出其中的最大数据存入Max字节单元。
实验与调试软件的使g调试工具软件的使用 一.实验目的:
1.debug 调试工具软件的使用方法,常用命令A、U、D、 E、R、T、G的使用。 2.用debug调试简单程序段的方法。 3.学习指令功能和简单程序编写。 二.实验内容
1.用直接寻址、间接寻址、交换指令、堆栈指令各写一段 程序完成[10H]和[20H]单元内容的交换。 *2.在[30H]字节单元中存放X(=1,2,…,9),Y=X2表 从40H地址开始,用XLAT和非XLAT各编一查表程序,把 查出的X平方值存入[31H]单元。
四.实验小结(或收获、感受、经验、意见、建议等)
指令学习: 实验二 简单程序设计与调试 一.实验目的:
1.学习指令功能和简单程序设计。 2.巩固使用debug调试简单程序段的方法。 二.实验内容 1.写一段程序完成Z=X+Y,设X和Y为压缩BCD码,
X=128362和Y=203957,分别存放在[10]-[12]和[20]-[22], Z在[30]-[33]单元(例如[10H]=62H,[11H]=83H, [12H]=12H和[20H]=57H,[21H]=39H,[22]=20H)。 2.用移位和循环指令对无符号字节数X=6CH ([40H]=6CH)作×10运算,结果存入地址为50H的字单 元中。。
1.选用合适的程序文本编辑软件编辑源程序,并为文件取以.ASM为 扩展名的文件存盘。
2.用宏汇编软件MASM对源程序文件进行汇编,若有错误,根据提 示(行号,错误类型)回源程序文件中修改。
3.用LINK对由MASM汇编后产生的目标文件做连接,生成可执行文 件;若有错误(同上)回步骤1修改源程序文件。
3.字符串STR1(如‘Is a ADSL device.’),串长(字节数)存放在字变 量LEN中,编程把STR1串中小写字母都转换成大写字母而其它字 符不变。
4.用CV调试程序,检察运行结果,并调试程序。 5.用不同数据反复验正程序的正确性。 6.综合实验结果,得出结论或感受。
四.实验小结(或收获、感受、经验、意见、建议等)
编程学习:实验五 汇编语言程序设计与调试1 一.实验目的:
1.伪指令、宏指令的使用 2.汇编语言程序设计与调试 3.CodeView编译调试工具软件的使用
实验四 Masm,Link,CodeView编译调试工具软件的使用
*3.设字节变量X中存有两位十六进制数,将其转换成两个字符存入Y。 二者关系如下:
十六进数 0 1 2 3 … 9 … A B C … F 字符码 30H 31H 32H 33H 39H … 41H 42H 43H …46H
三.实验步骤
实验二 简单程序设计与调试
三.实验步骤(根据具体题目细化) 1.进入DOS模式界面窗口,进入DEBUG。(根据实验 室系统介绍WIN98或WIN XP系统的进入方法) 2.用A和U命令输入和检察程序(注程序空间的选取)。 3.用E和D命令输入和检察数据(注数据空间的选取)。 4.用T、G或P命令运行。 5.检察运行结果,并调试程序。 6.用不同数据反复验正程序的正确性。 7.综合实验结果,得出结论或感受。
相关文档
最新文档