微机原理实验模板教学内容
微机原理实验指导书

实验一初级程序的编写与调试一、实验目的1、熟练掌握的DEBUG常用命令,学会用DEBUG调试程序;2、深入了解数据在存储器中的存取方法,及堆栈中数据的压入与弹出;3、掌握各种寻址方法以及简单指令的执行过程。
二、实验内容1、设堆栈指针SP=2000H,AX=3000H,BX=5000H,请编一程序段将AX的内容和BX的内容进行交换。
请用堆栈作为两寄存器交换内容的中间单元,用DEBUG调试程序进行汇编与调试。
2、设DS=当前段地址,BX=0300H,SI=0002H,请用DEBUG的命令将存储器偏移地址300H—304H连续单元顺序装入0AH、OBH、0CH、0DH、0EH。
在DEBUG状态下送入下面程序,并用单步执行的方法,分析每条指令源地址的形成过程。
当每条数据传送完毕时,AX中的内容是什么。
程序清单如下:MOV AX,BXMOV AX,0304HMOV AX,[0304H]MOV AX,[BX]MOV AX,0001[BX]MOV AX,[BX][SI]MOV AX,0001[BX][SI]HLT3、设AX=0002H,编一个程序段将AX的内容乘10,要求用移位的方法完成。
三、实验要求1、实验前要做好充分准备,包括汇编程序清单、调试步骤、调试方法,对程序结果的分析等。
2、本实验要求在PC机上完成。
3、本实验只要求在DEBUG调试程序状态下进行,包括汇编程序,调试程序,执行程序。
4、编程提示:(1)、实验内容1将两个寄存器内容进行交换时,必须有一个中间寄存器才能进行内容的交换。
如果用堆栈作为中间存储单元,必须遵循先进后出的原则。
(2)、实验内容2[1] 其中数据段寄存器中的段地址为进入DEBUG状态后系统自动分配的段地址。
[2] SI和BX的初值可在DEBUG的状态下,用R命令装入,也可以在程序中用指令来完成。
[3] 用T命令执行程序,可进行单步跟踪执行,每执行一条指令就可以看到各寄存器的状态,也可用R命令直接调出寄存器,来检查各寄存器内容是否正确。
微机原理实验报告册(3篇)

第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)学习微机中断处理在接口技术中的应用。
微机原理实验教案

微机原理实验教案一、实验目的和意义1.掌握基本的微机组成和工作原理;2.学习如何配置和调试微机组件;3.提高对计算机硬件的理解和实验操作能力;4.培养动手能力和实践创新思维。
二、实验设备和材料1.微机实验箱;2.单片机开发板;3.屏幕、键盘、鼠标等外设;4.连接线、电源等辅助器材。
三、实验内容和步骤实验一:微机组成与原理1.确认各组件的名称和功能;2.查阅相关资料了解各组件的工作原理;3.打开微机实验箱,检查各组件的连接是否正确;4.接通电源,启动微机;5.在屏幕上观察开机过程,理解各组件的工作原理;6.测试各组件的功能,如键盘、鼠标、显卡等。
实验二:微机配置与调试1.了解微机配置的基本概念和方法;2.确定所需的硬件配置,并按要求安装在微机上;3.进行硬件的初始化和配置;4.在操作系统中检查硬件配置是否正确;5.运行测试程序,检验硬件配置是否稳定。
实验三:微机的故障排除与维护1.学习微机故障排除的基本原则和方法;2.模拟常见的微机故障情况,并进行排除;3.掌握常见的维护操作,如清洁、更新驱动程序等;4.学习备份和恢复操作系统的方法。
实验四:微机性能测试与评估1.了解微机性能测试的基本原理和方法;2.选择适当的性能测试软件,进行测试;3.记录测试结果,并根据结果进行性能评估;4.提出改进微机性能的建议。
四、实验安全注意事项1.在操作微机时,应注意电源的安全使用,避免触电事故;2.在连接或更换硬件组件时,应确保电源已断开,以免损坏硬件;3.实验过程中保持实验环境整洁,避免杂物堆放导致的安全隐患;4.在进行故障排除时,应注意软硬件的兼容性和操作正确性。
五、实验结果与分析1.根据实验数据和观察结果,分析微机的组成和原理;2.对实验过程中遇到的问题进行分析,并提出解决方案;3.对实验结果进行总结和评估,提出改进意见。
六、思考题1.什么是微机?简述微机的组成和工作原理;2.如何进行微机的配置与调试?列举具体的步骤;3.你认为微机性能测试的指标有哪些?选择性能测试软件可以使用哪些工具进行测试?4.你在实验过程中遇到了哪些问题?你是如何解决的?5.实验中你认为有哪些需要改进和提高的地方?七、实验总结通过本次实验,我对微机的组成和原理有了更深入的了解,掌握了微机配置与调试的方法,提高了实验操作能力和创新思维。
微机原理实验模板

