1. 문자 자료의 표현
컴퓨터 내부에서는 문자 자료도 1과 0의 2진수 조합으로 표현
문자의 표현을 위해 문자에 대한 이진수 코드를 정의하여 사용
가. BCD코드(Binary Coded Decimal Code)
6비트를 사용하여 문자 표현
상위 2비트는 존 비트, 하위 4비트는 숫자 비트로 사용
존 비트와 숫자 비트를 조합하여 10진수와 영어 대문자, 특수 문자를 표현
나. EBCDIC코드(Extended Binary Coded Decimal Interchange Code)
8비트를 사용하여 문자 표현
상위 4비트는 존 비트, 하위 4비트는 숫자 비트로 사용
존 비트와 숫자 비트를 조합하여 10진수와 영어 대소문자, 특수 문자를 표현
다. ASCII코드(American Standard Code for Information Interchange)
7비트를 사용하여 문자 표현
상위 3비트는 존 비트, 하위 4비트는 숫자 비트로 사용
존 비트와 숫자 비트를 조합하여 10진수와 영어 대소문자, 특수 문자를 표현
최상위 비트에 패리티비트를 추가하여 8비트 형식으로 사용하기도 함.
대문자 A는 65, 소문자 a는 97 코드 값을 가짐.
C언어에서 문자의 자료형 표현은 char 키워드를 사용
라. 유니코드
EBCIDIC코드나 ASCII코드로 표현하지 못하는 문자를 표현하기 위해 정의함.
세계 여러 나라의 언어를 통일된 방법으로 표현할 수 있도록 정의한 국제 표준 코드(ISO/IEC 10646)
2바이트를 조합하여 하나의 글자를 표현
Home
home.unicode.org
2. 논리 자료의 표현
논리값(참/거짓, 1/0)을 표현하기 위한 자료 형식
1비트로 표현할 수 있지만 일반적으로 컴퓨터 내부에서는 1바이트나 1워드(4바이트)를 단위로 사용
C언어에서 논리 표현 자료형은 bool 키워드를 사용하고, 0이 아닌 값은 True, 0을 False로 처리함.
3. 포인터 자료의 표현
포인터 자료는 메모리의 주소를 표현하기 위한 자료 형식
포인터 자료는 자료를 저장하고 있는 변수의 주소나 메모리의 특정 위치에 대한 주소를 저장하고 주소 연산을 할 때 사용
포인터를 사용하면 복잡한 자료구조 연산을 메모리에서의 주소 연산만으로 처리할 수 있음.
포인터는 자료형에 상관 없이 메모리 주소 한 개를 저장하는 변수이므로 2바이트를 사용
C언어에서의 포인터 표현 방법으로는 * 표시를 사용하여 일반 값을 저장하는 변수와 구별하여 사용
포인터를 사용하면 메모리를 직접 엑세스 할 수 있음.
4. 문자열 자료의 표현
한 글자로만 표현할 수 있는 문자 자료(char)와 달리 여러 문자로 이루어진 문자의 그룹을 하나의 자료로 취급하여 메모리에 연속적으로 저장하는 자료 형식
C언어에서 문자열의 표현방법은 포인터를 사용하거나 배열을 이용
가. 하나의 문자열 자료에 포함된 부분문자열을 표현하는 방법
1) 구분자를 사용하는 표현
구분자로 세미콜론(;) 사용
메모리 이용률은 효율적, 부분 문자열 탐색 시간은 비효율적
2) 고정길이를 사용하는 표현
메모리 이용률은 비효율적, 부분 문자열 탐색 시간은 가장 효율적
3) 포인터를 사용하는 표현
메모리 이용률은 효율적, 부분 문자열 탐색 시간은 효율적