嵌入式系统设计学习周记①——扩展

嵌入式中的编程语言

随着社会的飞速发展,IT技术已经进入高速发展阶段,互联网正在逐步向物联网科技时代。发展。物联网通过智能感知、识别技术与普适计算等通信感知技术,广泛应用于网络的融合中,也因此被称为继计算机、互联网之后世界信息产业发展的第三次浪潮,可以说嵌入式开发技术在物联网领域应用最为广泛。所常见的编程语言有汇编语言、C语言 、SQL语言 、C++语言、 Java语言 、C#语言 、Shell等语言。那么嵌入式开发中又是用的哪些语言呢?

  • 汇编语言

①面向机器的程序设计语言,即面向处理器的程序设计语言,处理器在相应的指令控制下工作的,它可以识别的每一条指令称为机器指令。每一种处理器都有自己可以识别的一整套指令,称为指令集。比如常见的ARM指令集、Thumb和Thumb2指令集。
②它直接与寄存器或者存储器打交道,而不是具体的数据,因此汇编语言的执行速度要比其它语言都快,但同时编写大型程序相当复杂。
③特定的汇编语言和特定的机器语言指令集是一一对应的,不同平台之间不可直接移植。然而现实中需要编写大型程序的需求很多,这就造成了汇编语言的使用范围很狭窄。汇编语言常见的用处是在系统的启动阶段(比如电脑的BIOS启动阶段,因为C语言的运行需要一定的环境,而系统启动时这些环境还没有建立)。在嵌入式uboot移植和内核移植中常见汇编代码
④程序员用汇编语言编写源代码,然后汇编编译器将其编译为机器码(也就是计算机能够识别的0和1),由计算机最终执行

  • C语言

①一门面向过程的计算机高级编程语言,广泛应用于底层开发(特别是linux驱动开发)和linux应用和网络编程,效率虽然没有汇编语言高,但是比汇编语言灵活,可移植性好。
②C语言有丰富的数据结构和运算符。提供多种运算符和表达式值的方法,数据类型和运算符。
③允许直接访问物理地址,对硬件进行操作(这个可从51单片机中看出来)。
④C 语言可以像汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元。
⑤GCC是其中编译C语言的一中编译器,在嵌入式开发中常用的是交叉编译即在windows中编辑代码,在linux中编译并运行代码,可以将C语言编译成汇编语言进而由汇编的编译器编译为机器码,由计算机执行。
⑥C语言的缺点主要表现在数据的封装性上,这一点使得C在数据的安全性上有很大缺陷,这也是C和C++的一大区别。最典型的应用是linux操作系统绝大多数是用C语言和少量汇编语言实现的。C语言虽然不是面向对象的语言,但是内核时面向对象的,这就时C语言的厉害之处。所以学好C语言很重要。

  • SQL语言

①是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名(sql)。
②是高级的非过程化编程语言,允许用户在高层数据结构上工作。包含6个部分:数据查询语言(比如常见的SELECT、WHERE、ORDER BY和GROUP BY关键字)、数据操作语言(比如常见的INSERT、UPDATE和DELETE关键字)、事务处理语言(比如常见的BEGIN TRANSACTION、COMMIT和ROLLBACK关键字)、 数据控制语言(比如常见的GRANT和REVOKE关键字)、数据定义语言(比如常见的CREATE和DROP关键字)、指针控制语言(比如常见的DECLARE CURSOR、FETCH INTO和UPDATE WHERE CURRENT关键字)。常见的数据库有MySQL,SQL Server、SQLite。
③通过这种语言,可以在嵌入式开发中存取相应的数据。嵌入式开发中再服务器端常用的是MySQL,客户端常用的是SQLite。

你可能感兴趣的:(嵌入式系统设计学习周记①——扩展)