微机原理实验模板实验目的此次实验旨在让学生通过对 8086 微处理器以及基本的微机原理的学习,了解微机系统的结构、微处理器的工作原理以及编程技巧等内容。
通过操作指令,熟悉微机系统的功能以及实际应用。
实验器材•一块使用 8086 微处理器的微机板;•交叉串口线;•串口接口电缆。
实验步骤第一步:组织实验环境首先,需要确定好实验使用的操作系统是什么。
确定完毕后,我们可以准备好实验环境:•安装相关的开发工具和编程环境,如 DOSBox、MASM、调试器等;•制作启动盘(3.5 英寸干净的软盘,格式化为 MS-DOS 格式)。
第二步:编写程序接着我们开始编写程序。
程序的题目为:将 16 bit 数据从串口 1 发送到串口 0。
具体编写程序的过程如下:1.初始化串口。
2.输入数据。
3.通过串口 1 发送数据。
4.通过串口 0 接收数据。
5.循环调用以上过程,直到所有的数据都被发送。
在实际编写过程中,需要注意以下事项:•在输入数据时,需要判断数据是否有效(比如在输入十六进制数时)。
•在发送数据时,需要等待数据发送完成后再进行下一次发送。
•在接收数据时,可以先设置一个计时器,稍微等待一下再将数据读入到累加器中。
第三步:调试程序接着,我们需要调试程序。
具体的调试步骤如下:1.运行调试程序。
2.在第一行代码处打上断点。
3.执行步骤 1 和 2,以确保程序正确。
4.按 F10(步进)进行单步调试,查看程序运行情况。
5.若程序运行出错,可以使用 F10+F11(单步跳过)进行调试。
第四步:测试程序当程序调试通过后,我们就可以开始测试程序了。
具体测试步骤如下:1.将两个串口接口电缆分别插入串口 1 和串口 0。
2.执行程序,将数据从串口 1 发送到串口 0。
3.接收并检查数据,确保数据发送和接收成功。
实验总结通过此次实验,我们深入了解了微机系统的构成和微处理器的基本知识。
在编写程序时,能够更好地运用所学的知识。
在调试和测试过程中,我们更是学会了如何进行有效的调试和测试。
微机原理的实验报告

一、实验目的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. 汇编语言程序设计实验:通过编写汇编语言程序,提高了汇编语言程序设计能力。
四、实验心得通过本次微机原理实验,我对微机的基本组成、工作原理和指令系统有了更深入的了解。
微机原理教案模板范文

课程名称:微机原理授课班级:XX级XX班授课时间:2课时教学目标:1. 让学生了解微机的基本组成和结构。
2. 掌握微机的数制和编码知识。
3. 理解微机的工作原理,包括指令的执行过程。
4. 能够分析微机系统中各个部件的功能和作用。
教学内容:1. 微机的基本组成和结构2. 数制和编码3. 微机的工作原理4. 微机系统中各个部件的功能和作用教学重点:1. 微机的基本组成和结构2. 微机的工作原理教学难点:1. 微机系统中各个部件的功能和作用2. 微机的工作原理教学过程:一、导入1. 通过提问引导学生回顾计算机的发展历程,激发学生的学习兴趣。
2. 提出本节课的学习目标,让学生明确学习任务。
二、新课讲解1. 微机的基本组成和结构- 介绍微机的各个组成部分,如CPU、存储器、输入输出设备等。
- 讲解各个部分的功能和作用。
2. 数制和编码- 介绍二进制、八进制、十进制和十六进制等数制之间的转换。
- 讲解原码、反码、补码等编码方式。
3. 微机的工作原理- 介绍指令的执行过程,包括取指令、指令译码、执行指令等步骤。
- 讲解CPU内部各个部件的功能和作用。
4. 微机系统中各个部件的功能和作用- 介绍地址总线、数据总线、控制总线等总线的功能。
- 讲解运算器、控制器、指令寄存器、指令译码器等部件的功能。
三、课堂练习1. 学生独立完成以下练习题:- 数制转换题- 编码方式转换题- 指令执行过程分析题2. 教师巡视指导,解答学生的疑问。
四、课堂小结1. 回顾本节课的学习内容,强调重点和难点。
2. 鼓励学生在课后进行复习,巩固所学知识。
五、布置作业1. 完成课后练习题。
2. 预习下一节课的内容。
教学评价:1. 通过课堂提问、练习题等方式,了解学生对本节课内容的掌握程度。
2. 关注学生在课堂上的表现,如参与度、积极性等。
3. 通过作业完成情况,了解学生对知识的巩固程度。
备注:1. 教师应根据学生的实际情况,调整教学内容和进度。
微机原理实验教案

