![LabVIEW虚拟仪器设计及应用:程序设计、数据采集、硬件控制与信号处理](https://wfqqreader-1252317822.image.myqcloud.com/cover/527/26793527/b_26793527.jpg)
上QQ阅读APP看书,第一时间看更新
2.4 数据流的编程机制
学习LabVIEW这种图形化编程语言,首先就要理解数据流的编程机制。
对于文本式的传统编程语言,比如C、Fortran等,默认的程序执行机制是程序语句按照排列顺序逐句执行。而对于图形化的数据流式编程语言,其执行的规则是,任何一个节点只有在所有输入数据均有效时才会执行。如图2.8所示,对节点D而言,只有当输入端子A、B、C的输入数据都有效时,D才会执行。
在LabVIEW的程序框图中,各节点是靠连线连接起来的。连线是不同节点之间的数据通道。数据是单向流动的,即从源端口流向一个或多个目的端口。在LabVIEW中,是通过连线的粗细、形状以及颜色的不同来表征所传输的数据是不同类型的。例如,如图2.9所示,连线的蓝色,代表传输的是整型数;橙色代表的是浮点数;绿色代表传输的是逻辑量;粉色代表的是字符串;而细连线,则代表连线传输的是标量,等等。
![](https://epubservercos.yuewen.com/B4423C/15253384905227206/epubprivate/OEBPS/Images/Figure-P32_2369.jpg?sign=1738869042-n3QuzkTybXlQNt2RUuS525U9uRUSzoM6-0-f9595644b18c9d8e295e4cc7ab0e2635)
图2.8 数据流机制
![](https://epubservercos.yuewen.com/B4423C/15253384905227206/epubprivate/OEBPS/Images/Figure-P32_2373.jpg?sign=1738869042-t6BUa952I5C5LvY6B4eX0jXOEzBPyfUM-0-94b8a12301be1e40d593e62232a9d3b1)
图2.9 LabVIEW中的各种连线
![](https://epubservercos.yuewen.com/B4423C/15253384905227206/epubprivate/OEBPS/Images/Figure-P33_2378.jpg?sign=1738869042-b4IDUtBLOPsWYhMWr1zGIiptmptOPVs0-0-92a69907d851fd32003205206a1c40d3)
图2.10 数据流机制举例
【例2.1】 一个VI的程序框图如图2.10所示,观察它后回答下面两个问题:(1)其中的加函数和减函数,哪个先执行?(2)加函数和除函数哪个先执行?
解:(1)加函数先执行,因为减函数只有当加函数的运算结果传给它后才能执行。
(2)答案是未知的,因为加函数与除函数之间没有任何关联,是并行运行的,其运行顺序是随机的。如果要控制它们的执行顺序,可以使用第4章中介绍的顺序结构或其他一些程序设计技巧。