C语言与单片机C语言的区别 急求

现在学的C语言 发现书本上的C语言和单片机的C语言是有区别的 C语言的基本知道了 但单片机的C语言基本不知道(那些特殊的指令等,) 单片机C语言的基本编程思想也没有 哪位大哥 可以给我这些东西 指导一下 追加分
我现在C语言基本学完了 但单片机还没开始学 只是稍微了解一些

单片机c语言比起普通C语言增加了一些基本的指令,变量的赋值是16进制,当然单片机c语言只牵涉到普通c语言的基础部分。具体体现在:

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

2、C是一门语言,由对应平台的编译器编译成对应平台汇编的程序,各平台的汇编不一样,当然编译器也不一样 DOS上的TC2 TC3   WINDOWS上的VC 8051的C51都有自已的编译器 。具体区别是由编译器决的,只能参考对应的编译手册,即使同种平台不同的编译器对C的扩展也有不同。

3、单片机c语言编程是基于C语言的单片机编程。单片机的C语言采用C51编译器(简称C51)。由C51产生的目标代码短,运行速度高,存储空间小,符合C语言的ANSI标准,生成的代码遵循Intel目标文件格式,而且可与A51汇编语言PL/M51语言目标代码混合使用。

C51本质就是C,是为在单片机上使用C而出来的,如果C不牢固,还是多掌握一点C再学C51,不过新增的知识也不少,而且基本上跟C无关。

4、C只是一种高级语言。它除具有一般高级语言的功能特性外,它可以很好的操作底层的硬件接口。在C语言的基础上,如果你把一些单片机的端口或特殊功能寄存器加于定义,使之方便于在 写语句的时候,直接直观的编写。这样就差不多是单片机C语言。

C语言的特性差不多都可以用于单片机C语言,因为它们的编译机理都是一样的。

扩展资料:

C语言:

C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。

C语言是一门面向过程的计算机编程语言,与C++,Java等面向对象的编程语言有所不同。

其编译器主要有Clang、GCC、WIN-TC、SUBLIME、MSVC、Turbo C等。

单片机的C语言:

单片机软件设计使用C语言作为编程开发软件,采用模块化的程序结构,设计了按键模块程序、RFID模块程序、日历时钟模块程序、GPRS模块程序、显示存储模块程序等,并编写系统主程序,将五个程序模块组合在一起,实现单片机控制系统的整体功能。

51单片机支持三种高级语言,即PL/M,C和BASIC。C语言是一种通用的程序设计语言,其代码率高,数据类型及运算符丰富,并具有良好的程序结构,适用于各种应用的程序设计,是目前使用较广的单片机编程语言。

单片机的C语言采用C51编译器(简称C51)。有C51产生的目标代码短,运行速度高,所需存储空间小,符合C语言的ANSI标准,生成的代码遵循Intel目标文件格式,而且可与A51汇编语言或PL/M51语言目标代码混合使用

参考资料:

C语言-百度百科

单片机C语言-百度百科

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2019-11-16

C语言与单片机C语言的区别:

1、编译器的区别

C语言的编译器有GCC(GNU组织开发的开源免费的编译器)、MinGW(Windows操作系统下的GCC)、Clang(开源的BSD协议的基于LLVM的编译器)、Visual C++ :: cl.exe(Microsoft VC++自带的编译器)。

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

2、内容的区别

C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

单片机C语言基于C语言的单片机编程语言,是以C语言为基础加以调整的。

3、语言特性的区别

C语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。

单片机C语言基于单片机进行的程序开发,在有周围外设支持的情况下,用软件来控制的部分通过单片机编程来实现。单片机能识别的语言是硬件语言即汇编,因此编程就是围绕汇编来实现。

4、语言优点的区别

C语言简洁紧凑、灵活方便、运算符丰富、数据类型丰富、表达方式灵活实用、允许直接访问物理地址,对硬件进行操作、生成目标代码质量高,程序执行效率高、可移植性好、表达力强。

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

参考资料来源:百度百科——C语言

百度百科——单片机C语言编程

