新闻中心

EEPW首页>测试测量>设计应用> LABVIEW的深入探索之功能强大的位操作能力

LABVIEW的深入探索之功能强大的位操作能力

作者: 时间:2017-01-09 来源:网络 收藏

除了使用基本的位操作函数外,LV中还可以使用另外一种独特的方法进行位操作,这是其它编程语言不具备的。我们知道LABVIEW中的布尔数据类型与位非常类似,不过是存储空间不同。LABVIEW中的布尔数组和按字节、字进行位操作极为类似。因此可以先把字节、字转换为布尔数组,进行相应的位操作后在转换回字节、字。如下图所示,实现的是置位操作,与上图效果相同。

布尔数组可以直接转换成U32,因此使用上述方法操作双字更为方便,由于中间经过了多次转换,可能运行效率会低于直接使用位操作。在下面的其它位操作中,将同时演示两种不同的方法。

四、复位(关闭位)

复位操作与置位操作相反,复位操作使某个位的值恢复为0状态,这是默认状态,因此称作复位。

对掩码按位取反,则只有一位为0,其它位均为1,与字节进行与操作,则只有一位复位为0,其它位保持不变。

五、转置位

转置位就是对掩码指定的位进行反转,如果原来为0,则置位为1。如果原来位1,则复位为0。进行转置位操作,最简单的就是进行异或操作。

假如我们还是对BIT3 (掩码0X08)进行操作。由于掩码中的BIT3为1,如果字节中的BIT3为0,异或的结果是不同为1,字节中的BIT3由0成了1。反之,如果字节中的BIT3为1,异或的结果是相同为0,因此BIT3由1变成了0,实现了该位的转置。

由于掩码的其它位为0,根据相同为0,不同为1的原则,其它位会保持不变。

六、查看某位的值

查看某位的值就非常简单了,只要字节与掩码进行与操作,判断结果是否为0就可以了。如果字节该位为1,与掩码与的结果则不为0。反之,如果字节的该位为0,与掩码与的结果则为0。

除了了对字节中的某一位进行置位、复位、转置和测试位的能力,LABVIEW还支持对无符号数、有符号数的移位操作,这在高级编程语言中是不多见的,充分体现了LABVIEW面向工程应用的特点。


上一页 1 2 下一页

关键词:LABVIEW位操

评论


技术专区

关闭