labview——Laboratory Virtual Instrument Engineering Workbench(實驗室虛擬儀器集成環(huán)境)應(yīng)該包含兩種含義:其一,LabVIEW是一種圖形化的編程語言,所以LabVIEW也被稱為:G(graphical)語言;其二,LabVIEW也包含了支持圖形化編程語言進行應(yīng)用軟件設(shè)計開發(fā)的開發(fā)環(huán)境(開發(fā)平臺)。
LabVIEW經(jīng)過二十多年的發(fā)展已經(jīng)充分證明:LabVIEW是極具威力的自動化測試、測量工程設(shè)計、開發(fā)、分析及仿真試驗的最佳軟件系統(tǒng)?,F(xiàn)在已被廣泛應(yīng)用在汽車、電子、化工、生物及生命科學(xué)、航空、航天等等許許多多的領(lǐng)域。
當(dāng)前,隨著LabVIEW本地化進程的不斷深入,許多大學(xué)(大專)都相繼開始設(shè)置LabVIEW課程,越來越多的人們(學(xué)生)希望更多地了解和深入學(xué)習(xí)LabVIEW。同時,為什么要學(xué)習(xí)LabVIEW?誰應(yīng)該學(xué)習(xí)LabVIEW?學(xué)習(xí)LabVIEW會給我們帶來什么好處?等等這些問題也會困擾著他們,我想根據(jù)幾年來的學(xué)習(xí)體會談?wù)勛约旱恼J(rèn)識與看法。
既然LabVIEW是一種編程語言,那么不妨就從編程語言的一些基本概念來開始討論。
語言:
語言是用來表達(dá)我們的思想及進行相互交流和溝通的一種手段。
程序語言:
程序語言是用來指揮計算機表達(dá)我們的想法(意念)并能夠被計算機執(zhí)行的程序代碼。
程序語言(直接面對物理層的程序語言)我們稱之為:機器語言。
機器語言(Machine language):
機器語言,也就是機器碼是可被處理器(CPU)加載并執(zhí)行的由0和1組成的序列。由于硬件處理器的不同,所以機器碼序列也會是不一樣的??梢灾v,機器碼是處理器(CPU)可識別的唯一語言,并且是執(zhí)行速度最高的語言。它與計算機的硬件(CPU)有著最為直接的關(guān)系。
但是,當(dāng)人們看到或使用由0和1組成的序列(程序),實在是感到毫無規(guī)律、枯燥無味,并且無法理解和記憶。特別是,當(dāng)計算機處理器的性能不斷提高時(位數(shù)增加),機器語言可能被視為世界上最無法讀懂和記憶的語言。試想一下,由64位0和1組成代碼,如何記憶和理解它們。
為了解決這個問題,使更多地人能夠使用計算機,并提高編程效率充分發(fā)揮計算機的作用,人們對機器語言進行抽象處理,從而導(dǎo)致了匯編語言的誕生。
匯編語言(Assembly language):
匯編語言,是從機器語言中抽象出來的使用縮寫或助記符進行編程的低級編程語言,并且提供較少的控制指令和數(shù)據(jù)類型,其中的每一條語句都對應(yīng)于一條相應(yīng)的機器指令(代碼)。通過匯編程序開發(fā)環(huán)境可以將匯編語言翻譯成機器語言,匯編語言同樣與給定的處理器相關(guān)。
在早期,包括操作系統(tǒng)在內(nèi)的許多系統(tǒng)軟件都是用匯編語言編寫的(比如:UNXI操作系統(tǒng))。使用匯編語言的好處在于可以提高執(zhí)行速度,并且程序員還可以直接訪問系統(tǒng)硬件。但是,匯編語言由于其開發(fā)環(huán)境和匯編程序都依賴于給定的處理器,并且其指令和數(shù)據(jù)類型很少,同時程序的可讀性和可移植性都很差無法廣泛使用。于是人們再次對匯編語言進行抽象處理,從而導(dǎo)致了高級語言的誕生。
高級語言:
高級語言,是從低級的機器語言抽象而來的計算機程序語言。高級語言通常使用和英文單詞類似的關(guān)鍵詞,這些關(guān)鍵詞可以被翻譯成多條機器指令。實際上,比匯編語言高級的計算機語言都是高級語言。
C語言是目前最為廣泛使用的高級語言。它既具有一般高級語言的特性,同時又具備了一些低級語言特性(某些匯編語言的特點)。
當(dāng)然,高級語言還有很多種比如像我們所熟悉的:面向?qū)ο蟮?a href="http://www.www27dydycom.cn/tags/C++/" target="_blank">C++、Java及具有可視化編程環(huán)境的VC、VB、Delphi等等。這些高級編程語言的存在和發(fā)展說明,除了各自的特點不相同,應(yīng)用領(lǐng)域不同外,還有編程方式的不斷改進的推動。
比如:從Basic演變到Quick Basic然后又演變到Visual Basic。
從C演變到C++然后又演變到Java(號稱沒有指針和頭文件的C++)及后來的VC。
這些已不在我們討論的范圍內(nèi),有興趣者可以看相關(guān)的書籍自來了解。
從“機器語言”抽象到“匯編語言”,又從“匯編語言”抽象到“高級語言”。那么問題是:“高級語言”是否還可以進一步進行抽象出“某種超級編程語言”呢? 從計算機語言的發(fā)展規(guī)律來看,回答是肯定的。并且,二十年前這種語言就已經(jīng)出現(xiàn),那就是:LabVIEW——一種圖形化編程語言。
圖形化編程語言:
LabVIEW發(fā)展到今天,我認(rèn)為:LabVIEW是從“高級語言”中抽象提煉出來的超級編程語言(到目前為止我還沒有從哪本中外LabVIEW書籍中看到這樣的提法或概念)。
這種將“高級語言”傳統(tǒng)的寫代碼的編程方式,抽象變?yōu)橐浴皥D形、節(jié)點、連線”方式的編程語言,的確具有超級編程語言的特點。
用C和C++編寫的LabVIEW具有比C和C++更明顯得優(yōu)點。
LabVIEW本身的易學(xué)易用、即學(xué)即用的特點也充分的證明了這個觀點。
問題在于:圖像化的編程方法是否真的就會比“高級語言”代碼編程方法更高級?我的回答應(yīng)該是肯定的。下面通過兩個例子來進一步說明:
例1:
小時候,在我們剛剛開始會說話時,大人通常是用“看圖說話”的方式來教我們認(rèn)識什么是蘋果?什么是梨?什么是香蕉?顯然,利用圖形或圖像的概念使我們很快認(rèn)識了這些水果。試想如果用文字或拼音來教我們認(rèn)識這些水果,效果決不會好的。換句話說,圖形或圖像由于簡潔明確,的確要比文字或拼音更適合初學(xué)者來認(rèn)識和區(qū)分。事實上,編程語言也是具有相同的規(guī)律。
對于學(xué)習(xí)過某種高級語言的人來講,對復(fù)雜的語法規(guī)則、指針、內(nèi)存、類庫等等的掌握根本談不到輕松易學(xué)。
LabVIEW做到了這一點,用LabVIEW編程根本無需考慮什么:語法規(guī)則、指針、內(nèi)存、類庫等。LabVIEW這種圖形化語言將許多復(fù)雜的事情抽象的極為簡單明了。
例2:
時光倒退回二十多年前,那時人們對計算機的操作、控制還基于稱為DOS的磁盤操作系統(tǒng)(Diskette Operating System),即便是一個很簡單的操作人們也會噼噼啪啪的敲擊一陣鍵盤,對于復(fù)雜操作人難免還要認(rèn)真仔細(xì)的查閱DOS手冊。那時的MicroSoft還是一個編寫DOS的小公司。后來,Mac(蘋果電腦)首先實現(xiàn)了計算機的圖形化操作,點擊鼠標(biāo)、利用拖拽即可完成對計算機的一些操作控制。LabVIEW大概也是受到了圖形操作系統(tǒng)的啟發(fā)(不知是否真的如此),開始了LabVIEW的設(shè)計,并在Mac機上完成了LabVIEW1.0版的發(fā)布。直到MicroSoft也設(shè)計出圖形化操作系統(tǒng)時,LabVIEW才發(fā)布了Windows版。這大概是LabVIEW2.0,到LanVIEW3.0發(fā)布時它已經(jīng)全面支持跨平臺使用了。
計算機操作系統(tǒng)的圖形化無疑加快了計算機使用的普及和使用的大眾化(當(dāng)然也包含硬件發(fā)展的推動),使計算機由過去的專供專業(yè)人員操作使用,而真正變成了不分年齡、不分專業(yè)的大眾工具。其中,真正起核心作用的還是圖形化操作系統(tǒng)得簡潔、方便和易學(xué)。
編程語言的圖像化應(yīng)該與操作系統(tǒng)圖形化一樣,給那些不善于使用代碼編程的人帶來了實現(xiàn)復(fù)雜程序設(shè)計的機會(我就是其中的一個受益者)。
其實許多學(xué)習(xí)過LabVIEW的人都回有這樣的體會:圖形化編程的確大大降低了程序設(shè)計的復(fù)雜度,LabVIEW的確是比那些“高級語言”更好的超級編程語言。
LabVIEW的跨平臺特點,以及在同一個平臺下對FPGA、DSP及嵌入式微處理器的開發(fā)提供圖形化編程的支持,難道不可以稱之為:超級編程語言嗎。
LabVIEW是從“高級語言”中利用圖形化的抽象方法抽象出來的超級編程語言。那么,還能對它繼續(xù)進行抽象處理,進一步提高它的簡潔性和方便性嗎?
責(zé)任編輯人:CC
-
LabVIEW
+關(guān)注
關(guān)注
2002文章
3670瀏覽量
335984
發(fā)布評論請先 登錄
對話資深專家:LabVIEW學(xué)習(xí)的技巧與誤區(qū)
目前正在學(xué)習(xí)labview,不知道這個是什么控件來的?
如何學(xué)習(xí)單片機技術(shù)看了就知道
如何學(xué)習(xí)FPGA看了就知道
【零基礎(chǔ)學(xué)習(xí)LEBVIEW】05 虛擬儀器軟件LabVIEW
【零基礎(chǔ)學(xué)習(xí)LABVIEW】10 工控機(IPC)
LabVIEW學(xué)習(xí)所需主要硬件簡介
LabVIEW基本函數(shù)_LabVIEW入門篇
如何學(xué)好LabVIEW_LabVIEW的學(xué)習(xí)方法分享

評論