【问题标题】:Converting binary to decimal within a case structure in LabVIEW 2018在 LabVIEW 2018 的案例结构中将二进制转换为十进制
【发布时间】:2019-02-26 13:14:53
【问题描述】:

我有两个控件(特别是按钮),当它们被激活时,每个控件都充当一个位。 所以这基本上意味着我可以通过同时激活两个按钮来产生的最高数字是 2。编辑:好的,我的意思是我能够产生的最高输出是两个,因为我只有 2 个按钮,每个代表一个 1。所以 1+1=2。

但是,这只能从逻辑上理解,因为这些位尚未转换为数字(十进制)格式。我可以使用直接转换为 0,1 的“布尔值”来获取值,但我被指示使用案例结构来完成此操作。

现在我完全感到困惑,因为案例结构只需要一个案例选择器,但我有两个按钮。其次,这个问题似乎太简单了,不需要案例结构,因此真的很难使用更复杂的方法。

【问题讨论】:

  • 在另一个案例结构的每个案例中使用一个案例结构?

标签: boolean logic system labview circuit


【解决方案1】:

所以这基本上意味着我可以通过同时激活两个按钮来产生的最高数字是 2。

一个 2 位数字可以有四个值,0...3,嗯?

一般来说,如果两个布尔值是数字的位,或者数字可以通过布尔值以某种方式计算出来,那么就这样做。

但是,如果数字可以具有取决于布尔值的预定义值,但不能从它们计算出来,则需要一些其他类型的大小写区分。也许,无论谁指示你,都考虑到了这一点。

  1. 您可以为第一个布尔值创建一个 case 结构,并在每种情况下为第二个布尔值插入第二个 case 结构。当有更复杂的代码和逻辑取决于布尔值时,这很好,因此您可以轻松地专注于值的一种组合。对于简单的情况,这缺乏概述,并且在添加第三个布尔值时,工作量很大。

  2. 计算中间值,并将其连接到单个案例结构。现在,只有一种案例结构,但您没有对所有案例的概览。请注意,我已将大小写结构的基数更改为布尔值,因此您可以看到选择器中的位。

  3. 使用简单的数组来取值

  4. 使用预定义的条件和值创建查找表

(请注意,前两个解决方案会强制您实现每种情况,而后两个则不会 - 如果您的数组大小仅为 3 怎么办?)

【讨论】:

  • 我真的很喜欢并欣赏你的信息量和表达能力。非常感谢,说真的。我非常感激。
猜你喜欢
  • 1970-01-01
  • 2012-06-26
  • 1970-01-01
  • 1970-01-01
  • 2021-05-09
  • 2015-06-02
  • 2011-07-09
  • 2016-03-16
  • 2012-12-26
相关资源
最近更新 更多