软件实验一 存储器块清零

合集下载

单片机实验报告

单片机实验报告

单片机实验报告实验一:存储器块清零或赋值一、实验目的1 熟悉存储器的读写方法,熟悉51汇编语言结构。

2 熟悉循环结构程序的编写。

3 熟悉编程环境和程序的调试。

二、实验内容指定存储器中某块的起始地址和长度,要求将其内容清零或赋值。

例如将4000H开始的10个字节内容清零或全部赋值为33H。

注意:1 文件不要用中文名称保存时不要用中文路径(目录),不要放在“桌面”上,源文件和工程要放在同一个文件夹下,文件名称和路径名称不要太长。

2 查看存储器菜单使用:窗口---数据窗口---XDATA 观察存储器内容3 查看SFR:窗口---CPU窗口查看CPU寄存器SFR4 单步执行:执行---单步执行(F8),每执行一步,查看每条语句涉及到的寄存器和存储器内容的变化结果,是否是指令所要得到的结果,如不是,检查错误原因,修改。

5利用多种执行方法和观察各种窗口调试程序,直至程序满意为止。

三、实验仪器微机、VW,WA VE6000编程环境软件,(单片机实验箱)Lab6000/Lab6000通用微控制器MCS51实验四、实验步骤1、新建工程文件。

(注意:文件不要用中文名称保存时不要用中文路径)2、编写程序。

3、运行和调试过程。

外部数据存储器(4000H为首地址的10个字节)中初始状态(随便赋值FFH):单步执行程序,观察SFR中外部地址指针的变化;全速执行程序,可以看到外部数据存储器已赋值33H:五、实验结果可以看到外部数据存储器已赋值33H:六、问题讨论本次实验能够清楚地了解存储器中数据的移动和赋值过程,通过单步执行,对于每一步的指令操作过程能够了解如何执行,查看每条语句涉及到的寄存器和存储器内容的变化结果。

同时,学习掌握汇编程序的编写和调试过程。

实验二:存储块移动一、实验目的1 熟悉51汇编语言程序结构。

2 熟悉循环结构程序的编写,进一步熟悉指令系统。

3 熟悉编程环境和程序的调试。

二、实验内容将指定源地址(3000H)和长度(10字节)的存储块移动到目的地址(3050H)。

实验1存储器块清零

实验1存储器块清零

实验一存储器块清零软件操作过程:新建文件→保存文件(汇编语言后缀.ASM、C语言后缀.C)→新建项目(出现3个对话框)→对话框1:加入模块文件(选择要加的文件)→对话框2:加入包含文件(头文件之类的,没有可以点取消)→对话框3:保存项目(输入项目名称,注意项目和加入的文件必须在同一个文件夹中)→打开相应的模块文件,输入程序→点击绿色“开始”按钮,运行检查错误修改,直到没有错误为止。

窗口:CPU窗口——特殊功能寄存器窗口、工作寄存器窗口数据窗口——DATA片内数据存储器XDAT片外数据存储器CODE程序存储器BIT 位存储区仿真器设置:点仿真器→仿真器设置→选择仿真(Lab2000p仿真)→选择仿真头(MCS51实验)→选择CPU(8031/8032)→选择是否使用软件模拟器→点击好请编写程序,将片内RAM 30H-4FH单元中的内容清零。

MOV R0,#30HMOV R1,#32L0:MOV @R0,#00HINC R0DJNZ R1,L0SJMP $请编写程序,将片内RAM 60H-7FH单元中的内容置为FEH。

MOV R0,#60HMOV R1,#32L0:MOV @R0,#0FEHINC R0DJNZ R1,L0SJMP $1、片外ram50h—7fh内容置为:fehMOV DPTR,#50HMOV R1,#48MOV A,#0feHL0:MOVX @DPTR,AINC DPTRDJNZ R1,L0SJMP $2、片内RAM 20H-4FH中内容置为(20h)=00h,(21h)=01h,(22h)=02h, ,(4fh)=2fh MOV A,#00HMOV R1,#20HMOV R0,#48MOV @R1,ALOOP: INC AINC R1MOV @R1,ADJNZ R0,LOOPEND。

