How To - 數值如何在邏輯元件下運作?

這...真是個奇怪的問題。

是這樣子的,前些日子以前的同學寄了個問題給我,內容主要是接手了案子之後發現內部很多的程式碼都是數值利用 AND/OR 的元件在操作,有種 Check sum 的味道。但是同學卻不知道實際運作的內容到底是如何進行的。


圖片程式版本:LabVIEW 2013
範例程式版本:LabVIEW 8.6


首先我們來看這兩張圖



很多人不解這到底是如何運算出來的結果。
但是如果我把它換成另一組圖,大家可能就知道為什麼了。




其實 Array 內的值就是 3 ,Array2 內的值就是 5 ,所以 AND 運算完之後會變成 1 , OR 運算完之後會變成 7 ,這個主要的原因就是數值在進入邏輯運算元件時,會先被轉換為布林型態的矩陣,運算完畢之後再把布林矩陣還原回數值,就會看到最上面範例的結果。

另外,若輸入的數值為浮點數,在進邏輯元件的時候會被強制轉換資料型態為整數

簡單的範例在這裡下載。