안녕하세요. IT 엘도라도 에 오신 것을 환영합니다.
글을 쓰는 것은 귀찮지만 다시 찾아보는 것은 더 귀찮습니다.
완전한 나만의 것으로 만들기 위해 지식을 차곡차곡 저장해 보아요.   포스팅 둘러보기 ▼

컴퓨터 구조 (Architecture)/컴퓨터의 개념 및 실습 (15)

[Chapter 3] Digital Logic Structures - CPU를 구성하는 기본 부품들

[Chapter 0] Introduction 게시물에서 이미 언급했지만, 우리가 사용하는 컴퓨터의 CPU는 작은 부품들이 조립되고 또 조립된 결과로 만들어진다. 이러한 맥락에서 조립을 위한 가장 작은 단위의 부품으로 MOS 트랜지스터를 소개하였고, 더 나아가 이를 조립하여 만들어낸 게이트들까지 한 차례 설명을 마친 바 있다. 여기서는 앞서 설명했던 트랜지스터와 게이트에 대해 다시 한번 간략하게 정리를 한 뒤, 이어서 그것들을 조립하여 만들어낼 수 있는 두 종류의 논리 회로를 설명할 것이다. 하나는 Combinational Logic Circuit이고, 나머지 하나는 Sequential Logic Circuit이다. ※ 최초의 PC와 ISA와 관련한 썰. 관심 있는 분만 클릭하여 읽어보시기를. 더보기 IB..

[Chapter 2] Bits, Data Types, and Operations - 데이터의 표현

누구나 귀에 못이 박히도록 들어봤겠지만, 컴퓨터는 내부적으로 모든 데이터를 0과 1로 저장한다. 따라서 CPU의 동작 원리를 이해하기 위해서는 먼저 0과 1에 익숙해질 필요가 있다. 이번 포스팅에서는 0과 1로 이루어진 이진법 체계에 대해 알아본 뒤, 이것이 CPU 구현과는 어떠한 연관을 맺고 있는지까지 한 번 다뤄보도록 할 것이다. 1. 데이터를 표현하는 0과 1의 정체 실제로 전압은 연속적인 아날로그 값이지만, 디지털 세계에서는 전압의 크기에 따라 0과 1의 신호를 약속하여 데이터를 표현한다. 예를 들어 0V ~ 0.5V에 해당하는 전압은 0의 신호, 2.4V ~ 2.9V에 해당하는 전압은 1의 신호라고 약속하는 것이다. 그리고 이를 바탕으로 모든 데이터를 0과 1로 이루어진 2진수로 표현한다. 따라..

[Chapter 1] Welcome Abroad - 튜링 머신과 추상화

컴퓨터 공학에 있어 위대한 업적을 남긴 인물을 꼽아야 한다면, 누군가는 앨런 튜링이라는 인물을 떠올릴 것이다. 그런 의미에서 앨런 튜링이라는 인물이 고안해낸 튜링 머신에 대한 개념을 간단히라도 알고 넘어갈 필요가 있다. 또한 컴퓨터 공학도라면 반드시 알고 있어야 하는 추상화라는 개념도 제대로 이해하는 것이 중요하다. 추상화는 컴퓨터 공학뿐 아니라 모든 공학 분야에서 급격한 기술의 진보를 이끌어 낸 핵심적인 아이디어라 말해도 과언이 아닐 것이다. 1. 튜링 머신 (Turing Machine) 1-1. 튜링 머신 (Turing Machine) 튜링 머신에 대해 본격적으로 알아보기 전에, 기본적으로 알고 있어야 할 배경지식이 있다. 모든 컴퓨터들은, 그것이 핸드폰 단말기이든 일반 PC이든 슈퍼 컴퓨터이든, 충..

[Chapter 0] Introduction - MOS 트랜지스터와 게이트

프로그램이 실행되는 동안 CPU 내부적으로는 무슨 일이 일어나고 있을까? 이것을 이해하는 게 우리의 최종 목표이다. 이를 위해서는 CPU를 이루는 가장 작은 단위의 부품부터 알아야 한다. 이 책에서는 CPU의 가장 밑바닥을 이루는 부품으로서 MOS 트랜지스터를 소개하고 있다. MOS 트랜지스터를 이용하여 흔히들 알고 있는 NOT, AND, OR 등의 게이트를 만들게 되고, 그러한 게이트들을 다시 여러 방식으로 조립하여 최종적으로는 CPU라는 거대한 하드웨어를 만들게 된다. 이번 포스팅에서는 MOS 트랜지스터와 그것들로 만들어지는 게이트에 대해 간략하게 한 번 알아보도록 할 것이다. 1. MOS 트랜지스터 (Metal-Oxide-Silicon Transistor) 이 책에서 소개하는 CPU의 가장 밑바닥을..

[Introduction to Computing Systems] 포스팅을 시작하며...

책 이름 : Introduction to Computing Systems (2nd Edition) 저자 : Yale N. Patt / Sanjay J. Patel 필자가 학부 1학년 때 수강했던 이라는 교양(이지만 전공에 가까운) 과목에서 사용된 서적이다. 책의 전반부(~ Chapter 10)는 CPU가 하드웨어 수준에서 어떻게 구현이 되는지를 가장 밑바닥에 있는 트랜지스터부터 시작하여 한 단계씩 위로 올라가며 설명한다. 사실상 컴퓨터 구조의 기초 내용을 다루고 있다고 해도 무방하다. 책의 후반부(Chapter 11 ~)는 컴퓨터 개론 책답게 C 언어라는 프로그래밍 언어를 소개하며, C 언어로 작성된 프로그램이 어떻게 어셈블리어로 번역이 되는지 차근차근 보여준다. 이러한 모든 내용들은 LC-3라는 가상의..