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

    文章

    972

    浏览量

    46941
  • C++
    C++
    +关注

    关注

    21

    文章

    2066

    浏览量

    72878
收藏 人收藏

    评论

    相关推荐

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

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

    嵌入式开发要学什么内容 嵌入式开发学习路线介绍

    ,原理,以及其汇编指令,我们在嵌入式开发中,般很少去写汇编,但是最起码的要求是能够看懂arm汇编。  5、系统移植的时候,就需要你从最下层的bootloader开始,然后内核移植,文件系统移植等。而移植
    发表于 03-01 10:13

    嵌入式开发要学什么内容 嵌入式开发学习路线介绍

    其汇编指令,我们在嵌入式开发中,般很少去写汇编,但是最起码的要求是能够看懂arm汇编。  5、系统移植的时候,就需要你从最下层的bootloader开始,然后内核移植,文件系统移植等。而移植这部
    发表于 06-30 10:07

    嵌入式开发要学什么内容 嵌入式开发学习路线介绍

    其汇编指令,我们在嵌入式开发中,般很少去写汇编,但是最起码的要求是能够看懂arm汇编。  5、系统移植的时候,就需要你从最下层的bootloader开始,然后内核移植,文件系统移植等。而移植这部分对硬件
    发表于 07-27 09:49

    嵌入式是什么? 嵌入式开发是什么意思?

    嵌入式。   嵌入式是什么意思 什么是嵌入式开发:  嵌入式开发就是指在各种微型处理器运行嵌入式
    发表于 07-26 15:58

    什么是嵌入式开发?

     近几年,计算机嵌入式受到越来越多的人青睐,那么什么是嵌入式开发呢,嵌入式开发有很多个层次,大致有以下步骤:  硬件道路:  第步: 嵌入式开发
    发表于 10-13 15:27

    嵌入式开发有哪些技巧?

      成为个正式的嵌入式开发工程师是个艰辛的过程。从规范完善的开发周期到严格执行和系统检查,开发高可靠性
    发表于 03-17 06:42

    嵌入式开发中为什么选择C++语言

    C++概述1.嵌入式开发中为什么选择C++语言?(1)面向过程编程的特点C语言特点:C语言是
    发表于 10-27 08:25

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

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

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

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

    Volatile关键字对于嵌入式开发有什么作用呢

    前言在进行嵌入式开发中,我们往往会看到个名为volatile或者__IO的关键字,那么,它们对于嵌入式开发有什么作用呢?浅析volatile数据类型实际上,__IO和volatile是相同的关键字
    发表于 11-05 09:20

    要如何学习嵌入式开发呢?

    些必备技能吧。  c/c++即能很好的跟底层硬件打交道,程序执行效率那也是相当有效率的。基础的东西,就定要学扎实,如果没有基础, 那都是花把势。所以
    发表于 11-08 06:40

    什么是嵌入式开发嵌入式Linux该如何去使用

    嵌入式开发概述及嵌入式Linux的使用1 什么是嵌入式技术?传统模式下,软件与硬件耦合度很高,移植性较差。嵌入式技术在已有硬件上移植操作系统!2.
    发表于 12-15 08:16

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

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

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

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