본문 바로가기

하드웨어/컴퓨터 구조10

바이트 크기에 대해서 바이트 크기 데이터의 최소 단위 - 1bit 8bit - 1byte 1000byte - 1kB(kilobyte, 킬로바이트) 1000kB - 1MB(megabyte, 메가바이트) 1000MB - 1GB(gigabyte, 기가바이트) ... 이런식으로 쭉 올라간다고 생각하면 이해하기 편하다. 정확한 수치는 모르더라도 대략적인 크기를 판단할 정도는 숙지하고 있어야한다. 함께 읽으면 좋은 글 코딩 테스트 및 알고리즘 문제해결 공부 방법 (고려대학교 KUCC, 2022년 4월) 코딩 테스트 및 알고리즘 문제해결 공부 방법 (고려대학교 KUCC, 2022년 4월) - Download as a PDF or view online for free www.slideshare.net 출처 바이트 - 위키백과, 우리 모두의.. 2023. 12. 14.
논리 회로(Logic Gate)에 대해 알아보자 논리 회로(Logic Gate)란 무엇인가? 논리 회로(Logic gate)는 부울 대수를 물리적 장치에 구현한 것으로, 하나 이상의 논리적 입력값에 대해 논리 연산을 수행하여 하나의 논리적 출력값을 얻는 전자회로를 말한다. NOT 논리 게이트 부정(Negation, NOT)이라고도 불리며 수리 논리학에서 주어진 명제의 참과 거짓을 반전하는 논리 연산이다. NOT 게이트 진리표 X Z 0 1 1 0 AND 논리 게이트 논리곱(Conjunction, AND)이라고도 불리며, 수리 논리학에서 주어진 복수 명제 모두가 참인지를 나타내는 논리 연산이다. AND 게이트 진리표 X Y Z 0 0 0 1 0 0 0 1 0 1 1 1 OR 논리 게이트 논리합(Disjunction, OR)이라고도 불리며, 수리 논리학에.. 2023. 10. 11.
보수(Complement)에 대해서 알아보자 부호 있는 수를 표현하는 방법 컴퓨터에서는 숫자를 표현할 때 양수와 음수를 어떻게 표현할까? 컴퓨터는 0과 1만 표현할 수 있기 때문에 부호 또한 0과 1로 표현한다. 즉, 부호를 나타내는 비트를 지정하여, 이 비트가 0이냐 1이냐에 따라서, 부호를 지정한다. 부호를 나타내는 비트는 2진수로 이루어진 여러 비트 중 가장 맨 앞의 비트이며, 이것을 부호비트(Most Significant Bit : MSB)라고 지칭한다. 위의 말이 사실이라면 8비트 머신에서 -5를 표현한다면 아래와 같이 표현하게 되는 것이다. 그럼 이 값이 정말 -5인지 확인해 보기 위해서 2진수로 표현한 5(00000101(2))와 더해보자. 만약 진짜 위의 수가 -5라면, 5와 더했을 시 0이 되어야 할 것이다. 그러나 계산결과는 0이.. 2023. 10. 6.
전기로 뺄셈을 표현하는 반감산기, 전감산기 감산기(Subtractor) 두 개 이상의 입력에서 하나 입력으로부터 나머지 입력들을 뺄셈해서 그 차를 출력하는 논리회로이다. 가산기를 응용한 것으로 가산기에서의 합(sum)은 감산기에서 차(difference)가 되며, 가산기에서는 올림수(carry)가 발생했지만 감산기에서는 빌림수(borrow)가 발생한다. 반감산기(Half Subtractor) 1비트 길이를 갖는 두 개의 입력과 1비트 길이를 갖는 두 개의 출력으로 차(D)와 빌림수(Br)가 존재한다. 두 입력 간의 뺄셈으로 얻은 결과가 출력에서 차가 되고, 이 차가 음의 값을 갖는 경우 출력에서 빌림수가 활성화된다. 두 개의 입력 변수 A와 B에서 뺄셈 계산기 가능하다. 전감산기(Full Subtractor) 반감산기가 단지 두 입력 간의 차이를.. 2023. 9. 21.
CPU의 작동 기본적인 컴퓨터 구조 오늘날의 컴퓨터는 대부분 폰노이만 구조를 따른다. 폰노이만 구조는 CPU, 메모리, 입출력장치, 저장장치가 버스로 연결되어 있는 구조를 말한다. 이 구조가 등장하기 이전에는 하드와이어링 형태로 전선 연결이 계속 바꾸는 형태였다. 이러한 문제를 해결하기 위해 폰노이만은 메모리를 이용하여 프로그래밍이 가능한 컴퓨터 구조, 즉 하드웨어는 그대로 둔 채 작업을 위한 프로그램만 교체하여 메모리에 올리는 방식을 고안했다. 폰노이만 구조의 가장 큰 핵심은 '모든 프로그램이 메모리에 올라와야 실행할 수 있다'는 것이다. CPU의 구성 CPU는 크게 3가지 구성으로 이루어져 있는데 산술논리 연산장치, 제어장치, 레지스터 이다. 1. 산술논리 연산장치(arithmetic and logical unit.. 2023. 7. 28.
프로그램 카운터(Program Counter) 프로그램 카운터(Program Counter)란? 프로그램은 '명령의 집합'이고, 이를 순차적으로 컴파일, 어셈블, 링크, 로드하면 메모리에 적재된다. 프로그램 카운터는 메모리 내의 생성된 프로세스의 '코드 부분'을 가리키고 CPU는 이를 순차적으로 실행하게 된다. 즉, CPU가 매번 프로그램 카운터가 가리키는 메모리 위치의 명령을 처리하게 된다. 컴퓨터의 동작이 CPU에 의해서만 이루어지는 것은 아니다. 메모리에는 사용자 프로그램들과 운영체제가 같이 올라가 수행된다. CPU는 프로그램 카운터가 가리키는 메모리의 위치의 코드를 수행한다. 프로그램 카운터가 메모리 주소 중 운영체제가 존재하는 부분을 가르키고 있다면 현재 운영체제의 코드를 수행중이며 이 경우를 커널 모드라고 한다. 반대의 경우 사용자 모드라.. 2023. 7. 21.