在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
芯片精品文章合集(500篇!) 创芯人才网--重磅上线啦!
查看: 5944|回复: 4

关于Keil的绝对地址偏移问题?

[复制链接]
发表于 2005-3-9 17:28:44 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
    我在网上看到有关C51程序定位的问题,我试了一下并不是想象的那样。比如对于C51程序(假如只是有main函数),可以在Keil的CODE位置中输入“*main(0x9000)”,但是编译出来的结果是这样的,在CODE区的0000H处依旧有几条转移代码,是不是STARTUP的原因呢?
    如果用汇编
    ORG 9000H
    ........
那绝对在CODE区的0000H出找不到任何东西(当然就是全部的FF)。
   我想请问用C语言能否实现想汇编一样的绝对地址定位呢(在Keil中)?
发表于 2005-3-9 20:22:18 | 显示全部楼层

关于Keil的绝对地址偏移问题?

0000处的确得有跳转指令啊,除非你什么中断都没有用,程序从0000进入执行FF直到你的9000H
 楼主| 发表于 2005-3-9 20:47:26 | 显示全部楼层

关于Keil的绝对地址偏移问题?

如果用汇编(假设没有中断等其他的)
  ORG 9000H
就可以在0000H的地方什么也没有。
发表于 2005-3-9 22:31:03 | 显示全部楼层

关于Keil的绝对地址偏移问题?

是可以,但必须是系统不使用任何中断,而且上电后先执行mov a,r7(0xff)直到执行到你的9000H,看看关于51中断向量的章节吧
 楼主| 发表于 2005-3-10 08:55:55 | 显示全部楼层

关于Keil的绝对地址偏移问题?

我知道用汇编是可以的,但是在Keil中用C我就实现不了,请指教。谢谢!我的意思是用C语言能不能把程序的绝对地址定位在0x9000开始的地方呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-9-28 11:17 , Processed in 0.026203 second(s), 8 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表