版块
论坛
喜欢
话题
应用
搜索
登录
注册
todaygood的个人空间
访问量
0
新鲜事
帖子
资料
http://bbs3.driverdevelop.com/index.php?m=space&uid=96127
不明白间接寻址
大家看一下我的程序 org 0000hMOV R0,#80HMOV @R0,#20HEND我选择的芯片是At89c52的,有256B的RAM,但编译后调试观察D:80h 数据为00;(我本想用间接寻址的方法对RAM区中的80h处赋值)(如果说80h默认为p0...
全文
回复
(
4
)
2004-12-29 22:16
来自版块 -
Keil C 使用
◆
◆
表情
告诉我的粉丝
提 交
lzl
:
你的程序我看不出问题! mov @r0,#20h;就是给间接寻址区的RAM赋值.要不你换个地址看看, mov r0,#95H; mov @r0,#20h;试试看能不能赋值;若不能肯定是编译器的事了。
(2005-02-03 23:32)
回复
zmwk
:
在高128字节内部RAM中,间接寻址和直接寻址访问的是不同区域。 也就是说: MOV R0, #80H MOV @R0,#20H 和 MOV 80H, #20H 执行的是两种不同操作。 前者访问通用RAM区域。 后者访问SFR区域。 堆栈操作也访问通...
(2005-02-02 18:33)
回复
sx_wjy
:
你的编译器能不能看到高128字节的Data区,你间接寻址的结果不会对特殊功能区有影响。两个区不一样。
(2005-01-09 16:48)
回复
lsn_061
:
是MOV @R0,#20H还是MOVX @R0,#20H,我也让你搞糊涂了,还有不要对P0口操作,换一个其他的RAM :cool: 还有你这程序太简单了: org 0000h JMP START ORG 1000H START: MOV R0,#80H MOV @R...
(2004-12-31 08:14)
回复
todaygood
加关注
写私信
0
关注
0
粉丝
1
帖子
返回顶部