0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一文看懂嵌入式开发与c++开发有什么不同

h1654155282.3538 来源:网络整理 2018-04-04 09:12 次阅读

嵌入式开发简介

嵌入式开发就是指在嵌入式操作系统下进行开发,一般常用的系统有WinCE,ucosvxworkslinuxandroid等。另外,用c,c++汇编开发;用高级处理器arm7,arm9,arm11,powerpc,mips,mipsel等,或加上操作系统也属于嵌入式的开发。

嵌入式开发的分类

1、嵌入式应用开发,应该就是你说的嵌入式开发,即c++或android等精通一门面向对象语言。

2、嵌入式内核移植,底层驱动开发,会看懂一些数字电路,能写一些简单的汇编语言,精通c语言,了解arm的基本架构,linux内核了解越深越好,会编写驱动。

3、嵌入式硬件开发,即芯片的外围电路设计

嵌入式开发的使用技巧

嵌入式系统(Embedded System)是指以应用为中心、以计算机技术为基础,软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。举例来说,大到油田的集散控制系统和工厂流水线,小到家用VCD机或手机,甚至组成普通PC终端设备的键盘、鼠标、硬盘、Modem等均是由嵌入式处理器控制的。

嵌入式开发的应用领域

嵌入式系统无疑是当前最热门最有发展前途的IT应用领域之一。嵌入式系统用在一些特定专用设备上,通常这些设备的硬件资源(如处理器、存储器等)非常有限,并且对成本很敏感,有时对实时响应要求很高等。特别是随着消费家电的智能化,嵌入式更显重要。

像我们平常见到的手机、PDA、电子字典、可视电话、VCD/DVD/MP3 Player、数字相机(DC)、数字摄像机(DV)、U-Disk、机顶盒(Set Top Box)、高清电视(HDTV)、游戏机、智能玩具、交换机、路由器、数控设备或仪表、汽车电子、家电控制系统、医疗仪器、航天航空设备等等都是典型的嵌入式系统。

c++简介

C++是C语言的继承,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。C++擅长面向对象程序设计的同时,还可以进行基于过程的程序设计,因而C++就适应的问题规模而论,大小由之。

C++不仅拥有计算机高效运行的实用性特征,同时还致力于提高大规模程序的编程质量与程序设计语言的问题描述能力。

C++工作原理

C++语言的程序因为要体现高性能,所以都是编译型的。但其开发环境,为了方便测试,将调试环境做成解释型的。即开发过程中,以解释型的逐条语句执行方式来进行调试,以编译型的脱离开发环境而启动运行的方式来生成程序最终的执行代码。

生成程序是指将源码(C++语句)转换成一个可以运行的应用程序的过程。如果程序的编写是正确的,那么通常只需按一个功能键,即可搞定这个过程。该过程实际上分成两个步骤。

第一步是对程序进行编译,这需要用到编译器(compiler)。编译器将C++语句转换成机器码(也称为目标码);如果这个步骤成功,下一步就是对程序进行链接,这需要用到链接器(linker)。链接器将编译获得机器码与C++库中的代码进行合并。C++库包含了执行某些常见任务的函数(“函数”是子程序的另一种称呼)。例如,一个C++库中包含标准的平方根函数sqrt,所以不必亲自计算平方根。C++库中还包含一些子程序,它们把数据发送到显示器,并知道如何读写硬盘上的数据文件。

C++的特点

1、支持数据封装和数据隐藏

在C++中,类是支持数据封装的工具,对象则是数据封装的实现。C++通过建立用户定义类支持数据封装和数据隐藏。

在面向对象的程序设计中,将数据和对该数据进行合法操作的函数封装在一起作为一个类的定义。对象被说明为具有一个给定类的变量。每个给定类的对象包含这个类所规定的若干私有成员、公有成员及保护成员。完好定义的类一旦建立,就可看成完全封装的实体,可以作为一个整体单元使用。类的实际内部工作隐藏起来,使用完好定义的类的用户不需要知道类是如何工作的,只要知道如何使用它即可。

2、支持继承和重用

在C++现有类的基础上可以声明新类型,这就是继承和重用的思想。通过继承和重用可以更有效地组织程序结构,明确类间关系,并且充分利用已有的类来完成更复杂、深入的开发。新定义的类为子类,成为派生类。它可以从父类那里继承所有非私有的属性和方法,作为自己的成员。

3、支持多态性

采用多态性为每个类指定表现行为。多态性形成由父类和它们的子类组成的一个树型结构。在这个树中的每个子类可以接收一个或多个具有相同名字的消息。当一个消息被这个树中一个类的一个对象接收时,这个对象动态地决定给予子类对象的消息的某种用法。多态性的这一特性允许使用高级抽象。

继承性和多态性的组合,可以轻易地生成一系列虽然类似但独一无二的对象。由于继承性,这些对象共享许多相似的特征。由于多态性,一个对象可有独特的表现方式,而另一个对象有另一种表现方式。

C++技术应用

1、科学计算

在科学计算领域,FORTRAN是使用最多的语言之一。但是C++凭借先进的数值计算库、泛型编程等优势在这一领域也应用颇多。

2、网络软件

C++拥有很多成熟的用于网络通信的库,其中最具有代表性的是跨平台的、重量级的ACE库,该库可以说是C++语言最重要的成果之一,在许多重要的企业、部门甚至是军方都有应用。

3、操作系统

在该领域,C语言是主要使用的编程语言。但是C++凭借其对C的兼容性,面向对象性质也开始在该领域有一席之地。

嵌入式开发与c++开发的区别

嵌入式软件和c++没有可比性,一个是大类,一个是语言。这俩没可比性。嵌入式开发也可能用c++,也可能用其他语言。

