你知道MCU和PC在代码加载和运行上有何区别吗?
扫描二维码
随时随地手机看文章
一、首先谈一下几种掉电不丢数据的存储设备:
1.Norflash:可擦写,贵,在Norflash上可以直接运行代码!
2.Nandflash:可擦写,便宜,只能用于存储数据;
3.磁盘:就是我们常说的硬盘,可擦写,便宜,只能用于存储数据;
二、正题
1.MCU
大多数单片机的代码都是存在Norflash里面,这就意味着程序可以直接在flash直接跑,不用加载到ram里面,而且单片机的ram本来就是比较稀缺的资源;
2.PC
先从电脑的BIOS说起,我们经常说,BIOS是一个ROM区,是一个只读的区域。其实BIOS并不绝对的“只读”,因为BIOS在现代几乎所有的电脑都是存在Norflash中,还是属于可以擦写的,至于BIOS存在ROM里是很久远之前的事了。
不同于BIOS,电脑的磁盘则只能用于存储,代码无法直接在上面跑,所以要运行代码,需要将代码从磁盘加载到ram里面,也就是我们通常说的内存条,然后在ram里面跑代码。