美文网首页
单片机学习笔记5-C51语言与标准C语言的比较

单片机学习笔记5-C51语言与标准C语言的比较

作者: 云水禅心1973 | 来源:发表于2021-03-01 12:09 被阅读0次

    C51语言基本语法与标准C相同,是在标准C的基础上进行适合8051内核单片机硬件的扩展。

    C51语言与标准C语言一些差别如下:

    (1)库函数不同。标准C中不适合于嵌入式控制器系统的库函数,被排除在C51语言之外,如字符屏幕和图形函数。有些库函数必须针对8051的硬件特点来做出相应的开发。

    (2)数据类型有一定区别。在C51中增加几种8051单片机的数据类型,在标准C的基础上又扩展了4种类型。例如,8051单片机包含位操作空间和丰富的位操作指令,因此,C51语言与标准C语言相比增加了位类型。

    (3)C51语言变量存储模式与标准C语言中变量存储模式数据不一样。标准C最初是为通用计算机设计的,在通用计算机中只有一个程序和数据统一寻址的内存空间,而C51语言中变量的存储模式与8051单片机的各种存储器区紧密相关。

    (4)数据存储类型不同。8051存储区可分为内部数据存储区、外部数据存储区以及程序存储区。

      ①内部数据存储区可分为3个不同的C51存储类型:data、idata和bdata。

      ②外部数据存储区分为2个不同的C51存储类型:xdata和pdata。

      ③程序存储区只能读不能写,可能在8051内部或者在外部,C51语言提供的code存储类型用来访问程序存储区。

    (5)标准C语言没有处理单片机中断的定义,而C51语言中有专门的中断函数。

    (6)头文件不同。C51语言头文件必须把8051单片机内部的外设硬件资源(如定时器、中断、I/O等)相应的特殊功能寄存器写入到头文件内,而标准C不用。

    (7)程序结构的差异。由于8051单片机的硬件资源有限,它的编译系统不允许太多的程序嵌套。

    相关文章

      网友评论

          本文标题:单片机学习笔记5-C51语言与标准C语言的比较

          本文链接:https://www.haomeiwen.com/subject/kptafltx.html