找回密码
 立即注册
查看: 320|回复: 1

STC32单片机直接寻址方式,如何给edata高于256B地址赋值?

[复制链接]
  • 打卡等级:偶尔看看I
  • 打卡总天数:11
  • 最近打卡:2025-03-21 11:14:28

13

主题

21

回帖

211

积分

中级会员

积分
211
发表于 2024-6-11 17:33:25 | 显示全部楼层 |阅读模式
STC32单片机直接寻址方式,如何给edata高于256B地址赋值?
在何老师的教学视频中,看到直接寻址方式时,举例指令为:
  1. MOV DR4, EDATA 300H
复制代码
这条指令可以正常执行。
我就想,有没有直接地址为目的操作数的指令,我就写下面指令:
  1. MOV  EDATA 300H,#12H
  2. MOV  EDATA 301H,#34H
  3. MOV  EDATA 302H,#56H
  4. MOV  EDATA 303H,#78H
复制代码
这几条指令错误一样,main.asm(23): error A48: DATA-ADDRESS EXPECTED
是不是超过258b地址后,指令中源操作数不能是立即数。
下面指令是正确,可执行的:
  1.   MOV 20H,#12H
  2.   MOV 21H,#34H
  3.   MOV 22H,#56H
  4.   MOV 23H,#78H
  5.   MOV DR0,20H
  6.   MOV EDATA 300H,DR0
复制代码
通过这段代码,把20h~23h中的数据0x12345678,传给了edata:300h~303h 中。


回复

使用道具 举报 送花

  • 打卡等级:偶尔看看I
  • 打卡总天数:11
  • 最近打卡:2025-03-21 11:14:28

13

主题

21

回帖

211

积分

中级会员

积分
211
发表于 2024-6-14 07:59:00 | 显示全部楼层
防沉
回复

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-6-18 10:55 , Processed in 0.149442 second(s), 51 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表