본문 바로가기

CS-Study

(13)
컴퓨터 구조 : 소스코드와 명령어 그리고 명령어의 구조 📗 고급 언어와 저급 언어 고급 언어 : 개발자가 읽고 쓰기 편하도록 만든 언어 예) C, C++, JAVA, Python ... 저급 언어 : 컴퓨터가 이해하고 실행하기 위해 만든 언어 (=명령어) 고급 언어가 작성된 소스코드가 컴퓨터 내부에서 실행될 때는 저급언어로 변환된다. ✔ 저급 언어의 종류 - 기계어 : 0과 1로 이루어진 명령어로 구성된 저급 언어 - 어셈블리어 : 기계어를 읽기 편한 형태로 번역한 저급 언어 ✔ 고급 언어의 종류 - 컴파일 언어 - 인터프리터 언어 💻 컴파일 언어 - 컴파일 언어는 소스 코드를 저급 언어로 변환하는 컴파일러를 사용하여 프로그램을 먼저 컴파일 한 뒤 실행한다. - 컴파일러가 소스 코드를 전부 훑어 본 뒤 컴파일을 진행하기 때문에 실행 파일을 생성하며 개발자는 ..
컴퓨터 구조 : 0과 1로 문자를 표현하는 방법 📗 문자 집합 문자 집합 : 컴퓨터가 이해할 수 있는 문자의 모음 인코딩 : 문자를 0과 1로 이루어진 문자코드로 변환하는 과정을 말함 (문자 -> 코드) 디코딩 : 0과 1로 표현된 문자코드를 문자로 변환하는 과정을 말함 (코드 -> 문자) 📗 아스키 코드 아스키 코드 : 초기 문자 집합 중 하나이다. 알파벳, 아라비아 숫자, 일부 특수문자와 제어문자를 나타낸다. 아스키코드는 7비트로 하나의 문자를 표현한다. 8비트 중 1비트는 오류 검출을 위해 사용되는 '패리티 비트' 이다. 7비트로 하나의 문자를 표현하기 때문에 최대 2^7 = 128 개의 문자 표현이 가능하다. ✔ 아스키 코드의 한계 아스키 코드는 인코딩이 간단하지만 한글을 포함해서 다른 언어나 특수문자를 표현할 수 없다. 7비트로 하나의 문자를..
컴퓨터 구조 : 0과 1로 숫자를 표현하는 방법 📗 정보의 단위 비트 : 0과 1을 표현하는 가장 작은 정보 단위 - n 비트는 2^n 가지의 정보를 표현 가능하다. (4비트 = 16가지 정보 표현) - 비트 외에도 키로바이트, 메가바이트, 기가바이트.. 등이 있다 ✔ 이전 단위를 1000개씩 묶는 곳도 있고 1024개씩 묶는곳도 있는데 어떤게 맞는건지? 이전 단위를 1024개씩 묶은 단위는 kiB, MiB, GiB 와 같이 단위가 따로 있기 때문에 1000개의 묶음으로 생각하자. 혹은 그냥 상황에 맞춰서 쓰면 될거같다. 워드 : CPU가 한번에 처리할 수 있는 정보의 크기 단위 - CPU가 한번에 32bit를 처리할 수 있으면 1워드 = 32bit 파생 단위로 하프워드 (워드의 절반크기) , 풀 워드 (워드 크기), 더블 워드(워드의 두배 크기) 가..
컴퓨터 구조 : CPU 작동 원리 📗 CPU의 동작 과정 1. 메모리는 입력장치에서 입력받은 데이터 또는 보조기억장치에 저장된 프로그램을 읽어온다. 2. CPU는 프로그램을 실행하기 위해 메모리에 저장된 프로그램 명령어와 데이터를 읽어와 처리하고 결과를 다시 메모리에 저장한다. 3. 메모리는 처리 결과를 보조기억장치에 저장하거나 출력장치로 보낸다. 4. 제어장치는 1-3 과정이 명령어의 순서대로 실행하도록 각 장치를 제어한다. CPU가 실행할 명령어의 집합을 '명령어 세트'라고 한다. 명령어 세트 연산코드와 피연산자로 이루어진다. 연산코드 : 실행할 연산, 연산, 제어, 데이터 전달, 입출력 기능을 가짐 피연산자 : 필요한 데이터나 저장 위치, 주소, 문자/숫자, 논리 데이터를 저장 CPU는 프로그램을 실행하기 위해 메모리에서 명령어를 ..
컴퓨터 구조 : 컴퓨터의 구성 📗 컴퓨터의 구성 컴퓨터 시스템은 크게 하드웨어, 소프트웨어 2가지로 나뉜다. 하드웨어 : 컴퓨터의 시스템을 구성하는 기계적 장치를 말한다. 소프트웨어 : 하드웨어의 동작을 지시하고 제어하는 명령어의 집합을 말한다. 📗 하드웨어란? 하드웨어는 크게 3가지로 나뉘는데 중앙 처리 장치, 기억 장치, 입출력 장치가 있다. 중앙 처리 장치는 우리가 잘 아는 컴퓨터의 핵심인 CPU를 말하고 기억장치는 RAM, HDD 를 말하며 입 출력 장치는 마우스, 프린터, 키보드, 모니터 등등 컴퓨터에게 명령을 하고 명령의 대한 결과를 볼 수 있는 장치이다. 📗 소프트웨어란? 소프트웨어는 크게 2가지로 시스템 소프트웨어와 응용 소프트웨어로 나뉜다. 시스템 소프트웨어 : 응용 프로그램과 하드웨어 장치 사이에 존재하는 소프트웨어..

반응형