在數(shù)字系統(tǒng)中,特別是在計(jì)算機(jī)中都需具有運(yùn)算功能,一種簡(jiǎn)單的運(yùn)算就是比較兩個(gè)數(shù)a和b的大小。數(shù)值比較器就是對(duì)兩數(shù)a、b進(jìn)行比較,以判斷其大小的邏輯電路。比較結(jié)果有a>b、a<b以及a=b三種情況。
1.一位數(shù)值比較器
1位數(shù)值比較器是多位比較器的基礎(chǔ)。當(dāng)a和b都是1位數(shù)時(shí),它們只能取0或1兩種值,由此可寫出1位 數(shù)值比較器的真值表,如表1所示。
表1 1位數(shù)值比較器的真值表
由真值表得到如下邏輯表達(dá)式:
fa>b=ab
fa<b=ab
fa=b=a·b+ab
由以上邏輯表達(dá)式可畫出如圖1所示的邏輯電路。實(shí)際應(yīng)用中,可根據(jù)具體情況選用邏輯門。
圖1 1位數(shù)值比較器的邏輯圖
2.兩位數(shù)值比較器
現(xiàn)在分析比較兩位數(shù)字a1a0和 b1b0的情況。利用1位比較器的結(jié)果,可以列出簡(jiǎn)化的真值表,如表2所示。為了減少符號(hào)的種類,不再使用字母l,而以(ai>bi)、(ai<bi)、(ai=bi)直接表示邏輯函數(shù)??梢杂烧嬷当韺?duì)兩位比較器作如下簡(jiǎn)要概述。
表2 真值表
當(dāng)高位(a1、b1)不相等時(shí),無(wú)需比較低位(a0、b0),兩個(gè)數(shù)的比較結(jié)果就是高位比較的結(jié)果。當(dāng)高位相等時(shí),兩數(shù)的比較結(jié)果由低位比較的結(jié)果決定。由表2可以寫出如下邏輯表達(dá)式:
根據(jù)表達(dá)式畫出邏輯圖,如圖2所示。電路利用了1位數(shù)值比較器的輸出作為中間結(jié)果。它所依據(jù)的原理是,如果兩位a1a0和b1b0的高位不相等,則高位比較結(jié)果就是兩數(shù)比較結(jié)果,與低位無(wú)關(guān)。這時(shí),由于中間函數(shù)(a1=b1)=0,使與門g1、g2、g3均封鎖,而或門都打開(kāi),低位比較結(jié)果不能影響或門,高位比較結(jié)果則從或門直接輸出。如果高位相等,即(a1=b1)=1,使與門g1、g2、g3均打開(kāi),同時(shí)由(a1>b1)=0和(a1<b1)=0作用,或門也打開(kāi),低位的比較結(jié)果直接送達(dá)輸出端,即低位的比較結(jié)果決定兩數(shù)的大、小或者相等。
圖2 兩位數(shù)值比較邏輯圖