LabVIEW如何在內(nèi)存中保存數(shù)據(jù)_第1頁
LabVIEW如何在內(nèi)存中保存數(shù)據(jù)_第2頁
LabVIEW如何在內(nèi)存中保存數(shù)據(jù)_第3頁
LabVIEW如何在內(nèi)存中保存數(shù)據(jù)_第4頁
LabVIEW如何在內(nèi)存中保存數(shù)據(jù)_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、LabVIEW如何在內(nèi)存中保存數(shù)據(jù)布爾數(shù)據(jù)LabVIEW用8位二進(jìn)制數(shù)保存布爾數(shù)據(jù)。如值為零,則布爾值為FALSE。所有非零的值都表示TRUE。單字節(jié)整型單字節(jié)整數(shù)(有符號(hào)和無符號(hào))為8位二進(jìn)制格式。雙字節(jié)整型雙字節(jié)整數(shù)(有符號(hào)和無符號(hào))為16位二進(jìn)制格式。長整型長整數(shù)(有符號(hào)和無符號(hào))為32位二進(jìn)制格式。64位整型64位整數(shù)(有符號(hào)和無符號(hào))為64位二進(jìn)制格式。定點(diǎn)定點(diǎn)數(shù)(有符號(hào)和無符號(hào))為64位二進(jìn)制格式。單精度單精度浮點(diǎn)數(shù)為32位二進(jìn)制IEEE單精度格式。雙精度雙精度浮點(diǎn)數(shù)為64位二進(jìn)制IEEE雙精度格式。擴(kuò)展精度擴(kuò)展精度浮點(diǎn)數(shù)為IEEE80位擴(kuò)展格式。:-注:在某些情況下,擴(kuò)展精度浮點(diǎn)

2、數(shù)可能為64位、96位或128位IEEE擴(kuò)展精度格式。具體情況因計(jì)算機(jī)處理器而異。最常見的是80位。單精度復(fù)數(shù)單精度浮點(diǎn)復(fù)數(shù)由32位二進(jìn)制IEEE單精度的實(shí)數(shù)和虛數(shù)組成。87扌鐵0S1叮氛3雙精度復(fù)數(shù)雙精度浮點(diǎn)復(fù)數(shù)由64位二進(jìn)制IEEE雙精度的實(shí)數(shù)和虛數(shù)組成。81C打譏Jo冷譏0S弋汀譏Jy棗C認(rèn)心虛W擴(kuò)展精度復(fù)數(shù)擴(kuò)展精度浮點(diǎn)復(fù)數(shù)由IEEE擴(kuò)展精度的實(shí)數(shù)和虛數(shù)組成擴(kuò)展精度浮點(diǎn)數(shù)為IEEE80位擴(kuò)展格式。&15指數(shù)0E3JSE3C在浮點(diǎn)數(shù)和復(fù)數(shù)中,s為符號(hào)位(0代表正,1代表負(fù)),指數(shù)為偏移指數(shù)(底數(shù)為2),而尾數(shù)為0,1范圍內(nèi)的數(shù)。時(shí)間標(biāo)識(shí)LabVIEW將時(shí)間標(biāo)識(shí)保存為一個(gè)含四個(gè)整數(shù)的簇,其中

3、前兩個(gè)帶符號(hào)整數(shù)(64位二進(jìn)制)表示自1904年1月1日周五凌晨01-01-190400:00:00以來無時(shí)區(qū)影響的所有秒數(shù)。后兩個(gè)不帶符號(hào)整數(shù)(64位二進(jìn)制)表示小數(shù)秒部分。關(guān)于時(shí)間標(biāo)識(shí)的更多信息,請(qǐng)?jiān)L問的NI開發(fā)者園地。數(shù)組LabVIEW將數(shù)組保存為句柄(即指向指針的指針),包含以32位二進(jìn)制整數(shù)表示的維度大小,隨后是數(shù)組數(shù)據(jù)本身。如句柄為0,則數(shù)組為空。由于某些平臺(tái)具有對(duì)齊約束條件,維度大小后可能會(huì)有如干字節(jié)的填充符以使數(shù)據(jù)的首個(gè)元素準(zhǔn)確對(duì)齊。如寫了一個(gè)使用LabVIEW數(shù)組的共享庫,可能需要調(diào)整指針的大小。下圖為單精度浮點(diǎn)數(shù)的一維數(shù)組。其左側(cè)的十進(jìn)制數(shù)表示在內(nèi)存中數(shù)組起始處的字節(jié)偏移。

4、下圖為16位整數(shù)的四維數(shù)組。在LabVIEW中,一維和二維數(shù)組均在內(nèi)存中對(duì)齊。這有助于提高線性代數(shù)運(yùn)算及矩陣數(shù)據(jù)類型相關(guān)運(yùn)算的性能。字符串LabVIEW將字符串保存為指向某個(gè)結(jié)構(gòu)的指針,該結(jié)構(gòu)包含一個(gè)長度為4個(gè)字節(jié)的值和一個(gè)一維單字節(jié)整數(shù)(8位二進(jìn)制字符)數(shù)組。如下圖所示。如句柄或指向某個(gè)結(jié)構(gòu)的指針為NULL,LabVIEW將字符串視為空字符串,即字符串的長度值為0。由于LabVIEW以長度值而不是終結(jié)字符來判斷字符串的結(jié)束,因此可將帶有NULL字符或ASCII字符0在內(nèi)的任意字符嵌入字符串的任何位置。當(dāng)發(fā)送LabVIEW字符串到期望C字符串的外部代碼時(shí),嵌入的NULL字符將導(dǎo)致外部代碼將字符