清零程序

清零程序

实验一清零程序一、实验目的掌握汇编语言设计和调试方法,熟悉键盘操作。

二、实验时间地点时间:2014年4月15日地点:8B204三、实验内容把2000H~20FFH单元的内容清零。

四、实验程序框图五、实验程序(1)基本程序ORG 0000HLJMP SE01ORG 0640HSE01: MOV R0,#00HMOV DPTR,#2000HLOO1: CLR AMOVX @DPTR,AINC DPTRINC R0CJNE R0,#00H,LOO1LOOP:SJMP LOOPEND(2)带注释的基本程序(为方便程序阅读仅对注释部分做了详细的注释而已)ORG 0000HLJMP SE01ORG 0640HSE01: MOV R0,#00H ;(00H)送R0,R0 为计数器MOV DPTR,#2000H ;(2000H)送DPTRLOO1: CLR A ;累加器A 清零MOVX @DPTR,A ;存储空间内容清零INC DPTR ;DPTR 加1INC R0 ;R0 加1CJNE R0,#00H,LOO1 ;若R0 不等于00,则跳转至LOO1 继续循环LOOP: SJMP LOOPEND六、实验步骤使用DICE-51单片机仿真系统,用连续或单步方式运行实验程序,检查执行程序前后2000~20FF单元中的内容变化。

首先打开DICE-51单片机仿真系统软件,新建一个文件名尾缀为.asm的文件,将程序输入到文件当中,打开程序存储器和数据存储器,任意改变存储单元中的内容,经编译,连接,装载后,先采用单步方式运行实验程序,由数据存储器中可以看到2000~20FF单元的内容逐渐清零,程序运行结束2000~20FF单元的内容都为0;再采用连续方式运行实验程序,实验结果为2000~20FF单元的内容都为0。

七、思考假使把1000H~10FFH 中的内容改成FF,如何修改程序,请分别用连续和单步方式运行程序来完成验证。

单片机实验一片内外清零、数据块的传送

单片机实验一片内外清零、数据块的传送

单片机实验报告专业:电子信息工程班级:姓名:学号:指导教师:单片机实验报告实验项目名称:片内外清零、置位和数据块传送程序实验日期: 2010-10-27 实验成绩:实验评定标准:1)实验内容否完整A()B()C()2)实验结果分析是否正确A()B()C()3)实验报告是否按照规定格式A()B()C()一、实验目的1、掌握汇编语言中对芯片内外存储器的清零,置位。

2、掌握8031 内部RAM 和外部RAM 之间的数据传送方法;掌握这两部分RAM 存贮器的特点与应用,掌握各种数据传送方法。

二、实验内容及要求1、将片内从50H开始的连续30个地址内容清零;将片外7000H_79FFH单元内容清零;将片内从20H开始的连续30个地址内容设置为0FEH。

2、试编写将外部的数据存贮区6030~607FH 的内容写入外部RAM 3030~307H 中。

三、实验步骤1、片内外清零、置位打开Keil程序,执行菜单命令“Project”→“New Project ”创建“片内外清零置位”项目,并选择单片机型号为AT89C51。

执行菜单命令“File”→“New ”创建文件,输入源程序,保存为“片内外清零置位.A51”。

在“Project”栏的File项目管理窗口中右击文件组,选择“Add Files to Group ‘Source Group1’”将源程序“片内外清零置位.A51”添加到项目中。

执行菜单命令“Project”→Options for Target ‘Target 1’”,在弹出的对话框中选择“Output”选项卡,选中“Greate HEX File”。

执行菜单命令“Project”→“Build Target 1”,编译源程序。

如果编译成功,则在“Outp ut Window”窗口中显示没有错误,并创建了,“片内外清零置位. HEX”文件。

执行菜单命令“Debug”→“Start/Stop Debug Seesion”,按键F11键,单步运行程序。

微机原理与接口技术-清零程序实验报告

