0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

一文看懂嵌入式開發(fā)與c++開發(fā)有什么不同

h1654155282.3538 ? 來源:網(wǎng)絡(luò)整理 ? 2018-04-04 09:12 ? 次閱讀

嵌入式開發(fā)簡介

嵌入式開發(fā)就是指在嵌入式操作系統(tǒng)下進(jìn)行開發(fā),一般常用的系統(tǒng)有WinCE,ucos,vxworkslinux,android等。另外,用c,c++匯編開發(fā);用高級(jí)處理器,arm7,arm9,arm11,powerpc,mips,mipsel等,或加上操作系統(tǒng)也屬于嵌入式的開發(fā)。

嵌入式開發(fā)的分類

1、嵌入式應(yīng)用開發(fā),應(yīng)該就是你說的嵌入式開發(fā),即c++或android等精通一門面向?qū)ο笳Z言。

2、嵌入式內(nèi)核移植,底層驅(qū)動(dòng)開發(fā),會(huì)看懂一些數(shù)字電路,能寫一些簡單的匯編語言,精通c語言,了解arm的基本架構(gòu),linux內(nèi)核了解越深越好,會(huì)編寫驅(qū)動(dòng)。

3、嵌入式硬件開發(fā),即芯片的外圍電路設(shè)計(jì)

嵌入式開發(fā)的使用技巧

嵌入式系統(tǒng)(Embedded System)是指以應(yīng)用為中心、以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟件硬件可裁剪、適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。舉例來說,大到油田的集散控制系統(tǒng)和工廠流水線,小到家用VCD機(jī)或手機(jī),甚至組成普通PC終端設(shè)備的鍵盤、鼠標(biāo)、硬盤、Modem等均是由嵌入式處理器控制的。

嵌入式開發(fā)的應(yīng)用領(lǐng)域

嵌入式系統(tǒng)無疑是當(dāng)前最熱門最有發(fā)展前途的IT應(yīng)用領(lǐng)域之一。嵌入式系統(tǒng)用在一些特定專用設(shè)備上,通常這些設(shè)備的硬件資源(如處理器、存儲(chǔ)器等)非常有限,并且對(duì)成本很敏感,有時(shí)對(duì)實(shí)時(shí)響應(yīng)要求很高等。特別是隨著消費(fèi)家電的智能化,嵌入式更顯重要。

像我們平常見到的手機(jī)、PDA、電子字典、可視電話、VCD/DVD/MP3 Player、數(shù)字相機(jī)(DC)、數(shù)字?jǐn)z像機(jī)(DV)、U-Disk、機(jī)頂盒(Set Top Box)、高清電視(HDTV)、游戲機(jī)、智能玩具、交換機(jī)、路由器、數(shù)控設(shè)備或儀表、汽車電子、家電控制系統(tǒng)、醫(yī)療儀器、航天航空設(shè)備等等都是典型的嵌入式系統(tǒng)。

c++簡介

C++是C語言的繼承,它既可以進(jìn)行C語言的過程化程序設(shè)計(jì),又可以進(jìn)行以抽象數(shù)據(jù)類型為特點(diǎn)的基于對(duì)象的程序設(shè)計(jì),還可以進(jìn)行以繼承和多態(tài)為特點(diǎn)的面向?qū)ο蟮某绦蛟O(shè)計(jì)。C++擅長面向?qū)ο蟪绦蛟O(shè)計(jì)的同時(shí),還可以進(jìn)行基于過程的程序設(shè)計(jì),因而C++就適應(yīng)的問題規(guī)模而論,大小由之。

C++不僅擁有計(jì)算機(jī)高效運(yùn)行的實(shí)用性特征,同時(shí)還致力于提高大規(guī)模程序的編程質(zhì)量與程序設(shè)計(jì)語言的問題描述能力。

C++工作原理

C++語言的程序因?yàn)橐w現(xiàn)高性能,所以都是編譯型的。但其開發(fā)環(huán)境,為了方便測試,將調(diào)試環(huán)境做成解釋型的。即開發(fā)過程中,以解釋型的逐條語句執(zhí)行方式來進(jìn)行調(diào)試,以編譯型的脫離開發(fā)環(huán)境而啟動(dòng)運(yùn)行的方式來生成程序最終的執(zhí)行代碼。

