跑跑車首頁

當(dāng)前位置:首頁攻略秘籍單機(jī)攻略 → 我的世界十進(jìn)制三位數(shù)比較器原理分析

我的世界十進(jìn)制三位數(shù)比較器原理分析

作者:ufof來源:本站整理 發(fā)表時(shí)間:2015/5/28 16:52:52 評(píng)論(0)

我的世界中比較器是一個(gè)比較有意思也比較有難度的東西,那么今天小編給大家?guī)淼氖荕CBBS的ufof帶來的十進(jìn)制三位數(shù)比較器原理的分析,希望大家喜歡。

比較器一共有四個(gè)部分:

一、輸入部分
二、數(shù)字顯示屏
三、數(shù)字比較器
四、比較顯示屏

先上一張圖:

現(xiàn)在應(yīng)該明白了吧?我們重點(diǎn)分析第三個(gè)部分:比較部分。

我們平常在生活中比較數(shù)字的時(shí)候,邏輯是這樣的:

兩個(gè)數(shù)字:A和B

先比較A的百位數(shù)和B的百位數(shù):
如果A的百位數(shù)>B的百位數(shù),那么A>B
如果A的百位數(shù)<B的百位數(shù),那么A<B
如果A的百位數(shù)=B的百位數(shù),那么往下比較十位數(shù)

如果A的十位數(shù)>B的十位數(shù),那么A>B
如果A的十位數(shù)<B的十位數(shù),那么A<B
如果A的十位數(shù)=B的十位數(shù),那么往下比較個(gè)位數(shù)

以此類推。最后連個(gè)位數(shù)都一樣的話那就說明A=B。

這是我們生活中的邏輯。不過在我的比較器中稍稍有一些改變(雖說基本邏輯是一樣的):


就是說,A和B每一個(gè)位數(shù)都要進(jìn)行比較。
如果A的百位數(shù)和B的百位數(shù)比較結(jié)果不為=,那么結(jié)果是什么就輸出什么,而且十位數(shù)和個(gè)位數(shù)的結(jié)果作廢。
如果A的百位數(shù)和B的百位數(shù)比較結(jié)果為=,那么就要看十位數(shù)的了。

如果A的十位數(shù)和B的十位數(shù)比較結(jié)果不為=,那么結(jié)果是什么就輸出什么,而且個(gè)位數(shù)的結(jié)果作廢。
如果A的十位數(shù)和B的十位數(shù)比較結(jié)果為=,那么就要看個(gè)位數(shù)的了。

最后比較A的個(gè)位數(shù)和B的個(gè)位數(shù),是多少輸出多少。

聽到這里一定一頭霧水吧?為什么要“作廢”?原因是這樣的:

比如說我要比較這兩個(gè)數(shù)字:
432 342
A的百位數(shù)是4,B的百位數(shù)是3
A的十位數(shù)是3,B的十位數(shù)是4
A的個(gè)位數(shù)是2,B的個(gè)位數(shù)是2

A的百位數(shù)>A的百位數(shù)
A的十位數(shù)<B的十位數(shù)
A的個(gè)位數(shù)=B的個(gè)位數(shù)

如果沒有“作廢”動(dòng)作,你就會(huì)發(fā)現(xiàn):臥槽!  大于、小于、等于都亮了!

所以說就得要有“作廢”的機(jī)制。不然會(huì)出現(xiàn)混亂。

具體的邏輯我已經(jīng)講完了,現(xiàn)在再來講講如何應(yīng)用到MC當(dāng)中去。

關(guān)于比較:
先上整體圖:

比較單位數(shù)是這樣的:
比如說A的百位數(shù)為x,B的百位數(shù)為y

那么我們需要:
x-y
y-x

如果x-y>0,那么x>y
如果y-x>0,那么y>x
如果都為0,那么x=y

上圖就是一位數(shù)的比較。

那“作廢”是如何達(dá)到的呢?

這是一個(gè)十位數(shù)的輸出。活塞由百位數(shù)的輸出控制。如果活塞推動(dòng),那么十位數(shù)的輸出會(huì)被強(qiáng)行阻斷。這就是“作廢”原理。

再來說說最終輸出:

這個(gè)是大于和小于。但是你現(xiàn)在肯定會(huì)問:等于呢??

等于在后面:

如果兩個(gè)數(shù)字既不大于也不小于,那就肯定是等于。所以我把兩個(gè)信號(hào)的或門去了一個(gè)非門,這樣就可以達(dá)到:兩個(gè)都為關(guān)的時(shí)候輸出為開。


玩家評(píng)論
我要點(diǎn)評(píng)

網(wǎng)名 注:您的評(píng)論需要經(jīng)過審核才會(huì)顯示出來。

已有 0 位玩家參與點(diǎn)評(píng)
下載排行