您的位置 首页 FPGA

labview的数据类型—-无所不在的类型描述符 TYPE DESCRIPTOR

大家都知道,LV是基于数据流的图形编程语言我们在单步监视LV的运行时,在连线的任何一处查看的它的数据都是相同的,确实有点数据流动的意思L

咱们都知道,LV是根据数据流的图形编程言语.咱们在单步监督LV的运行时,在连线的任何一处检查的它的数据都是相同的,的确有点数据活动的意思.

LABVIEW的连线色彩,线条粗细代表不同的数据,不同很大的两种类型是无法连接到一同的,可见,LV在任何时刻都知道正在活动的数据类型,它是经过什么完成的那?

答案是:类型描述符.TYPE DESCRIPTOR

类型描述符包含那些内容那,咱们从最简略地BOOLEAN看一下

LABIEW随时保护一个存储结构,其间包含类型描述符,能够看出,BOOLEAN的存储结构是一个I16数组,现在共有四个元素,

0x08 0x4021 0x0343 0x4243

第一个I16是长度字节:4*2BYTE=8 BYTE

第二个I16是分红高位字节和低位字节两部分:40和21(HEX),其间40是LV保存部分,21是BOOLEAN的类型码,类型码是一一对应的(TYPE CODE)

第三个元素高位字节表明控件姓名的长度,低位字节是姓名第一个字母的ASCII,接下来是第二个字母和第三个字母.

这儿 把长度和类型码合在一同称做类型描述符(TYPE DESCRIPTOR)

TYPE DESCRIPTOR:

所以类型描述符中包含了控件数据的类型和这个存储结构总长度,能够看出,咱们比如中的BOOLEAN称号是ABC,对应的ASCII分别是41,42,43.咱们知道,BOOLEAN在内存中占一个字节,类型描述符中没有它的值,它的值体现在它所占的内存字节中,该字节为0,则为FALSE,该字节非0,则为TRUE.

在看看标量数值类型

U8: 0X0008 0X4005 0X0255 0X3800

8*2BCODE=052 CAHR 55->U 38->8

U16:0X0008 0X4006 0X355 0X3136

8*2BCODE=063 CAHR 55->U 31->1 36->6

DBL: 0X0008 0X400A 0X0344 0X424C

8*2BCODE=0A3 CAHR 44->D 42->B 4C->L

其他数值标量也彻底类似.它的存储结构包含类型描述符(长度和类型码),称号长度和称号的ASCII串.

ENUM和RING本质上也是数值数据类型,不过它包含了杂乱的称号,先看看ENUM.

能够看到,数据总长度是0x16,类型码是0x16,0x04表明ENUM共包含四个元素,0x0241中0X02表明第一个元素称号长度是2个字符,分别是0X41,0X41 (AA),顺次,第二个元素是0X42 0X42(BB),第三个元素是0X43 0X43(CC),第四个元素是0X44,0X44(DD),最终0X0341中的高字节0X03表明枚举的称号字符传长度是3个字节(字符),分别是0X41,0X42,0X43,便是ABC.

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/fangan/fpga/211449.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部