微机原理与接口技术-清零程序实验报告

《微机原理与接口技术》课程实验报告
一、实验目的和要求
实验目的:掌握汇编语言设计和调试方式;
实验要求:通过本实验,掌握8051汇编程序设计以及仿真实验的流程及方法。

二、实验环境
DVCC单片机仿真实验系统独立工作以及连PC机。

三、实验内容及实施
【实验内容】把50H~5FH单元的内容清零。

【源程序】
【实验步骤】
DVCC仿真实验系统连PC机时
(1)连接好相应的实验线路;
(2)在闪动“P.”状态,按PCDBG键;
(3)在PC机处于在Win95/98软件平台下,单击DVCC图标;
(4)在系统设置选项中设定仿真模式应设定为内程序、外数据;
(5)根据屏幕提示进入51/96动态调试菜单;
(6)连接DVCC实验系统;
(7)装载目标文件;
(8)设置PC起始地址;
(9)从起始地址开始连续运行程序;
(10)调出外部数据窗口,检查50H~5FH单元的内容是否全部被清零。

四、实验结果
五、实验讨论
通过8051汇编程序的设计、编译及运行,调出外部数据窗口,我们可以观察到从50H~5FH单元的内容已经被全部清零。

刚开始我们并没有做到全部单元清零,后来通过不断地调试错误和运行,实现了实验目的。

通过本次实验,掌握了汇编语言的设计,实现了清零操作,并且熟悉了仿真实验系统的键盘操作以及基本仿真软件的使用。

实验一 清零实验

实验一 清零实验
KEILC软件
用来编写汇编程序
第一次课实验内容
片内清零实验 将片内RAM30H-40H单元清零 片外实验 将片外8000H~80FFH单元写入数据 “AB” 片外实验
实验内容
拆字实验 将片内RAM20H单元中的数据在 数码管上显示出来
一、片内实验
内容:将片内RAM30H-40H单元清零。
7 FH
40H
0
30H
……
00H ~ 7FH即128字节用户RAM区。
00 H
RAM
每个字节只能存放一位8位数据
三种写入方式
一,立即数直接传送
MOV 30H, #0 MOV 31H, #0…………….MOV 4H, #0三种写入方式
二、间接传送指令循环送数
MOV R0, #30H 不是40H(因为30H 到40H为11个单元) LOOP: MOV @R0,#0 INC R0 CJNE R0,#41H, LOOP 判断 AJMP & 等待
实验内容第一次第二次第三次第四次清零实验?拆字实验定时器实验?系统设计方法串并转换第五次第六次第七次第八次da转换?习题课?直流电机速度检测?考试实验环境介绍一硬件at89c51系列单片机实验箱二软件keilc软件用来编写汇编程序第一次课实验内容将将片内ram30h40h单元清零片内清零实验片外实验将片内ram20h单元中的数据在数码管上显示出来将片内ram20h单元中的数据在数码管上显示出来将片外8000h80ffh单元写入数据将片外8000h80ffh单元写入数据ab拆字实验实验内容片外实验一片内实验内容
添加成功
4,编译、调试
5, 运行
查看结果(考试内容) 单步运行查看结果 查看片内30H单元中的值
连续运行查看结果

清零程1

清零程1

清零程序实验目的掌握汇编语言设计和调试方法,熟悉键盘操作。

实验内容把2000H~20FFH的内容清零。

实验步骤★本实验涉及外部数据存储器扩展寻址操作,因此在实验前按硬件实验十九(数据存储器和程序存储器扩展实验)连接存储器扩展电路。

以0640H为起始地址用连续或单步方式运行程序,检查2000H~20FFH中执行程序前后的内容变化。

思考假使把2000H~20FFH中的内容改成FFh,如何修改程序。

;================== 软件实验一清零程序=============ORG 0640HSE01: MOV R0,#00HMOV DPTR,#2000H ;(2000H)送DPTRLOO1: MOVX @DPTR,A ;0送(DPTR)INC DPTR ;DPTR+1INC R0 ;字节数加1CJNE R0,#0FFH,LOO1 ;不到FF个字节再清SJMP $END拆字程序实验目的掌握汇编语言设计和调试方法。

