欢迎光临散文网 会员登陆 & 注册

C语言和单片机C语言究竟有何差异?

2022-11-10 09:53 作者:信盈达  | 我要投稿

本周直播计划有📢📢 :

直播时间:周一到周五15:00—17:00

        另:今晚19:00—21:00也有直播!!!

直播地址:B站主页直播间:直播间地址,某音搜索“信盈达”账号(有两个号,分享不一样的知识直播);

继续开启知识直播专场~~还是赶紧行动起来吧!!!   

(没时间观看直播的朋友,可私信:直播回放,会把回放链接给到你的哟~)


很多想入门单片机的同学都会先学习C语言再入门单片机,但是学着学着发现明明同样都是C语言,为什么单片机C语言和我当初学的C语言有差异呢?

单片机c语言相对于普通C语言增加了一些基本的指令,还有变量的赋值是16进制,当然单片机c语言只牵涉到普通c语言非常基础部分。


主要的差异具体体现在:

1、单片机中C的语法一般都对 ANSI C有些扩展,及一些特殊写法如C51扩展的 data xdata bit sbit一类的,还有一些中断程序写法 void int() interrput 1一类的。


2、单片机c语言编程是基于C语言的单片机编程。单片机的C语言采用C51编译器(简称C51)。

由C51产生的目标代码短、运行速度高、存储空间小、符合C语言的ANSI标准,生成的代码遵循Intel目标文件格式,而且可与A51汇编语言PL/M51语言目标代码混合使用。


3、C是一门高级语言,它需要经过编译成汇编语言机器才能读懂,所以每个平台的编译器编译成对应平台汇编的程序,每个平台的汇编不一样,当然编译器也不一样。

DOS上的TC2 TC3 WINDOWS上的VC 8051的C51都有自已的编译器。

具体区别是由编译器决的,只能参考对应的编译手册,即使同种平台不同的编译器对C的扩展也有不同。


4、C只是一种高级语言。它除具有一般高级语言的功能特性外,它可以很好的操作底层的硬件接口。

在C语言的基础上,如果你把一些单片机的端口或特殊功能寄存器加于定义,使用的时候会更加方便,写语句的时候,直接直观的编写。这样就差不多是单片机C语言。


私信回复“我要入门”,可领取C语言学习资料!

C语言是我们入门嵌入式单片机所学习的一门语言,也是IOS开发、单片机开发等应用上具有重要应用的一门语言,虽然C语言与单片机C语言、C++、C#等有或小或大的差异,但他们的编译机理、表达形式基本都是大同小异的!

C语言和单片机C语言究竟有何差异?的评论 (共 条)

分享到微博请遵守国家法律