新聞中心
本文章介紹的是需要復(fù)雜的紅石電路進(jìn)行組合建造的 機(jī)械裝置。關(guān)于進(jìn)階紅石電路,請(qǐng)見(jiàn)“
紅石電路”。
紅石電路與現(xiàn)實(shí)生活中的數(shù)字電路(基于布爾邏輯代數(shù))基本可以等同看待。如果你熟悉高等教育中的數(shù)字電路與初等計(jì)算機(jī)科學(xué)的知識(shí)的話,本篇目對(duì)你來(lái)說(shuō)將較為容易理解。
目錄
- 1 計(jì)算機(jī)
- 1.1 算術(shù)邏輯
- 1.1.1 半加器
- 1.1.2 全加器(1位)
- 1.1.2.1 活塞全加器
- 1.1.2.2 交替全加器
- 1.1.3 4位加法器
- 1.2 邏輯單元(2-4譯碼器)
- 1.3 二進(jìn)制轉(zhuǎn)換為八進(jìn)制(3-8譯碼器)
- 1.4 二進(jìn)制轉(zhuǎn)換為十進(jìn)制/十六進(jìn)制(4-10或4-16譯碼器)
- 1.5 十六進(jìn)制轉(zhuǎn)換為二進(jìn)制(16-4編碼器)
- 1.5.1 示例-順序敏感的3位十進(jìn)制數(shù)密碼鎖
- 1.1 算術(shù)邏輯
- 2 雜項(xiàng)
- 2.1 對(duì)順序不敏感的密碼門(mén)
- 2.1.1 RS或非密碼鎖
- 2.1.2 與門(mén)密碼鎖
- 2.1.3 或門(mén)密碼鎖
- 2.2 信號(hào)分類(lèi)輸出裝置
- 2.3 順序敏感的RS或非密碼鎖
- 2.1 對(duì)順序不敏感的密碼門(mén)
- 3 參考
- 4 相關(guān)頁(yè)面
計(jì)算機(jī)[ ]
主條目: 教程/紅石計(jì)算機(jī)
在Minecraft中,一些游戲內(nèi)的系統(tǒng)在計(jì)算機(jī)科學(xué)中與圖靈機(jī)等價(jià)——也就是說(shuō)這樣你可以建構(gòu)信息處理的裝置。這些系統(tǒng)包括:水,沙子,礦車(chē),活塞與紅石。
這些系統(tǒng)中只有紅石是特別為信息處理而設(shè)計(jì)的,主要以紅石信號(hào)的方式來(lái)表示。
紅石與電力類(lèi)似,具有高適應(yīng)性與較快的切換速度。就像在現(xiàn)實(shí)世界中電力取代了蒸汽動(dòng)力成為高科技的基石一樣,前述的這些特性使紅石力壓其他機(jī)械系統(tǒng),成為Minecraft中最具有科技含量的部分。
現(xiàn)代數(shù)字電路與紅石工程在復(fù)雜信息處理的應(yīng)用時(shí)。都被簡(jiǎn)化為抽象的從基本到復(fù)雜的多層次結(jié)構(gòu)。
第一層是最基本的組件:紅石粉、紅石火把、紅石中繼器、活塞、按鈕、拉桿與壓力板等所有與紅石信號(hào)相關(guān)的方塊。
第二層是二進(jìn)制邏輯門(mén);他們是能夠處理有限位(一般是1-3位)的混合裝置。
第三層是由邏輯門(mén)組合而成的高階組件。這些組件用于處理模式化的位數(shù)據(jù),一般能夠?qū)⑵渚幋a為更加易讀的數(shù)字。例如數(shù)學(xué)加法器,組合鎖具,寄存器等。
第四層,也是最后一層,是由一系列的高階組件組合成的功能型計(jì)算機(jī)系統(tǒng),通常能夠在不需要人工維護(hù)的情況下處理任意數(shù)據(jù)。
一個(gè)8位寄存器,屬于第三層結(jié)構(gòu)
算術(shù)邏輯[ ]
主條目: 教程/算術(shù)邏輯
半加器[ ]
邏輯門(mén):異或門(mén),蘊(yùn)含門(mén)
紅石火把數(shù)量:12
紅石粉數(shù)量:7
方塊數(shù)量:19
尺寸:5X4X4
這個(gè)半加器能夠輸出兩個(gè)一位二進(jìn)制數(shù)的和。結(jié)果位輸出到輸出端S(英文Sum,加法和之意)。如果兩個(gè)數(shù)字都是1,那么會(huì)產(chǎn)生進(jìn)位1到輸出端C(Carry,進(jìn)位之意)(C會(huì)變?yōu)?)。這個(gè)半加器可以被修改為具有同相輸出的C端,但圖中這種結(jié)構(gòu)在全加器鏈中可以照搬。
注:由于紅石線的新特性,本結(jié)構(gòu)已經(jīng)失效!為了應(yīng)急,你可以先使用下面的全加器,只要不使用C輸入端即可。
全加器(1位)[ ]
邏輯門(mén):同或門(mén)(2),蘊(yùn)含門(mén),非門(mén),或門(mén),與門(mén)
紅石火把數(shù)量:16
紅石粉數(shù)量:32
方塊數(shù)量:48
尺寸:從上到下6X12X5,包括輸入/輸出端。
這個(gè)全加器能夠?qū)蓚€(gè)一位二進(jìn)制數(shù)與前一個(gè)加法器的進(jìn)位C相加(事實(shí)上是C而不是C,第一層的左下部),產(chǎn)生一個(gè)和(S端)和進(jìn)位(事實(shí)上是C而不是C)。
如果要改造為減法器,把其中一個(gè)二進(jìn)制輸入取反(第一個(gè)或第二個(gè)數(shù))即可。想把第幾個(gè)輸入作為被減數(shù),就取反第幾個(gè)輸入。如此改造成減法器時(shí),輸出計(jì)算結(jié)果也是反向的。在現(xiàn)實(shí)世界中的計(jì)算機(jī)里,二進(jìn)制帶符號(hào)數(shù)的第一位(也被稱(chēng)為“標(biāo)志位”)決定了該二進(jìn)制數(shù)的正負(fù),如果你把這個(gè)特性(應(yīng)用相同的反相規(guī)則)引入,你就可以得知該數(shù)字是負(fù)數(shù),還僅僅只是一個(gè)較大的數(shù)字。
當(dāng)使用上述的邏輯門(mén)時(shí),注意輸入與輸出,你可能會(huì)對(duì)為什么這里使用了如此多的反相信號(hào)而不是同相信號(hào)有疑問(wèn)。這個(gè)全加器使用了比異或門(mén)更能實(shí)現(xiàn)壓縮的同或門(mén),同理,蘊(yùn)含門(mén)比與門(mén)更為壓縮。因此如果你想壓縮全加器的體積,必須使用反相信號(hào)。如果用能夠表示2層方格的符號(hào)來(lái)表示,圖像將十分復(fù)雜,因此我們將每一層都單獨(dú)用圖表表示了出來(lái),而且也方便你分層次地建造。
活塞全加器[ ]
1位活塞全加器
2位活塞全加器
紅石火把數(shù)量:3
黏性活塞數(shù)量:2
紅石中繼器數(shù)量:8
紅石粉數(shù)量:16
方塊數(shù)量:7
交替全加器[ ]
進(jìn)位輸入與輸出端對(duì)稱(chēng),這樣你能夠方便的壓縮并組合多個(gè)這樣的單元。
紅石火把數(shù)量:14
紅石線數(shù)量:15
尺寸:5x6x3
4位加法器[ ]
注意!重要性最低的那一位數(shù)就是圖表中的最左邊那位(即“個(gè)位”)。這里之所以標(biāo)明,是為了向你清楚地說(shuō)明全加器比起半加器的功能優(yōu)勢(shì)——半加器無(wú)法處理比其低一數(shù)位的進(jìn)位。如果你想依據(jù)一般的使用習(xí)慣把個(gè)位放在右邊,那么將圖表左右鏡像處理即可。
注:由于紅石線的新特性,本結(jié)構(gòu)的個(gè)位部分的半加器已經(jīng)失效!為了應(yīng)急,你可以先使用全加器,只要不使用C輸入端即可。
邏輯門(mén):同或門(mén)(7),蘊(yùn)含門(mén)(4),非門(mén)(4),或門(mén)(3),與門(mén)(3)
紅石火把數(shù)量:56
紅石粉數(shù)量:108
方塊數(shù)量:164
尺寸:23X12X5
這個(gè)加法器能夠?qū)蓚€(gè)四位二進(jìn)制數(shù)相加(A與B),產(chǎn)生每一位數(shù)的和(S)與整個(gè)和的進(jìn)位(C,相當(dāng)于第五位)。和的位數(shù)順序與加數(shù)的順序相同,這也就是說(shuō),最左側(cè)的S是和的最低位。這個(gè)4位加法器僅僅是一個(gè)全加器鏈的示例,你可以通過(guò)同樣的構(gòu)造來(lái)建造具有更多位數(shù)加法或減法能力的計(jì)算單元。
邏輯單元(2-4譯碼器)[ ]
在電路中,有時(shí)候你可能需要建造能夠依據(jù)輸入來(lái)選擇輸出的邏輯單元。這樣的邏輯單元能夠用于更復(fù)雜的電路中,比如說(shuō)算術(shù)邏輯單元(ALU)。下面介紹的邏輯單元又被稱(chēng)為2-4譯碼器。
這是一個(gè)2位邏輯單元,依輸入不同可以有4種狀態(tài)。
輸出端在最上面一行,依照11、00、01、10的順序排列(輸入端順序?yàn)樯蟼?cè)的是第一位,下側(cè)第二位)。
下面是另一種采用格雷碼的簡(jiǎn)化版本。輸出端為頂部那行末端的紅石火把。本設(shè)計(jì)能夠被擴(kuò)展到任意位,但會(huì)受到電路延時(shí)的限制。相對(duì)地,輸出排序?yàn)?1、01、00、10。
二進(jìn)制轉(zhuǎn)換為八進(jìn)制(3-8譯碼器)[ ]
3位二進(jìn)制轉(zhuǎn)換為1位八進(jìn)制
這個(gè)裝置是一系列邏輯門(mén)的組合,分為8部分。當(dāng)組合起來(lái)時(shí)能夠?qū)⒁粋€(gè)3位二進(jìn)制數(shù)輸入轉(zhuǎn)換為一位八進(jìn)制數(shù)輸出(未編碼狀態(tài),所以輸出端數(shù)量與進(jìn)制數(shù)相同),功能等同于3-8譯碼器。由于其最大占地面積不過(guò)5x5x3,所以有很強(qiáng)的適應(yīng)性。
右圖的每一部分都可以將輸入端連接到共同的輸入源,但建議你在每一個(gè)輸入端都加一個(gè)反相器以使在該電路與其他電路協(xié)同工作時(shí),輸入端保持獨(dú)立性。
某些部分也可以作為三態(tài)緩沖器使用,或至少你能夠方便地將其改造為三態(tài)緩沖器。
下表與右上圖的8部分一一對(duì)應(yīng)。
| 對(duì)應(yīng)八進(jìn)制數(shù)字 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
|---|---|---|---|---|---|---|---|---|
| 尺寸 | 5x3x2 | 5x3x3 | 5x5x3 | 5x5x3 | 5X3X3 | 5x4x3 | 5x5x3 | 5x5x3 |
| 紅石火把數(shù)量 | 1 | 2 | 2 | 3 | 2 | 3 | 3 | 4 |
| 紅石粉數(shù)量 | 7 | 7 | 12 | 10 | 7 | 7 | 10 | 10 |
二進(jìn)制轉(zhuǎn)換為十進(jìn)制/十六進(jìn)制(4-10或4-16譯碼器)[ ]
4位二進(jìn)制轉(zhuǎn)換為十進(jìn)制/十六進(jìn)制
這個(gè)裝置是一系列邏輯門(mén)的組合,分為10或16部分。當(dāng)組合起來(lái)時(shí)能夠?qū)⒁粋€(gè)4位二進(jìn)制數(shù)輸入轉(zhuǎn)換為一位十進(jìn)制或十六進(jìn)制數(shù)輸出(未編碼狀態(tài),所以輸出端數(shù)量與進(jìn)制數(shù)相同),功能等同于4-10或4-16譯碼器。由于其最大占地面積不過(guò)3x5x2,所以有很強(qiáng)的適應(yīng)性。
與上一章節(jié)的3-8譯碼器類(lèi)似,右圖的每一部分都可以將輸入端連接到共同的輸入源,但建議你在每一個(gè)輸入端都加一個(gè)反相器以使在該電路與其他電路協(xié)同工作時(shí),輸入端保持獨(dú)立性。
右圖的右下角是一個(gè)說(shuō)明性質(zhì)的圖例,圖表中列出的16個(gè)部分的輸入端皆按此逆時(shí)針順序排列。
| 對(duì)應(yīng)十進(jìn)制/十六進(jìn)制數(shù)字 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 尺寸 | 3x3x2 | 3x4x2 | 3x4x2 | 3x4x2 | 3x4x2 | 3x5x2 | 3x5x2 | 3x5x2 | 3x4x2 | 3x5x2 | 3x5x2 | 3x5x2 | 3x5x2 | 3x5x2 | 3x5x2 | 3x5x2 |
| 紅石火把數(shù)量 | 1 | 2 | 2 | 3 | 2 | 3 | 3 | 4 | 2 | 3 | 3 | 4 | 3 | 4 | 4 | 5 |
| 紅石粉數(shù)量 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 |
十六進(jìn)制轉(zhuǎn)換為二進(jìn)制(16-4編碼器)[ ]
你也可以將一個(gè)十六進(jìn)制信號(hào)轉(zhuǎn)換為一個(gè)4位二進(jìn)制信號(hào)。與前面不同的是,你不再需要除了或門(mén)之外的任何邏輯門(mén)了——因此你只需要分析各個(gè)輸入端與哪幾個(gè)輸出端的對(duì)應(yīng)關(guān)系,然后直接用紅石線連過(guò)去。需要注意的是,為了防止不同輸入端連線的互相干擾,在最終連到輸出端之前你需要用連續(xù)的兩個(gè)非門(mén)或是中繼器來(lái)互相隔離;你也可以選擇在一堆連向某一輸出端的紅石線末端用最簡(jiǎn)單的輸入隔離型或門(mén)(參見(jiàn)紅石電路條目的或門(mén)設(shè)計(jì)方案B或C)。在最終投入使用前請(qǐng)先測(cè)試以保證不會(huì)出錯(cuò)。
下面是十六進(jìn)制與對(duì)應(yīng)二進(jìn)制的列表:
| 十六進(jìn)制數(shù) | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 第4位 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
| 第3位 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 |
| 第2位 | 0 | 0 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 1 | 1 |
| 第1位 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 |
如果你想得到一個(gè)八進(jìn)制轉(zhuǎn)二進(jìn)制的8-3編碼器,在本裝置基礎(chǔ)上剝離第四位輸出與前八位輸入即可。
示例-順序敏感的3位十進(jìn)制數(shù)密碼鎖[ ]
一個(gè)對(duì)順序敏感的3位十進(jìn)制數(shù)密碼鎖邏輯圖
右側(cè)的示例采用了OR(符號(hào)為>=1)、異或門(mén) (符號(hào)為=)、 RS或非鎖存器(符號(hào)為SR)和一些延遲器(符號(hào)為dt*)。依個(gè)人喜好,我采用了同或門(mén)設(shè)計(jì)方案C。
右側(cè)的例子采用了4位設(shè)計(jì),因而你可以設(shè)置一個(gè)十六進(jìn)制的密碼。由于狀態(tài)(0)十六進(jìn)制 == (0000)二進(jìn)制無(wú)法激活系統(tǒng),故你只可以設(shè)置15種密碼(1到F,或0到E)。如果你希望加入第16種,那么請(qǐng)自行編輯電路添加第五位輸入。
接下來(lái)我們將規(guī)定(0)十六進(jìn)制 為 (1111)二進(jìn)制,至于[1,9]區(qū)間內(nèi)的數(shù)請(qǐng)查看上一節(jié)末尾的表格。這樣,我們就可以使用十進(jìn)制數(shù)字作為密碼的外在顯示了。我們必須把十個(gè)按鈕分配到對(duì)應(yīng)的二進(jìn)制數(shù)據(jù)上,請(qǐng)看右圖的前兩列:第一列代表表示為十進(jìn)制(當(dāng)然十六進(jìn)制在[0,9]區(qū)間內(nèi)和十進(jìn)制的表示一樣)的輸入碼;第二列對(duì)應(yīng)著每一個(gè)輸入碼的二進(jìn)制。當(dāng)然你也可以添加更多的按鈕來(lái)對(duì)應(yīng)區(qū)間[A,E],我只是為了講解方便而把那幾位去除了。方框/b1\輸出第一位,方框/b2\輸出第二位,依此類(lèi)推。
接下來(lái)你可以看到用Key[i](i=1,2,3)來(lái)表示的密碼設(shè)置區(qū)。這幾個(gè)Key[i]方框的第一個(gè)輸出均為第一位,第二個(gè)輸出為第二位,依此類(lèi)推。你可以在每個(gè)Key[i]處用拉桿設(shè)置二進(jìn)制加密型的密碼。請(qǐng)參考上一節(jié)末尾的表格,還有(0)十六進(jìn)制:= (1111)二進(jìn)制的特殊對(duì)應(yīng)。如果我們用按鈕輸入了第一位,裝置會(huì)與這一位對(duì)應(yīng)的四位二進(jìn)制數(shù)逐位比較。一旦每一位都正確,才會(huì)輸出置位信號(hào)到下一級(jí)。
因此我們要實(shí)現(xiàn)邏輯運(yùn)算(((b1=b1 & b2=b2) & b3=b3) & b4=b4) =: (b*=b*),在Minecraft中至少需要4個(gè)與門(mén)。這樣我們可以把識(shí)別通過(guò)的信號(hào)存到RS鎖存器/A\中。Key[2]和Key[3]具有同樣的驗(yàn)證比較過(guò)程。
我們必須確認(rèn)如果第二輸入位是錯(cuò)的話狀態(tài)會(huì)被清除。因此我們采用了一個(gè)按鍵觸發(fā)事件(--/b1 OR b2 OR b3 OR b4\--/dt-\--/dt-\--)。請(qǐng)?jiān)趫D中找到包括兩個(gè)"dt-"的那三個(gè)方框。工作原理是:任意鍵按下就會(huì)產(chǎn)生信號(hào),然后再加上一個(gè)小延遲。為了在第二個(gè)輸入位錯(cuò)誤時(shí)復(fù)位/A\,我們進(jìn)行邏輯運(yùn)算(有鍵按下) “與” (非B),即“任何鍵按下且第二位輸入錯(cuò)誤”。這樣如果我們正輸入第一位,/A\不會(huì)被復(fù)位;如果/A\已經(jīng)被激活,那么只有/A\應(yīng)當(dāng)被復(fù)位。因此在第二位輸入錯(cuò)誤而且第一位已經(jīng)輸入時(shí)繼續(xù)邏輯運(yùn)算(B* & A) =: (AB*),這樣/AB*\就復(fù)位了記憶單元/A\。為了避免如果按按鈕時(shí)間過(guò)長(zhǎng)從而使/A\錯(cuò)誤地被復(fù)位的問(wèn)題,我們加入了主延遲元件/dt+\。/AB*\后面的非門(mén)是為了人工復(fù)位而設(shè)計(jì)的(例如可以連接一個(gè)壓力板)。
然后,把整個(gè)復(fù)位電路復(fù)制到Key[2]上去,除了人工復(fù)位端由(非A)引出,自動(dòng)復(fù)位端(即錯(cuò)誤輸入后的)從C引出。從A接來(lái)的人工復(fù)位阻止在第一位未輸入前B就被激活。所以這一系列線路保證了本裝置密碼的順序敏感特性。
問(wèn)題是為什么我們要使用短延遲方塊/dt-\。如果/A\激活后,第二位也成功輸入,那么B激活,(非B)變?yōu)榈碗娖?。但?dāng)(非B)仍然為高電平時(shí),按鍵觸發(fā)事件也被激活,A會(huì)被錯(cuò)誤地復(fù)位——但這一切沒(méi)有發(fā)生。/dt-\方塊的應(yīng)用使得在按鍵觸發(fā)事件被激活之前/B\可以有充足的時(shí)間作出反應(yīng)。
對(duì)于/C\來(lái)說(shuō),只需要引自B的人工復(fù)位端即可以防止C在B激活之前被錯(cuò)誤激活,同時(shí)也能保證在人工復(fù)位端復(fù)位/A\與/B\時(shí),/C\也可以被復(fù)位。
優(yōu)缺點(diǎn):
| + | 你可以在不改變電路的前提下改變每一位密碼。 |
| + | 你可以依據(jù)同樣原理擴(kuò)展比較模塊電路以使密碼鎖支持更多位數(shù)的密碼。 |
| + | 你可以通過(guò)將除了最后一位之外的任何位為(0000)二進(jìn)制來(lái)減少密碼位數(shù)。 |
| + | 你可以將最后一位設(shè)為(0000)二進(jìn)制來(lái)直接使門(mén)打開(kāi)。 |
| - | 想要支持越多的位數(shù),輸入欄就越長(zhǎng)。你可以選擇被編碼的按鍵以保持電路的小規(guī)?!⌒模聦?shí)上輸入編碼電路比起由于位數(shù)增加而使背后巨大的裝置規(guī)模變得更大來(lái)說(shuō),是微不足道的。 |
嚴(yán)格來(lái)說(shuō)不算缺點(diǎn)的缺點(diǎn):本電路中當(dāng)密碼是311時(shí)可能會(huì)出現(xiàn)剛輸入到第二位,密碼鎖就打開(kāi)了。為了防止這種情況,用中繼器在(非A)與(復(fù)位B)之間加一個(gè)延遲即可。
如果你修復(fù)了這一點(diǎn),電路會(huì)因密碼長(zhǎng)度差異而具有以下的加密強(qiáng)度:( ||位數(shù)|| = 2n-1,密碼組合數(shù):||位數(shù)||長(zhǎng)度 )
| 長(zhǎng)度 | 1位數(shù) | 2位數(shù) | 3位數(shù) | 4位數(shù) | 5位數(shù) |
|---|---|---|---|---|---|
| 2 位 | 3 | 9 | 27 | 81 | 243 |
| 3 位 | 7 | 49 | 343 | 2401 | 16807 |
| 4 位 | 15 | 225 | 3375 | 50625 | 759375 |
| 5 位 | 31 | 961 | 29791 | 923521 | 28629151 |
雜項(xiàng)[ ]
對(duì)順序不敏感的密碼門(mén)[ ]
只要特定組合的拉桿拉下或是按鈕按下,門(mén)就會(huì)打開(kāi)。 (注:你需要對(duì)邏輯門(mén)有一定的了解才能理解本設(shè)備的構(gòu)造)
RS或非密碼鎖[ ]
把一系列的按鈕連接到RS鎖存器陣列的S端,然后根據(jù)需要將這些RS鎖存器的Q端或Q端連入一系列與門(mén)的輸入,將與門(mén)的輸出接到鐵門(mén)那里。最后,用一個(gè)單獨(dú)的復(fù)位用按鈕連接所有RS鎖存器的R端。RS鎖存器使用的是Q端(需要按按鈕)還是Q端(不需按按鈕)決定了密碼組合。
簡(jiǎn)單的例子:
這個(gè)例子不具有自動(dòng)關(guān)門(mén)功能。如果加入自動(dòng)復(fù)位電路就可以解決這個(gè)問(wèn)題。
與門(mén)密碼鎖[ ]
基于與門(mén)的組合鎖僅僅需要拉桿開(kāi)關(guān)、與門(mén)和非門(mén)。像下面的例子一樣,與門(mén)鎖具構(gòu)造極其簡(jiǎn)單,但在復(fù)雜系統(tǒng)中不具有動(dòng)態(tài)變化能力,也沒(méi)有自動(dòng)復(fù)位裝置。密碼組合取決于拉桿所附著方塊后面是否有火把附著(起到非門(mén)的作用)。你可以像這個(gè)例子一樣在最末端的與門(mén)處放一個(gè)具有最高權(quán)限的拉桿,只有拉桿拉下時(shí),輸入正確密碼才能開(kāi)門(mén)。
或門(mén)密碼鎖[ ]
或門(mén)密碼鎖就更為簡(jiǎn)便了,當(dāng)所有輸入全部錯(cuò)誤時(shí),輸出才會(huì)無(wú)信號(hào)。
由于或門(mén)密碼鎖的高壓縮性與快速反應(yīng)能力,本裝置對(duì)于地址解碼器與可尋址存儲(chǔ)器(RAM)極其有用。
設(shè)計(jì)方案A。密碼由輸入端那里的紅石火把決定(圖中為1001)。
你也可以通過(guò)把輸入端后的紅石線改成中繼器,從而能夠讓拉桿門(mén)都靠在一起。
同理,你可以擴(kuò)展更多的輸入端。
設(shè)計(jì)方案B。密碼由藍(lán)色區(qū)域那里的反相器決定(圖中為001001)。
N為輸入端數(shù)量 K為你希望設(shè)置的密碼中“1”的個(gè)數(shù)
| 設(shè)計(jì)方案 | A | B |
|---|---|---|
| 尺寸 | 2N-1x3x1 | Nx6x2 |
| 紅石火把數(shù)量 | K | 2N-K |
| 紅石粉數(shù)量 | 3N-K-1 | 2.5N + 2K |
信號(hào)分類(lèi)輸出裝置[ ]
深色方格為裝置本體,淺色方格標(biāo)明擴(kuò)展方式
本裝置構(gòu)造簡(jiǎn)單,實(shí)質(zhì)上只有一個(gè)或門(mén)與一個(gè)與門(mén)。
輸入端為右側(cè)和下側(cè)。這個(gè)設(shè)備將輸入信號(hào)分類(lèi),兩輸入均為“1”時(shí),上側(cè)輸出才為“1”;兩輸入均為“0”,左側(cè)輸出才為0,這樣你就可以統(tǒng)計(jì)兩個(gè)輸入端1與0的個(gè)數(shù)或持續(xù)時(shí)間了。 如圖所示,本設(shè)計(jì)方案十分容易擴(kuò)展。淺色的方格展示了擴(kuò)展的方法與輸入、輸出端的位置。依照?qǐng)D示,將同樣的裝置對(duì)應(yīng)端口接入即可。
3位分類(lèi)輸出裝置的真值表:
| A | B | C | 1 | 2 | 3 |
|---|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 | 0 |
| 1 | 0 | 0 | 1 | 0 | 0 |
| 0 | 1 | 0 | 1 | 0 | 0 |
| 0 | 0 | 1 | 1 | 0 | 0 |
| 1 | 1 | 0 | 1 | 1 | 0 |
| 0 | 1 | 1 | 1 | 1 | 0 |
| 1 | 0 | 1 | 1 | 1 | 0 |
| 1 | 1 | 1 | 1 | 1 | 1 |
順序敏感的RS或非密碼鎖[ ]
這種密碼鎖只有當(dāng)以特定順序按下按鍵時(shí),門(mén)才會(huì)打開(kāi)。
注:你需要對(duì)邏輯門(mén)與MCRS符號(hào)有一定的了解才能理解本設(shè)備的構(gòu)造。
做一系列的按鈕,并只連接其中一個(gè)到RS或非鎖。然后把RS或非鎖與第二個(gè)按鈕連接至通向另一個(gè)RS或非鎖的與門(mén),繼續(xù)這個(gè)步驟下去直到你連接了所有的按鈕或者對(duì)這個(gè)鎖滿意了。把最后一個(gè)的RS或非鎖和一個(gè)來(lái)自輸入按鈕的信號(hào)連接到一個(gè)單獨(dú)的與門(mén),接出到輸出的RS或非鎖。然后把所有剩余的按鈕都連接到其他RS或非鎖的復(fù)位以將重置信號(hào)發(fā)送到每一個(gè)RS或非鎖。在門(mén)旁邊放置一個(gè)壓力板可以將電路重置。這種類(lèi)型的鎖的安全性有嚴(yán)格的限制。比如說(shuō),不是所有按鈕都能被使用,否則這個(gè)系統(tǒng)將無(wú)法重置。
對(duì)于一個(gè)可任意組合大小,使用到了所有的按鈕以及附帶一個(gè)錯(cuò)誤重置系統(tǒng)的鎖,你需要使用不同的方法重置它。為了建造這個(gè)電路,將一組按鈕(任何數(shù)字,最好在四個(gè)以上)連接到一系列對(duì)應(yīng)的中繼器上。進(jìn)行必要的方向翻轉(zhuǎn)以便所有的中繼器都能夠被對(duì)應(yīng)的按鈕充能或去能。這些中繼器為一排方塊提供信號(hào)。在方塊的頂部,放一個(gè)對(duì)應(yīng)于第一個(gè)數(shù)字的錯(cuò)誤按鈕的火把。用紅石粉將正確的按鈕和對(duì)應(yīng)的RS或鎖存器連接起來(lái),使該按鈕能激活RS或鎖存器。在連接著錯(cuò)誤按鈕的火把上方放上一排方塊,并在頂部放上紅石粉。然后將這些紅石粉連接到第一個(gè)RS或鎖存器的復(fù)位。只有按下正確的按鈕才能激活RS或鎖存器,而按下其他的按鈕將會(huì)重置整個(gè)電路。將RS或鎖存器的輸出連接到與門(mén)的一半。在第一排復(fù)位火把之后,放置另一排中繼器和另一排方塊。再把連接錯(cuò)誤的按鈕的紅石線放在連接正確的按鈕的紅石線下面。將正確的按鈕連接到與門(mén)的另一半。只有滿足按對(duì)了第一個(gè)按鈕激活第一個(gè)RS或鎖存器并且正確地按下第二個(gè)按鈕的條件下,與門(mén)才會(huì)發(fā)送一個(gè)信號(hào)來(lái)激活第二個(gè)RS或鎖存器。同樣,將連接錯(cuò)誤的按鈕的火把連接到第二個(gè)RS或鎖存器的復(fù)位線。注:第二個(gè)按鈕也會(huì)重置第一個(gè)RS或鎖存器,你需要用一個(gè)最大延遲的中繼器來(lái)延遲重置信號(hào),以確保在激活第二個(gè)RS或鎖存器之后,重置上一個(gè)RS或鎖存器。繼續(xù)以相同的方式構(gòu)建電路,直到達(dá)到所需的位數(shù)為止。在操作中,當(dāng)一個(gè)按鈕被按下時(shí),每個(gè)RS或鎖存器檢查(通過(guò)與門(mén))是否為先前RS或鎖存器被激活,并且這個(gè)RS或鎖存器正確的按鈕已被按下。只有當(dāng)以正確的順序按下按鈕時(shí),信號(hào)才能通過(guò)條件RS或鎖存器才能把信號(hào)輸出到最后。將最后一個(gè)RS或鎖存器的輸出連接到門(mén)上,并將一條線連接到門(mén)內(nèi)的壓力板上,以重置RS或鎖存器。參見(jiàn)下面鏈接的視頻演示。
參考[ ]
相關(guān)頁(yè)面[ ]
- 紅石電路
- 機(jī)械
- 陷阱
紅石
參見(jiàn): Template:Redstone/content
[編輯]
教程(作下劃線標(biāo)記的教程為中文獨(dú)有教程) |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
當(dāng)前文章:創(chuàng)新互聯(lián)MinecraftWiki教程:計(jì)算機(jī)[]
本文URL:http://fisionsoft.com.cn/article/dpdejjo.html


咨詢
建站咨詢