5、串解釋為于第一個(gè)NULL字符處終止。路徑LabVIEW路徑是指向不透明數(shù)據(jù)結(jié)構(gòu)的一個(gè)指針,不透明數(shù)據(jù)結(jié)構(gòu)中包含路徑類型和路徑的組成部分。路徑類型為0代表絕對(duì)路徑,為1代表相對(duì)路徑,為3代表通用命名約定(UNC)路徑。UNC路徑僅限于Windows環(huán)境且以機(jī)器名共享名而不是盤符作為其首個(gè)路徑組件。任何其他的路徑類型均為無效路徑。使用下列函數(shù)獲取關(guān)于路徑的信息:FDepth()FDirName()FIsAPath()FIsAPathOfType()FIsEmptyPath()FNamePtr()FVolName()使用下列函數(shù)添加元素至路徑:FAddPath()FAppendName()使用下列函

6、數(shù)創(chuàng)建一個(gè)新的路徑:FNotAPath()FPathCpy()FEmptyPath()FMakePath()FRelPath()使用FDestroyPath()函數(shù)刪除路徑。使用下列函數(shù)實(shí)現(xiàn)路徑和文本格式之間的轉(zhuǎn)換:FFileSystemStringToPath()FPathToFileSystemDSString()FPathToText()FTextToPath()ConvertPathToPlatformIndependentText()ConvertPlatformIndependentTextToPath()使用下列函數(shù)比較兩個(gè)路徑:FPathCmp()FPathCmpLexical

7、()簇LabVIEW根據(jù)簇元素順序?qū)⒉煌瑪?shù)據(jù)類型的元素保存在一個(gè)簇中。右鍵單擊簇邊框,在快捷菜單中選擇重新排序簇中控件可查看和修改簇順序。LabVIEW直接將標(biāo)量數(shù)據(jù)存儲(chǔ)在簇中,將數(shù)組、字符串和路徑間接存儲(chǔ)在簇中。由于某些平臺(tái)有對(duì)齊限制,LabVIEW可能會(huì)在數(shù)組中簇的結(jié)尾填充若干字節(jié),以保證下一個(gè)簇的開始位置準(zhǔn)確對(duì)齊。如寫了一個(gè)使用簇?cái)?shù)組的共享庫,如將指針的大小按照數(shù)組進(jìn)行調(diào)整,必須同時(shí)考慮這些填充內(nèi)容。簇在內(nèi)存中的存儲(chǔ)結(jié)構(gòu)取決于運(yùn)行的平臺(tái)。LabVIEW可能在簇元素之間填充,以保證這些元素與特定的地址范圍對(duì)齊。地址范圍與自然對(duì)齊概念相關(guān)。如某個(gè)數(shù)據(jù)的開始位置是數(shù)據(jù)大小的整數(shù)倍,則該數(shù)據(jù)自然

8、對(duì)齊。例如,如一個(gè)4字節(jié)的整數(shù)的開始地址是4的倍數(shù),則該數(shù)據(jù)是自然對(duì)齊。多數(shù)編譯器在范圍上有一個(gè)上限。例如,8字節(jié)整數(shù)可在4字節(jié)范圍上對(duì)齊。根據(jù)LabVIEW運(yùn)行范圍的不同,對(duì)齊限制如下:(Windows)數(shù)據(jù)只與1字節(jié)范圍對(duì)齊。(MacOSX,Linux)數(shù)據(jù)與4字節(jié)范圍自然對(duì)齊。(VxWorksPowerPC)數(shù)據(jù)與8字節(jié)范圍自然對(duì)齊。在所有平臺(tái)上,簇按照最嚴(yán)格最齊元素的標(biāo)準(zhǔn)進(jìn)行對(duì)齊。下表顯示了一個(gè)簇,其中包含:1個(gè)16位整數(shù)、1個(gè)擴(kuò)展精度浮點(diǎn)數(shù)、1個(gè)數(shù)組、1個(gè)8位不帶符號(hào)整數(shù)。每行都包括內(nèi)存地址以及相應(yīng)元素和元素大小。(Windows)因?yàn)閿?shù)據(jù)只與1字節(jié)范圍對(duì)齊,所以下一個(gè)簇的內(nèi)存地址是

9、17。內(nèi)存地址元素大小(字節(jié))0:I16整數(shù)22:EXT浮點(diǎn)數(shù)1012:處理為數(shù)組416:U8整數(shù)1(MacOSX,Linux)因?yàn)閿?shù)據(jù)自然對(duì)齊至4字節(jié)范圍,LabVIEW在8位不帶符號(hào)整數(shù)后填充3個(gè)字節(jié)。所以,下一個(gè)簇的內(nèi)存地址是24。內(nèi)存地址元素大小(字節(jié))0:I16整數(shù)22:填充24:EXT浮點(diǎn)數(shù)1014:填充216:處理為數(shù)組420:U8整數(shù)121:填充3(VxWorksPowerPC)因?yàn)閿?shù)據(jù)自然對(duì)齊至8字節(jié)范圍,LabVIEW在8位不帶符號(hào)整數(shù)后填充3個(gè)字節(jié)。所以,下一個(gè)簇的內(nèi)存地址是24。內(nèi)存地址元素大小(字節(jié))0:I16整數(shù)22:填充68:EXT浮點(diǎn)數(shù)816:處理為數(shù)組420:U8整數(shù)121:填充3LabVIEW將簇按順序嵌入直接存儲(chǔ)在其它簇中。L

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論