生成程序是指將源碼(C++語句)轉(zhuǎn)換成一個(gè)可以運(yùn)行的應(yīng)用程序的過程。如果程序的編寫是正確的,那么通常只需按一個(gè)功能鍵,即可搞定這個(gè)過程。該過程實(shí)際上分成兩個(gè)步驟。

第一步是對(duì)程序進(jìn)行編譯,這需要用到編譯器(compiler)。編譯器將C++語句轉(zhuǎn)換成機(jī)器碼(也稱為目標(biāo)碼);如果這個(gè)步驟成功,下一步就是對(duì)程序進(jìn)行鏈接,這需要用到鏈接器(linker)。鏈接器將編譯獲得機(jī)器碼與C++庫中的代碼進(jìn)行合并。C++庫包含了執(zhí)行某些常見任務(wù)的函數(shù)(“函數(shù)”是子程序的另一種稱呼)。例如,一個(gè)C++庫中包含標(biāo)準(zhǔn)的平方根函數(shù)sqrt,所以不必親自計(jì)算平方根。C++庫中還包含一些子程序,它們把數(shù)據(jù)發(fā)送到顯示器,并知道如何讀寫硬盤上的數(shù)據(jù)文件。

C++的特點(diǎn)

1、支持?jǐn)?shù)據(jù)封裝和數(shù)據(jù)隱藏

在C++中,類是支持?jǐn)?shù)據(jù)封裝的工具,對(duì)象則是數(shù)據(jù)封裝的實(shí)現(xiàn)。C++通過建立用戶定義類支持?jǐn)?shù)據(jù)封裝和數(shù)據(jù)隱藏。

在面向?qū)ο蟮某绦蛟O(shè)計(jì)中,將數(shù)據(jù)和對(duì)該數(shù)據(jù)進(jìn)行合法操作的函數(shù)封裝在一起作為一個(gè)類的定義。對(duì)象被說明為具有一個(gè)給定類的變量。每個(gè)給定類的對(duì)象包含這個(gè)類所規(guī)定的若干私有成員、公有成員及保護(hù)成員。完好定義的類一旦建立,就可看成完全封裝的實(shí)體,可以作為一個(gè)整體單元使用。類的實(shí)際內(nèi)部工作隱藏起來,使用完好定義的類的用戶不需要知道類是如何工作的,只要知道如何使用它即可。

2、支持繼承和重用

在C++現(xiàn)有類的基礎(chǔ)上可以聲明新類型,這就是繼承和重用的思想。通過繼承和重用可以更有效地組織程序結(jié)構(gòu),明確類間關(guān)系,并且充分利用已有的類來完成更復(fù)雜、深入的開發(fā)。新定義的類為子類,成為派生類。它可以從父類那里繼承所有非私有的屬性和方法,作為自己的成員。

3、支持多態(tài)性

采用多態(tài)性為每個(gè)類指定表現(xiàn)行為。多態(tài)性形成由父類和它們的子類組成的一個(gè)樹型結(jié)構(gòu)。在這個(gè)樹中的每個(gè)子類可以接收一個(gè)或多個(gè)具有相同名字的消息。當(dāng)一個(gè)消息被這個(gè)樹中一個(gè)類的一個(gè)對(duì)象接收時(shí),這個(gè)對(duì)象動(dòng)態(tài)地決定給予子類對(duì)象的消息的某種用法。多態(tài)性的這一特性允許使用高級(jí)抽象。

繼承性和多態(tài)性的組合,可以輕易地生成一系列雖然類似但獨(dú)一無二的對(duì)象。由于繼承性,這些對(duì)象共享許多相似的特征。由于多態(tài)性,一個(gè)對(duì)象可有獨(dú)特的表現(xiàn)方式,而另一個(gè)對(duì)象有另一種表現(xiàn)方式。

C++技術(shù)應(yīng)用

1、科學(xué)計(jì)算

在科學(xué)計(jì)算領(lǐng)域,F(xiàn)ORTRAN是使用最多的語言之一。但是C++憑借先進(jìn)的數(shù)值計(jì)算庫、泛型編程等優(yōu)勢在這一領(lǐng)域也應(yīng)用頗多。

2、網(wǎng)絡(luò)軟件

C++擁有很多成熟的用于網(wǎng)絡(luò)通信的庫,其中最具有代表性的是跨平臺(tái)的、重量級(jí)的ACE庫,該庫可以說是C++語言最重要的成果之一,在許多重要的企業(yè)、部門甚至是軍方都有應(yīng)用。

3、操作系統(tǒng)

