51单片机编程题:编程将外部数据存储器1050H~1054H单元分别赋值为01,02,03,04


前言

编程将外部数据存储器1050H~1054H单元分别赋值为
00,01,02,03,04,使用存储器Memory#1窗口显示如下结果图。
在这里插入图片描述

一、思路

前面指令系统我们讲到,访问外部数据存储器要用MOVX指令,而且只能使用寄存器间接寻址,忘记了可以回前面去看,你要问为什么,因为51单片机对于内部和外部存储器是采用不同的寻址方式。

单片机的指令系统一
单片机的指令系统二
在这里插入图片描述

二、编程实现

org 0000H
START1 EQU 1050H //将1050的地址赋给START1
MOV DPTR,#START1 //立即寻址,1050->DPTR
MOV A,#0 //将0赋给A,将A累加器初始化为0
MOV R0,#5//将R0赋5,将R0累加器初始化为5,原因是要加5次
LOP:MOVX @DPTR,A //将0赋给DPTR所代表的地址
INC DPTR//DPTR的地址自加
INC A //A自加
DJNZ R0 ,LOP //不为零转到LOP,LOP只是一个标号,么有实际意义
SJMP $//原地踏步
END

用到的知识点
在这里插入图片描述
在这里插入图片描述

三、实验结果

在这里插入图片描述


版权声明:本文为qq_45138815原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。