【題目1】:模擬信號和數字信號有何區別?各有什麽(me) 特點?
【相關(guan) 知識】:模擬信號、數字信號,及其處理方法。
【解題方法】:理解題。
【解答過程】:通常講的模擬信號是指該信號的大小隨時間連讀變化的電信號,不會(hui) 有突變。如正弦交流電信號,可以用下式表示。它的特點是連讀,並能用相位、幅值和時間來描述,有瞬時值,幅值等參數。
而數字信號在時間上是離散的,幅值上隻區別兩(liang) 個(ge) 截然不同的值或狀態,而並不要求對具體(ti) 的大小進行量化。兩(liang) 個(ge) 不同的值或狀態可以用二進製數“1”和“0”來表示。兩(liang) 個(ge) 不同的數值或狀態在電路上實現起來非常方便,如開關(guan) 的閉合或斷開,晶體(ti) 管的飽和導通或截止等等。
【題目2】:代數法化簡和卡諾圖法化簡有何聯係?
【相關(guan) 知識】:邏輯函數化簡的兩(liang) 種基本方法,1~5變量卡諾圖的畫法等。
【解題方法】:卡諾圖化簡其實質是合並最小項,隻不過將最小項按一定規律進行排序,並在個(ge) 最小項中,提取公共變量後消去其它變量,以達到簡化的目的。
【解答過程】:代數法化簡邏輯函數式,是運用邏輯代數的定律、定理、規則對邏輯式進行變換,以消除多餘(yu) 的與(yu) 項和變量。代數法化簡沒有普遍適用規律,有時需要一定的經驗和熟練的技巧。
卡諾圖法化簡的實質是合並最小項,以消除多餘(yu) 的變量。因為(wei) 卡諾圖中的一個(ge) 小方格就是一個(ge) 最小項,但是小方格與(yu) 小方格之間的關(guan) 係必須是相鄰的關(guan) 係,即卡諾圖中的上下、左右,前後小方格的最小項必須保持隻有一個(ge) 變量不同,其餘(yu) 的變量都相同,才能實現(n=1,2,3,…,整正數)個(ge) 相鄰方格的最小項合並。其合並結果是消除n個(ge) 變量。可見合並的最小項範圍越大,可以消除的變量就越多。這樣做非常直觀、便捷。
如果在已知與(yu) 或表達式的情況下,將該式轉換成最小項之和式後,再象卡諾圖那樣找出個(ge) 相鄰最小項進行合並,就很困難了。可見代數法化簡和卡諾圖法化簡具有相同的內(nei) 在關(guan) 係,隻是處理方法不一樣而已。
【題目3】:為(wei) 什麽(me) 兩(liang) 個(ge) 二進製數之間的減法運算可以用它們(men) 的補碼相加來實現?
【相關(guan) 知識】:二進製數,二進製數的加法運算,正負二進製數的表示,二進製數的原碼、反碼和補碼表示等。
【解題方法】:可以從(cong) 日常生活中的時鍾校時方法加以理解。聯係時鍾校時的兩(liang) 種方法,順時針校時和反時針校時,就可以想到減法可以用補碼相加代替了。
【解答過程】:我們(men) 已經知道,在數字電路中是用邏輯電路輸出的高、低電平表示二進製數的1和0的。那麽(me) 數的正、負又如何表示呢?通常采用的方法是在二進製數的前麵增加一位符號位。符號位為(wei) 0表示這個(ge) 數是正數,符號位為(wei) 1表示這個(ge) 數是負數。這種形式的數稱為(wei) 原碼。
在作減法運算時,如果兩(liang) 個(ge) 數是用原碼表示的,則首先需要比較兩(liang) 數絕對值的大小,然後以絕對值大的一個(ge) 作為(wei) 被減數、絕對值小的一個(ge) 作為(wei) 減數,求出差值,並以絕對值大的一個(ge) 數的符號作為(wei) 差值的符號。不難看出,這個(ge) 操作過程比較麻煩,而且需要使用數值比較電路和減法運算電路。如果能用兩(liang) 數的補碼相加代替上述的減法運算,那麽(me) 計算過程中就無需使用數值比較電路和減法運算電路了,從(cong) 而使運算器的電路結構大為(wei) 簡化。
為(wei) 了說明補碼運算的原理,我們(men) 先來討論一個(ge) 生活中常見的事例。例如你在5點鍾的時候發現自己的手表停在10點上了,因而必須把表針撥回到5點。由圖E4b20334001-01Z上可以看出,這時有兩(liang) 種撥法:第一種撥法是往後撥5格,(因10-5=5),可撥回到5點;另一種撥法是往前撥7格,(因10+7=17)。由於(yu) 表盤的最大數是12,超過12以後的“進位”將自動消失,於(yu) 是就隻剩下減去12以後的餘(yu) 數了,即17-12=5,由此也可把表針撥回到5點。這個(ge) 例子說明,10-5的減法運算可以用10+7的加法運算代替。因為(wei) 5和7相加正好等於(yu) 產(chan) 生進位的模數12,所以我們(men) 稱7為(wei) -5對模12的補數,也叫做補碼。
從(cong) 這個(ge) 例子中可以得出一個(ge) 結論,就是在舍棄進位的條件下,減去某個(ge) 數可以用加上它的補碼來代替。這個(ge) 結論同樣適用於(yu) 二進製數的運算。
圖E4b20334001-02Z中給出了4位二進製數補碼運算的一個(ge) 例子。由圖可見,1011-0111=0100的減法運算,在舍棄進位的條件下,可以用1011+1001=0100的加法運算代替。因為(wei) 4位二進製數的進位基數是16(10000),所以1001(9)恰好是0111(7)對模16的補碼。
為(wei) 了避免作減法運算,在求負數的補碼時可以先求出二進製數原碼的反碼(將數字代碼中每一位的取值求反,即0改為(wei) 1,1改為(wei) 0,符號位保持不變),然後在最低位加1而得到補碼。例如有一個(ge) 4位二進製的負數,它的原碼為(wei) 10101(最左邊一位是符號位),則它的反碼為(wei) 11010。在反碼的最低位加1後得到補碼為(wei) 11011。將這個(ge) 補碼和它的原碼相加(不包括符號位),得到的正好是10000(16),也就是4位二進製數的進位基數,因此11011是10101的補碼。
至此我們(men) 可以歸納出以下幾點簡單的結論:
1.二進製數原碼的定義(yi)
二進製數的原碼是在它的數值前麵設置一位符號位而得到的。正數的符號位是0,負數的符號位是1。
2. 二進製數補碼的定義(yi)
正數的補碼與(yu) 原碼相同。
負數的補碼可以通過將每一位數值求反,然後在最低位加1而得到(符號位保持不變)。
3.兩(liang) 個(ge) 二進製數的加、減運算都可以用它們(men) 的補碼相加來實現,得到的運算結果也是補碼形式。
4. 進一步的分析表明,在將兩(liang) 個(ge) 數的補碼相加時,如果將兩(liang) 個(ge) 補碼的符號位和數值部分產(chan) 生的進位相加,則得到的和就是兩(liang) 個(ge) 二進製數相加後代數和的符號。
例如要計算0101-1001,則可以先求出0101和-1001的補碼00101和10111(最高位為(wei) 符號位),再將兩(liang) 個(ge) 補碼相加而得到:
如果需要求出負數補碼對應的原碼,隻要對這個(ge) 補碼再求一次補碼就可以得到了。
【題目4】:什麽(me) 是約束項、任意項和無關(guan) 項?為(wei) 什麽(me) 在具有約束條件的邏輯函數化簡時,應該盡量使用約束條件。用代數法化簡一個(ge) 邏輯函數時,如何利用約束項使函數化成最簡?
【相關(guan) 知識】:邏輯運算,邏輯函數,最小項和最大項的概念,邏輯運算中的常用公式,運算規則。
【解題方法】:通過實例,說明什麽(me) 是約束項、任意茂和無關(guan) 項,以及它們(men) 的異同點。
【解答過程】:我們(men) 在分析一個(ge) 邏輯函數時經常會(hui) 遇到這樣一類情況,就是輸入邏輯變量的某些取值始終不會(hui) 出現。因此,在這些取值下等於(yu) 1的那些最小項,也將始終為(wei) 0。這些取值始終為(wei) 0的最小項,就叫做該函數的約束項。
例如要求設計一個(ge) 邏輯電路,用水箱中水位高度的檢測信號A、B、C控製兩(liang) 個(ge) 水泵和
的啟、停工作狀態見圖E4b20181001-01Z。如果用
和
分別表示兩(liang) 個(ge) 水泵的工作狀態,則
和
為(wei) A、B、C三個(ge) 變量的邏輯函數。假定水位高於(yu) A、B、C中的任何一個(ge) 檢測點時給出的檢測信號為(wei) 1,水位低於(yu) 任何一個(ge) 檢測點時給出的檢測信號為(wei) 0,則水箱工作過程中ABC的取值隻可能出現100、110、111和000這四種狀態,而不可能出現001、011、101和010這四種狀態,因為(wei) 水位永遠不會(hui) 高於(yu) B或C而同時又低於(yu) A。因此,與(yu) ABC的取值001、011、101和010對應的四個(ge) 最小項
、
、
和
將永遠是0,這四個(ge) 最小項就是
和
的約束項。
既然在工作過程中約束項的值永遠是0,那麽(me) 我們(men) 就可以在和
的邏輯函數式中加上這些約束項,或不加上這些約束項,而不會(hui) 影響
和
的取值。也就是說
和
的取值與(yu) 是否加上了約束項沒有關(guan) 係,因此約束項又是邏輯函數式中的無關(guan) 項。
在分析和設計邏輯電路時,還可能遇到另外一種情況,就是在輸入變量的某些取值下,邏輯函數值等於(yu) 1還是等於(yu) 0都可以,對電路的邏輯功能沒有影響。在這些變量取值下等於(yu) 1的那些最小項,就叫做這個(ge) 邏輯函數的任意項。
例如要設計一個(ge) 拒絕偽(wei) 碼的七段顯示譯碼器,其真值表如表1.2.1。所謂拒絕偽(wei) 碼,係指在輸入為(wei) 1010~1111時輸出無任何字形顯示,即a~g輸出全都等於(yu) 0。
由表1.2.1可以看出,這個(ge) 譯碼器是一個(ge) 有4個(ge) 輸入變量和7個(ge) 輸出函數的組合邏輯電路。如果我們(men) 采用圖E4b20181001-01Z的電路結構,在a~g的輸出端增加一級緩衝(chong) 器,同時還在緩衝(chong) 器的輸入增加一個(ge) 控製信號,那麽(me) 當DCBA=1010~1111時,不論a~g是1還是0,
~
肯定等於(yu) 0,所以
~
仍然符合表1.2.1的要求。
這就是說,當DCBA取值為(wei) 1010~1111時,a~g每個(ge) 函數輸出的取值是1或0都可以,不影響最後的輸出~
。因此,在DCBA取值為(wei) 1010~1111時,其值為(wei) 1的六個(ge) 最小項
、
、
、
、
和為(wei)
數a~g的任意項。在化簡a~g的邏輯函數式時,既可以在式中寫(xie) 入這些任意項,也可以不寫(xie) 進這些任意項,所以任意項也是邏輯函數式中的無關(guan) 項。這樣我們(men) 就可以把表1.2.1改寫(xie) 為(wei) 表1.2.2的形式了。表中的×仍然表示無關(guan) 項。
雖然任意項和約束項都是邏輯函數式中的無關(guan) 項,但二者是有區別的。因為(wei) 約束項的取值永遠是0,所以在邏輯函數式中無論寫(xie) 入約束項還是去掉約束項,都不會(hui) 改變函數的輸出值。而任意項則不同,當我們(men) 在邏輯函數式中寫(xie) 入某個(ge) 任意項之後,則輸入變量的取值使這個(ge) 任意項的值為(wei) 1時,函數的輸出值也為(wei) 1;如果從(cong) 邏輯函數式中將這個(ge) 任意項拿掉,則輸入變量取值使這個(ge) 任意項的值為(wei) 1時,函數的輸出值等於(yu) 0。
【題目5】:如何判斷一個(ge) 邏輯函數已化到了最簡?化簡邏輯函數有什麽(me) 實際意義(yi) ?
【相關(guan) 知識】:邏輯函數的與(yu) 或表達式和邏輯函數的代數法化簡等。
【解題方法】:為(wei) 了便於(yu) 實現邏輯電路,邏輯函數常用“與(yu) 或”表達式表示。因此,是否化到最簡主要看與(yu) 項數目和每個(ge) 與(yu) 項所包含的變量數是否最少。
【解答過程】:一個(ge) 與(yu) 或表達式是否已達到最簡,主要看兩(liang) 個(ge) 方麵:一是表達式中“與(yu) ”項的數目是否最少了,即表達式中的與(yu) 項是否不能再合並了;第二是在與(yu) 項相同的條件下,檢查每個(ge) 與(yu) 項所包含的變量數是否達到了最少。因為(wei) 減少與(yu) 項可以節省與(yu) 門個(ge) 數,減少與(yu) 項中的變量數可以減少門的輸入端個(ge) 數。
【題目6】:邏輯函數的不同表示方法之間是如何進行轉換的?
【相關(guan) 知識】:邏輯函數真值表、邏輯函數的與(yu) 或表達式、卡諾圖、最小項、標準與(yu) 或表達式。
【解題方法】:通過1.由真值表求邏輯函數式;2.由邏輯函數式求真值表;3.卡諾圖與(yu) 邏輯函數表達式之間的轉換,一、一加以說明。
【解答過程】:同一個(ge) 邏輯問題,可以采用多種方法表示。而這些描述同一個(ge) 問題的邏輯表示之間都能實現方便的轉換。
1.由真值表求邏輯函數式和邏輯電路
把真值表中使邏輯函數值為(wei) 1的輸入變量組合寫(xie) 成對應的與(yu) 項。若對應的變量取值為(wei) 1,則寫(xie) 成原變量;若對應的變量取值為(wei) 0,則寫(xie) 成反變量。然後將這些與(yu) 項全部“或”起來,就得到了邏輯函數式。
對應於(yu) 邏輯函數式的反變量,采用非門邏輯符號;與(yu) 項用與(yu) 門邏輯符號,多個(ge) 與(yu) 項相“或”用或門邏輯符號;將它們(men) 按邏輯運算關(guan) 係連接起來,就能得到實現邏輯要求的邏輯電路。
2. 由邏輯函數式求真值表
隻要把邏輯函數式中所有輸入變量按“0”、“1”取值,代入所有組合中(—n是函數的變量數)進行運算,求出相應的邏輯函數值(結果)填入真值表中的相應行即可。
3. 卡諾圖與(yu) 邏輯函數表達式之間的轉換
先將邏輯函數化為(wei) 最小項之和的形式(即標準與(yu) 或表達式),接著畫出與(yu) 函數變量數相對應的卡諾圖,在卡諾圖中,凡是與(yu) 表達式對應的最小項的小方格內(nei) 填入“1”,其他小方格內(nei) 填入“0”。這樣便得到了邏輯函數式的卡諾圖。
【題目7】:正負邏輯門電路符號間有什麽(me) 對應的關(guan) 係如何?
【相關(guan) 知識】:正負邏輯的定義(yi) 。
【解題方法】:通過真值表表示正負邏輯,能比較清楚地理解正負邏輯之間的關(guan) 係。
【解答過程】:我們(men) 知導,高電平用“1”表示,低電平用“0”表示,是正邏輯的定義(yi) ;如果高電平定義(yi) 為(wei) “0”,低電平定義(yi) 為(wei) “1”,這是負邏輯的定義(yi) 。因此以2個(ge) 變量為(wei) 例,當結果為(wei) “1”時,正邏輯表示的“與(yu) ”邏輯真值表對應於(yu) 負邏輯表示的“或”邏輯真值表。圖示是幾種常用正負邏輯之間的對應關(guan) 係。
邏輯符號間的對應關(guan) 係為(wei) :
【題目8】:怎樣讓一個(ge) 邏輯函數用最小項之和表示或者用最大項之積表示?
【相關(guan) 知識】:邏輯函數的化簡,反函數的概念,最小項,最大項。
【解題方法】:同一個(ge) 邏輯關(guan) 係可以用兩(liang) 種標準的函數表達式表示,實際上是一種互補的表示方法。
【解答過程】:大家知道,包含n個(ge) 變量的邏輯函數,可以用個(ge) 標準的與(yu) 項之和形式表示出來。那麽(me) 什麽(me) 是標準“與(yu) 項”呢?
假如一個(ge) 函數有三個(ge) 變量A、B、C,則它最多有個(ge) 標準的與(yu) 項(最小項),
、
、
、
、
、
、
、
。
一個(ge) 函數表達式假如是由各最小項之和表示的,則該表達式就稱為(wei) 最小項之和表達式。如:
顯然,同一個(ge) 邏輯函數,也可用標準的或項之積表示。這標準的或項就是最大項。
如上述的邏輯函數有3個(ge) 變量,所以有8個(ge) 最小項,但函數中隻出現4個(ge) ,這4個(ge) 最小項取值為(wei) 1,而另外4個(ge) 最小項取值為(wei) 0。因此,我們(men) 也可以用反函數的形式寫(xie) 出該表達式,即:
將兩(liang) 邊同時求反,便可變為(wei) 原函數:
【題目9】:畫卡諾圖時,具有二個(ge) 變量以上的邏輯函數的邏輯相鄰性如何確定?有何規律?
【相關(guan) 知識】:最小項,卡諾圖,邏輯相鄰性,循環碼(格雷碼)。
【解題方法】:根據循環碼的任何相鄰二組代碼之間隻有一個(ge) 變量不同,這正好與(yu) 卡諾圖小方格的要求一致。
【解答過程】:大家知道,循環碼(即格雷碼)具有這樣的特征:任何相鄰二組代碼之間隻存在一個(ge) 不同變量,這一點正好與(yu) 邏輯相鄰性定義(yi) 一致,(隻有一個(ge) 變量不同的二個(ge) 與(yu) 項,邏輯上稱其為(wei) 相鄰)。
因此,在畫多變量卡諾圖時,按循環碼規律就能得到正確的卡諾圖。
如四變量(A、B、C、D)卡諾圖,分別有四行、四列,它們(men) 分別按二變量的循環碼排列:列AB按00、01、11、10排序;行 CD按00、01、11、10循環碼排列。四變量卡諾圖如圖所示,圖(a)是標準畫法,圖(b)是另一種畫法,但不管是二變量還是三變量,都是按照格萊碼規律排列的。
【題目10】:具有無關(guan) 項的邏輯函數如何化簡?
【相關(guan) 知識】:卡諾圖,無關(guan) 項,最小項,具有約束的邏輯函數。
【解題方法】:正確認識邏輯變量組合與(yu) 邏輯結果之間關(guan) 係,無關(guan) 項在一個(ge) 邏輯函數中的表示方法,正確認識無關(guan) 項在一個(ge) 邏輯函數的化簡中,可以當作“1”和當作“0”處理。
【解答過程】:對於(yu) 邏輯函數中的無關(guan) 項,可以用幾種方法給出。例如,某邏輯電路的輸入信號DCBA是8421 BCD碼,由8421 BCD碼概念可知:如下的變量組合(即最小項),
,
,
,
,
是不會(hui) 出現的,即不影響8421BCD編碼結果,所以這些項就是無關(guan) 項。在邏輯函數化簡時,正因為(wei) 這些項無關(guan) ,因此這些項的取值可以認為(wei) 是“0”,也可以認為(wei) 是“1”,這由你的簡化程度來決(jue) 定。
若將具有無關(guan) 項的邏輯函數表示在卡諾圖中,圖中填1和0的小方格分別對應於(yu) 函數式中的最小項和式中不出現的最小項。卡諾圖中無關(guan) 項對應處填“×”以示區別。“×”的小方格可以和“1”格一起包圍,此時,在包圍圈中的無關(guan) 項當1對待;“×”的小方格可以不被包圍,這時的“×”小方格就當作“0”處理了。
在用表達式化簡時,可以將無關(guan) 項當作“1”寫(xie) 入表達式中,以便和其它項相結合,使表達式化得更加簡單些。如果該無關(guan) 項對式子的簡化無幫助,則就當作“0”處理。
以下是用卡諾圖化簡和用表達式化簡的兩(liang) 種例子。如要求對下列邏輯函數化簡:
(無關(guan) 項為(wei) :
,
)
結合“1”方格畫包圍圈得:,這裏是把“111”格當作“1”處理,而把“100”格當作“0”了。
用表達式化簡過程如下:
顯然,表達式中將添加的當作“1”,而將(f29)無關(guan) 項作“0”處理,兩(liang) 者化簡的結果完全相同。