Loading...
訪客人次:
 
 
 
 
2009年3月26日 星期四 , ,  

DHTML基礎教學(6)--程式基本概念之真值表(Truth Table)篇

之前的文章有提過,布林(Boolean)這個型態的值只有兩種,就是 true 與 false,這兩個值通常是邏輯運算的結果

這裡先來看看邏輯運算子的意義
  1. && : 念作 and,表示「並且」的意思,即在運算子兩邊的運算元都要為真,其運算結果才會為真
  2. || : 念作 or,表示「或者」的意思,即在運算子兩邊的運算元至少有一個為真,其運算結果就為真
  3. ^ : 對應的字為 xor,這個我也不知道怎麼念 ^_^",表示「不同於」的意思,即在運算子兩邊的運算元是不同值時,其運算結果才會為真
  4. ! : 念作 not,表示「否定、不是」的意思,也可以想成是「相反」的意思,這個運算子比較特別,它不是做兩個運算元的運算,而是只對它後面的運算元做運算,即運算後的結果就是運算元相反的值
其中 ! 的優先順序最高,運算時要先算 !,其他就不分了,依撰寫的順序來算,或用 ( ) 來改變順序,原理跟數學運算一樣

真值表就是在說明邏輯運算子的運算結果

真值表(Truth Table)
A B A && B A || B A ^ B ! A
true true true true false false
true false false true true false
false true false true true true
false false false false false true
藍底的部份表示算式,黃底表示 A 及 B 要代入什麼值,而白底的部份即是運算的結果

下面是解釋
A B A && B A || B A ^ B ! A
true true A B兩者都為true
所以是true
A B裡面有true
所以是true
兩者相同
所以是false
A 的相反值
所以是false
true false A B裡面有false
所以是false
A B裡面有true
所以是true
兩者不同
所以是true
A 的相反值
所以是false
false true A B裡面有false
所以是false
A B裡面有true
所以是true
兩者不同
所以是true
A 的相反值
所以是true
false false A B裡面有false
所以是false
A B裡面沒有true
所以是false
兩者相同
所以是false
A 的相反值
所以是true

布林值的基本邏輯運算就是上表所列這些,其他複雜的邏輯運算都是由這基本運算所組成的,例如

A = true
B = false
C = true

D = A && B && C
E = A && ( B || C )
F = A && !B && C
G = !(A || B || C)

我們就可算出

D = false(先算 A && B,得 false,再算 false && C,得 false)
E = true(因為有括號,所以先算 B || C,得 true,再算 A && true,得 true)
F = true(先算 !B,得 true,再算 A && true,得 true,再算 true && C,得 true)
G = false(先算 A || B,得 true,再算 true || C,得 true,再算 !true,得 false)

所以把真值表學好,邏輯運作就不是難事了
沒找到你要的東西嗎?歡迎留下你的問題!若是我知道的,我會盡力的回答。

0 意見:


張貼留言

廣告訊息會被我刪除