我是搞硬件的,设计电路板,也写单片机程序。最近学习C#、Java,首先有一个特别大的感受:
硬件用的MCU最早是51单片机,现在发展到ARM了。51系列的ram区,相当于电脑里的内存,最早才多大?你们猜猜?128个字节!对,你没看错,就这么“大”!这意味着你用到的所有全局变量、局部变量、数组、结构体(51都不敢想结构体)等,占用的空间总和不能超过128个字节!遥想当年,用汇编,对每个字节的ram,甚至每一位,都物尽其用、精打细算,现在我都不敢想象让我再回到那个时候了,我都没法写程序了
。 后来,发展到ARM,内存增加了不少,16K、32K、64K,甚至更大,这样我就已经非常满足了,感觉写起程序来顺溜了不少,不用为了节约一点内存而绞尽脑汁。
然而,自从我开始学习电脑编程,吃惊地发现,根本不用考虑内存大小(我是说相对单片机的内存),随便就定义N个1024的数组,毫无压力。这在单片机来说是不可想象的!根本不用胆战心惊!
。这在你们看来可能没觉得怎么样,但由于我有强烈的对比,所以感触颇深。