在該領(lǐng)域,C語言是主要使用的編程語言。但是C++憑借其對(duì)C的兼容性,面向?qū)ο笮再|(zhì)也開始在該領(lǐng)域有一席之地。

嵌入式開發(fā)與c++開發(fā)的區(qū)別

嵌入式軟件和c++沒有可比性,一個(gè)是大類,一個(gè)是語言。這倆沒可比性。嵌入式開發(fā)也可能用c++,也可能用其他語言。

嵌入式主要指linux下的開發(fā),包括linux驅(qū)動(dòng)開發(fā)和應(yīng)用層的開發(fā),現(xiàn)在由于有android了,所以,android ndk開發(fā)或者移植也逐漸涉及到了。但不包含android app的開發(fā),那個(gè)是專門的一項(xiàng)。linux部分的開發(fā)主要是c語言,如果涉及l(fā)inux驅(qū)動(dòng),需要有相應(yīng)的硬件知識(shí)。無論驅(qū)動(dòng)開發(fā)和應(yīng)用層開發(fā),都需要對(duì)linux系統(tǒng)的知識(shí)。 android ndk 是用c或者c++的。除此之外,嵌入式方面的語言主要是c,匯編,和bash腳本。

c++是一門語言,在win的環(huán)境下開發(fā)用的比較多。當(dāng)然,也可以用在嵌入式設(shè)備上,但只能做linux應(yīng)用層或更往上的東西。linux系統(tǒng)及底層都是c的。c++在純軟件的項(xiàng)目上用的比較多。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 嵌入式開發(fā)
    +關(guān)注

    關(guān)注

    18

    文章

    1058

    瀏覽量

    48176
  • C++
    C++
    +關(guān)注

    關(guān)注

    22

    文章

    2116

    瀏覽量

    74369
收藏 0人收藏
  • 李清嘉1

評(píng)論

相關(guān)推薦

[分享]基于ARM的嵌入式開發(fā)、CC++嵌入式系統(tǒng)編程

基于ARM的嵌入式開發(fā)CC++嵌入式系統(tǒng)編程咨詢QQ:598338346單片機(jī)/ARM/CPLD/FPGA/DSP、 /C/
發(fā)表于 12-10 15:48

什么是嵌入式技術(shù)?嵌入式開發(fā)方向是什么?

