请教:51汇编中怎样把当前的PC值弄到DPTR去

[复制链接]
3449|6
 楼主| bg6nw 发表于 2008-12-15 21:26 | 显示全部楼层 |阅读模式
貌似这样的功能  mov dptr, pc    纯属杜撰,见笑。
lyjian 发表于 2008-12-15 22:01 | 显示全部楼层

mov dptr,#$

ayb_ice 发表于 2008-12-15 22:09 | 显示全部楼层

可以通过堆栈间接达到目的

computer00 发表于 2008-12-15 22:58 | 显示全部楼层

MOV DPTR,#$

xhtxzxw 发表于 2008-12-16 00:00 | 显示全部楼层

嘿嘿

严格说起来,貌似在执行“mov dptr, #imd16”的时候,“当前”PC值已经指向下一条指令了!嘿嘿

xwj 发表于 2008-12-16 00:35 | 显示全部楼层

显示当前PC值没意义,只能显示下一条指令的PC值

所以我的调试程序是这样的:
(可以根据显示值在Keil里直接定位C语言的对应位置哦)
/***************************************************************************/
#ifdef DEBUG_SHOW
void show_PC(void)
{
    printat(0,2,char2hexasc(*((unsigned char idata *)(SP))));
    print("_");
    print(char2hexasc(*((unsigned char idata *)(SP-1))));
    print(":");
}
#endif
 楼主| bg6nw 发表于 2008-12-16 14:27 | 显示全部楼层

多谢指教

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

本版积分规则

34

主题

511

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部