嵌入式主要指linux下的开发,包括linux驱动开发和应用层的开发,现在由于有android了,所以,android ndk开发或者移植也逐渐涉及到了。但不包含android app的开发,那个是专门的一项。linux部分的开发主要是c语言,如果涉及linux驱动,需要有相应的硬件知识。无论驱动开发和应用层开发,都需要对linux系统的知识。 android ndk 是用c或者c++的。除此之外,嵌入式方面的语言主要是c,汇编,和bash脚本。

c++是一门语言,在win的环境下开发用的比较多。当然,也可以用在嵌入式设备上,但只能做linux应用层或更往上的东西。linux系统及底层都是c的。c++在纯软件的项目上用的比较多。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式开发
    +关注

    关注

    18

    文章

    1030

    浏览量

    47589
  • C++
    C++
    +关注

    关注

    22

    文章

    2109

    浏览量

    73663
收藏 人收藏

    评论

    相关推荐

    [分享]基于ARM的嵌入式开发CC++嵌入式系統編程

    基于ARM的嵌入式开发CC++嵌入式系統編程咨询QQ:598338346单片机/ARM/CPLD/FPGA/DSP、 /C/
    发表于 12-10 15:48

    什么是嵌入式技术?嵌入式开发方向是什么?

    嵌入式操作系统、开发工具、系统应用开发(&GUI)、系统移植、驱动、内核。4、所具备的知识体系:C语言、单片机、嵌入式操作系统(汇编、
    发表于 11-05 09:00

    嵌入式开发C++开发到底有什么区别呢

    我们常听到嵌入式开发C++开发,那么他们到底有什么区别呢?今天主要从概念以及技术应用领域的不同来介绍。、概念有区别C++
    发表于 11-05 08:27

    嵌入式开发开发与SOC系统开发有哪些不同之处呢

    嵌入式开发开发流程有哪些呢?SOC系统开发流程有哪些呢?嵌入式开发开发与SOC系统开发有哪些
    发表于 12-27 07:55

    嵌入式开发

    嵌入式开发就是指在嵌入式操作系统下进行开发嵌入式Linux是以Linux为基础的嵌入式作业系统。这里提供了
    发表于 12-20 13:21
    <b class='flag-5'>嵌入式开发</b>

    使用C++构建嵌入式开发框架

    使用C++构建嵌入式开发框架
    发表于 10-25 11:25 17次下载
    使用<b class='flag-5'>C++</b>构建<b class='flag-5'>嵌入式开发</b>框架

    嵌入式开发语言有哪些_最全面嵌入式开发语言概述

    嵌入式开发语言有哪些?嵌入式开发的入门门槛还是比较高的,不仅要懂较底层软件,对软件专业水平要求较高,而且必须懂得硬件的工作原理,嵌入式系统应用越来越广泛,目前,在嵌入式系统
    发表于 01-29 14:47 9834次阅读
    <b class='flag-5'>嵌入式开发</b>语言有哪些_最全面<b class='flag-5'>嵌入式开发</b>语言概述

    嵌入式开发是什么

    嵌入式开发就是指在嵌入式操作系统下进行开发般常用的系统有WinCE,ucos,vxworks,linux,android等。另外,用c
    的头像 发表于 12-08 10:12 2.6w次阅读

    嵌入式开发通常采用哪种编程语言

    目前在嵌入式开发领域比较常见的编程语言是C,另外C++、Python、JavaScript等语言也可以进行嵌入式开发。总的来说,这几门编程语言并不难学。
    发表于 06-18 16:59 1.6w次阅读

    嵌入式开发的流程_嵌入式开发的前景

    当前,嵌入式开发已经逐步规范化,在遵循般工程开发流程的基础上,嵌入式开发有其自身的些特点。主要包括系统需求分析(要求有严格规范的技术要求
    发表于 07-30 11:23 2207次阅读

    嵌入式开发的产品有哪些_嵌入式开发的流程

    本文主要阐述了嵌入式开发的产品,其次介绍了嵌入式开发的流程。
    发表于 08-31 15:38 1.1w次阅读

    嵌入式开发):嵌入式开发新手入门

    本篇文章整理下嵌入式开发些入门的基础技能,都是根据以往的工程经验整理,适用于之前没做过嵌入式开发的新手。嵌入式开发流程般如下,
    发表于 10-14 10:58 79次下载
    <b class='flag-5'>嵌入式开发</b>(<b class='flag-5'>一</b>):<b class='flag-5'>嵌入式开发</b>新手入门

    嵌入式开发前景怎么样?嵌入式开发有哪些优势?

    前景到底怎么样呢?具备哪些优势呢?起了解下。对于嵌入式开发行业来说市场上开始有比较大的需求了,但是面临着问题就是市场上嵌入式行业的人才缺失很稀缺,这也就造成了
    发表于 10-20 14:50 2次下载
    <b class='flag-5'>嵌入式开发</b>前景怎么样?<b class='flag-5'>嵌入式开发有</b>哪些优势?

    嵌入式开发资料免费分享

    嵌入式开发资料免费分享嵌入式工程师经验分享:如何学习嵌入式开发截取文档部分学习嵌入式工程师经验分享的资料分享给大家,文档上从、嵌入式系统的概
    发表于 10-21 11:07 47次下载
    <b class='flag-5'>嵌入式开发</b>资料免费分享

    嵌入式开发培训学什么?嵌入式开发板知识讲解

    嵌入式开发就是指在嵌入式操作系统下进行开发般常用的系统有WinCE,ucos,vxworks,linux,android等。另外,用c
    发表于 11-02 20:21 16次下载
    <b class='flag-5'>嵌入式开发</b>培训学什么?<b class='flag-5'>嵌入式开发</b>板知识讲解