实验内容把2000H的内容拆开,高位送2001H低位,低位送2002H低位,2001H、2002H高位清零,一般本程序用于把数据送显示缓冲区时用。

实验步骤★本实验涉及外部数据存储器扩展寻址操作,因此在实验前按硬件实验十九(数据存储器和程序存储器扩展实验)连接存储器扩展电路。

以0660H为起始地址用连续或单步方式运行程序,检查2000H~2002H中内容变化情况。

思考如何用断点方式调试本程序。

;=================== 软件实验二拆字程序=========================== ORG 0660HSE02: MOV DPTR,#2000HNOPMOVX A,@DPTRMOV B,A ;(2000)→A→BSW AP A ;交换ANL A,#0FH ;屏敝高位INC DPTRMOVX @DPTR,A ;送2001HINC DPTRMOV A,BANL A,#0FH ;(2000)内容屏敝高位MOVX @DPTR,A ;送2002HSJMP $END拼字程序实验目的进—步掌握汇编语言设计和调试方法。

存储器块清零实验报告

存储器块清零实验报告

存储器块清零实验报告班级:11级计科班姓名:苏靖学号:1120070544 日期:2012-12-19一、实验目的:1、掌握存储器读写方法2、了解存储器的块操作方法.二、实验要求:设定从外部数据存储器4000h起始地址开始,将之后的256字节清零。

三、实验内容:1、写出本程序运行结果2、写出本程序调试过程三、使用试验的软件:keil。

四、试验器材:1、综合试验仪2、PC机五、试验内容:指定存储器中某块的起始地址和长度,要求能将其内容清零。

通过本实验,学生可以了解单片机读写存储器的读写方法,同时也可以了解单片机编程,调试方法。

如何将存储器块的内容置成某固定值(例全填充为0FFH)请同学们修改程序,完成此操作。

程序框图:六、试验步骤打开软件keil,建立工程文件—>project—>New project—>输入文件名(命名一个工程文件夹)—>选择单片机型号—>Atmel—>选择AT89c52型号,点确定。

然后新建文件,并命名—>输入程序保存(.asm或.c,对应汇编语言或C语言)添加目标文件,然后调试程序及理解:Org 0000hLjmp start1start1:Mov dptr,#3000h ;起始地址mov r2,#08h ;清零mov a, #00hloop:Movx @dptr, a ;指向下一个地址inc dptr ;记数减一djnz r2, loopSjmp $end然后启动仿真调试:最后把程序从PC机下载到综合试验仪里面,观察灯的闪烁情况。

七、试验中遇到的难题R0的地址以及程序代码的编写。

六、实验后的心得体会熟练掌握了存储器读写方法,了解了存储器的块操作方法,并对代码的编写有了更深的体会。

反馈清零法实验总结报告

反馈清零法实验总结报告

反馈清零法实验总结报告
实验目的
1、掌握内存读写方法。

2、了解内存的块操作方法。

二、实验内容
对指定内存起址和长度的块,要求将其内容清零,设起址为4000H,长度为1000H。

三、实验程序框图
四、实验步骤
脱机模式:
(1)在P态下,按SCAL键,输入2DC0,按EXEC键。

(2)按复位键RST,查看内存4000H 4FFFH单元内容应为00联机模式:
(1)在PC机和实验系统联机状态下,运行该实验程序,可用鼠标左键单击菜单栏“文件”或工具栏“打开图标”,弹出“打开文件”的对话框,然后打开8kAsm文件夹,点击S5.ASM文件,单击“确定”即可装入源文件,再单击工具栏中编译,即可完成源文件自动编译、装载日标代码功能,再单击“调试”中“连续运行”或工具图标运行,即开始运行程序。

(2)按“系统复位”键,查看内存4000H~4FFFH单元内容应为00。

实验一清零实验

实验一清零实验

