4个回答
展开全部
使用const 关键字定义的数据,都是只读的,编译器会把这些数据定义到程序存储空间里面。
用C语言肯定可以对const数据进行读操作的。我用过无数次了,一般需要查表计算的数据,我都会定义成const的。
无论如何操作,读const数据肯定不会造成系统复位。你仔细检查一下程序,并且仔细看看CMD文件的配置。
用C语言肯定可以对const数据进行读操作的。我用过无数次了,一般需要查表计算的数据,我都会定义成const的。
无论如何操作,读const数据肯定不会造成系统复位。你仔细检查一下程序,并且仔细看看CMD文件的配置。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
打开项目下的.MAP文件 然后会看到类似下面的列表
******************************************************************************
TMS320C54x COFF Linker PC Version 3.83
******************************************************************************
>> Linked Thu Aug 19 15:31:15 2010
OUTPUT FILE NAME: <main.out>
ENTRY POINT SYMBOL: "_c_int00" address: 00028000
MEMORY CONFIGURATION
name origin length used attr fill
---------------------- -------- --------- -------- ---- --------
PAGE 0: ROMvec 00000080 00000080 00000080 RWIX
PSWITCH 00000100 00000200 000000ba RWIX
//ROM 0000f000 00000f00 00000000 RWIX
PARAM1 00018000 00008000 00000000 RWIX
PARAM2 00028000 00008000 00006d69 RWIX
PARAM3 00038000 00008000 000031c0 RWIX
PAGE 1: SCRATCHPAD 00000060 00000020 00000000 RWIX
DSTACK 00000300 00001000 00001000 RWIX
CIPHER_FLAG 00001300 00000010 00000000 RWIX
DARAM 00001310 00006cf0 00001d93 RWIX
PAGE 2: IOPORT 00000000 00010000 00000000 RWI
上面就是你在CMD中按块划分的各空间,有USED这列,是你已经用了的
******************************************************************************
TMS320C54x COFF Linker PC Version 3.83
******************************************************************************
>> Linked Thu Aug 19 15:31:15 2010
OUTPUT FILE NAME: <main.out>
ENTRY POINT SYMBOL: "_c_int00" address: 00028000
MEMORY CONFIGURATION
name origin length used attr fill
---------------------- -------- --------- -------- ---- --------
PAGE 0: ROMvec 00000080 00000080 00000080 RWIX
PSWITCH 00000100 00000200 000000ba RWIX
//ROM 0000f000 00000f00 00000000 RWIX
PARAM1 00018000 00008000 00000000 RWIX
PARAM2 00028000 00008000 00006d69 RWIX
PARAM3 00038000 00008000 000031c0 RWIX
PAGE 1: SCRATCHPAD 00000060 00000020 00000000 RWIX
DSTACK 00000300 00001000 00001000 RWIX
CIPHER_FLAG 00001300 00000010 00000000 RWIX
DARAM 00001310 00006cf0 00001d93 RWIX
PAGE 2: IOPORT 00000000 00010000 00000000 RWI
上面就是你在CMD中按块划分的各空间,有USED这列,是你已经用了的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
硬盘空间丢失原因及解决办法
大容量硬盘以其较好的性价比越来越受到用户的欢迎,很多用户装机或是升级电脑硬盘时纷纷将目光投向了大容量的硬盘。一些用户在购买硬盘后发现与硬盘实际标称的容量不符,或是有些用户在使用一段时间会发现自己的硬盘容量变小,那么针对这些问题,我们就来谈谈硬盘容量的问题。
首先我们要正确认识硬盘容量大小的有关问题。经常关注硬盘报道,稍微有些硬盘常识的用户都会知道,硬盘的实际容量一般都小于其标称容量。造成这种情况的主要原因是,我们大部分情况下是以1G=1024M来定义硬盘容量的,而大部分主板的BIOS设计及测试软件也是以1024K字节来计算硬盘容量的,而厂家为了方便计算与生产,往往是以每兆1000K字节计算容量,这样一来二者间便出现了大约5%的差异。而硬盘容量又有纯粹由磁头数、柱面数等物理参数计算得到的物理盘容量以及在经过分区、格式化 等操作后实际可用空间的逻辑盘容量之分。此外在CMOS中选择不同的工作模式(NORMA、LBA、 LARGE),也会造成容量的不一致。由于有这些因素的影响,一般而言硬盘测试容量与标称容量存在5%-10%左右的差距是基本正常的。
和硬盘容量有关的是主板CMOS中NORMAL、LBA、LARGE的三种硬盘模式,简单说由于最早的BIOS只支持不大于528M容量的硬盘, BIOS中的 C/H/S参数与硬盘实际的完全一样,这时硬盘的模式就是NORMAL,后来为解决528M的限制出现了LARGE模式,它通过增加逻辑柱面的数目,使 BIOS支持的容量扩大了一倍,但这是个过度的模式,很快就没有使用了。随着大容量硬盘的流行,现在CMOS的硬盘模式中,实际上只有LBA 一项有实用意义,而设为NORMAL、LARGE都不能正常识别及使用大容量硬盘。
明白了以上道理后,我们似乎就不需要再关注硬盘空间丢失的问题了。其实不然,在很多情况下,硬盘也会不同程序的丢失空间。如硬盘坏道、隐藏的垃圾文件等等。
造成硬盘空间丢失的原因有很多,如误操作、程序非正常退出、非正常关机、病毒感染、程序运行中的错误或者对硬件分区的不合理等情况都会造成硬盘空间的丢失。那么下面我们就几种情况下容易靠成硬盘空间丢失浪费进行一下简单的分析。
1、硬盘坏道
硬盘坏道是造成硬盘空间丢失最为严重的,硬盘出现坏道会要及时的利用各种方法进行修复或是屏蔽,因为严重的硬盘坏道是硬盘的物理损坏,并伴有传染性,如果不及时的修复与处理,坏道便会赿来越大,直至殃及整个硬盘。硬盘一旦出现坏道,一定要记得及时备份重要的文件数据,并不是在本硬盘上备份,要及时的更换其它硬盘进行备份或是刻录成盘。因为硬盘一旦出现坏道后,但意味着此款硬盘寿命已经不会太长,即便是用软件修复,也存在着严重的危险,相信硬盘上的重要数据要比硬盘本身更值钱。
2、分区过大
对硬盘的逻辑分区是否合理,这不仅关系到硬盘文件的分类管理,而且也直接关系到硬盘空间的充分利用。
我们知道文件的存储是以簇为单位的,也就是说一个文件要占用一个或多个簇,而簇是由一个或多个扇区构成。如果一个簇只有一个字节被一个文件占用,那么该簇的其他部分即使是空闲的,也不能被别的文件所利用,这样空间就被浪费了。由此可见对硬盘分区在大小划分上是否合理,直接关系到硬盘空间的使用情况。
拿现在80GB容量的硬盘来讲,我们尽量要多划分几个逻辑盘,像以20GB、30GB为单位进行划分,建议不要超过40GB。但也并不是划分的越小越好,如80GB的就不再建议以10GB为单位进行分区,因为太多的分区不但会影响整个系统的运行速度,而且我们管理使用起来也极不方便。像对160GB大容量的硬盘,我们可以根据自己的实际需要情况,合理的进行分区,一般以40GB为单位就可以了,最好别超过60GB。
3、临时文件
临时文件造成的硬盘空间的浪费也是一个容易忽视的问题。
我们在使用电脑当中,有些时候在运行应用程序时出现错误而非正常退出,或是电脑突然断关机等,都会使很多.TMP类型的文件继续存放在硬盘中,在 Windows窗口环境中运行应用程序时,会自动产生以~GRB开头的用于存放有关屏幕信息的文件,另外,还有一个用于Windows本身临时交换文件的 win386.swp。当程序正常退出运行之前,应用程序会将这些文件删除,而非正常退出时,应用程序无法删除它们。可以定期清理这些文件。
清理的方法很简单,简单介绍一下。选择要清理的盘符,如“C”盘,在盘符上单击鼠标右键,选择“属性”,然后选择“常规”下我们可以看到“磁盘清整” 的选项,点击进行“磁盘清理”窗口,同样选择“磁盘清理”,尔后我们可以看到有几个选项让我们选择,点击前面的空格选定后点击确定点可,如果要进行其它的操作可以点击“其他选项”来完成。
4、簇的丢失
文件分配表(FAT)是软盘或硬盘上的一个隐含表。FAT记录如何将文件存储在特定的(不一定是连续的)簇上。文件分配表采用一种简单的方法不停地跟踪数据。在FAT中,第一簇的入口是用于存储文件的第二簇的地址。在第二个簇入口处则是第三个簇的地址,等等,直到包含文件结束码的最终簇入口。
很明显,如果FAT表数据因为某种原因遭到破坏,就会导致硬盘数据的逻辑连续性发生紊乱,从而发生硬盘空间丢失的问题。这种空间丢失的故障用一般的磁盘修复工具都可以解决,但数据往往无法修复。由于传统FAT格式的缺陷,若某个簇没有在任何文件分配链中出现,而且该簇在相应的文件分配表中又被标记为非零时,这时该簇既没有被任何文件使用,又不可以再为其他文件所用,这样就发生了"簇丢失"现象。簇的丢失必然导致硬盘空间的丢失。这种"丢失"空间的现象通常是由于程序在运行中非正常终止、在 Win98环境中非正常关机等原因造成的。
因此,从以上我们认为,在大部分硬盘的分区时要坚决采用NTFS格式,当然那些老式硬盘的还是建议采用FAT32,这是解决以上问题最有效的方式。
5、合理使用硬盘空间的设置
回收站空间设置直接影响到硬盘上可用空间的大小,最好你的回收站大小设置为硬盘空间的5%,并且你要定期清空你的回收站。再有一点就是,IE中的Internet文件临时存放空间的设置,如果你将它设置得太大,它存储的Internet文件就会占用你的硬盘空间。
我想这两项的设置过程大家一定非常熟悉了吧,在这里就不再多罗嗦了。
大容量硬盘以其较好的性价比越来越受到用户的欢迎,很多用户装机或是升级电脑硬盘时纷纷将目光投向了大容量的硬盘。一些用户在购买硬盘后发现与硬盘实际标称的容量不符,或是有些用户在使用一段时间会发现自己的硬盘容量变小,那么针对这些问题,我们就来谈谈硬盘容量的问题。
首先我们要正确认识硬盘容量大小的有关问题。经常关注硬盘报道,稍微有些硬盘常识的用户都会知道,硬盘的实际容量一般都小于其标称容量。造成这种情况的主要原因是,我们大部分情况下是以1G=1024M来定义硬盘容量的,而大部分主板的BIOS设计及测试软件也是以1024K字节来计算硬盘容量的,而厂家为了方便计算与生产,往往是以每兆1000K字节计算容量,这样一来二者间便出现了大约5%的差异。而硬盘容量又有纯粹由磁头数、柱面数等物理参数计算得到的物理盘容量以及在经过分区、格式化 等操作后实际可用空间的逻辑盘容量之分。此外在CMOS中选择不同的工作模式(NORMA、LBA、 LARGE),也会造成容量的不一致。由于有这些因素的影响,一般而言硬盘测试容量与标称容量存在5%-10%左右的差距是基本正常的。
和硬盘容量有关的是主板CMOS中NORMAL、LBA、LARGE的三种硬盘模式,简单说由于最早的BIOS只支持不大于528M容量的硬盘, BIOS中的 C/H/S参数与硬盘实际的完全一样,这时硬盘的模式就是NORMAL,后来为解决528M的限制出现了LARGE模式,它通过增加逻辑柱面的数目,使 BIOS支持的容量扩大了一倍,但这是个过度的模式,很快就没有使用了。随着大容量硬盘的流行,现在CMOS的硬盘模式中,实际上只有LBA 一项有实用意义,而设为NORMAL、LARGE都不能正常识别及使用大容量硬盘。
明白了以上道理后,我们似乎就不需要再关注硬盘空间丢失的问题了。其实不然,在很多情况下,硬盘也会不同程序的丢失空间。如硬盘坏道、隐藏的垃圾文件等等。
造成硬盘空间丢失的原因有很多,如误操作、程序非正常退出、非正常关机、病毒感染、程序运行中的错误或者对硬件分区的不合理等情况都会造成硬盘空间的丢失。那么下面我们就几种情况下容易靠成硬盘空间丢失浪费进行一下简单的分析。
1、硬盘坏道
硬盘坏道是造成硬盘空间丢失最为严重的,硬盘出现坏道会要及时的利用各种方法进行修复或是屏蔽,因为严重的硬盘坏道是硬盘的物理损坏,并伴有传染性,如果不及时的修复与处理,坏道便会赿来越大,直至殃及整个硬盘。硬盘一旦出现坏道,一定要记得及时备份重要的文件数据,并不是在本硬盘上备份,要及时的更换其它硬盘进行备份或是刻录成盘。因为硬盘一旦出现坏道后,但意味着此款硬盘寿命已经不会太长,即便是用软件修复,也存在着严重的危险,相信硬盘上的重要数据要比硬盘本身更值钱。
2、分区过大
对硬盘的逻辑分区是否合理,这不仅关系到硬盘文件的分类管理,而且也直接关系到硬盘空间的充分利用。
我们知道文件的存储是以簇为单位的,也就是说一个文件要占用一个或多个簇,而簇是由一个或多个扇区构成。如果一个簇只有一个字节被一个文件占用,那么该簇的其他部分即使是空闲的,也不能被别的文件所利用,这样空间就被浪费了。由此可见对硬盘分区在大小划分上是否合理,直接关系到硬盘空间的使用情况。
拿现在80GB容量的硬盘来讲,我们尽量要多划分几个逻辑盘,像以20GB、30GB为单位进行划分,建议不要超过40GB。但也并不是划分的越小越好,如80GB的就不再建议以10GB为单位进行分区,因为太多的分区不但会影响整个系统的运行速度,而且我们管理使用起来也极不方便。像对160GB大容量的硬盘,我们可以根据自己的实际需要情况,合理的进行分区,一般以40GB为单位就可以了,最好别超过60GB。
3、临时文件
临时文件造成的硬盘空间的浪费也是一个容易忽视的问题。
我们在使用电脑当中,有些时候在运行应用程序时出现错误而非正常退出,或是电脑突然断关机等,都会使很多.TMP类型的文件继续存放在硬盘中,在 Windows窗口环境中运行应用程序时,会自动产生以~GRB开头的用于存放有关屏幕信息的文件,另外,还有一个用于Windows本身临时交换文件的 win386.swp。当程序正常退出运行之前,应用程序会将这些文件删除,而非正常退出时,应用程序无法删除它们。可以定期清理这些文件。
清理的方法很简单,简单介绍一下。选择要清理的盘符,如“C”盘,在盘符上单击鼠标右键,选择“属性”,然后选择“常规”下我们可以看到“磁盘清整” 的选项,点击进行“磁盘清理”窗口,同样选择“磁盘清理”,尔后我们可以看到有几个选项让我们选择,点击前面的空格选定后点击确定点可,如果要进行其它的操作可以点击“其他选项”来完成。
4、簇的丢失
文件分配表(FAT)是软盘或硬盘上的一个隐含表。FAT记录如何将文件存储在特定的(不一定是连续的)簇上。文件分配表采用一种简单的方法不停地跟踪数据。在FAT中,第一簇的入口是用于存储文件的第二簇的地址。在第二个簇入口处则是第三个簇的地址,等等,直到包含文件结束码的最终簇入口。
很明显,如果FAT表数据因为某种原因遭到破坏,就会导致硬盘数据的逻辑连续性发生紊乱,从而发生硬盘空间丢失的问题。这种空间丢失的故障用一般的磁盘修复工具都可以解决,但数据往往无法修复。由于传统FAT格式的缺陷,若某个簇没有在任何文件分配链中出现,而且该簇在相应的文件分配表中又被标记为非零时,这时该簇既没有被任何文件使用,又不可以再为其他文件所用,这样就发生了"簇丢失"现象。簇的丢失必然导致硬盘空间的丢失。这种"丢失"空间的现象通常是由于程序在运行中非正常终止、在 Win98环境中非正常关机等原因造成的。
因此,从以上我们认为,在大部分硬盘的分区时要坚决采用NTFS格式,当然那些老式硬盘的还是建议采用FAT32,这是解决以上问题最有效的方式。
5、合理使用硬盘空间的设置
回收站空间设置直接影响到硬盘上可用空间的大小,最好你的回收站大小设置为硬盘空间的5%,并且你要定期清空你的回收站。再有一点就是,IE中的Internet文件临时存放空间的设置,如果你将它设置得太大,它存储的Internet文件就会占用你的硬盘空间。
我想这两项的设置过程大家一定非常熟悉了吧,在这里就不再多罗嗦了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询