1. 정보 단위
워드(word)
- CPU가 한 번에 처리할 수 있는 정보의 크기 단위
- 하프 워드 (half word) / 풀 워드 (full word) / 더블 워드 (double word)
2. 이진수 표기
ex) 8을 표기할 때
- 1000(2)
- 0b1000
0과 1로 음수 표현하기 : 2의 보수
- 어떤 수를 그보다 큰 2ⁿ에서 뺀 값
- ex) -3
- 11(2) 보다 큰 2ⁿ = 100(2)
- 100(2) - 11(2) = 01(2)
- 모든 0과 1을 뒤집고 1 더한 값
- 11key(2) -> 00(2) -> 01(2)
플래그(flag) 로 양수 음수 구분
플래그 종류 | 의미 | 사용 예시 |
부호 플래그 | 연산한 결과의 부호를 나타낸다 | 1 : 계산 결과는 음수 0 : 계산 결과는 양수 |
제로 플래그 | 연산 결과가 0인지 여부를 나타낸다 | 1 : 연산 결과는 0 0 : 연산 결과는 0이 아님 |
캐리 플래그 | 연산 결과 올림수나 내림수가 발생하는지를 나타낸다. | 1 : 올림수나 빌림수가 발생했음 0 : 발생하지 않았음 |
오버플로우 플래그 | 오버플로우가 발생하는지를 나타낸다 | 1 : 오버플로우가 발생 0 : 오버플로우 발생하지 않음 |
인터럽트 플래그 | 인터럽트가 가능한지를 나타냄. | 1 : 인터럽트 가능 0 : 인터럽트 불가 |
슈퍼바이저 플래그 | 커널 모드로 실행 중인지, 사용자 모드로 실행 중인지 나타냄 | 1 : 커널모드 0 : 사용자모드 |
3. 16진법
이진법으로는 숫자의 길이가 너무 길어지기 때문에 컴퓨터의 데이터를 표현할 때 16진법도 많이 사용한다
(10~15 : A~F)
16진법 표기
- 15(16)
- 0x15
- 문자 집합(character set)
- 컴퓨터가 이해할 수 있는 문자의 모음
- 인코딩(encoding)
- 코드화하는 과정
- 문자를 0과 1로 이루어진 문자 코드로 변환하는 과정
- 디코딩
- 코드를 해석하는 과정
- 0과 1로 표현된 문자 코드를 문자를 변환하는 과정
4. 아스키 코드
- 초창기 문자 집합 중 하나
- 알파벳, 아라비아 숫자, 일부 특수 문자 및 제어 문자
- 7비트로 하나의 문자 표현
- 8비트 중 1비트는 오류 검출을 위해 사용되는 패리티 비트(parity bit)
- A는 65 a는 97
- 한글을 포함한 다른 언어 문자, 다양한 특수 문자 표현 불가
- 아스키 코드는 7비트로 하나의 문자를 표현하기에
- 128개보다 많은 문자를 표현할 수 없음 (2의 7승)
- 8비트 확장 아스키가 등장했지만 여전히 부족함
5. 한글 인코딩
- 완성형 : 단어 하나하나에 고유 코드 부여
- EUC-KR : 글자 하나 하나에 2바이트 크기의 코드 부여 (2바이트 == 16비트 == 4자리 십육진수)
- 조합형 : 자음 모음에 코드 부여
6. 유니코드
- 통일된 문자 집합
- 한글, 영어, 화살표와 같은 특수 문자, 심지어 이모티콘까지 표현 가능
- UTF-8, UTF-16, UTF-32 ....
- UTF : Unicode Transformation Format
반응형
'Computer Engineering' 카테고리의 다른 글
빠른 CPU를 위한 설계 기법 (코어, 클럭) (0) | 2024.04.02 |
---|---|
명령어 사이클과 인터럽트 (interrupt) (0) | 2024.04.02 |
ALU와 제어장치 / 레지스터 (0) | 2024.03.27 |
명령어 (0) | 2024.01.22 |
컴퓨터 구조 (1) | 2024.01.04 |
댓글