实验一清零实验一、实验目的掌握汇编语言设计和调试方法,熟悉键盘操作。

二、实验内容把7000H~70FFH的内容清零。

三、实验程序框图四、实验步骤1、当DVCC单片机仿真实验系统独立工作时(1)将固化区EPROM中实验程序目标码传送到仿真RAM区,操作如下:输入0后按F1键,再输入0FFF后按F2键,再输入0后按EPMOV稍等,系统返回初始状态,显示“P.”。

(2)根据表2—1所示,通过键盘输入实验程序的起始地址0030H,再按执行键EXEC,表示连续运行该程序,稍侯,按RESET键退出运行;如果以单步运行程序,则输入0030后,按SETP键,按一次执行一条语句,直到执行到003CH为止,按MON键退出运行;如果以断点运行程序,则先输入003CH(断点地址),再按F1键,再输入0030(起始地址),然后按EXEC键执行程序,当执行到003CH时自动停下来,此时按MON键退出。

(3)用存贮器读写方法检查7000H~70FFH中的内容应全是00H。

2、当DVCC仿真实验系统联PC机时(1)在闪动“P.”状态,按PCDBG键;(2)在PC机处于在Win95/98软件平台下,单击DVCC图标。

(3)在“系统设置”选项中设定仿真模式为内程序、内数据。

对硬件实验4、5、6、7、8、9、12、15而言,仿真模式应设定为内程序、外数据。

(4)根据屏幕提示进入51/96动态调试菜单。

(5)联接DVCC实验系统(Ctrl+H)(6)装载目标文件(Ctrl+L)(7)设置PC起始地址(8)从起始地址开始连续运行程序(F9)或单步(F8)或断点运行程序(9)单步、断点运行完后,在存贮器窗口内检查7000H~70FFH中的内容是否全为00H一、思考:假使要把7000~70FFH中的内容改成FF,如何编制程序。

实验二拆字实验一、实验目的掌握汇编语言设计和调试方法。

二、实验内容把7000H的内容拆开,高位送7001H低位,低位送7002H低位。

单片机软件实验1-清零实验

单片机软件实验1-清零实验

:学号:班级:同组人:指导老师:报告日期:软件设计实验1:清零实验➢实验目的:掌握汇编语言设计和调试方法。

➢实验容:使用AT89C52单片机对单片机部RAM进行清零操作,实验容如下:1.把 90H-AFH的容置为#55H;2.把90H-9FH的容清零。

➢实验问答:1.清零之后,90H-9FH的容是什么?A0H-AFH的容是什么?答:90H-9FH容:00H;A0H-AFH:#55H================================================$NOMOD51$INCLUDE (80C52.MCU);============================================== =; DEFINITIONS;============================================== =;============================================== =; VARIABLES;============================================== =;============================================== =; RESET and INTERRUPT VECTORS;============================================== =; Reset Vectororg 0000hjmp Start;============================================== =; CODE SEGMENT;============================================== =org 0100hStart:MOV R0,#90HMOV R3,#20HLOOP1:MOV R0,#55HINC R0DJNZ R3,LOOP1MOV R2,#10HMOV R1,#90HCLR0:MOV R1,#00H Loop:jmp Loop;============================================== =ENDINC R1DJNZ R2,CLR0; Write your code here:学号:班级:同组人:指导老师:报告日期:软件设计实验2:拆字拼字实验➢实验目的:进一步掌握汇编语言设计和调试方法。

《单片微机原理及应用》实验参考程序(32页)

《单片微机原理及应用》实验参考程序(32页)

《单片微机原理及应用》实验参考程序杭州电子科技大学电子信息学院张学超编写(使用达爱思Dais-80958B单片机实验开发系统)一、软件实验参考程序软件实验一清零程序Array ;将2000H-20FFH的内容清零SS01: CLR AMOV DPTR, #2000HMOV R7, #0FFHCLR0: MOVX @DPTR,AINC DPTRDJNZ R7, CLR0CLR1: SJMP CLR1 ; SJMP $软件实验二拆字程序;把2000H的内容拆开,高4位送2001H的低4位,低4位清零。

