디코더 decoder는 입력되는 n비트 2진 코드를 최대 2^n개의 정보로 변환하는 조합논리회로입니다.
1X2 디코더는 하나의 입력과 두 개의 출력으로 구성됩니다. 회로도와 진리표는 다음과 같습니다.

| 입력 A | 출력 Y0 | 출력 Y1 |
|---|---|---|
| 0 | 0 | 1 |
| 1 | 1 | 0 |
만약 인에이블 E가 있다면 1X2 디코더는 다음과 같은 회로도 및 진리표를 갖습니다.
인에이블 Enable은 신호에 따라 회로(함수)를 동작하게 만듭니다. 인에이블이 1인 경우에 회로가 동작합니다.

| 입력 A | 인에이블 E | 출력 Y0 | 출력 Y1 |
|---|---|---|---|
| 0 | 0 | 0 | 0 |
| 1 | 1 | 0 | |
| 1 | 0 | 0 | 1 |
| 1 | 1 | 1 | 0 |
위 회로에 대한 논리식은 Y0 = EA', Y1 = EA 입니다.
2X4 디코더는 입력 2개와 출력 4개로 구성되어 있습니다. 두 개의 입력값에 따라 출력 네 개 중 하나가 선택되는 구조입니다.
실제로 설계할 때는
AND가 아닌NAND게이트를 이용합니다. 따라서 여기서도NAND게이트를 이용한 디코더 회로를 보여드립니다.NAND 회로의 사용 이유는 범용적이고, 실제 공정에서 구조가 단순하고 비용, 전력 소모 등에서 우세하기 때문이라고 합니다.

| 입력 A | 입력 B | 출력 Y0 | 출력 Y1 | 출력 Y2 | 출력 Y3 |
|---|---|---|---|---|---|
| 0 | 0 | 1 | 1 | 1 | 0 |
| 0 | 1 | 1 | 1 | 0 | 1 |
| 1 | 0 | 1 | 0 | 1 | 1 |
| 1 | 1 | 0 | 1 | 1 | 1 |
마찬가지로 인에이블이 있는 2X4 디코더는 다음과 같습니다. 인에이블이 NAND 입력되므로 1일 때는 동작하지 않고 0인 경우에만 동작합니다.

| 입력 A | 입력 B | 인에이블 E | 출력 Y0 | 출력 Y1 | 출력 Y2 | 출력 Y3 |
|---|---|---|---|---|---|---|
| x | x | 1 | 1 | 1 | 1 | 1 |
| 0 | 0 | 0 | 1 | 1 | 1 | 0 |
| 0 | 1 | 0 | 1 | 1 | 0 | 1 |
| 1 | 0 | 0 | 1 | 0 | 1 | 1 |
| 1 | 1 | 0 | 0 | 1 | 1 | 1 |
3X8 디코더는 입력 세 개와 출력 8개로 구성되어 있습니다.

| 입력 A | 입력 B | 입력 C | 인에이블 E | 출력 Y0 | 출력 Y1 | 출력 Y2 | 출력 Y3 | 출력 Y4 | 출력 Y5 | 출력 Y6 | 출력 Y7 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| x | x | x | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
| 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
| 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| 0 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 |
| 1 | 0 | 0 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
| 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
| 1 | 1 | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
| 1 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
자료 출처
https://www.elprocus.com/designing-3-line-to-8-line-decoder-demultiplexer/
7 세그먼트는 숫자 표기를 위해 막대모양 LED 7개로 구성된 장치입니다. 다음과 같이 막대의 맨 위부터 시계 방향으로 알파벳 a ~ g까지의 이름을 붙여 사용합니다.
이미지 출처
https://wikidocs.net/30887
이런 7 세그먼트에 전기 신호를 흘려 불을 들어오게 함으로서 숫자 등을 표시합니다. 이때 숫자를 표기하기 위해 7 세그먼트에 데이터를 흘리는 디코더를 BCD-7 세그먼트 디코더라고 합니다.

이미지 출처
https://www.geeksforgeeks.org/digital-logic/bcd-to-7-segment-decoder/
인코더 encoder는 디코더의 반대 동작을 수행하는 회로로 신호 2^n개를 받아 n개의 출력 신호를 만들어냅니다.
4X2 인코더는 4개의 입력과 2개의 출력으로 구성됩니다.

이미지 출처
https://www.scaler.com/topics/encoder-in-digital-electronics/
| 입력 l3 | 입력 l2 | 입력 l1 | 입력 l0 | 출력 A1 | 출력 A0 |
|---|---|---|---|---|---|
| 0 | 0 | 0 | 1 | 0 | 0 |
| 0 | 0 | 1 | 0 | 0 | 1 |
| 0 | 1 | 0 | 0 | 1 | 0 |
| 1 | 0 | 0 | 0 | 1 | 1 |
8X3 인코더는 8개의 입력과 3개의 출력으로 구성됩니다.

이미지 출처
https://www.electronics-tutorial.net/combinational-logic-circuits/encoders/