用Keil 编译51的C程序时Target设置问题,求解答!

2020-01-23 14:49发布

本帖最后由 xyh1re 于 2014-4-24 03:57 编辑

最近在用Keil 编译51的c语言程序时经常遇到类似Data Doesn't fit in page 和IMPROPER FIX UP的问题,在网上查找资料感觉很模糊,第一个错误的解决方法就是在Target设置里更改 Memory Modle ,Code Rom Size和Operating system 这几个选项,但就是搞不清楚什么时候应该选Memory Model 里的Compact:variables in PDATA和Large:variables in XDATA,还有什么时候应该选择 Code Rom Size 里的 Compact:2K functions,64K program和Large: 64Kprogram,这些都是什么意思?有什么区别?网上有说法是有时候勾选的不一样编译都没有错误但是运行时会有差别,选错了的话会运行不出结果,还有一个疑问是如果我在程序中定义变量的时候用了 xdata的话,在Memory Model 选项里应该选Large:variables in XDATA这个吗? 对于第二个错误还没找到比较好的解答,对这两个问题,了解的朋友给个解释吧,谢谢!
0条回答

一周热门 更多>