計算機的算術運算和邏輯運算都可以轉化為加法運算,所以如何構造一個加法器是計算說明理論的基礎。
1 布爾代數
喬治·布爾(George Boole,1815.11.2~1864)在1854年出版了《思維規律的研究》一書,在這本書中布爾介紹了現在以他的名字命名的布爾代數。布爾代數是數學和邏輯學和邏輯學的結合,邏輯上的聯言命題和選言命題可以用數學的符號來表示,如用字母來表示命題,用二進制1表示真,0表示假。
1.1 聯言命題
聯言推理中各支命題(如A、B)之間“並且”的邏輯關係在布爾代數中使用“×”這個符號,表示為:A×B或AB。
其真值表為:
1.2 選言命題
選言推理中各支命題(如A、B)之間“或者”的邏輯關係在布爾代數中使用“+”這個符號,表示為:A+B。
其真值表為:
2 開關電路
克勞德·艾爾伍德·香農(Claude Elwood Shannon ,1916年4月30日—2001年2月24日)是美國數學家、信息論的創始人。1938年發表了碩士論文《繼電器與開關電路的符號分析》,將布爾代數和電學聯繫到了一起,闡述了布爾代數可以在開關電路中實現:
3 邏輯門電路
要用電流的通斷來控制電路的開關需要使用繼電器,如下圖,當有適當的電壓加在A端時,有電流通過繼電器而使它吸合,從而使得F端連通。
上面的電路稱為異或電路。
4 二進制的半加器
兩個1位的二進制相加,其進位值就是兩個二進制位的與運算,不考慮進位的加法值就是兩個二進制位的異或運算:
半加器可用邏輯門電路實現:
5 二進制的全加器
三個一位的二進制相加(兩個加數再加上一個進位數),就是所謂的全加器。
全加器可用邏輯門電路實現:
6 加法電路
上述全加器只能計算一位的二進數,如果需要計算多位的二進制數,將多個全加器連起來即可:
7 全加器的另一種構造思路
全加器可用邏輯門電路實現:
-End-
閱讀更多 小智雅匯 的文章