本回答被网友采纳
第2个回答  2017-06-15
准确讲不是C语言与单片机C语言的区别,单片机c语言只是用到了c语言的一丢丢,主要有循环语句,条件语句,宏定义,指针,结构体等,用到的库都是单片机的,至于你说的指令那都是单片机的事,跟c语言没有关系,单片机的指令跟单片机的构架、定义有关系。c语言编程可以不用掌握汇编指令,但是必须掌握各个寄存器的操作以及相关的命令字,因为只有你掌握了寄存器的操作才能用c语言编程指挥单片机。个人建议开始用汇编编程,编写简单的控制程序。这样可以加深对单片机的了解,熟悉各个寄存器;后面就可以用c语言编写规模较大的程序,毕竟c语言容易上手,用起来相对简单!
第3个回答  2017-06-20
单片机所用的C语言属于C语言,学单片机初学者不需要把C语言搞得多么好,会用几个关键字if什么的等等就够用了。单片机比纯C语言多了一个东西叫寄存器,其实就是单片机“内部变量”,在头文件中(每个单片机有属于自己的头文件,编译器会自带,你只要知道文件名字就行,比如#include<reg51.h>)帮你定义好了,寄存器的作用就是配置参数,比如51有个寄存器叫P1,当你代码执行完P1=0XFF;时候单片机的8个名字叫P1(P1有8个引脚 P1^0~P1^7)的引脚就会输出高电平,P1=0XF0;那么就是前四个引脚(P1^4~P1^7)是高电平,后四个是低电平。
单片机就是通过C语言的语言方式向单片机寄存器写数据,单片机自己会根据这些数据去控制它的模块比如引脚状态。
第4个回答  2010-10-16
你学习到的C语言是标准C语言,也是行业标准,通用性强;而单片机C语言是构建在标准C的基础上的,你先学习了单片机,之后用C语言编程时,根据不同的单片机,还是有差异的,指令的形式会不同,但是实质都是对寄存器的操作;而相同点我认为就是语句的形式不变,基本格式不变,即语法不变;编程的思路也都一样,但是实现某种操作的算法则可以变化多端。
你别急,先学习单片机的硬件知识,并开始边学边编程练习,多看视频,多看书上的实例,自己尝试练习很容易就上手了啊!我只是学习过51单片机,凌阳61单片机和Atmel 的mega128单片机,也是跟你一样的初学者啊!!

c语言与单片机c语言的区别急求
C语言与单片机C语言的区别:一、通用性与专用性 C语言是一种通用的编程语言,广泛应用于各种领域,包括桌面应用、网页开发、嵌入式系统等。而单片机C语言更偏向于在嵌入式系统中的应用,特别是针对单片机的编程。单片机C语言具有更强的针对性和专用性,它更多地关注与硬件直接交互的特性和功能。二、硬件关...

C语言与单片机C语言的区别是什么
实际上,单片机C语言与普通C语言在编译机理上没有本质区别。C51语言的本质就是C语言,只是在单片机环境下对C语言进行了扩展。因此,掌握C语言的基础知识对于学习C51语言是非常有帮助的。编写单片机代码时,主要关注的是芯片的时序操作,对语法和算法的要求并不高。C语言的基础知识在编写单片机代码时尤为重要...

C语言与单片机C语言的区别 急求
2、C是一门语言,由对应平台的编译器编译成对应平台汇编的程序,各平台的汇编不一样,当然编译器也不一样 DOS上的TC2 TC3 WINDOWS上的VC 8051的C51都有自已的编译器 。具体区别是由编译器决的,只能参考对应的编译手册,即使同种平台不同的编译器对C的扩展也有不同。3、单片机c语言编程是基于C语言...

单片机的c语言编程和c语言有什么区别,我学过一点c语言,不过看单片机...
单片机的C语言于C语言没有什么区别,只是传到单片机里的时候,要把C语言编译为hex文件才行。

C语言与单片机C语言的区别是什么?
单片机c语言比起普通C语言增加了一些基本的指令,变量的赋值是16进制,当然单片机c语言只牵涉到普通c语言的基础部分。C只是一种高级语言。它除具有一般高级语言的功能特性外,它可以很好的操作底层的硬件接口。在C语言的基础上,如果你把一些单片机的端口或特殊功能寄存器加于定义,使之方便于在 写语句的...

计算机C语言与单片机C语言在以后从事工作行业领域区别??
两者之间肯定有区别,不过区别不是很大,单片机的C编程主要是对单片机内部寄存器以及端口的操作,所以没有计算机C语言复杂,可以说是标准C的一部分,如果你想学单片机产品的开发,没必要对C深入的了解,把谭浩强那本C语言书学好就可以了,然后结合各种单片机的编程开发手册,针对性的对各种类型单片机进行编程。

C语言与51单片机C语言的不同之处
细说起来很多的。1、扩充了很多关键字 2、扩充了很多数据类型 3、扩充了很多针对单片机的函数库 4、扩充了很对针对单片机的语句 5、可以对寄存器和内存直接写 具体看一个简单的教程 http:\/\/www.mcustudy.com\/mcu\/C51.pdf

单片机编程和c语言编程有啥区别,是不是只有头文件有点差别
两者有本质的区别:1)单片机编程是针对单片机的编程操作,常用的51、AVR、STM32等单片机都支持C语言,但是有很多ROM和RAM都很小的单片机一般只支持汇编语言。同时由于不同内核单片机的架构区别较大,厂家都会对标准C语言进行适当扩充,这样就导致不同内核单片机的C语言之间存在一些别,移植的时候就不仅仅是...

单片机里的C语言和电脑上编程的C语言是一种语言吗
但与PC机不同的是,你需要有针对某种架构的计算机的C编译器。目前,C语言的编译器种类非常多,有用于各种单片机以及微处理器架构的版本,因此,C语言可以作为单片机的编程语言。然而,使用不同编译器得到的目标代码是不一样的。例如,使用TC或者VC编译得到的是X86(如Intel,AMD)的目标代码,只能在PC机上...

单片机C好学么?
如果你现在会计算机的C语言,那么只要了解单片机就行了,单片机的C语言没有什么大的不同,基本上是通用的,就谈不上学单片机C,因为你已经回了,只要去了解单片机硬件就可以了。如果你没学过C语言,我建议你先学一下计算机的C语言,这样C语言的基础会更扎实。可以采用谭浩强的基础C语言教材,在计算机上...

相似回答