본문 바로가기
컴퓨터 IT

수와 문자정보의 표현

by 히든트레져 제이 2023. 11. 15.

수와 문자정보의 표현

정보의 표현, 수의 표현, 그리고 연산은 컴퓨터과학과 디지털 시스템에서 핵심적인 개념입니다.

문자 정보의 표현은 컴퓨터에서 문자를 나타내는 방법에 관한 것입니다. 주로 문자는 문자 코드를 사용하여 컴퓨터에서 저장 및 처리됩니다. 영문자의 표현은 그 중에서도 영어 알파벳에 해당하는 문자를 특히 다루게 됩니다.

 

 

 

 

§ 정보의표현

1. 수의 표현과 연산

 

1. 정보의 표현:
비트(Bit): 정보의 최소 단위로 0 또는 1의 값을 가집니다.
바이트(Byte): 8개의 비트로 이루어져 있으며, 컴퓨터에서 문자 하나를 나타내는 데 사용됩니다.


ASCII 코드: 문자를 숫자로 표현하는 표준 코드로, 각 문자에 고유한 7비트 코드를 할당합니다.
유니코드: 전 세계의 모든 문자를 나타내기 위한 표준 코드로, ASCII 코드를 확장하여 다양한 문자를 포함합니다.

 

2. 수의 표현:


이진수(Binary):

 

 0과 1로 이루어진 수 체계로, 컴퓨터에서 주로 사용됩니다.


십진수(Decimal): 

 

0부터 9까지의 10진수 수 체계로 일반적인 인간의 수 체계입니다.


16진수(Hexadecimal): 

 

0부터 9까지의 숫자와 A부터 F까지의 문자를 사용하는 16진수 수 체계로, 이진수를 간편하게 표현할 때 자주 사용됩니다.

 

3. 수의 연산:


이진수 덧셈: 이진수 간의 덧셈은 각 자리별로 0과 1의 값을 가지고 진수 올림이 발생할 수 있습니다.
이진수 뺄셈: 이진수 간의 뺄셈은 각 자리별로 대응하는 비트를 빼고, 빌려오기(borrow)가 발생할 수 있습니다.


이진수 곱셈:

 

 각 자리별로 곱셈을 수행하고 결과를 합산합니다.
이진수 나눗셈: 나누는 수로 나뉘는 수를 나누고 나머지를 구합니다.

 

4. 부동 소수점 표현:


부동 소수점(Floating Point): 실수를 표현하는 데 사용되는 표준 방법으로, 가수와 지수를 사용하여 소수점을 이동시키는 방식입니다.


IEEE 754 표준: 부동 소수점 수를 이진수로 표현하는 국제 표준으로, 단정밀도와 배정밀도 등 다양한 형태가 있습니다.


정보의 표현과 수의 표현은 컴퓨터가 데이터를 다루는 기초이며, 이러한 데이터를 이용하여 다양한 연산이 수행됩니다. 이러한 개념을 이해하면 프로그래밍 및 컴퓨터 아키텍처에 대한 이해가 깊어지게 됩니다.

 

진법의 표현

 

1. 2진법 (Binary):


특징:


0과 1 두 개의 숫자만 사용하여 숫자를 표현합니다.
컴퓨터의 기본적인 데이터 표현 방식으로 많이 사용됩니다.


예시:


2진수 101은 10진수로 5를 나타냅니다. (1x2^2 + 0x2^1 + 1x2^0)


2. 8진법 (Octal)


특징:


0부터 7까지 총 여덟 개의 숫자를 사용하여 숫자를 표현합니다.
주로 컴퓨터 과학이나 프로그래밍에서 사용됩니다.


예시:


8진수 12는 10진수로 10을 나타냅니다. (1x8^1 + 2x8^0)


3. 10진법 (Decimal):


특징:


일반적인 인간의 숫자 표현 방식으로 0부터 9까지 총 열 개의 숫자를 사용합니다.
일상 생활에서 주로 사용되며, 우리가 흔히 알고 있는 숫자 체계입니다.


예시:


10진수 25는 그 자체로 25를 나타냅니다.


이러한 진법은 서로 다른 상황에서 다양하게 사용됩니다.

 

 2진법은 컴퓨터에서 데이터를 표현하고 처리하는 데 주로 사용되고, 8진법은 프로그래밍에서 특정 상황에서 편리하게 사용될 수 있습니다. 10진법은 우리의 일상적인 숫자 표현 방식으로 가장 익숙하게 사용됩니다.

 

 

문자 정보의 표현

1.1 ASCII 코드 (American Standard Code for Information Interchange):


ASCII 코드는 문자를 숫자로 표현하는 표준 코드입니다.


각 문자에 7비트의 이진수 값을 할당하며, 확장 ASCII에서는 8비트로 확장되기도 합니다.


예시: 대문자 'A'는 ASCII 코드로 65, 소문자 'a'는 97에 해당합니다.


1.2 유니코드 (Unicode):


유니코드는 전 세계의 모든 문자를 표현하기 위한 표준 코드입니다.


각 문자에 고유한 코드 포인트를 할당하며, 0부터 0x10FFFF까지의 범위에 표현됩니다.


UTF-8, UTF-16, UTF-32 등은 유니코드를 다양한 방식으로 인코딩하는 방법입니다.


2. 영문자의 표현:


2.1 ASCII 코드:


영어 알파벳 대문자와 소문자는 각각 65부터 90까지, 97부터 122까지의 ASCII 코드 값을 가집니다.


2.2 유니코드:


영어 알파벳 또한 유니코드에 할당되어 있으며, ASCII와 동일한 값을 가집니다.


예시: 대문자 'A'의 유니코드는 U+0041, 소문자 'a'의 유니코드는 U+0061입니다.


3. 문자열의 표현:


문자열은 여러 문자의 나열로 이루어져 있습니다.


문자열은 문자 코드나 유니코드의 연속된 값으로 표현됩니다.


문자열은 작은따옴표('') 또는 큰따옴표("")로 둘러싸여 표현됩니다.


예를 들어, "Hello, World!"라는 문자열은 각 문자의 ASCII 코드 또는 유니코드 코드 포인트로 표현됩니다. 컴퓨터는 이러한 코드를 해석하여 문자열을 처리합니다.

  

4. 한글의 표현:


4.1 유니코드:


한글은 유니코드에서도 지원되며, 각 음절은 고유한 코드 포인트를 가지고 있습니다.
예를 들어, '가'는 U+AC00, '나'는 U+B098과 같은 코드 포인트를 가지고 있습니다.


4.2 인코딩:


유니코드로 표현된 한글은 다양한 문자 인코딩 방식으로 표현될 수 있습니다.


대표적으로 UTF-8, UTF-16, UTF-32 등이 있으며, 이러한 인코딩 방식은 한글 문자를 이진수로 변환하는 규칙을 정의합니다.


4.3  문자열의 표현:


한글 문자열은 유니코드 코드 포인트의 연속된 값으로 표현됩니다.
예를 들어, "안녕하세요"는 각 문자의 유니코드 코드 포인트로 표현됩니다.


한글은 자음과 모음의 결합으로 이루어져 있기 때문에 다소 특별한 표현 방식을 가지고 있습니다. 이를 이해하고 활용하면 한글을 컴퓨터에서 자연스럽게 다룰 수 있습니다.

 

 

5. 2바이트 조합형 한글 

 

한글을 표현하기 위한 문자 인코딩 방식 중 하나입니다. 이 방식은 기본적으로 한 글자를 표현하기 위해 2바이트를 사용하며, 초성, 중성, 종성의 조합으로 글자를 표현합니다. 이 방식은 주로 한글의 초성, 중성, 종성이 각각 따로 저장되는 조합형 한글 방식입니다.

특징:


2바이트로 표현: 각 글자가 2바이트로 표현되기 때문에 총 2바이트를 사용합니다. 이는 기존의 1바이트로 표현되는 ASCII 문자보다 더 많은 글자를 표현할 수 있습니다.

초성, 중성, 종성의 분리: 한글은 초성, 중성, 종성의 결합으로 이루어진 문자이기 때문에 이를 따로 저장합니다. 따라서 2바이트 조합형 한글에서는 한 글자를 표현하기 위해 2바이트를 사용하며, 이를 초성, 중성, 종성으로 나누어 저장합니다.

종성의 경우에만 사용: 모든 글자가 종성을 가지는 것은 아니기 때문에, 종성이 없는 글자의 경우에는 일부 비트를 사용하지 않습니다.

예시:


예를 들어, '가'라는 글자를 2바이트 조합형 한글로 표현하면 다음과 같습니다:

'ㄱ' (초성) : 1011
'ㅏ' (중성) : 1000
종성이 없음 : 0000
이를 합치면 '가'를 나타내는 2바이트 코드가 됩니다.

사용 분야:


2바이트 조합형 한글은 주로 한글의 처리를 위한 시스템에서 사용되며, 이전에는 주로 한글 워드 프로세서, 한글 전용 데이터베이스, 한글 메일 등에서 활용되었습니다. 현재는 대부분의 시스템에서는 UTF-8 또는 UTF-16과 같은 유니코드 기반의 문자 인코딩을 사용하며, 2바이트 조합형 한글은 오래된 환경에서의 호환성을 유지하기 위해 사용될 수 있습니다.