找回密码
 立即注册
查看: 599|回复: 2

STC32 求关于汇编中的DR56,DPTR,DPTR0,DPTR1的解疑

[复制链接]
  • 打卡等级:以坛为家II
  • 打卡总天数:444
  • 最近打卡:2025-05-06 08:20:14
已绑定手机

40

主题

371

回帖

859

积分

高级会员

积分
859
发表于 2023-11-11 15:36:07 | 显示全部楼层 |阅读模式
STC32 求关于汇编中的DR56,DPTR,DPTR0,DPTR1的解疑


如图  DPX=DR56是指什么,  DPL ,DPH是不是组成DPTR指针。那么DPXL怎么和DPL,DPH,组成DR56?

如程序,我定义的数组gongneng_value_P的指针是放在XDATA  0x010100上面,但是译汇编变成地址是0X0100,毕竟WR6应该是16位,所以放不了24位,后面也把这个指针赋值给了DPTR, 然后又实际最后是把目标值传送给了 DR56,  那么DR56是代表什么,DR56是指自带0X010000+DPTR吗?手册看不到这方面的介绍?
截图202311111525295808.jpg
截图202311111526329333.jpg
截图202311111530174395.jpg
纸上得到终觉浅,绝知此事要躬行。
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:217
  • 最近打卡:2024-11-15 09:12:27

29

主题

722

回帖

2790

积分

荣誉版主

积分
2790
发表于 2023-11-11 18:13:40 | 显示全部楼层
本帖最后由 gentleman 于 2023-11-11 18:21 编辑

下图操作的内存地址是 01:0086
DPL DPH 组成DPTR 存放0086 这里和8051指令集相同。
251 新增了DPXL  存放01
251 支持32位寄存器DR56 直接寻址,整出来DPTR DPXL 只是为了兼容以前的指令
DR56 后24位就是 DPXL:DPTR
同理 R11 寄存器 就是寄存器A
R10寄存器就是寄存器B

截图202311111802071155.jpg

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:444
  • 最近打卡:2025-05-06 08:20:14
已绑定手机

40

主题

371

回帖

859

积分

高级会员

积分
859
发表于 2023-11-13 09:03:41 | 显示全部楼层
gentl*** 发表于 2023-11-11 18:13
下图操作的内存地址是 01:0086
DPL DPH 组成DPTR 存放0086 这里和8051指令集相同。
251 新增了DPXL  存放0 ...

原来是这样的,谢谢大哥指导
纸上得到终觉浅,绝知此事要躬行。
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-5-6 10:02 , Processed in 0.165592 second(s), 64 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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