4강 : 0과 1로 숫자를 표현하는 방법
비트(bit) : 0과 1을 표현하는 가장 작은 정보 단위 ( 1byte = 8bit )
워드(word) : CPU가 한 번에 처리할 수 있는 정보의 크기 단위
이진법 : 0과 1로 숫자 표현하기
표기법 : 숫자 뒤에 아래숫자 (2) or 숫자 앞에 0b.
십육진법 : 1 2 3 4 5 6 7 8 9 A B C D E F 10 11 …
표기법 : 아래숫자 (16) or 숫자 앞에 0x.
5강 : 0과 1로 문자를 표현하는 방법
문자집합(character set) : 컴퓨터가 이해할 수 있는 문자의 모음
인코딩(encoding) : 코드화하는 과정, 문자를 0,1로 이루어진 코드로 변환하는 과정
디코딩(decoding) : 코드를 해석하는 과정, 0,1로 표현된 문자 코드로 문자를 변환하는 과정
인코딩 방식 3가지
아스키 코드 : 초창기 문자 집합 중 하나
EUC-KR : KS x 1001KS x 1003 문자집합 기반의 한글 인코딩 방식
단점 : 1. 약 2300개의 한글만 표현 가능 = 여전히 부족 → 쀏, 뙉, 휔 같은 한글은 표현 불가능
2. 다국어적인 걸 만들 때 여러 인코딩 버전이 필요
유니코드 문자 집합과 utf-8
유니코드의 인코딩 방식 : utf-8, utf-16, utf-32 …
6강 : 소스코드와 명령어
고급 언어 : 개발자가 이해하기 쉽게 만든 언어
저급 언어 : 컴퓨터가 이해하고 실행하는 언어
컴파일 언어: 한번에 확인
⇒ 소스 코드(고급언어) → 컴파일러(컴파일) → 목적코드(저급언어)
인터프리트 언어 : 인터프리터에 의해 한 줄씩 실행, 소스코드 전체가 저급언어로 변환되기까지 기다릴 필요X
⇒하지만 둘이 칼로 잘리듯 구분선이 명확하진 않음
7강 : 명령어의 구조와 주소 지정 방식
명령어는 연산 코드와 오퍼랜드로 구성됨.
4비트 | 6비트 | 6비트 |
---|---|---|
연산 코드 | 오퍼랜드 | 오퍼랜드 |
더해라 | 10을 | 메모리 128번지에 |
오퍼랜드 : 오퍼랜드가 없을 수도 있고 하나 이상일 수도 있다.
연산에 사용될 데이터 or 연산에 사용될 데이터가 저장된 위치(주소필드)(이게 훨씬 더 많이 사용됨)
⇒명령어의 크기가 제한되어 있어서 오퍼랜드에 사용할 데이터를 쓰면 비효율적
명령어 주소 지정 방식
유효주소(effective address) : 연산에 사용할 데이터가 저장된 위치
명령어 주소 지정 방식(addressing modes) : 유효주소를 찾는 방법
8강 : C언어의 컴팔의 과정
C언어 컴파일 과정
9강 : CPU의 내부 구성 - ALU와 제어장치
ALU