邏輯電路基礎
游戲中的紅石電路,沒有電壓電流的概念,只有被激活和未被激活的邏輯開關狀態,說明紅石電路是純粹的邏輯電路。要熟練地使用紅石電路,就需要玩家掌握一定的邏輯運算知識。下面我會簡單解釋一些。如果要深入學習則需要找一些布爾邏輯代數的書來看。
邏輯運算中變量的值只有0和1兩種,對應的邏輯電路也只有關和開兩種狀態。在紅石電路中,我們不妨把未被激活的紅石線路內的信號定義為 “0”,已激活的線路內的信號定義為 “1”,之后我們便可以方便地對照邏輯運算表和邏輯電路元件了。
注意:最好不要看紅石火炬的亮和滅來定義邏輯信號的指示標準。在后面的內容中我們會看到這樣做可能導致邏輯顛倒。
最基本的邏輯運算有:“或”“非”“與” 三種
“或”的運算表示為: A或B = A + B = C 這可以通俗地理解為 A B 兩變量的加法,當兩者中任意一個值為 “1”,另一個值為 “0”時,C 的值為 “1”。兩者值都為 “0”時,自然地 C的值也為 “0”。特別的當 A B 兩者的值均為 “1”時 ,C 的值也為 “1”(因為邏輯運算中沒有比“1”大的值)。歸納來講就是參與“或”運算的所有變量只有都為“0”時,結果的值才為“0”,其他情況下,結果值均為“1”。
“非”運算的表示為A的頭上加一橫杠(這里打不出來,大家見諒), 非A = C 。“非”運算就是將變量值取反,當A為“0”時 C為“1”,而A為“1”時 C為“0”。
“與”運算表示為: A與B = A·B = C 可通俗理解為 A B 的乘法, 只有當 A B 均為 “1”時,C的值才為“1”,否則C的值為“0”。
在邏輯電路中,同樣有三種基本門電路:“或門”“非門”“與門”對應如上三種邏輯運算。下面我們就看看如何用紅石電路來實現這三種基本邏輯門電路。
1 紅石火炬方塊的邏輯含義
當紅石火炬方塊為單輸入單輸出時,以下兩圖顯示出方塊兩側的線路中的信號是相反的,這說明單入單出的紅石火炬方塊為一個邏輯“非門”。
2 “或門”
在搭建紅石“或門”前,我們先看下面4張圖。
在這里,筆者有一個小失誤,就是沒在火炬方塊的正前方添加紅石線路,不過考慮到,如果添加了線路,其狀態應與紅石火炬狀態相同。所以應該不影響大家理解。
我們將左右兩邊的紅石線路看作變量A和B,我們發現,只有當A和B的值都為“0”時,紅石火炬的值才為“1”(21樓圖),其他狀態均為“0”(22-24樓圖),這和“或門”的狀態剛好相反(“或門”的邏輯狀態是輸入均為“0”時結果才為“0”,其他狀態為“1”)。于是要搭建真正的“或門”,我們需要再在此電路的輸出上擺上一個單入單出的紅石火炬(“非門”)。同時我們也可以了解到,多輸入的紅石火炬方塊實質上是一個“或非門”(“或門”“非門”的串聯結構),只有再多加一個“非門”才能還原為正式的“或門”(兩個“非門”一起,則狀態還原)。
下面兩圖就是已經完成的邏輯“或門”,大家可以對照條件驗證。
瀏覽量:72022-07-19
瀏覽量:12021-05-31
瀏覽量:02021-05-29
瀏覽量:02021-05-17
瀏覽量:02021-04-23
瀏覽量:02019-10-13