日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

泰拉瑞亞電路裝置有哪些技巧 泰拉瑞亞電路裝置技巧匯總( 三 )


無論如何,這只是一個如何組合設備的基本例子 。在構建更大的設備堆棧時,請記住我提到的規(guī)則(每比特一根垂直線、交替的電線顏色和單獨的觸發(fā)器線),因為我將在后面的教程中展示的大多數設備都將使用這些規(guī)則 。
使用比較器比較數值
比較器是將兩個數值作為輸入,并確定它們是相等的還是一個值大于另一個值的裝置(比較大小) 。
要建造一個二進制數值的比較器,需要考慮關于二進制數的兩個很明顯但是重要的事實: 1大于0;1在較高的地方(即左邊)的數值大于1在較低的地方 。
知道這些之后,您可以比較兩個二進制數字,方法是從左到右掃描它們,并找到第一個出現在同一位置的兩個位不匹配的情況 。
例如,00110110大于00110010 。
如果您查看每個數字中最左邊的位,然后一次向右移動一位,直到找到不匹配的位為止,你就會知道,結果是1的位,就必須是更大的數字 。
如果,在比較數字時,沒有匹配過一對不同的位,那么你就知道這兩個數字是相等的 。
下面是使用故障燈門實現此過程的方法:

泰拉瑞亞電路裝置有哪些技巧 泰拉瑞亞電路裝置技巧匯總



泰拉瑞亞電路裝置有哪些技巧 泰拉瑞亞電路裝置技巧匯總


這個比較器包含一個單比特比較(一行),它會觸發(fā)三個輸出端中的一個,從上到下的輸出端的情況分別是藍色=綠色、藍色>綠色和藍色<綠色 。
如果是單獨比較一個位,你可以看到藍線和綠線的位都連接到頂端的一對故障燈門 。如果位不同,這對門將向紅線發(fā)送信號,如果它們相同則向黃線發(fā)送信號,從而繼續(xù)下一位的比較 。
如果位不同,則紅線觸發(fā)一對僅由綠線控制的故障燈門 。如果綠線連接的位關閉,則“藍色>綠色”的輸出端將被觸發(fā),因為藍線連接的位必須打開 。但是,如果綠線連接的位打開,則觸發(fā)“藍色<綠色”的輸出端 。

使用Shift-Add算法來建造一個乘法器
現在你已經知道了如何使用累加器執(zhí)行二進制加法,現在是使用累加器建造乘法器的時候了 。
在二進制中,乘法可以通過兩種方式完成 。要執(zhí)行X*Y,只需將X加進累加器Y次,也可以使用更有效的方法:Shift -Add 。Shift-Add類似于用手乘十進制數的長乘法方法 。在豎式乘法中(就是小學學的那個筆算多位數相乘的方法),把X乘以Y的每一位數字,然后把每一個結果相加在一起即為解(這里不需要多說) 。
類似地,使用Shift-Add,掃描Y中的每個位,對于每個數值為1的位,都會將X加到累加器中一次 。在每一步之后,左移X以便將其值增加到下一個位置 。
Terraria中的乘法器(示例)如下:
泰拉瑞亞電路裝置有哪些技巧 泰拉瑞亞電路裝置技巧匯總



泰拉瑞亞電路裝置有哪些技巧 泰拉瑞亞電路裝置技巧匯總


正如你所看到的,這是我向你展示的第一個需要一個半磚驅動來操作的裝置 。這是因為Shift-Add方法需要對每一位都執(zhí)行一次運算,在這種情況下需要執(zhí)行8次 。
從上到下的第一行表示Y值,第二行表示X值,底部的一行用來保存結果 。當左下角開關被激活時,半磚驅動開啟并激活產生一次移位,并在每個tick中執(zhí)行一次操作 。在每次操作中,通過右移位從Y值中讀取單個位 。如果來自Y的一個位的值為1,則黃線觸發(fā)一組故障燈門,將X的當前值發(fā)送到累加器 。然后,X值被左移 。請注意,在Y值的右移和X值的左移之間放置了一個額外的故障燈門 。這是為了確保X值在被左移之前會被發(fā)送到累加器 。然后,半磚驅動重復這8tick的整個過程,直至完成乘法運算 。

推薦閱讀