自己认为,是可以的,因为自己这样做过,自己曾做过如下修改:
修改前:
/* non-paged RAM */
RAM = READ_WRITE DATA_NEAR 0x2000 TO 0x3FFF;
/* non-banked FLASH */
ROM_4000 = READ_ONLY DATA_NEAR IBCC_NEAR 0x4000 TO 0x7FFF;
修改后:
/* non-paged RAM */
RAM = READ_WRITE DATA_NEAR 0x2000 TO 0x4FFF; //default 8k ,add 4k,now is 12k
/* non-banked FLASH */
ROM_4000 = READ_ONLY DATA_NEAR IBCC_NEAR 0x5000 TO 0x7FFF; //default 16k ,delete 4k ,now is 12k
修改的原因是因为RAM不够用了,因此将RAM由8K提高到12K,将ROM_4000由16K减小到12K,
这样修改后,程序也照样运行,没有任何异常,不知道这样长时间有没有问题?
按自己的理解,单片机的ROM可以当做RAM来用,但是RAM不能当做ROM来用,单片机的RAM地址段掉电后,数据是否丢失,也不一定,
由此引起一个问题,就是RAM,EEPROM,FLASH,三者有什么区别?某固定内存地址段是否可以指定为三者中的任意一类型?个人觉得应该可以。
电脑的硬盘(包括机械硬盘和固态硬盘)和内存条之间的区别?
个人理解,其区别是内存相比机械硬盘或固态硬盘,读写速度更快,如果固态硬盘的读写速度和内存条相同,那么后续是否就不用内存条了?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
ROM是只读存储器,固化好的程序一般不能直接写,只能读。当然有可能会通过其他手段写入,这种ROM叫PROM。然而人们不满足于只能写入一次,所以搞出了可以擦除的EPROM。这玩意最早是紫外线可擦除的,很麻烦,所以有了电可擦除的,叫EEPROM。后来觉得eeprom结构太复杂,工艺上改成了浮置栅,称为Flash。所以广义上后面的都是前面的子集,狭义上则是指特定工艺从而完全不一样了。
如果ssd赶上了RAM的速度而你又不要内存,估计现代的软件能在1ms内将你的ssd寿命写满。
一周热门 更多>