문타쿠, 공부하다.
[독하게 시작하는 C 프로그래밍] 섹션 5. 코드 체계 본문
컴퓨터가 글자를 말하는 방법 (feat. ASCII)
컴퓨터에는 오직 숫자 데이터만 존재하며, 문자라는 것은 존재하지 않는다.
그러면 컴퓨터는 우리에게 어떻게 문자를 보여주는 것인가?
이때 등장하는 것이 바로 미국에서 만든 아스키 코드이다.
ASCII(American Standard Code for Information Interchange)
- 문자를 숫자로 표현하는 표준 문자 인코딩 체계
- 0 ~ 127까지의 값을 사용하며, 7비트(2⁷ = 128개)의 이진 숫자로 표현한다.
- 1비트가 추가되어 8비트가 된 확장 아스키 표준도 있지만, 일반적으로 말하는 아스키 코드는 7비트라고 할 수 있다.
- 아스키 코드는 1바이트로 표현된다. -> 1바이트는 8비트인데, 아스키 코드는 일반적으로 7비트라며?
- 아스키 문자는 7비트로 표현되지만, 대부분의 컴퓨터 시스템은 데이터를 1바이트 단위로 저장하고 처리하므로, 아스키 코드를 1바이트로 표현한다.
- 아스키 코드에서 나머지 1비트는 일반적으로 0으로 설정되거나 사용되지 않는다.
사람이 문자를 입력하면 컴퓨터는 아스키 코드를 바탕으로 입력한 문자를 숫자로 바꾸어 저장하고(=문자 인코딩),
반대로 컴퓨터가 문자를 보여줄 때는 저장된 숫자에 대응하는 문자로 매핑하여 보여준다(=문자 디코딩).
문자열에 대한 이해
문자열 = 문자 배열
문자 여러 개를 연속으로 나열해서 바이트 단위로 사용하는 것을 문자열이라고 한다.
가볍게 살피는 유니코드
아스키 코드는 미국에서 만들어졌다 보니, 한글을 포함한 여러 다국어 및 특수문자를 지원하지 않는다.
그래서 등장한 것이 바로 유니코드(Unicode)
- 전 세계의 모든 문자와 기호를 컴퓨터에서 일관되게 표현하고 다루기 위한 국제 표준 문자 인코딩 시스템
- 간단하게 말하자면 모든 문자를 한 곳에 모아둔 것
- 유니코드에서 한글, 영문 등등 모든 한 글자는 2바이트이다.
C언어에서 문자열은 MBCS(Multi-bytes Character Sets)와 Unicode 문자열로 나눈다.
*참고하면 좋은 영상
https://youtu.be/6hvJr0-adtg?si=dGto2GLjaTpNfsOd
'C언어 > 독하게 시작하는 C 프로그래밍' 카테고리의 다른 글
[독하게 시작하는 C 프로그래밍] 섹션 7. 개발환경 구축 (Part 2. C 프로그래밍의 시작) (0) | 2023.10.24 |
---|---|
[독하게 시작하는 C 프로그래밍] 섹션 6. 프로그래밍 언어 분류 (0) | 2023.10.19 |
[독하게 시작하는 C 프로그래밍] 섹션 4. CPU 수준 자료형 (0) | 2023.10.09 |
[독하게 시작하는 C 프로그래밍] 섹션 3. C를 배우기 전 알아야 할 컴퓨터 구조 (0) | 2023.10.08 |
[독하게 시작하는 C 프로그래밍] 섹션 2. 진법 변환 (0) | 2023.10.08 |