实验一 DEBUG与汇编语言程序结构一、实验目的1.学习使用DEBUG程序的各种命令。
2.掌握用DEBUG调试程序。
3.掌握汇编语言程序上机过程。
4.学习汇编程序的伪操作。
5.了解汇编程序、链接程序、DOS 系统装入和返回功能。
二、实验内容1.掌握 DEBUG 程序的各种命令,重点是A、D、G、P、Q、R、T、U命令的使用。
A命令是汇编命令D命令是查看内存命令G命令是连续执行命令P命令是单步执行命令,但遇到子程序和中断及循环指令当作一条指令处理Q命令是推出DEBUG命令R命令是查看寄存器值命令T单步执行命令,但跟踪将进入子程序单步执行U命令是反汇编目标代码命令步骤:点击Windows系统“开始”菜单,选择“运行”,如图2-1-1,输入“CMD”命令并点击“确定”运行,如图2-1-2。
屏幕上出现如图2-1-3所示DOS命令窗口。
图2-1-1图2-1-2 运行命令图2-1-3 DOS命令窗口在DOS命令窗口输入DEBUG回车,进入DEBUG命令状态,左端出现“-”提示符,表示可以接受DEBUG命令,如?、A、U、T等,如图2-1-4。
输入?命令可以查看DEBUG 支持的所有命令,按Q命令可以返回到DOS命令提示符状态。
在DEBUG提示符下练习A、D、G、P、Q、R、T、U等命令的使用。
图2-1-4 DEBUG调试程序2.用命令A汇编下列指令,判断指令正误。
1)ROR AX,8 ->错误,原因是当移位次数多于1时应将次数放入CL寄存器。
2)LEA DI,[AX] -> 错误,AX不能作为间接寻址寄存器。
3)MOV DS,2010 ->错误,DS不能直接与立即数进行数据传送。
4)PUSH AL ->错误,入栈操作必须对字操作,AL为字节5)OUT A00,AL-> 错误,端口输出指令中,当端口地址大约255时应用DX间接寻址6)MOV [BX],0->错误,没有指明操作类型。
大学微机原理实验报告(3篇)