SS02: MOV DPTR, #2000HMOVX A, @DPTR ;取数MOV B, A ;暂存该数SW AP A ;高低半字节交换ANL A, #0FH ;屏蔽高4位INC DPTRMOVX @DPTR,A ;原数高半字节送2001HMOV A, B ;取回原数ANL A, #0FH ;屏蔽高4位INC DPTRMOVX @DPTR,A ;原数低半字节送2002HSJMP $软件实验三拼字程序;把2000H和2001H的低4位分别送入2002H的高低4位。

SS03: MOV DPTR, #2000HMOVX A, @DPTR ;取第一个半字节ANL A, #0FH ;屏蔽高4位SW AP A ;高低半字节交换MOV B, A ;暂存该数INC DPTRMOVX A, @DPTR,;取第二个半字节ANL A, #0FH ;屏蔽高4位ORL A, B ;两个半字节拼成一个字INC DPTRMOVX @DPTR,A ; 拼好的字送2002HSJMP $软件实验四数据区传送子程序;把R2R3为源RAM区首址内的R6R7字节数据传送到R4R5为目的RAM区。

SS04: MOV DPH, R2MOV DPL, R3 ;取源地址指针MOVX A, @DPTR ;取数据INC DPTR ;源地址指针+1MOV R2, DPHMOV R3, DPL ;保存源地址指针MOV DPH, R4MOV DPL, R5 ;取目的地址指针MOVX @DPTR, A ;存数据INC DPTR ;目的地址指针+1MOV R2, DPHMOV R3, DPL ;保存目的地址指针CLR CMOV A, R7SUBB A, #1MOV R7, AMOV B, A ;暂存16位字节数低字节MOV A, R6SUBB A, #0MOV R6, A ;字节数减一:(R6R7)← (R6R7)−1ORL A, B ;(R6R7)=0?JNZ SS04 ;未完继续传送RETSS04C: MOV R3, #00HMOV R2, #20H ;指定源地址为MOV R5, #00HMOV R4, #30H ;指定目的地址为3000HMOV R7, #00HMOV R6, #01H ;传送字节数为100HLCALL SS04 ;从2000H开始向3000H开始的地址区传送100H个数据SJMP $软件实验五数据排序实验;把8051中RAM 50H-5AH中放入不等的数据,运行本实验程序后检查50-5AH中内容是否按从小到大排列。

单片机实验一 清零程序 实验报告

单片机实验一  清零程序  实验报告
执行程序前20-2F里面的数是任意数,执行程序后20-2F里面的数全部清零。能够实现实验内容的要求
实验报告内容:一.实验目的二.实验仪器(仪器名称、型号、参数、编号)三.实验原理(原理文字叙述和公式、原理图)四.实验步骤五、实验数据和数据处理六.实验结果七.分析讨论(实验结果的误差来源和减小误差的方法、实验现象的分析、问题的讨论等)八.思考题
00h
20h
20h
mov a,#00h
00h
00h
00h
mov b,#16
00h
00h
16h
lop1: mov @r0,a
任意值
00h
00h
inc r0
20h
21h
21h
Djnz b,lop1
16h
15h
15h
Sjmp $
00h
00h
00h
写出20-2F中执行程序前后的内容变化,说明是否实现实验内容要求。
程序框图
开始
赋初始值:R0=20h a=00h b=16
把20h的数清零:R0=a
R0+1
b-1=0?
结束
单步运行程序,填写下表内容。
程序语句
运行前寄存器值
理论分析值
实际运行结果值
Org 00h
00h
00h
00h
Ljmቤተ መጻሕፍቲ ባይዱ star
00h
00h
00h
Org 30h
00h
30h
30h
Star: mov r0,#20h
佛山科学技术学院实验报告课程名称实验项目清零程序专业班级姓名学学号号指导教师成成绩绩日期年月日日实验目的掌握汇编语言设计和调试方法熟悉键盘操作