嵌入式操作系統(tǒng)、開發(fā)工具、系統(tǒng)應(yīng)用開發(fā)(&GUI)、系統(tǒng)移植、驅(qū)動(dòng)、內(nèi)核。4、所具備的知識(shí)體系:C語言、單片機(jī)、嵌入式操作系統(tǒng)(匯編、
發(fā)表于 11-05 09:00

嵌入式開發(fā)開發(fā)與SOC系統(tǒng)開發(fā)有哪些不同之處呢

嵌入式開發(fā)開發(fā)流程有哪些呢?SOC系統(tǒng)開發(fā)流程有哪些呢?嵌入式開發(fā)開發(fā)與SOC系統(tǒng)開發(fā)有哪些
發(fā)表于 12-27 07:55

基于ARM的嵌入式開發(fā)

基于ARM的嵌入式開發(fā):華清遠(yuǎn)見/孫天澤基于ARM的嵌入式開發(fā)內(nèi)容有:ARM簡介,基于ARM的嵌入式產(chǎn)品,ARM架構(gòu),基于ARM的嵌入式開發(fā)
發(fā)表于 10-04 08:49 ?83次下載

嵌入式開發(fā)

嵌入式開發(fā)就是指在嵌入式操作系統(tǒng)下進(jìn)行開發(fā),嵌入式Linux是以Linux為基礎(chǔ)的嵌入式作業(yè)系統(tǒng)。這里提供了
發(fā)表于 12-20 13:21
<b class='flag-5'>嵌入式開發(fā)</b>

使用C++構(gòu)建嵌入式開發(fā)框架

使用C++構(gòu)建嵌入式開發(fā)框架
發(fā)表于 10-25 11:25 ?17次下載
使用<b class='flag-5'>C++</b>構(gòu)建<b class='flag-5'>嵌入式開發(fā)</b>框架

嵌入式開發(fā)語言有哪些_最全面嵌入式開發(fā)語言概述

嵌入式開發(fā)語言有哪些?嵌入式開發(fā)的入門門檻還是比較高的,不僅要懂較底層軟件,對(duì)軟件專業(yè)水平要求較高,而且必須懂得硬件的工作原理,嵌入式系統(tǒng)應(yīng)用越來越廣泛,目前,在嵌入式系統(tǒng)
發(fā)表于 01-29 14:47 ?9938次閱讀
<b class='flag-5'>嵌入式開發(fā)</b>語言有哪些_最全面<b class='flag-5'>嵌入式開發(fā)</b>語言概述

嵌入式開發(fā)是什么

嵌入式開發(fā)就是指在嵌入式操作系統(tǒng)下進(jìn)行開發(fā),般常用的系統(tǒng)有WinCE,ucos,vxworks,linux,android等。另外,用c,
的頭像 發(fā)表于 12-08 10:12 ?2.7w次閱讀

嵌入式開發(fā)通常采用哪種編程語言

目前在嵌入式開發(fā)領(lǐng)域比較常見的編程語言是C,另外C++、Python、JavaScript等語言也可以進(jìn)行嵌入式開發(fā)??偟膩碚f,這幾門編程語言并不難學(xué)。
發(fā)表于 06-18 16:59 ?1.6w次閱讀

嵌入式開發(fā)的流程_嵌入式開發(fā)的前景

當(dāng)前,嵌入式開發(fā)已經(jīng)逐步規(guī)范化,在遵循般工程開發(fā)流程的基礎(chǔ)上,嵌入式開發(fā)有其自身的些特點(diǎn)。主要包括系統(tǒng)需求分析(要求有嚴(yán)格規(guī)范的技術(shù)要求
發(fā)表于 07-30 11:23 ?2288次閱讀

嵌入式開發(fā)的產(chǎn)品有哪些_嵌入式開發(fā)的流程

本文主要闡述了嵌入式開發(fā)的產(chǎn)品,其次介紹了嵌入式開發(fā)的流程。
發(fā)表于 08-31 15:38 ?1.1w次閱讀

嵌入式開發(fā)):嵌入式開發(fā)新手入門

本篇文章整理下嵌入式開發(fā)些入門的基礎(chǔ)技能,都是根據(jù)以往的工程經(jīng)驗(yàn)整理,適用于之前沒做過嵌入式開發(fā)的新手。嵌入式開發(fā)流程般如下,
發(fā)表于 10-14 10:58 ?79次下載
<b class='flag-5'>嵌入式開發(fā)</b>(<b class='flag-5'>一</b>):<b class='flag-5'>嵌入式開發(fā)</b>新手入門

嵌入式開發(fā)前景怎么樣?嵌入式開發(fā)有哪些優(yōu)勢?

前景到底怎么樣呢?具備哪些優(yōu)勢呢?起了解下。對(duì)于嵌入式開發(fā)行業(yè)來說市場上開始有比較大的需求了,但是面臨著問題就是市場上嵌入式行業(yè)的人才缺失很稀缺,這也就造成了
發(fā)表于 10-20 14:50 ?2次下載
<b class='flag-5'>嵌入式開發(fā)</b>前景怎么樣?<b class='flag-5'>嵌入式開發(fā)有</b>哪些優(yōu)勢?

嵌入式開發(fā)資料免費(fèi)分享

嵌入式開發(fā)資料免費(fèi)分享嵌入式工程師經(jīng)驗(yàn)分享:如何學(xué)習(xí)嵌入式開發(fā)截取文檔部分學(xué)習(xí)嵌入式工程師經(jīng)驗(yàn)分享的資料分享給大家,文檔上從、嵌入式系統(tǒng)的概
發(fā)表于 10-21 11:07 ?47次下載
<b class='flag-5'>嵌入式開發(fā)</b>資料免費(fèi)分享

嵌入式開發(fā)培訓(xùn)學(xué)什么?嵌入式開發(fā)板知識(shí)講解

嵌入式開發(fā)就是指在嵌入式操作系統(tǒng)下進(jìn)行開發(fā),般常用的系統(tǒng)有WinCE,ucos,vxworks,linux,android等。另外,用c,
發(fā)表于 11-02 20:21 ?16次下載
<b class='flag-5'>嵌入式開發(fā)</b>培訓(xùn)學(xué)什么?<b class='flag-5'>嵌入式開發(fā)</b>板知識(shí)講解

電子發(fā)燒友

中國電子工程師最喜歡的網(wǎng)站

  • 2931785位工程師會(huì)員交流學(xué)習(xí)
  • 獲取您個(gè)性化的科技前沿技術(shù)信息
  • 參加活動(dòng)獲取豐厚的禮品