在之前了解 PN 結(jié)以及邏輯電路實(shí)現(xiàn)之后,終于可以開始嘗試實(shí)現(xiàn)計(jì)算機(jī)的加法了。
- 邏輯門,包括與、或、與非、異或
- 半加器,半加器電路
- 全加器,全加器電路
- 波紋進(jìn)位加法器
邏輯門
與門 AND
[圖片上傳失敗...(image-45e5ce-1525843559910)]
或門 OR
[圖片上傳失敗...(image-e697b8-1525843559910)]
與非門 NAND

1529151173-59c25ff820103_articlex
異或門 XOR
[圖片上傳失敗...(image-24f8dd-1525843559910)]
真值表
| A | B | AND | OR | NAND | XOR |
|---|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 1 | 0 |
| 0 | 1 | 0 | 1 | 1 | 1 |
| 1 | 0 | 0 | 1 | 1 | 1 |
| 1 | 1 | 1 | 1 | 0 | 0 |
半加器
半加器(half adder)的功能是將兩個(gè)一位二進(jìn)制數(shù)相加。它具有兩個(gè)輸入和兩個(gè)輸出(分別是和(sum)、進(jìn)位(carry))。
— Wiki
半加器電路圖

image
| A | B | Carry | Sum |
|---|---|---|---|
| 0 | 0 | 0 | 0 |
| 1 | 0 | 0 | 1 |
| 0 | 1 | 0 | 1 |
| 1 | 1 | 1 | 0 |
半加器簡化圖

2925864000-59c26f8739c14_articlex
全加器
全加器(full adder)將兩個(gè)一位二進(jìn)制數(shù)相加,并根據(jù)接收到的低位進(jìn)位信號,輸出和、進(jìn)位輸出。全加器的三個(gè)輸入信號為兩個(gè)加數(shù)A、B和低位進(jìn)位Cin。
全加器邏輯電路
[圖片上傳失敗...(image-598fec-1525843559910)]
該電路如用簡化版半加器表示,可以如下圖:

1582983175-59c4f8cba758f_articlex
全加器真值表
二進(jìn)制的全加器,剛可以用兩位表示最大值,即 1 + 1 + 1 = 3 = 11(2)
| A | B | Cin | Cout | S |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 |
| 1 | 0 | 0 | 0 | 1 |
| 0 | 1 | 0 | 0 | 1 |
| 1 | 1 | 0 | 1 | 0 |
| 0 | 0 | 1 | 0 | 1 |
| 1 | 0 | 1 | 1 | 0 |
| 0 | 1 | 1 | 1 | 0 |
| 1 | 1 | 1 | 1 | 1 |
全加器簡化圖

1389585610-59c4fadd78a21_articlex
或

image
波紋進(jìn)位加法器
如果不需要連接其他進(jìn)位信號,則最低位的全加器可以用半加器替換。

image
References
更多文章訪問:zhoukekestar.github.io/notes