>  기사  >  백엔드 개발  >  메모리에 있는 문자 데이터는 어떤 형태로 저장되나요?

메모리에 있는 문자 데이터는 어떤 형태로 저장되나요?

青灯夜游
青灯夜游원래의
2021-06-03 11:57:2725723검색

문자 데이터는 ASCII 코드로 메모리에 저장됩니다. 문자 데이터는 문자 상수를 문자 변수에 넣는 것인데, 문자 자체를 메모리 단위에 넣는 것이 아니라, 문자에 해당하는 ASCII 코드를 저장 단위에 넣는다.

메모리에 있는 문자 데이터는 어떤 형태로 저장되나요?

이 튜토리얼의 운영 환경: Windows 7 시스템, c99 버전, Dell G3 컴퓨터.

문자 데이터는 ASCII 코드 값(바이트)으로 메모리에 저장됩니다. 모든 데이터 유형은 0과 1의 바이너리 코드로 메모리에 저장됩니다. 이 원칙은 변하지 않습니다.

C 언어에서 char형 데이터는 문자 상수를 문자 변수에 넣는 것인데, 문자 자체를 메모리 단위에 넣는 것이 아니라, 문자에 해당하는 ASCII 코드를 저장 단위에 넣는 것입니다.

인코딩 시 한자 저장 공간은 2바이트가 필요합니다. UTF-8 인코딩에서는 영어 알파벳 문자를 저장하려면 1바이트가 필요하고, 중국어 문자를 저장하려면 3~4바이트가 필요합니다. UTF-16 인코딩에서는 영어 알파벳 문자 하나 또는 중국어 문자 하나를 저장하는 데 2바이트가 필요합니다. UTF-32 인코딩에서는 전 세계 모든 문자를 저장하려면 4바이트가 필요합니다.

메모리에 있는 문자 데이터는 어떤 형태로 저장되나요?

확장 정보:

ASCII((American Standard Code for Information Interchange): American Standard Code for Information Interchange)는 라틴 알파벳을 기반으로 한 컴퓨터 코딩 시스템으로, 주로 현대 영어 및 기타 서유럽 언어를 표시하는 데 사용됩니다. . 가장 일반적인 정보 교환 표준이며 국제 표준 ISO/IEC 646과 동일합니다. ASCII는 1967년에 처음으로 표준화된 형태로 발표되었으며, 마지막 업데이트는 1986년에 이루어졌습니다. 지금까지 총 128개의 문자가 정의되어 있으며, 지정된 7비트 또는 8비트 이진수 조합으로 128 또는 2진수를 사용합니다. 256자 가능. 기본 ASCII 코드라고도 불리는 표준 ASCII 코드는 7개의 이진수(나머지 1개의 이진수는 0)를 사용하여 모든 대문자와 소문자, 숫자 0~9, 문장 부호, 미국 영어 문자에 사용되는 특수 컨트롤을 나타냅니다. [1] . 그 중:

0~31 및 127(총 33개)은 제어 문자 또는 통신 전용 문자(나머지는 표시 가능한 문자)입니다. 예를 들어 제어 문자: LF(줄 바꿈), CR(캐리지 리턴), FF( 페이지 피드), DEL(삭제), BS(백스페이스), BEL(링) 등 통신 특수 문자: SOH(텍스트 헤드), EOT(텍스트 끝), ACK(확인) 등; ​​8, 9, 10 및 13입니다. 각각 백스페이스, 탭, 줄 바꿈 및 캐리지 리턴 문자로 변환됩니다. 특정 그래픽 표시가 없지만 응용 프로그램에 따라 텍스트 표시에 다른 효과가 있습니다 [1].

32~126(총 95개)은 문자(32는 공백)이며, 그 중 48~57은 0부터 9까지의 10개의 아라비아 숫자입니다.

65~90은 영문 대문자 26자, 97~122는 영문 소문자 26자, 나머지는 구두점, 산술 기호 등입니다.

또한 표준 ASCII에서는 가장 높은 비트(b7)가 패리티 비트로 사용됩니다. 소위 패리티 검사(parity check)는 코드 전송 중에 오류가 발생하는지 확인하는 데 사용되는 방법을 말하며 일반적으로 홀수 검사와 짝수 검사의 두 가지 유형으로 구분됩니다. 홀수 패리티는 다음을 규정합니다. 올바른 코드의 바이트에 있는 1의 수는 홀수여야 합니다. 홀수가 아닌 경우 가장 높은 비트 b7에 1을 추가합니다. 짝수 패리티는 다음을 규정합니다. 올바른 코드는 짝수여야 합니다. 짝수가 아닌 경우 가장 높은 비트 b7에 1[1]을 추가합니다.

마지막 128개를 확장 ASCII 코드라고 합니다. 많은 x86 기반 시스템은 확장(또는 "고급") ASCII 사용을 지원합니다. 확장 ASCII를 사용하면 각 문자의 8번째 비트를 사용하여 추가 128개의 특수 기호 문자, 외국 문자 및 그래픽 기호를 결정할 수 있습니다.

관련 추천: "

C 언어 비디오 튜토리얼

"

위 내용은 메모리에 있는 문자 데이터는 어떤 형태로 저장되나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.