CS18 [CS] ALU와 제어장치 CPU의 구성 요소 중 ALU와 제어장치, ALU와 제어장치가 어떤 정보를 내보내고 받아들이는지 알아보자. 1️⃣ ALU ALU는 계산하는 부품이다. 1+2라는 계산을 할 때 1과 2라는 피연산자와 더하기라는 수행할 연산이 필요하듯이 ALU가 계산하기 위해서는 피연산자와 수행할 연산이 필요하다. 그래서 ALU는 레지스터를 통해 피연산자를 받아드리고, 제어장치로부터 수행할 연산을 알려주는 제어 신호를 받아들인다. ALU는 레지스터와 제어장치로부터 받아들인 피연산자와 제어 신호로 산술 연산, 논리 연산 등 다양한 연산을 수행한다. 내보내는 정보들은 알아보면, 연산을 수행한 결과는 특정 숫자나 문자가 될 수도 있고, 메모리 주소가 될 수도 있다. 그리고 이 결괏값은 바로 메모리에 저장되지 않고 일시적으로 레지.. 2023. 1. 31. [CS] 다양한 주소 지정 방식 지난 포스팅에 이어서 여러 가지 주소 지정 방식에 대해 알아보자. ✅ 주소 지정 방식 주소 지정 방식은 주 기억장치에 데이터가 저장된 위치(=주소)를 피연산자 필드(=오퍼랜드 필드)를 사용하여 제공한다. 담을 수 있는 비트 수에 제한이 있기 때문에 효과적으로 명령어를 처리할 수 있는 다양한 주소 지정 방식이 사용된다. 유효 주소 : 연산의 대상이 되는 데이터가 저장된 위치 1️⃣ 즉시 주소 지정 방식 즉시 주소 지정 방식immediate addressing mode은 연산에 사용할 데이터를 오퍼랜드 필드에 직접 명시하는 방식이다. 가장 간단한 형태의 주소 지정 방식이다. 이런 방식은 표현할 수 있는 데이터의 크기가 작아지는 단점이 있지만, 연산에 사용할 데이터를 메모리나 레지스터로부터 찾는 과정이 없기 .. 2023. 1. 19. [CS] 명령어의 구조 명령어의 구조와 주소 지정 방식을 학습하며 명령어의 생김새와 작동 원리를 알아보자❗ 1️⃣ 연산 코드와 오퍼랜드 컴퓨터 속 명령어는 '무엇을 대상으로, 어떤 동작을 수행하라'는 구조로 되어 있다. 아래의 그림을 보면 색 배경 필드는 명령어의 '작동', 달리 말해 '연산'을 담고 있고 흰색 배경 필드는 '연산에 사용할 데이터' 또는 '연산에 사용할 데이터가 저장된 위치'를 담고 있다. 명령어는 연산 코드와 오퍼랜드로 구성되어 있다. 색 배경 필드 값, 즉 '명령어가 수행할 연산'을 연산 코드operation code라 하고, 흰색 배경 필드 값, 즉 '연산에 사용될 데이터' 또는 '연산에 사용할 데이터가 저장된 위치'를 오퍼랜드operand라고 한다. 연산 코드는 연산자, 오퍼랜드는 피연산자라고도 부르기도.. 2023. 1. 17. [CS] 소스코드와 명령어 프로그래밍 언어로 작성한 소스코드가 컴퓨터 내부에서 명령어가 되고 실행하는 과정 알아보기❗ 1️⃣ 고급 언어와 저급 언어 프로그램을 만들 때 사용하는 프로그래밍 언어는 컴퓨터가 이해하는 언어가 아닌 사람이 이해하고 작성하기 쉽게 만들어진 언어이다. 해서 컴퓨터는 이 언어를 이해하지 못한다. 이렇게 '사람을 위한 언어'를 고급 언어high-level programming language라고 한다. 알고 있는 대부분의 프로그래밍 언어는 고급 언어이다. 반대로 컴퓨터가 직접 이해하고 실행할 수 있는 언어를 저급 언어low-level programming language라고 한다. 컴퓨터가 이해할 수 있는 언어는 오직 저급 언어뿐이다. 고급 언어로 작성된 소스 코드가 실행되려면 반드시 저급 언어, 즉 명령어로 .. 2023. 1. 14. [CS] 0과 1로 문자를 표현하는 방법 1️⃣ 문자 집합과 인코딩 1) 문자 집합(character set) 컴퓨터가 인식하고 표현할 수 있는 문자의 모음. 컴퓨터는 문자 집합에 속해 있는 문자를 이해할 수 있고, 반대로 문자 집합에 속해 있지 않은 문자는 이해할 수 없다. 예를 들어서 문자 집합이 {a, b, c, d, e}인 경우 컴퓨터는 이 다섯 개의 문자를 이해할 수 있고, f나 g 같은 문자는 이해하지 못한다. 2) 문자 인코딩(character encoding) 문자 집합에 속한 문자라고 해서 컴퓨터가 다 이해할 수 있는 것은 아니다. 문자를 0과 1로 변환해야 비로소 컴퓨터가 이해할 수 있다. 이것을 문자 인코딩이라고 하고 인코딩 후에 0과 1로 이루어진 결과값이 문자 코드가 된다. 같은 문자 집합에 대해서도 다양한 인코딩 방법이.. 2023. 1. 12. [CS] 0과 1로 숫자를 표현하는 방법 1️⃣ 정보 단위 컴퓨터가 이해하는 가장 작은 정보 단위는 비트(bit)라고 한다. 비트는 전구에 빗대어 생각을 해보면 쉽다. 전구 한 개가 꺼지거나 켜지는 상태 두 가지의 상태를 표현할 수 있듯이 1비트는 0 또는 1, 두 가지 정보를 표현할 수 있다. 그럼 2비트는 몇 개의 정보를 표현할 수 있을까? 두 개의 전구는 다음과 같이 표현할 수 있다. (켜짐 켜짐) (켜짐 꺼짐) (꺼짐 켜짐) (꺼짐 꺼짐) 두 개의 전구가 네 가지의 상태를 표현할 수 있었으니 2비트는 4가지의 정보를 표현할 수 있다. 그러면 3비트는 당연하게 8가지의 정보를 표현할 수 있다. 하여 n비트는 2ⁿ가지의 정보를 표현할 수 있다. ✅ 그럼 바이트는 무엇일까? 바이트(byte)는 여덟 개의 비트를 묶은 단위로, 비트보다 한 단계.. 2023. 1. 10. 이전 1 2 3 다음