新聞中心

        EEPW首頁 > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > labview的深入探索----整型數(shù)據(jù)類型和內(nèi)存映射

        labview的深入探索----整型數(shù)據(jù)類型和內(nèi)存映射

        作者: 時(shí)間:2017-01-09 來源:網(wǎng)絡(luò) 收藏
        首先要區(qū)分的是控件和數(shù)據(jù)類型的區(qū)別.


        控件是數(shù)據(jù)類型的容器,或者說數(shù)據(jù)類型是控件的一個(gè)屬性,控件都有一個(gè)值的屬性,這個(gè)值的類型就是控件所代表的數(shù)據(jù)類型.

        描述一個(gè)控件是通過類型描述符實(shí)現(xiàn)的,它包括控件的名稱、控件類型及控件所代表的數(shù)據(jù)類型等等。
        今天要談的與控件本身無任何關(guān)系,是數(shù)據(jù)類型在內(nèi)存中如何存儲(chǔ)的,或者稱作數(shù)據(jù)的內(nèi)存映射
        我們知道,無符號(hào)整型數(shù)有U8、U16、U32、U64

        U8 是指8位(BIT),一個(gè)字節(jié)(BYTE), 值范圍:0X00---->0XFF
        U16是指16位(BIT),二個(gè)字節(jié)(BYTE), 值范圍:0x0000--->0XFFFF

        本文引用地址:http://www.104case.com/article/201701/337235.htm

        U32是指32位(BIT),四個(gè)字節(jié)(BYTE), 值范圍:0X00000000---》0XFFFFFFFF
        U64是指64位(BIT),八個(gè)字節(jié)


        標(biāo)準(zhǔn)的數(shù)據(jù)類型在內(nèi)存中是連續(xù)存放的,比如U32,是四個(gè)字節(jié),那么一個(gè)U32就占用連續(xù)的4個(gè)字節(jié)的內(nèi)存空間,同理,U16占用2個(gè)字節(jié)的空間,U64占用8個(gè)字節(jié)的連續(xù)空間。單精度是4個(gè)字節(jié),雙精度是8個(gè)字節(jié)。

        通過下面的例子,可以清楚地看到,數(shù)據(jù)類型與字節(jié)的關(guān)系。




        上面的圖中的字符串是用HEX方式顯示的,清楚地表明了U16--》2BYTE,U32--》4BYTE,U64----》8BYTE


        以U32為例,它由四個(gè)字節(jié)組成,而這四個(gè)字節(jié),可以理解成很多方式,它可以是

        字符串-----四個(gè)字符,每個(gè)字符一個(gè)字節(jié)
        U8數(shù)組-----四個(gè)元素,每個(gè)元素一個(gè)字節(jié)
        U16數(shù)組---二個(gè)元素,每個(gè)元素占兩個(gè)字節(jié)

        LABVIEW的簇與C的結(jié)構(gòu)不同,它是連續(xù)按字節(jié)存放的,未采用對(duì)齊方式,因此我們甚至可以理解成一個(gè)簇

        這個(gè)簇可以是:
        四個(gè)U8元素、2個(gè)U16元素、一個(gè)U8,一個(gè)U16和一個(gè)U8,總之,只要是四個(gè)字節(jié)就可以,對(duì)內(nèi)存本身來說,是無法判斷它到底存儲(chǔ)的是什么的。

        LABVIEW中有一個(gè)“CAST”函數(shù),中文版翻譯成強(qiáng)制類型轉(zhuǎn)換,CAST本意是鑄造模型的意思,用它的本意比較合適,對(duì)于四個(gè)字節(jié),我們可以按照我們自己的理解轉(zhuǎn)換成任意數(shù)據(jù)類型,只要它的字節(jié)數(shù)相同。

        如果我們熟悉數(shù)據(jù)在內(nèi)存中的映射關(guān)系,用CAST函數(shù)可以解決一些特殊的類型轉(zhuǎn)換問題。




        U32轉(zhuǎn)換成U8數(shù)組和U8組成的簇結(jié)果相同
        直接用CAST把U32轉(zhuǎn)換成U16數(shù)組和U16組成的簇與LV內(nèi)置的拆分函數(shù)結(jié)果相同。


        評(píng)論


        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 江源县| 宜宾市| 桂东县| 治县。| 济南市| 新闻| 天长市| 苏尼特左旗| 犍为县| 仙游县| 和平县| 保靖县| 阳东县| 永善县| 彭山县| 彩票| 嵊州市| 和田县| 新巴尔虎右旗| 布尔津县| 莱芜市| 瑞昌市| 泰州市| 南皮县| 景东| 华容县| 齐齐哈尔市| 婺源县| 杭锦后旗| 宁远县| 托克托县| 莎车县| 濉溪县| 龙陵县| 淮南市| 嘉祥县| 通海县| 都江堰市| 康乐县| 卢龙县| 五常市|