找回密码
 注册
搜索
查看: 1023|回复: 14

[讨论] 没人回答我只好跳楼自尽了~_~

[复制链接]
发表于 2007-5-29 10:01:18 | 显示全部楼层 |阅读模式
编译环境:IAR Embedded workbench for 8051。问题:memory model:banked compact large medium small tiny 的区别?[em03][em03][em03][em03][em03][em03]
发表于 2007-5-29 10:52:21 | 显示全部楼层
你可以跳楼了
不过等我们把楼盖高点。。。。。。
点评回复

使用道具 举报

 楼主| 发表于 2007-5-29 17:11:33 | 显示全部楼层
版主,你就怎么没人性呀?[em03][em03]好歹你也安慰两句吧[em02]
点评回复

使用道具 举报

发表于 2007-5-29 21:06:20 | 显示全部楼层
开始盖楼了。。。。。。
点评回复

使用道具 举报

发表于 2007-6-1 10:36:38 | 显示全部楼层
无能为力[em03]
点评回复

使用道具 举报

发表于 2007-6-1 22:29:01 | 显示全部楼层
这些在书上有的[em13][em06][em01][em02][em03]
多如牛毛?
点评回复

使用道具 举报

发表于 2007-6-4 13:03:18 | 显示全部楼层
build building?hehe
点评回复

使用道具 举报

发表于 2007-6-5 16:42:31 | 显示全部楼层
应该是编译时的选择,对于寻址方式的代码生成有些影响。很多书上有。
点评回复

使用道具 举报

 楼主| 发表于 2007-6-6 10:29:52 | 显示全部楼层
<DIV class=quote><B>以下是引用<I>werner01</I>在2007-6-5 16:42:31的发言:</B>
应该是编译时的选择,对于寻址方式的代码生成有些影响。很多书上有。</DIV>

谢谢,不全,而且我不知道不同的编译环境是不是有不同。要不你给推荐一本书怎么样?
点评回复

使用道具 举报

发表于 2007-6-6 16:30:13 | 显示全部楼层
memory model:banked compact large medium small tiny ?
不太确定如何断你的句子。
你的banked 是指程序存储器还是数据存储器?
给你个参考吧,记得很久以前,keilC51种有类似的设置,是告诉编译器你用的系统的内存大小,编译器据此来调整变量的位置等细节。

可能的解释(不对此负责,请自行调查取证):
compact : ???
tiny: 256B (internal only)
small: 256B + 1KB(external )
large: 256B+64KB[br]<p align=right><font color=red>+3 RD币</font></p>
点评回复

使用道具 举报

 楼主| 发表于 2007-6-14 13:22:10 | 显示全部楼层
谢谢!楼上的可有用过IAR for 8051?
点评回复

使用道具 举报

发表于 2007-6-14 16:03:16 | 显示全部楼层
盖楼中... ...[em01]
点评回复

使用道具 举报

发表于 2007-10-26 15:42:06 | 显示全部楼层
盖楼中... ...[em12][em12]
点评回复

使用道具 举报

发表于 2007-10-29 16:43:25 | 显示全部楼层
我有用过IAR系统,但是不是8051系列的,用的是Moto CPU的系列的。不知道楼主是否有真的用过IAR的8051 C/C++编译器.关于这个选项的说明在使用手册中都有。对应编译模式,有不同的Code模式和Data模式。

对于Code的模式,

Tiny __tiny_func Supports up to 2 Kbytes ROMable code
Near __near_func Supports up to 64 Kbytes ROMable code,
can access the entire 16-bit address space
Banked __banked_func Supports banked 24-bit calls
Far __far_func Supports true 24-bit calls

对于Data模式:

Tiny __data __idata 8 bits 128 bytes
Small __idata __idata 8 bits 256 bytes
Large __xdata __xdata 16 bits 64 Kbytes
Generic __xdata __generic 24 bits 64 Kbytes
Far __far __far 24 bits 16 Mbytes

其他的就不说了。
点评回复

使用道具 举报

 楼主| 发表于 2007-10-30 09:13:53 | 显示全部楼层
<DIV class=quote><B>以下是引用<I>werner01</I>在2007-10-29 16:43:25的发言:</B>
我有用过IAR系统,但是不是8051系列的,用的是Moto CPU的系列的。不知道楼主是否有真的用过IAR的8051 C/C++编译器.关于这个选项的说明在使用手册中都有。对应编译模式,有不同的Code模式和Data模式。

对于Code的模式,

Tiny __tiny_func Supports up to 2 Kbytes ROMable code
Near __near_func Supports up to 64 Kbytes ROMable code,
can access the entire 16-bit address space
Banked __banked_func Supports banked 24-bit calls
Far __far_func Supports true 24-bit calls

对于Data模式:

Tiny __data __idata 8 bits 128 bytes
Small __idata __idata 8 bits 256 bytes
Large __xdata __xdata 16 bits 64 Kbytes
Generic __xdata __generic 24 bits 64 Kbytes
Far __far __far 24 bits 16 Mbytes

其他的就不说了。




</DIV>


呵呵,楼上的兄弟还怀疑我是否真的用过IAR FOR 8051。那我现在告诉你,不但用过,还用它做了一个项目,已经做完了,不过没什么成就感,把别人的东西汉化一下而已。谢谢楼上的回答,好人呀,对别人的问题不厌其烦!用户手册我只看了一部分,英文的,虽然我以现在的水平看懂没任何问题,但毕竟是外语,总没有看中文资料来的舒服。所以很多工具的用户手册我都不会完全看完,够用就行!
点评回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

Archiver|手机版|小黑屋|52RD我爱研发网 ( 沪ICP备2022007804号-2 )

GMT+8, 2024-10-7 06:44 , Processed in 0.046648 second(s), 16 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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