数据存储区清零实验报告

数据存储区清零实验报告

一、实验目的1. 理解数据存储区清零的概念和意义。

2. 掌握C语言编程实现数据存储区清零的方法。

3. 熟悉单片机数据存储区清零指令的使用。

二、实验原理数据存储区清零是指在计算机或单片机中,将某个存储区域的所有数据清零,即将该区域内的所有数据置为0。

在进行数据传输、数据校验或初始化操作时,数据存储区清零是一个常见的操作。

在单片机编程中,数据存储区清零可以通过以下两种方式实现:1. 使用循环结构,通过循环指令将存储区域内的每个数据单元清零。

2. 使用位操作指令,将存储区域内的每个数据单元的每个位清零。

本实验采用第一种方式,即使用循环结构实现数据存储区清零。

三、实验环境1. 单片机开发板:例如STC89C52单片机开发板。

2. 编译器:Keil uVision5。

3. 实验软件:C语言编程软件。

四、实验步骤1. 初始化数据存储区指针和长度。

2. 使用循环结构遍历数据存储区,将每个数据单元清零。

3. 检查清零结果,确保数据存储区已清零。

具体步骤如下:(1)初始化数据存储区指针和长度```c#define EXTERNAL_RAM_START 0x2000 // 外部RAM起始地址#define EXTERNAL_RAM_END 0x202F // 外部RAM结束地址#define DATA_LENGTH 10 // 数据存储区长度```(2)使用循环结构遍历数据存储区,将每个数据单元清零```cvoid ClearMemory(void) {unsigned char ptr = (unsigned char )EXTERNAL_RAM_START; // 将外部RAM起始地址转换为指针for (int i = 0; i < DATA_LENGTH; i++) {ptr = 0; // 将指针指向的数据单元清零ptr++; // 移动指针到下一个数据单元}}```(3)检查清零结果,确保数据存储区已清零```cvoid CheckMemory(void) {unsigned char ptr = (unsigned char )EXTERNAL_RAM_START; // 将外部RAM起始地址转换为指针for (int i = 0; i < DATA_LENGTH; i++) {if (ptr != 0) {printf("Memory clear failed!\n"); // 发现未清零的数据,输出错误信息return;}ptr++; // 移动指针到下一个数据单元}printf("Memory clear succeeded!\n"); // 所有数据单元已清零,输出成功信息}```五、实验结果与分析1. 运行程序,观察数据存储区清零的结果。

实验02 内存清零

实验02 内存清零

实验二内存清零及内存操作一、实验目的1、掌握内存读写方法。

2、了解内存的块操作方法。

二、实验内容对指定内存起址和长度的块,要求将其内容清零,设起址为4000H,长度为1000H。

三、实验程序框图四、实验程序清单1.、采用COM模板,调试下列程序,观察内存变化,并截图START: MOV A L,00H ;CLEA R RAM:4000--4FFFHMOV BX,4000HCON1: MOV [BX],A LINC BXCMP BX,5000HJNE CON1HL T五、实验思考题1、将内存数据段起址为1001H,长度为99个单元,送入值1—99的压缩BCD码即:1001H的内容为01H,1002单元的内容为02H,依次类推。

试编写程序,运行该程序,并将运行过程和运行结果截图。

采用COM模板2、用串操作指令实现如下功能1)在内存2000:1040H处,依次存入字符串”Anhui agricultural university”2)将此字符串用串操作指令复制到3000:2002H处3)从3000:2002H处开始检索该字符串,将其中的u替换成UCLDMOV DX,2000HMOV DI,1040HMOV A L,'A'STOSBMOV A L,'n'STOSBMOV A L,'h'STOSBMOV A L,'u'STOSBMOV A L,'i'STOSBMOV A L,'a'STOSBMOV A L,'g'STOSBMOV A L,'r'STOSBMOV A L,'i'STOSBMOV A L,'c'STOSBMOV A L,'u'STOSBMOV A L,'l'STOSBMOV A L,'t'STOSBMOV A L,'u'STOSBMOV A L,'r'STOSBMOV A L,'a'STOSBMOV A L,'l'STOSBMOV A L,'u'STOSBMOV A L,'n'STOSBMOV A L,'i'STOSBMOV A L,'v'STOSBMOV A L,'e'STOSBMOV A L,'r'STOSBMOV A L,'s'STOSBMOV A L,'i'STOSBMOV A L,'t'STOSBMOV A L,'y'STOSBHL T截图显示该程序及其运行过程和结果。

