实验三 显示控制
- 格式:doc
- 大小:23.50 KB
- 文档页数:2
实验三开关量输入与显示
一、实验要求
编写程序,通过8255的A口读取开关的状态,并在C口所连接的LED灯上显示出来。
二、实验目的
通过使8255读取开关量,进一步掌握8255的编程方法。
三、连接图
图1
四、实验程序框图
五实验过程及步骤
1 按实验要求连接线,将K1~K8连PA0~PA7,PC0~PC7连DL1~DL8,CS连200~207H。
连线结果如上图1所示。
2 对8255进行初始化:方式控制字为90h
3 读入A口状态:
mov dx,200h
in al,dx
4 写入C口
not al
mov dx,202h
out dx,al
5延迟代码段
mov cx,0fffh
lop:loop lop ;延迟,便于观察实验现象
6 运行程序,观察实验结果。
并改变开关的状态,再运行,观察不同开关状态下,LED灯的亮灭情况。
六实验结果
开关打开,相应的LED灯会亮;开关关闭,相应的LED会熄灭。
实验源代码
code segment
assume cs:code
start:
mov dx,203h;对8255进行初始化
mov al,90h
out dx,al
gg:
mov dx,200h ;写入A口
in al,dx
not al
mov dx,202h ;从C口输出
out dx,al
mov cx,0fffh
lop:loop lop ;延迟,便于观察实验现象
jmp gg
code ends
end start。
一、实验背景与目的随着科技的不断发展,单片机作为一种微小的计算机系统,在工业控制、智能家居、汽车电子等领域得到了广泛的应用。
为了提高学生的实践能力和创新意识,本实训课程旨在通过实际操作,让学生掌握单片机的原理、编程和调试方法,培养学生的动手能力和团队协作精神。
本次实训以51单片机为核心,结合数码管、LED灯、按键等外围电路,设计了多个实验项目,包括LED流水灯、交通灯控制系统、简易计算器、温湿度监控系统等。
通过这些实验,使学生深入了解单片机的硬件结构和软件编程,提高学生的实际操作能力和问题解决能力。
二、实验内容与过程1. 实验一:LED流水灯(1)实验目的:掌握51单片机的I/O口编程,实现LED灯的流水效果。
(2)实验步骤:① 硬件连接:将LED灯连接到P1口;② 编写程序:使用循环语句和延时函数控制LED灯的流水效果;③ 程序下载:将程序烧录到单片机中;④ 实验验证:观察LED灯的流水效果。
2. 实验二:交通灯控制系统(1)实验目的:学习单片机在交通灯控制系统中的应用,实现红黄绿灯的变换及倒计时功能。
(2)实验步骤:① 硬件连接:将LED灯连接到P1口,按键连接到外部中断INT0;② 编写程序:设置定时器中断,实现倒计时功能;编写外部中断程序,实现红黄绿灯的变换;③ 程序下载:将程序烧录到单片机中;④ 实验验证:观察交通灯的工作状态和倒计时效果。
3. 实验三:简易计算器(1)实验目的:掌握矩阵键盘扫描原理、LCD1602显示屏控制,实现基本的四则运算。
(2)实验步骤:① 硬件连接:将矩阵键盘和LCD1602显示屏连接到单片机;② 编写程序:实现矩阵键盘扫描、LCD1602显示控制和运算逻辑处理;③ 程序下载:将程序烧录到单片机中;④ 实验验证:观察计算器的工作状态和运算结果。
4. 实验四:温湿度监控系统(1)实验目的:学习单片机在温湿度监控系统中的应用,实现温度和湿度的实时显示。
(2)实验步骤:① 硬件连接:将温度传感器和湿度传感器连接到单片机,将LED灯连接到P1口;② 编写程序:实现温度和湿度的实时采集,并根据采集到的数据控制LED灯的亮灭;③ 程序下载:将程序烧录到单片机中;④ 实验验证:观察LED灯的亮灭状态和数码管上的温度、湿度值。
实验三 ENVI影像的几何校正本专题旨在介绍如何在ENVI中对影像进行地理校正,添加地理坐标,以及如何使用ENVI进行影像到影像的几何校正。
遥感图像的几何纠正是指消除影像中的几何形变,产生一幅符合某种地图投影或图形表达要求的新影像。
一般常见的几何纠正有从影像到地图的纠正,以及从影像到影像的纠正,后者也称为影像的配准。
遥感影像中需要改正的几何形变主要来自相机系统误差、地形起伏、地球曲率以及大气折射等。
几何纠正包括两个核心环节:一是像素坐标的变换,即将影像坐标转变为地图或地面坐标;二是对坐标变换后的像素亮度值进行重采样。
本实验将针对不同的数据源和辅助数据,提供以下几种校正方法:Image to Map几何校正:通过地面控制点对遥感图像几何进行平面化的过程,控制点可以是键盘输入、从矢量文件中获取。
地形图校正就采取这种方法。
Image to image几何校正:以一副已经经过几何校正的栅格影像作为基准图,通过从两幅图像上选择同名点(GCP)来配准另一幅栅格影像,使相同地物出现在校正后的图像相同位置。
大多数几何校正都是利用此方法完成的。
Image to image自动图像配准:根据像元灰度值自动寻找两幅图像上的同名点,根据同名点完成两幅图像的配准过程。
当同一地区的两幅图像由于各自校正误差的影像,使得图上的相同地物不重叠时,可利用此方法进行调整1. 地形图的几何校正(1)打开并显示地形图从ENVI主菜单中,选择file →open image file,打开3-几何校正\地形图\G-48-34-a.JPG。
(2)定义坐标从ENVI主菜单栏中,选择Map →Registration →Select GCPs:Image to map。
在image to Map Registration对话框中,点击并选择New,定义一个坐标系从ENVI主菜单栏中,选择Map →Registration →Select GCPs: Image to Map。
二、实验内容实验一、水位控制系统模拟实验1、实验目的1.1 熟悉可编程控制器的使用方法1.2练习用手持编程器输入,修改和调试程序的方法1.3练习辅助继电器和定时器的使用1.4观察利用可编程控制器对简单系统进行控制的过程2、预习要求2.1 根据实验内容的要求,编好电路的梯形图和程序输入步骤3、实验仪器(1)PLC-10D PLC主控制器FX1N-40MR-001实验挂箱一个(2)PLC-20 PLC实验模块一挂箱一个4、实验内容及步骤实验内容:用FX1N-40MR-001可编程控制器实现水塔水位模拟控制实验步骤:(1)把PLC-10D上的Y0、Y1、Y2、Y3分别用导线接到PLC-20 水位控制系统模拟实验上的N1、N2、N3、N4控制L1、L2、L3、L4。
L1指示水塔水位的上限、L2指示水塔水位的下限、L3指示水池水位的上限、L4 L3指示水池水位的下限。
X0、X1、X2、X3分别与M1、M2、M3、M4接通。
按钮A按下表示水塔水位已到上限,按钮B按下表示水塔水位已到下限;按钮C按下表示水池水位已到上限、按钮D按下表示水池水位已到下限Y4、Y5分别与N5、N6接通来控制L5、L6,L5亮表示外界向水池灌水,L6亮表示从水池抽水到水塔。
(2)输入程序,检查无误后运行程序。
(程序见配套光盘水位控制文件)(3)程序运行后,L4,L5亮表示水池水量不足,外界正在向水池灌水。
此时按下按钮B,指示等L2亮表示水塔水量不足,由于水池水位低于水位下限,不准从水池向水塔抽水。
5秒钟后水池水超过水位下限,L4灭表示水池可以向水塔灌水,但由于水塔水位没到达上限外界仍然向水池灌水。
此时L6亮,开始从水池向水塔抽水。
(4)功能说明:外界向水池灌水的条件是水池水位到达下限,外界停止向水池灌水的条件是水池水位到达上限。
由水池向水塔灌水的条件是水塔水位到达水位下限且水池水位大于水位下限,水池停止给水塔灌水的条件是水池水位到达下限或水塔水位到达上限。
实验三 LED数码显示控制一、实验要求拨上开关后,由八组LED发光二极管模拟的八段数码管开始显示:字母A、b、C、d、E、F、G、H、I、J,时间间隔1s,并循环不止。
拨下启动开关后停止显示。
二、实验软元件X000—启动开关 Y000~Y007---数码管的a段~h段三、实验梯形图四、实验程序及注释0.启动2.字段显示间隔1秒6.产生秒冲8.启动后延时1.5秒显示13.脉冲移位输入14.循环显示设置,F接A17.左移位指令31.输出数码管a段36.输出数码管b段43.输出数码管c段50.输出数码管d段61.输出数码管e段70.输出数码管f段77.输出数码管g段82.打下开关得到一个下降沿激活复位84.复位计时器89.复位M10~M20五、实验结果1)仿真结果程序设置了M11到M20分别控制显示字母A、b、C、d、E、F、G、H、I、J,则跟着左移位指令就可以按顺序显示这十个字母。
再设置一个M20在移位输入M10前面即可在左移位到M20显示字母J后即再次激活M10,然后继续左循环脉冲,自此实现循环显示的效果。
LDF X000指令可以在打下开关后得到一个下降沿从而触发复位指令,清除M10~M20,使得所有相关输出的段位灯熄灭。
字母A 字母b 字母C 字母d字母E 字母F 字母G 字母H左:字母I右:字母J2)实验结果在实验室得到的实验结果与仿真结果一致。
打上开关循环显示字母A~J,打下开关后所有灯熄灭。
六、实验总结1)实验台上的输出Y4个一组要接一个地,所以在实验过程中如果输出需要用到7个输出Y000~Y006,则除了COM1要接地外,COM2也要接地。
2)通过这次实验,我们了解了用PLC模拟数码管显示的原理。
如果需要使数码管显示一个字符,则先观察该字符需要数码管的哪个段位同时亮,然后可以用一个辅助继电器M来控制这个字符,在这个字符需要发光的几个段对应的输出Y的前面都添加一个常开的触点M,则当这个M得到一个脉冲后即会闭合使得输出Y得电,继而得到想要显示的字符。
实验三IDL图像处理目的:掌握IDL图像处理的手段内容:1、显示图像事实上,任何类型的二维数据集都可认为是一幅图像。
但是要在一个8位的显示设备上显示图像数据,就必须将图像数据调整为 0~255之间的字节型数值。
(在一个24-bit的显示设备上,24位图像的RGB值必须调整成字节型数值)。
因为图像总是以字节型数值显示,所以图像总是以字节型数组来存储。
但是无论图像是怎样存储的,在IDL中,图像总是由两个显示图像的IDL命令:TV和TVScl以字节型数值来完成。
可用TV和TVScl两个IDL命令中的任一个来显示图像。
这两个命令几乎在各个方面都是一样的,包括能与之一起使用的关键字。
仅仅在一个方面不同:TVScl将图像数据调整为与IDL运行时所用颜色数目相适应的字节型数值。
注意,与Plot,Surface和Contour命令不同,TV和TVScl命令在显示图像之前不删除窗口中已显示的内容。
一般情况下这个问题影响不大,但有时候也会产生一些麻烦。
如果想要一个空白的显示窗口来显示图像数据,无论当前窗口上的显示内容是什么,都可用一个简单的命令Erase来删除。
IDL>Erase要了解这两个命令是怎样工作的,需要有一些图像数据用于处理。
用命令LoadData来打开图像数据集Ali and Dave。
将要处理这两幅图像数据中的第二幅图像。
键入IDL>image=LoadData(10)IDL>image=image[*,*,1]打开一个显示窗口,装上灰度颜色表, 用TV命令显示图像:IDL>Window,0,XSize=192,YSize=192IDL>TV,image所得图像:IDL和Research Systems公司的创始人--David Stern的图像。
People.dat数据集中的另外一幅图像是Ali Bahrami,Research Systems公司的第一位员工。
他们两人依然致力于IDL的开发因为使用的是TV命令,所以数据没有经过拉伸就被送到显示器中显示。
实验三数码管动态显示程序设计实验目的1、理解数码管动态显示原理2、理解数码管动态显示电路的设计方法3、掌握数码管动态显示程序的设计方法实验仪器单片机开发板、万利仿真机、稳压电源、计算机实验内容1、动态扫描显示程序2、特征位小数点控制显示程序实验电路图实验步骤及调试信息1、新建实验项目2、输入实验程序并补充完整;------------------------------------------------------;数码管动态显示程序;包含小数点显示;位选码输出有两种方式:; DispSelection1: 一次一位; DispSelection2: 一次一字节;; 2009-08-20;-------------------------------------------------------LEDCLK bit P3.4LEDDIN bit P2.3LEDDATA data P0dseg at 30hdispbuf: ds 8 ;显示缓冲区8字节disppoint: ds 1 ;小数点控制数据maincode SEGMENT CODECSEG at 0LJMP StartRSEG maincodeStart: CLR E Amov sp,#0c0hmov dispbuf ,#08hmov dispbuf+1, #04hmov dispbuf+2, #00hmov dispbuf+3, #08hmov dispbuf+4, #02hmov dispbuf+5, #00hmov dispbuf+6, #02hmov dispbuf+7, #07hmov disppoint,#02h ;第2位小数点亮LCALL dispSJMP $-3;------------------------------------------------------;数码管动态显示程序;包含小数点显示;位选码输出有两种方式:; DispSelection1: 一次一位; DispSelection2: 一次一字节;; 2009-08-20;-------------------------------------------------------Disp: MOV R7,#8MOV R0,#dispbufCLR LEDCLKSETB L EDDINDisp1: MOV A,@R0MOV DPTR,#DispTabMOVC A,@A+DPTRcpl a; LCALL Dispdot ;显示小数点程序MOV LEDDA TA,A ;在输出之前加入显示小数点程序LCALL DispSelection1 ;输出位选择信号,DispSelection2是第二种; lcall dispsel3LCALL Delay1msmov p2,#0ffhINC R0DJNZ R7,Disp1mov p2,#0ffhRET;-------------------------------------------------;位选码以一次一位方式输出;-------------------------------------------------dispsel3:mov dptr,#DispSTabmov a,r7movc a,@a+dptrcpl a; swap amov p2,aretDispSelection1:CJNE R7,#8,DispSelection11CLR L EDDINDispSelection11:SETB LEDCLKNOPCLR L EDCLKSETB LEDDINRET;-------------------------------------------------;位选码以一次一字节方式输出;-------------------------------------------------DispSelection2:MOV B,#8MOV DPTR,#DispSTabMOV A,R7MOVC A,@A+DPTRCPL ADispSelection21:RLC AMOV LEDDIN,CSETB LEDCLKNOPCLR L EDCLKDJNZ B,DispSelection21RETDispSTab: DB 00H,80H,20H,40H,10H,08H,04H,02H,01H;位选码数据表dispa equ 80h ;数码管各段数据定义dispb equ 40hdispc equ 20hdispd equ 10hdispe equ 08hdispf equ 04hdispg equ 02hdisph equ 01hdisp8 equ 0ffh-disphDispTab: db disp8-dispg,dispb+dispc,dispa+dispb+dispg+dispd+dispe ;0,1,2 db disp8-dispe-dispf,disp8-dispa-dispd-dispe,disp8-dispb-dispe;3,4,5db disp8-dispb,dispa+dispb+dispc,disp8,disp8-dispe ;6,7,8,9db disp8-dispd,disp8-dispa-dispb,disp8-dispb-dispc-dispg ;a,b,cdb disp8-dispa-dispf,disp8-dispb-dispc,disp8-dispb-dispc-dispd;d,e,fdb disp8-dispb-dispc,0ffh,00h,dispg ;H,全亮,全暗,-;--------------------------------------------------------------------;特征位小数点控制显示程序;把小数点显示程序加到显示码输出之前;输入:A : 显示译码值; R7:当前正在显示的LED编号;输出:无;--------------------------------------------------------------------Dispdot:MOV B,AMOV A,R7MOV DPTR,#DispSTabMOVC A,@A+DPTRANL A,disppointSETB C ;本行及以下4行可改成MOV C,PJZ Dispdot1CLR C;点亮小数点Dispdot1:CPL C ;本行根据情况增减MOV A,BCPL AMOV ACC.7,C ;小数点由D7控制; MOV LEDDA TA,A ;本行可以删除RETDelayNms:LCALL Delay1msDJNZ R7, $-3RETDelay1ms:PUSH 07MOV R7,#250 ;1msNOPNOPDJNZ R7, $-2POP 07RETEND3、编译下载实验程序,并修改错误(按附录说明)4、全速运行程序,查看实验现象。
led数码管显示控制实验报告篇一:单片机实验报告——LED数码管显示实验《微机实验》报告LED数码管显示实验指导教师:专业班级:姓名:学号:联系方式:一、任务要求实验目的:理解LED七段数码管的显示控制原理,掌握数码管与MCU的接口技术,能够编写数码管显示驱动程序;熟悉接口程序调试方法。
实验内容:利用C8051F310单片机控制数码管显示器基本要求:利用末位数码管循环显示数字0-9,显示切换频率为1Hz。
提高要求:在4位数码管显示器上依次显示当天时期和时间,显示格式如下:yyyy(月份.日)(小时.分钟)思考题:数码管采用动态驱动方式时刷新频率应如何选择?为什么?二、设计思路C8051F310单片机片上晶振为,采用8分频后为,输入时钟信号采用48个机器周期。
0到9对应的断码为:FCH、60H、DAH、F2H、66H、B6H、BEH、E0H、FEH、F6H 基础部分:由于只需要用末位数码管显示,不需要改变位码,所以只需要采用LED的静态显示。
采用查表的方法,通过循环结构,每次循环查找数据表下一地址,循环十次后重新开始循环。
每次循环延时1s,采用定时器0定时方式1。
提高部分:四个数码管都要显示,所以采用LED的动态显示。
由于数码管的位选由、控制,P0端口的其他引脚都没用到,所以对P0端口初始化赋00H,每次循环加40H、选中下一位,四次后十六进制溢出,P0端口变又为00H回到第一个数码管。
每位数码管显示一个段码后都延时1ms(否则数码管太亮,刺眼)采用定时器0定时方式1,依然采用查表法改变段码值。
通过循环:DJNZ R5,BACKMOVR5,#250 DJNZ R4,BACK MOVR4,#8来控制每种模式的切换时间,我采用2s切换一次(8*250*1ms=2s)。
切换模式,可以采用改变查表法的偏移量来实现,没切换一次模式,偏移量加04H,三次后回到初始偏移量,来实现三种模式的循环显示。
三、资源分配基础部分:、:控制数码管的位选P1:控制数码管段码的显示R0:控制段选提高部分:、:控制数码管的位选P1:控制数码管段码的显示R0:控制位选R1:控制段选R3:用于改变偏移量来切换模式R4、R5:控制循环次数,控制模式切换时间四、流程图基础部分:提高部分篇二:实验八数码管LED实验报告苏州大学实验报告院、系年级专业姓名学号课程名称成绩指导教师同组实验者实验日期实验名称:数码管LED实验一.实验目的理解8段数码管的基本原理,理解8段数码管的显示和编程方法,理解4连排共阴极8段数码管LG5641AH与MCU 的接线图。
广州大学学生实验报告开课学院及实验室:工程北529 2015年 5 月28 日学院机械与电气工程年级、专业、班姓名学号实验课程名称电气控制与可编程控制器成绩实验项目名称实验三 LED数码显示控制指导老师一、实验目的熟练掌握移位寄存器位SHRB ,能够灵活的运用二、实验说明移位寄存器位(SHRB)指令将DATA数值移入移位寄存器。
S_BIT指定移位寄存器的最低位。
N指定移位寄存器的长度和移位方向(移位加 = N,移位减 = -N)。
SHRB指令移出的每个位被放置在溢出内存位(SM1.1)中。
该指令由最低位(S_BIT)和由长度(N)指定的位数定义。
三、实验面板图四、实验内容1、设计一个照明灯的控制程序。
当按下接在I0.0上的照明灯按钮,可发光30s。
如果在这段时间内又有人按下按钮,则时间间隔从头开始。
这样可确保在最后一次按下按钮后,灯光可维持30s的照明。
2、设计程序,用SEG指令,循环显示0~F字符。
3、设计程序,用一个按钮控制两盏灯:按一次,第一盏亮,按二次,第二盏亮,按三次,两盏全亮,按四次,两盏全灭,按五次,两盏全亮,按六次,只有第二盏亮,按七次,只有第一盏亮,按八次,两盏全灭,完成一次工作循环。
五、实验过程原始记录(程序、数据、图表、计算等)思考题梯形图1:思考题2梯形图:思考题3梯形图:六、实验结果及分析1、思考题1中当每按下一次按钮,Q0.0接通并自锁。
同时T37定时器复位,经过30S后T37置位,其常闭触点断开,Q0.0断开,灯熄灭。
2、思考题2中输入I0.0,I0.1分别控制开关和手动清零计数器。
本题通过在SEG指令的输入端输入数字0~15,将输出端接到数码管中实现循环显示0~F。
由于SEG指令的输入端只能是字节类型,而计数器的输出是字类型,需要用I_B转换指令,将C0(字类型)转化为MB0(字节类型)。
当C0当前为16时,计数器复位,当前值清零。
从而实现循环显示。
计数器的预设值应为16而不是15,因16的时候计数器当前值C0马上变为0,而如果设15则在15的时候C0当前值变为0,就会导致显示不出F字符。
Matlab实验三答案实验三 MATLAB语⾔的程序设计⼀、实验⽬的:1、熟悉MATLAB程序编辑与设计环境2、掌握各种编程语句语法规则及程序设计⽅法3、函数⽂件的编写和设计4、了解和熟悉跨空间变量传递和赋值⼆、实验基本知识:1、程序流程控制语句for循环结构语法:for i=初值:增量:终值语句1……语句nend说明:1.i=初值:终值,则增量为1。
2.初值、增量、终值可正可负,可以是整数,也可以是⼩数,只须符合数学逻辑。
while 循环结构语法:while 逻辑表达式循环体语句end说明:1、whiIe结构依据逻辑表达式的值判断是否执⾏循环体语勾。
若表达式的值为真,执⾏循环体语句⼀次、在反复执⾏时,每次都要进⾏判断。
若表达式的值为假,则程序执⾏end之后的语句。
2、为了避免因逻辑上的失误,⽽陷⼊死循环,建议在循环体语句的适当位置加break语句、以便程序能正常执⾏。
(执⾏循环体的次数不确定;每⼀次执⾏循环体后,⼀定会改变while 后⾯所跟关系式的值。
)3、while循环也可以嵌套、其结构如下:while逻辑表达式1循环体语句1while逻辑表达式2循环体语句2end循环体语句3endelse if 表达式2(可选)语句2else(可选)语句3endend说明:1.if结构是⼀个条件分⽀语句,若满⾜表达式的条件,则往下执⾏;若不满⾜,则跳出if结构。
2.else if表达式2与else为可选项,这两条语句可依据具体情况取舍。
3.注意:每⼀个if都对应⼀个end,即有⼏个if,记就应有⼏个end。
switch-case结构语法:switch表达式case常量表达式1语句组1case常量表达式2语句组2……otherwise语句组nend说明:1.switch后⾯的表达式可以是任何类型,如数字、字符串等。
2.当表达式的值与case后⾯常量表达式的值相等时,就执⾏这个case后⾯的语句组如果所有的常量表达式的值都与这个表达式的值不相等时,则执⾏otherwise后的执⾏语句。
实验三显示控制
一、实验目的及要求
1.学习DOS系统调用的使用方法。
2.学会进行键盘输入和显示输出控制。
3.掌握在程序中运用显示控制的方法。
4.进一步掌握DEBUG中命令的使用方法。
二、实验程序
1、编程实现找10个有符号字中的最小字,并将其放在指定的位置,用DEBUG查找
程序执行结果。
自行给出10个有符号字(最好有正数,有负数),判断结果正确与否。
2、用查表的方法将一个字节的数转换成ASCII码,然后将其输出显示。
3、用键盘输入一个字符串,将其全部转换成大写字母后输出显示。
三、实验预习要求
1、预习教材4.3-4.5有关系统调用和伪指令的相关内容。
2、参考书中示例,编写3个实验程序中的一个,带有注释说明。
3、准备好实验方案、实验程序代码和实验记录本。
四、实验步骤
1、在实验室规定的E盘或D盘建立一个文件目录,找到并复制工具软件、
MASM.EXE、LINK.EXE到此目录中,进入此目录。
2、逐一进行程序调试实验,对每一个实验程序,可按照下面提示步骤与环节进行实验过
程:
(1)使用编辑器(写字板、记事本)编辑源程序,以.ASM扩展名存盘,以便进行汇编。
(提示:文件名用不超过7个的西文字母及数字组成,语句中除分号之后的注释内容外都必须在英文状态下输入西文字符)
(2)使用MASM对源程序文件(?.ASM)进行汇编,产生同名(?.OBJ)目的文件,可选输列表文件名以产生汇编列表文件,对出错提示内容查纠,可浏览汇编列表文件观察汇编结果信息。
(3)使用LINK对(?.OBJ)目的文件进行连接,产生同名(?.EXE)可执行文件。
(4)在DOS命令行状态下直接输入可执行文件名(不要带.EXE扩展名)即可执行此程序,验证程序功能的正确实现与否并记录与分析。
(可能由于程序中没有屏幕输出的指令,而在程序执行后看不到任何结果信息,则要使用DEBUG调试)(5)在DOS命令行状态下输入DEBUG <可执行文件全名> ,就进入DEBUG调试界面并将该可执行文件载入内存,使用DEBUG命令:
U浏览反汇编的程序指令序列,记录代码段地址分配及各指令对应的目标代码;
D、R观察、记录各寄存器初始值以及数据、附加、堆栈段的地址分配;
T、G用单步跟踪执行或设断点地连续运行程序,观察、记录运行过程及有关结果信息,进行验证与分析。
(6)存在问题的程序进行分析、诊断、修改,重新汇编、连接、试运行,基本可行
后抄录汇编的目标指令代码到程序清单左侧。
(7)对该程序的实际调试情况与结论撰写说明与小结。
3、整理实验记录,编写本次实验总结(情况、问题、心得体会、意见建议等),当堂上
交实验报告。
五、说明
1、本次实验要求在实验室完成实验报告。
故须在实验前做好充分准备,把方案和实验
程序准备好。
2、除实验程序外,应将实验主要内容,实验记录写在实验报告上。
3、实验总结中应对实验得出的结论加以归纳,对实验中出现的现象和实验结果进行分
析,对3个方面的实验分别加以总结。