
Networks easy to learn with pictures
gamja5
This course will help you understand how the seemingly magical Internet works.
입문
Network
컴퓨터 구조
진짜 계산이 되는 컴퓨터
기계어
어셈블리어
컴퓨터가 어떻게 작동하는지 궁금했던 적이 있나요? 이 강의는 컴퓨터 구조와 동작 원리를 처음부터 끝까지 체계적으로 알려드립니다! 😃
단순히 개념만 익히는 것이 아닌, 트랜지스터를 이용해 동작하는 컴퓨터를 만들어 보는 강의입니다.
단순히 도식화된 설명만으로 개념을 익히는 것이 아니라, 트랜지스터라는 기본 반도체 소자를 사용하여 실제 작동하는 컴퓨터를 직접 만들어봅니다. CPU의 핵심 구성 요소인 ALU와 제어 장치를 만들고, 레지스터(컴퓨터의 가장 작은 메모리 단위)와 프로그램이 저장되는 RAM을 직접 구현하면서 컴퓨터의 특성을 깊이 이해할 수 있습니다.
트랜지스터를 이용하여 컴퓨터에 필요한 모든 논리 게이트를 만들어봅니다. 논리 게이트를 이해하기 위해 논리 연산과 그 법칙들을 학습합니다. 논리 연산은 컴퓨터 구조뿐만 아니라 computer-science 전반에서 사용되는 핵심 개념이므로, 다양한 지식을 습득하는 데 필수적인 기초가 됩니다.
직접 컴퓨터를 만들며 메모리를 구현해보면 메모리를 구성하는 소자들과 그 구조를 직접 눈으로 확인하며 이해할 수 있습니다. 메모리를 실제로 만들어보고 눈으로 직접 확인하는 것만큼 확실한 학습 방법이 있을까요? 이는 고급 개발자로 성장하는 과정에서 매우 값진 경험이 될 것입니다.
기계어를 직접 정의하고 이를 활용한 프로그래밍, 그리고 기계어와 1:1로 매칭되는 어셈블리어를 통한 프로그래밍 경험을 통해 저수준 언어에 대한 이해력을 기를 수 있습니다.
저수준 언어에 대한 이해는 고수준 언어 사용 시에도 더 깊은 통찰력을 제공합니다. 코드를 "왜 이렇게 작성해야 하는지" 근본적으로 이해할 수 있게 되기 때문입니다.
또한 고수준 언어로는 달성하기 어려운 수준의 성능 최적화도 가능해집니다.
컴퓨터 구조 개요
현대 컴퓨터가 만들어지기까지의 컴퓨터 역사를 살펴보고, 컴퓨터가 프로그램을 실행하는 방식을 알아봅니다.
컴퓨터의 구성 요소
그림을 통해 컴퓨터의 구성 요소를 학습하고 전체적인 컴퓨터 구조를 시각화합니다. 또한 64비트, 32비트, 그리고 우리가 직접 만들어볼 8비트 컴퓨터의 차이점을 살펴봅니다.
0과 1 다루기
컴퓨터를 이해하기 위해서는 컴퓨터가 다루는 0과 1을 알아야 합니다. 컴퓨터가 비트를 이용해 논리 연산을 수행하는 방법과 다양한 논리 연산 기법을 살펴봅니다. 또한 비트로 숫자를 표현하는 방법과 비트 관련 핵심 개념들을 함께 학습합니다.
컴퓨터에 필요한 부품 만들기
트랜지스터라는 컴퓨터를 이루는 최소 단위 부품을 이용하여 컴퓨터에 필요한 모든 부품을 만들어보는 시간입니다. 이를 통해 논리 회로를 자연스럽게 이해할 수 있습니다. 이론과 실습이 유기적으로 연결됩니다.
CPU 만들기: 산술 논리 연산 장치(ALU)
컴퓨터의 핵심 부분인 CPU를 만드는 첫 번째 시간입니다. 상대적으로 간단한 산술 논리 연산 장치(ALU)를 먼저 만들어 봅니다.
메모리 만들기
프로그램을 구성하는 코드와 데이터를 저장하기 위해서는 메모리가 필수적입니다. 가장 기본이 되는 1비트 메모리부터 시작하여 RAM을 만드는 과정을 살펴봅니다.
수동으로 계산해보기
지금까지 만든 회로를 조립하고 제어 장치가 없는 컴퓨터에서 우리가 직접 제어 장치 역할을 수행하며 계산을 진행합니다. 이를 통해 ALU가 메모리에서 데이터를 가져와 계산하는 과정을 이해하고, 제어 장치의 필요성을 체감할 수 있습니다.
CPU 만들기: 제어 장치(CU)
컴퓨터의 핵심 부분인 CPU를 만드는 마지막 시간입니다. CPU의 가장 복잡한 구성 요소인 제어 장치를 제작하고 명령어 체계를 정의한 후, 이를 바탕으로 프로그래밍이 가능한 컴퓨터를 최종 조립하게 됩니다.
기계어와 어셈블리어 프로그래밍
우리가 제작한 컴퓨터와 정의한 명령어를 이용해 기계어 프로그래밍을 실습합니다. 여기서 기계어 프로그래밍의 단점을 체감하고 'Gamjabler'라는 어셈블러를 이용해 어셈블리어 프로그래밍을 해보며 어셈블리어의 편의성을 알아봅니다.
운영체제 및 버전(OS): Windows, Mac, Linux
logisim-evolution 3.9.0
실습에서 나오는 모든 회로 파일(.circ)
Gamjabler
'하드웨어 시뮬레이터 설치하기' 수업을 통해 먼저 실습 환경을 구축해보시는 것을 추천합니다.
학습 대상은
누구일까요?
컴퓨터 공학을 처음 접하는 학생
IT 업계에서 기술적 기반을 다지고 싶은 직장인
컴퓨터를 직접 만들어 보고싶으신 분
컴퓨터의 내부 작동 원리를 알고 싶은 호기심 많은 분들
7,630
명
수강생
475
개
수강평
323
개
답변
4.9
점
강의 평점
8
개
강의
저는 인프런에서 컴퓨터 과학(CS) 강의를 준비하고 있는 감자라고 합니다! 😄
학생과 주니어 개발자들이 AI 시대에 단순히 AI에 밀려나지 않고, 기본기를 탄탄히 다져 AI를 능숙히 활용하는 개발자로 성장할 수 있도록 돕는 것을 목표로 합니다.
전체
68개 ∙ (7시간 0분)
해당 강의에서 제공:
1. 컴퓨터 구조를 배워야하는 이유
04:57
2. 블랙박스
02:36
3. 컴퓨터의 역사
05:27
4. 프로그램은 어떻게 동작할까요?
04:52
5. 중앙 처리 장치(CPU)
02:46
6. 메모리
02:58
7. 주변 장치
02:32
9. 불 대수 개요
02:36
10. 불 연산
06:32
11. 불 대수의 성질과 법칙
08:30
12. 불 함수
04:51
13. 진리표를 변환하는 방법
06:02
14. 카르노 맵
06:44
15. 10진법과 2진법
05:26
16. 10진수를 2진수로 변환하기
03:21
17. 16진법
04:54
18. 빅 엔디안과 리틀 엔디안
02:20
19. 오버플로우와 인터럽트
04:21
20. 음수
03:39
22. 하드웨어 시뮬레이터 설치하기
02:29
23. NAND 게이트
11:12
24. NOT 게이트
03:33
25. AND 게이트
03:35
26. OR 게이트
01:56
27. XOR 게이트
02:59
28. 1비트 2입력 MUX
07:20
30. 8비트 4입력 MUX
05:21
31. 8비트 8입력 MUX
06:11
32. 8비트 16입력 MUX
06:34
33. 3비트 디코더
08:36
34. 4비트 디코더
03:18
35. 컨트롤 버퍼
06:00
36. 컴퓨터 만들기 개요
01:55
37. 반 가산기
05:37
38. 전 가산기
05:41
39. 산술논리연산장치(ALU)
15:57
40. 조합 논리회로와 순차 논리회로
02:01
41. SR Latch
06:40
42. D Latch
04:20
43. JK Latch
05:22
44. 클럭과 플립플롭
14:42
45. 레지스터
10:05
46. RAM
09:48
47. ALU 업그레이드
03:21
48. 컴퓨터 조립하기
22:16
49. 수동으로 계산하기
04:47
50. 명령어
05:30
51. 프로그램 카운터
17:20
52. 스텝 카운터
14:48
53. 명령어 인출
13:03
55. 명령어 실행 - ADD
05:09
56. 명령어 실행 - SUB
04:24
57. 명령어 실행 - STOREA
03:52
58. 명령어 실행 - LOADI
02:50
61. 출력 레지스터
02:14
62. 제어 장치 조립
06:13
63. 기계어 프로그래밍
04:42
64. 어셈블러와 어셈블리어
02:23
67. 상용 컴퓨터
08:52
68. 이제 무엇을 배워야 할까요?
04:20
전체
22개
5.0
22개의 수강평
수강평 4
∙
평균 평점 5.0
수강평 1
∙
평균 평점 5.0
수강평 18
∙
평균 평점 5.0
수강평 1
∙
평균 평점 5.0
5
Among all the Inflearn courses I've watched, this seems to be the highest quality lecture. It felt like watching YouTube, so I finished it quickly.
It seems like you enjoyed it, which makes me feel proud~ Thank you for your valuable course review, Wooyoung! 😄
수강평 36
∙
평균 평점 4.8
₩88,000