实验一清零程序

实验一清零程序

实验一清零程序(总8页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--实验一清零程序一、实验目的: 掌握汇编语言设计和调试方法,熟悉键盘操作。

二、实验内容:把2000H~20FFH 的内容清零。

三、实验程序框图四、实验步骤: 用连续或单步方式运行程序,检查2000~20FF 中执行程序前后的内容变化。

五、思考:假使把1000H~10FFH 中的内容改成FF,如何修改程序,请分别用连续和单步方式运行程序来完成校验证六、程序清单(1)基本程序(文件名)ORG 0000HLJMP SE01ORG 0640HSE01: MOV R0,#00H ;(00H)送R0,R0 为计数器MOV DPTR,#2000H ;(2000H)送DPTRLOO1: CLR A ;累加器A 清零MOVX @DPTR,A ;存储空间内容清零INC DPTR ;DPTR 加1INC R0 ;R0 加1CJNE R0,#FFH,LOO1 ;若R0 不等于00,则跳转至LOO1 继续循环LOOP: SJMP LOOPEND七、思考:假使把1000H~10FFH 中的内容改成FF程序如下:ORG 0000HLJMP SE01ORG 0640HSE01: MOV R0,#00H ;(00H)送R0,R0 为计数器MOV DPTR,#1000H ;(2000H)送DPTRLOO1: MOV A,#FF;累加器A 置FFMOVX @DPTR,A ;存储空间内容置FFINC DPTR ;DPTR 加1INC R0 ;R0 加1CJNE R0,#FFH,LOO1 ;若R0 不等于00,则跳转至LOO1 继续循环LOOP: SJMP LOOPEND现象:运行第一条程序可以发现1000H~10FFH 中的内容变成FF,运行第二条程序1000H~10FFH 中的内容改成00.而其它单元的内容不变。

心得:该实验的内容比较简单。

单片机存储器清零

单片机存储器清零
实训内容:
用单片机实现7000H~70FFH的内容清零,运行程序,并检查运行结果。
实训步骤:
1、准备器件,确定硬件电路图。正确连接PC机与单片机,开机(开单片机和PC机)。
(让学生搭建单片机控制的硬件电路)
2、在PC机上运行DVCC-52实验系统,按PCDBG键。
3、输入源程序并保存为XXX.ASM文件,再执行“编译连接传送”功能。
2、熟练地运用软件程序输入、编辑、调试、运行。(30分)
3、正确分析程序的运行结果。(30分)
实 验
实 训
后 记
4、在外部数据窗口查看7000H~70FFH存储单元的内容并记录。
5、连续运行程序,并查看运行结果:查看7000H~70FFH存储单元的内容并记录。分析运行结果。
实 验
实 训
内 容
方 法
步 骤
6、结束实验,关闭系统,整理设备。
做完以上内容后完成以下思考题:
已知R0低4位是一个十六进制数(0~F中的一个),请编写能把它转换成相应的ASCII码并送入R0的程序。
课程名称
单片机原理与控制技术
实验班级
09机电1班
课 时
2学时
任课教师
吴聿
实验员
学生人数
49
实验地点
B5204单片机实训室
实验日期
分组情况
2人一台
项 目
名 称
存储器清零
实 验
实 训
目 的
1、巩固单片机的硬件结构。
2、熟练掌握数据传送指令。
3、学习顺序程序设计方法及程序的输入、调试运行方法。
所 需
工 具
DB ‘4’,‘5’,‘6’,‘7’
DB ‘8’,‘9’,‘A’,‘B’
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档