第1篇实验名称:微机原理实验实验日期:2023年10月25日实验地点:计算机实验室实验教师:[教师姓名]实验学生:[学生姓名]班级:[班级名称]一、实验目的1. 理解微机原理的基本概念和组成结构。
2. 掌握微机硬件的基本操作和调试方法。
3. 熟悉汇编语言编程和程序调试技巧。
4. 通过实验加深对微机原理课程的理解,提高动手能力。
二、实验内容本次实验主要分为以下几个部分:1. 微机硬件系统结构认识:了解微机硬件系统的组成,包括CPU、内存、I/O接口等,熟悉各部件的功能和相互关系。
2. 汇编语言编程:学习汇编语言的基本语法和指令系统,编写简单的汇编程序,实现特定功能。
3. 程序调试:使用调试工具(如DEBUG)对汇编程序进行调试,查找并修正错误。
4. 微机原理实验:完成以下实验任务:1. 编写程序实现两个多位十进制数的相加。
2. 编写程序实现字符串比较功能。
3. 编写程序实现乘除法运算。
三、实验步骤1. 微机硬件系统结构认识:- 观察实验室中的微机硬件系统,了解各部件的连接方式和功能。
- 使用示波器检测实验装置的信号是否正常。
2. 汇编语言编程:- 学习汇编语言的基本语法和指令系统。
- 编写程序实现两个多位十进制数的相加,程序如下:```;加数DATA1 DB 3,4,5,6,7;被加数DATA2 DB 2,3,4,5,6;结果SUM DB 5 DUP(0);程序开始MOV CX, 5 ;循环次数MOV AL, 0 ;结果初始化为0MOV SI, OFFSET DATA1 ;加数地址MOV DI, OFFSET DATA2 ;被加数地址ADD_LOOP:ADD AL, [SI] ;加数加到AL寄存器ADC AL, [DI] ;进位加到AL寄存器MOV [DI], AL ;结果存回DI寄存器ADD SI, 1 ;加数地址加1ADD DI, 1 ;被加数地址加1LOOP ADD_LOOP ;循环;程序结束```- 编写程序实现字符串比较功能,程序如下:```;字符串1STRING1 DB 'Hello';字符串2STRING2 DB 'World';比较结果RESULT DB 0;程序开始MOV SI, OFFSET STRING1 ;字符串1地址MOV DI, OFFSET STRING2 ;字符串2地址CMP_LOOP:MOV AL, [SI] ;读取字符串1的当前字符CMP AL, [DI] ;与字符串2的当前字符比较 JNE NOT_EQUAL ;不相等则跳转到NOT_EQUAL INC SI ;字符串1地址加1INC DI ;字符串2地址加1LOOP CMP_LOOP ;循环MOV RESULT, 1 ;相等则将结果设置为1JMP END ;跳转到ENDNOT_EQUAL:MOV RESULT, 0 ;不相等则将结果设置为0END:;程序结束```- 编写程序实现乘除法运算,程序如下:```;被乘数DATA1 DB 10;乘数DATA2 DB 5;结果PRODUCT DB 0;程序开始MOV AL, [DATA1] ;被乘数加载到AL寄存器MUL [DATA2] ;乘数乘到AL寄存器MOV [PRODUCT], AL ;结果存回PRODUCT;程序结束```3. 程序调试:- 使用DEBUG工具对汇编程序进行调试,查找并修正错误。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验一8086指令使用实验目的通过实验掌握下列知识:1、8086指令: MOV,ADD,ADC,SUB,SBB,DAA,XCHG2、DEBUG命令: A,D,E,F,H,R,T,U。
3、BCD码,ASCII码及用十六进制数表示二进制码的方法。
4、8086寄存器: AX,BX,CX,DX,F,IP。
内容及步骤一、DEBUG 命令使用1、键入 DEBUG 进入 DEBUG 控制状态,显示提示符 '- '。
2、用命令 F100 10F 'A' 将'A'的ASCII码填入内存。
3、用命令 D100 10F 观察内存中的十六进制码及屏幕右边的ASCII字符。
4、用命令 F110 11F 41 重复上二项实验,观察结果并比较。
5、用命令 E100 30 31 32 …… 3F将30H-3FH写入地址为100开始的内存单元中,再用D命令观察结果,看键入的十六进制数是什么字符的ASCII码?6、用H命令检查下列各组十六进制数加减结果并和你的手算结果比较:(1)34H,22H (2)56H,78H (3)A5,79H (4)1284H,5678H (5)A758H,347FH7、用R命令检查各寄存器内容,特别注意AX,BX,CX,DX,IP及标志位中ZF,CF和AF的内容。
8、用R命令将AX,BX内容改写为1050H及23A8H。
二、8086常用指令练习1、传送指令1)用A命令在内存100H处键入下列内容:-A 0100↙****:0100 MOV AX,1234↙****:0103 MOV BX,5678↙****:0106 XCHG AX,BX↙****:0108 MOV AH,35↙****:010A MOV AL,48↙****:010D MOV DX,75AB↙****:010F XCHG AX,DX↙****:0111 ↙-注:****为段寄存器CS的值,是由计算机生成的;↙为回车操作。
2)用U命令检查键入的程序并记录,特别注意左边的机器码。
-U 0100↙3)用T命令逐条运行这些指令,每运行一行检查并记录有关寄存器及IP的变化情况。
并注意标志位有无变化。
-T=0100↙-T↙-T↙┇2、加减法指令:1)用A命令在内存100H处键入下列内容:MOV AH,34MOV AL,22ADD AL,AHSUB AL,78MOV CX,1284MOV DX,5678ADD CX,DXSUB CX,AXSUB CX,CX2)用U命令检查键入的程序及对应的机器码。
3)用T命令逐条运行这些指令,检查并记录有关寄存器及标志位的情况。
思考:这次运行还是键入T,行不行?怎么办?用R命令检查一下IP的内容。
注意T命令与IP的关系。
3、带进位加减法:1)用A命令在内存200H处键入下列内容,并用U命令检查:MOV AH,12MOV AL,84MOV CH,56MOV CL,78ADD AL,CLADC AH,CHMOV DH,A7MOV DL,58SUB DL,7FSBB DH,342)用T命令逐条运行这些指令,检查并记录寄存器及CF内容。
3)上面这段程序若改用16位操作指令达到同样结果,怎么改?试修改并运行之。
4、BCD码加减法1)内容:MOV AL,58ADD AL,25DAA2)要求:用A命令键入,U命令检查,T命令逐条运行并记录有关寄存器及AF内容。
实验报告要求1、十六进制数加减法手算结果及实验结果2、8086常用指令练习部分的逐条运行记录,思考结果及自编程序运行记录(列出自编程序)。
附:动态调试器DEBUG 使用1、键入 DEBUG 进入 DEBUG,显示提示符 '-'。
2、退出DEBUG命令:Q3、显示内存命令:D 起始地址结束地址4、修改内存命令:E 起始地址,连续修改键入空格键,键入回车键退出E命令。
5、检查寄存器命令:R6、修改寄存器命令:R 寄存器名7、小汇编命令:A 起始地址,不输入指令键入回车键退出A命令。
8、反汇编命令:U 起始地址结束地址9、文件命名命令:N 盘号:文件名10、读文件命令:L 内存地址11、写文件命令:W 内存地址10、读扇区命令:L 内存地址盘号(0--A:,1--B:) 扇区号扇区数11、写扇区命令:W 内存地址盘号扇区号扇区数12、运行命令:G=起始地址结束(断点)地址13、单步命令:T=起始地址运行指令数,进入子程序内部。
14、单步命令:P=起始地址运行指令数,不进入子程序内部。
15、内存搬家命令:M 起始地址结束地址目的地址16、十六进制数加法:H 数值数值表1 标志寄存器显示内容一览表实验二内存操作数及寻址方法实验目的通过实验掌握下列知识:1、DEBUG命令:G,N,W,L及Q。
2、8086系统中数据在内存中的存放方式和内存操作数的几种寻址方式。
3、8086指令:INC,DEC,LOOP,INT 3,INT 20H,寄存器SI,DI。
4、8086汇编语言伪操作:BYTE PTR,WORD PTR。
5、求累加和程序和多字节加减法程序。
实验内容和步骤一、内存操作数及各种寻址方式使用程序内容:MOV AX,1234MOV [1000],AXMOV BX,1002MOV BYTE PTR[BX],20MOV DL,39INC BXMOV [BX],DLDEC DLMOV SI,3MOV [BX+SI],DLMOV [BX+SI+1],DLMOV WORD PTR[BX+SI+2],2846操作步骤1)用A命令键入上述程序,并用T命令逐条运行。
2)每运行一条有关内存操作数的指令,要用D命令检查并记录有关内存单元的内容并注明是什么寻址方式。
注意D命令显示结果中右边的ASCII字符及双字节数存放法。
思考:有关指令中BYTE PTR及WORD PTR伪操作不加行不行?试一试。
二、求累加和程序:程序内容:MOV BX,1000MOV CX,10SUB AX,AXLOP: ADD AL,[BX]ADC AH,0INC BXJ: LOOP LOPINT3操作步骤:1)用A命令将程序键入到100H开始的内存中,在键入时记下标号LOP和J的实际地址,在键入LOOP指令时LOP用实际地址值代替。
2)用命令N AA将此程序命名为文件AA(文件名可任取)。
3)用R命令将BX:CX改为程序长度值(即最后一条指令后面的地址减去开始地址)。
4)用命令W 100将此程序存到AA命名的磁盘文件中。
5)用命令Q退出DEBUG。
6)用命令DEBUG AA再次调入DEBUG和文件AA,可用U命令检查调入程序。
若调入DEBUG 时忘了加AA文件名,可用N命令和L命令将文件调入。
7)用E命令在内存地址1000H处键入16个数字8)用命令G=100 J(J用实际地址代替),使程序运行并停在断点J上,检查AX,BX的值是否符合你的预计值。
9)用T命令运行一步,观察程序方向(IP值)和CX值是否与你的估计一样,若不一样,检查程序是否有错。
10)重复G J与T,再检查AX是否正确。
11)用G命令使程序运行到结束,检查AX值是否正确。
三、多字节加法程序。
程序内容:MOV DI,1000MOV CX,8MOV SI,2000CLCLOP: MOV AL,[SI]ADC [DI],ALINC SIINC DILOOP LOPINT 20操作步骤:1)用A命令键入此程序。
2)用E命令在1000H开始处键入一个8字节被加数,在2000H开始处键入一个8字节加数,均为低字节在前面。
3)用G命令运行此程序,并用D命令检查其结果(存放在哪里?),是否正确?实验三数据串传送和查表程序实验目的通过实验掌握下列知识:1、堆栈。
堆栈指示器SP和堆栈操作指令PUSH和POP。
2、段寄存器和物理地址计算。
3、查表法和查表指令XLAT。
4、数据串传送程序和数据串传送指令MOVS、STOS及重复前辍REP。
5、循环指令ROL、逻辑与指令AND和清方向位指令CLD。
6、伪操作指令DB。
实验内容及步骤一、利用查表方法把DX的内容(十六进制数)转换成ASCII码1、用A命令键入下列程序:MOV BX,1000MOV DI,2000MOV CX,4LOP: PUSH CXMOV CL,4ROL DX,CLPOP CXMOV AL,DLAND AL,0FXLATCLDSTOSBLOOP LOPINT 202、用A命令在1000H处键入下列ASCII码并用D命令检查之:DB ‘0123456789ABCDEF’用D命令检查时注意左边的ASCII码值和右边的字符。
3、用R命令给DX送一个四位的十六进制数(例7F8E)。
4、用T命令逐条运行这程序到LOOP指令处,观察并记录每次运行结果,特别是SP和堆栈内容(用D命令检查)。
5、用G命令将此程序运行到结束,并用D命令检查2000H处所转换的结果。
可注意屏幕右边的ASCII字符与DX是否一致。
二、数据串搬家程序:1、用A命令键入下列程序:MOV SI,1000MOV DI,1500MOV CX,0FLOP: MOV AL,[SI]MOV [DI],ALINC SIINC DILOOP LOPINT 202、用A命令DB伪指令在1000H键入下列字符串:DB‘IBM_PC COMPUTER'3、用G命令运行此程序,并用D命令检查目的地址处的字符与源串是否一致。
4、若此程序中的目的地址改为1002H,再运行此程序,看能不能把1000H开始的字符串搬到1002H开始的地方去?修改程序以做到这一点。
三、段寄存器概念及字符串传送指令练习1、用A命令键入下列程序:MOV SI,0MOV DI,0MOV AX,1000MOV DS,AXMOV AX,1500MOV ES,AXMOV CX,0FCLDREP MOVSBINT 202、用A命令DB伪指令在1000:0000处键入字符串'IBM_PC COMPUTER',并用D命检查之。
3、用D命令检查0F00:1000处内容,看是否一样,为什么?4、用G命令运行此程序,检查目的地址1500:0000处内容。
并记下DS与ES值。
DS=1000 ES=15005、修改此程序,使ES与DS为同一值,以减少一条指令,而源物理地址和目的物理地址(是多少?)仍和原来一样。
ES=DS=1000实验四屏幕字符显示程序实验目的通过实验掌握下列知识:1、8086指令: JMP,ROR,XOR,HLT。
2、利用DOS功能调用INT 21H的2号和9号功能进行屏幕显示的方法。
3、IBM-PC机的ASCII码表及控制字符。
4、利用^Break(CTRL+BREAK)退出程序的方法及局限性。