- CPU가 메모리에 저장된 값을
읽고 싶을 땐
메모리를 향해메모리 읽기
라는 제어 신호를 보냄- CPU가 메모리에 어떤 값을
저장하고 싶을 땐
메모리를 향해메모리 쓰기
라는 제어 신호를 보냄
하드 디스크
, SSD
, USB메모리
, DVD
, CD-ROM
...비트(bit)
바이트(byte)
byte 암기법
아직도 생각나는 초등학생 때 컴퓨터 수업에서 가르쳐 주신 암기법...
까(K) 마(M) 귀(G) 털(T) 빼(P)... 🐦🪶🪶🪶
구별을 위해 이진수는
1000_(2)
또는0b1000
같이 표현한다.
11101 를 음수(2의 보수)로 표현
11101 ➡️ 모든 0과 1 뒤집기
00010 ➡️ 1 더하기
00011 ➡️ 11101의 음수 !!
💡 이진수만 보고 음수인지 양수인지 구별을 어떻게 알아?
!!!!!!!!!!!!! 플래그(flag) !!!!!!!!!!!!! 컴퓨터는 플래그로 부호를 표시하고 구분함
💡 그럼 2의 보수로 언제든지 음수로 변환할 수 있겠네?
!!!!!!!!!!!!!!!! 아님 !!!!!!!!!!!!! 양수와 음수 값이 같을 수가 있음
n비트로는 한계가 있음... 흠?
0 1 2 3 4 5 6 7 8 9 A B C D E F 10 11 ...
십육진수는
15₍₁₆₎
또는0x15
와 같이 표현
십육진수를 이진수로 표현
각 글자를 따로 분해 ➡️ 각 수를 이진수로 표현
이진수를 십육진수로 표현
네 개씩 분해 ➡️ 십육진수로 변환
1A2B 십육진법을 이진법으로
1
A
2
B
➡️ 십육진수 분해
0001
1010
0010
1011
➡️ 이진수로 변환
0001101000101011
➡️ 1A2B의 이진수!이진수를 십육진수로 표현
11010101
➡️ 네 개씩 분해
1101
0101
➡️ 각 네 개씩 십육진수 변환
D5
➡️ 이어 붙이면 짜잔 십육진수 완성~~!
문자 집합
컴퓨터가 인식하고 표현할 수 있는 문자의 모음문자 인코딩
문자를 컴퓨터가 이해할 수 있는 0과 1로 변환하는 과정문자 디코딩
0과 1로 표현된 문자 코드를 사람이 읽을 수 있는 문자로 변환하는 과정아스키코드 | 문자 | 설명 |
---|---|---|
33 | ! | 느낌표 |
48-57 | 0-9 | 숫자 0부터 9까지 |
65-90 | A-Z | 대문자 알파벳 |
97-122 | a-z | 소문자 알파벳 |
32 | 공백 (띄어쓰기) | |
46 | . | 마침표 (점) |
44 | , | 쉼표 |
완성형 인코딩
완성된 글자에 코드부여조합형 인코딩
초성코드 + 중성커드 + 종성코드UTF-8
, UTF-16
, UTF-32
고급 언어
사람이 이해하기 쉬운 언어저급 언어
컴퓨터가 이해하고 실행할 수 있는 언어고급 언어
➡️ 저급 언어
(명령어) 변환은 필수기계어
0과 1의 명령어 비트로 이루어진 단어어셈블리어
기계어를 읽기 편한 상태로 번역한 언어고급 언어가 저급 언어로 변환되는 방식
컴파일 언어
컴파일 방식으로 작동하는 프로그래밍 언어컴파일
코드 전체가 저급 언어로 변환되는 과정인터프리터 언어
인터프리터에 의해 소스 코드가 한 줄씩 실행되는 고급 언어인터프리터
소스 코드를 한 줄씩 저급 언어로 변환하여 실행프로그램이 실행되려면 반드시 ( **메모리** )에 저장되어 있어야 합니다.
**1101** → 모든 0과 1 뒤집기 → **0010** → 1 더하기 → **0011**
p. 100
스택은 나중에 저장한 데이터를 가장 먼저 빼냄(LIFO)
큐는 선입선출로 가장 먼저 저장된 데이터부터 빼냄(FIFO)