labview编程技巧-----如何处理数据的位

2015-08-20 12:41:10来源: eefocus
位操作是自动化控制中经常遇到的问题,最近看到论坛上有人提到字节高四位和低四位提取的问题,今天仔细探讨一下位的操作.

位不等于LABVIEW中的布尔量BOOLEAN占一个字节,和U8 I8相同,在内存中都是一个字节.
而一个字节是由8个位组成的,所以一个字节可以表示8个开关量.

最简单地操作是BOOLEAN 转换成I16,LV本身提供,FALSE---->0,TRUE---->1
数字转换成BOOLEAN,LV没提供,实际用!=0判断就可以了,非0既为真



因为BOOLEAN和I8 U8同占一个字节,因此转换也可以直接用CAST函数实现


因为LABVIEW提供了NUM-->BOOLEAN ARRAY和BOOLEAN ARRAY--->NUM的转换,所以很容易通过BOOLEAN数组替换实现对数的位的置位复位操作.NUM的类型可以是I8、I16、I32和I64




取出一个字节的高四位和低四位,可以通过计算和移位两种方式实现,C语言一般用移位的方式实现,速度比较快,而BASIC语言是通过计算实现的。

对于移位,在LV里有三种方法,1,直接用移位VI,2、利用公式节点 3、MATHSCRIPT提供了位操作函数。

下面演示一下几种方法:

对于某一位置1可以通过NUM OR 0X08 实现(BIT3,从0开始),置0可以用NUM AND !0X08实现,当然也可以通过上面的BOOLEAN数组的操作实现,不过位本身操作速度应该更快一些。

关键字:labview  编程技巧  数据的位

编辑:什么鱼 引用地址:http://www.eeworld.com.cn/Test_and_measurement/2015/0820/article_12857.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
labview
编程技巧
数据的位

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved