- 积分
- 825
- 在线时间
- 1170 小时
- 最后登录
- 2023-6-7
- 阅读权限
- 50
- 精华
- 3
 
- UID
- 14733
- 帖子
- 626
- 精华
- 3
- 经验
- 825 点
- 金钱
- 706 ¥
- 注册时间
- 2006-11-16
|

楼主 |
发表于 2008-1-7 09:08
|
显示全部楼层
原帖由 tianqing324 于 2008-1-4 22:17 发表 
谢谢大哥
海鸥一个问题
就是S52只有8KB的存储器,但是我下载的程序(HEX)怎么有18K多?
回答::
你查看到的文件大小并不是实际烧录到FLASH中的CODE大小,所以显示19K是正常现象的;这是因为:
一、我们常用来烧录的CODE代码一般有HEX和BIN两种格式,对于BIN文件而言,文件的大小就是文件包括的数据的实际大小;而HEX文件的大小并不是实际代码的大小,因为HEX文件是用ASCII来表示数据,是文本格式的文件,它比BIN文件大好多倍,BIN文件中的一个字节在HEX是占了两个字节,另外HEX文件还包括了附加的记录信息、校验字等,所以占用空间要比实际CODE大很多。
二、文件在磁盘上的所占空间不是以Byte为衡量单位的,它最小的计量单位是“簇(Cluster)”,操作系统规定一个簇中只能放置一个文件的内容,因此文件所占用的空间,只能是簇的整数倍,比如文件大小为18KByte, 簇大小为16KByte,那实际占用空间就是两个族,即32KByte. |
|