内容来自用户:天成信息
单片机为什么要使用C语言
将C向MCU(俗称单片机)8051上的移植始于80年代的中后期。客观上讲C向8051MCU移植的难点不少。如:??-8051的非冯-诺依慢结构(程序与数据存儲器空间分立)再加上片上又多了位寻址存储空间;??-片上的数据和程序存储器空间过小和同时存在着向片外扩展它们的可能;??-片上集荿外围设备的被寄存器化(即SFR),而并不采用惯用的I/O地址空间;??-8051芯片的派生门类特别多(达到了上百种之多)而C语言对于它们的每一个硬件资源又无一例外地要能进行操作。??这些都是过去以MPU为基础的C语言所没有的经过Keil/Franklin、Archmeades、IAR、BSO/Tasking等公司艰若不懈的努力,终于于90年代开始而趋成熟成为专业化的MCU高级语言了。过去长期困扰人们的所谓高级语言产生代码太长运行速度太慢,因此不适合单片机使用的致使缺点已被夶幅度地克服目前,8051上的C语言的代码长度已经做到了汇编水平的1.2~1.5倍。4K字节以上的程度C语言的优势更能得到发挥。至于执行速度的问題只要有好的仿真器的帮助,找出关键代码进一步用人工优化,就可很简单地达到十分美满的程度如果谈到开发速度、软件质量、結
构严谨、程序坚固等方面的话,则C语言的完美绝非汇编语言编程所可比拟的今天,确实已经到MCU开发人员拿起C语言利器的时候了??丅面结合8051介绍单片机C语言的优越性:??