맨위로가기

UTF-1

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

UTF-1은 유니코드 문자 집합을 인코딩하기 위한 가변 길이 문자 인코딩 방식이다. UTF-8과 유사하게 ASCII와 하위 호환되며, 유니코드 코드 포인트를 1, 2, 3 또는 5바이트 시퀀스로 표현한다. C0 및 C1 제어 코드 또는 멀티 바이트 인코딩의 공백 문자를 사용하지 않으며, ISO/IEC 2022와 호환되도록 설계되었다. UTF-8과 비교하여 코드 포인트 표현 방식에 차이가 있다.

더 읽어볼만한 페이지

  • 유니코드 변환 형식 - UTF-8
    UTF-8은 유니코드 문자를 표현하는 가변 길이 문자 인코딩 방식으로, ASCII 코드와 호환성을 유지하며 다양한 언어의 문자를 표현할 수 있도록 설계되었지만, 보안 문제점과 공간 효율성 측면에서 단점을 가진다.
  • 유니코드 변환 형식 - UTF-32
    UTF-32는 유니코드 문자 집합의 각 코드 포인트를 32비트로 표현하는 가변 길이 문자 인코딩 방식이며, 문자열 내 특정 문자를 빠르게 찾는 데 사용되지만 데이터 크기가 크다는 단점이 있다.
  • 유니코드에 관한 - UTF-8
    UTF-8은 유니코드 문자를 표현하는 가변 길이 문자 인코딩 방식으로, ASCII 코드와 호환성을 유지하며 다양한 언어의 문자를 표현할 수 있도록 설계되었지만, 보안 문제점과 공간 효율성 측면에서 단점을 가진다.
  • 유니코드에 관한 - 유니코드 영역
    유니코드 영역은 문자 및 기호를 논리적으로 그룹화한 블록들의 집합으로, 고유한 이름과 코드 포인트 범위를 가지며, 기본 다국어 평면(BMP)을 포함하여 다양한 평면으로 확장되어 문자 인코딩 등 다양한 분야에서 중요한 역할을 한다.
  • 문자 인코딩 - 유니코드
    유니코드는 세계의 모든 문자를 하나의 컴퓨터 인코딩 표준으로 통합하기 위해 설계되었으며, 유니코드 컨소시엄에 의해 관리되고 UTF-8, UTF-16, UTF-32 등의 부호화 형식을 제공하지만, 일부 문자 표현 문제, 버전 간 비호환성, 레거시 인코딩과의 호환성 문제 등의 과제를 안고 있다.
  • 문자 인코딩 - UTF-8
    UTF-8은 유니코드 문자를 표현하는 가변 길이 문자 인코딩 방식으로, ASCII 코드와 호환성을 유지하며 다양한 언어의 문자를 표현할 수 있도록 설계되었지만, 보안 문제점과 공간 효율성 측면에서 단점을 가진다.
UTF-1
개요
이름UTF-1
MIME 형식ISO-10646-UTF-1
관련해당 사항 없음
언어국제어
상태모호함, 주로 역사적인 관심사
분류유니코드 변환 형식
확장 ASCII
가변 너비 인코딩
인코딩 대상ISO/IEC 10646 (유니코드)
확장US-ASCII
이전해당 사항 없음
다음UTF-8

2. 설계

UTF-1은 UTF-8과 유사하게 가변 길이 인코딩이며 ASCII와 하위 호환된다. 모든 유니코드 코드 포인트는 단일 바이트 또는 2, 3, 5 바이트 시퀀스로 표현된다. 모든 ASCII 코드 포인트는 단일 바이트로 표현되며, U+0080에서 U+009F 범위의 코드 포인트도 단일 바이트로 표현된다는 점이 특징이다.

UTF-1은 C0 및 C1 제어 코드 또는 멀티바이트 인코딩에서 공백 문자를 사용하지 않는다. 0–0x20 또는 0x7F–0x9F 범위의 바이트는 항상 해당 코드 포인트를 나타낸다. 66개의 "보호된" 문자를 사용하는 이 설계는 ISO/IEC 2022와의 호환성을 고려한 것이다.

UTF-1은 "모듈로 190" 산술(256 − 66 = 190)을 사용한다. 이에 비해 UTF-8은 모든 128개의 ASCII 문자를 보호하고 이를 위해 1비트가 필요하며, 자체 동기화를 만들기 위해 두 번째 비트가 필요하므로 "모듈로 64" 산술을 사용한다. BOCU-1은 MIME 호환성에 필요한 최소한의 세트(0x00, 0x07–0x0F, 0x1A–0x1B, 및 0x20)만 보호하므로 "모듈로 243" 산술(256 − 13 = 243)이 된다.

코드포인트UTF-16BEUTF-16LEUTF-8UTF-1
U+007F00 7F7F 007F7F
U+008000 8080 00C2 8080
U+009F00 9F9F 00C2 9F9F
U+00A000 A0A0 00C2 A0A0 A0
U+00BF00 BFBF 00C2 BFA0 BF
U+00C000 C0C0 00C3 80A0 C0
U+00FF00 FFFF 00C3 BFA0 FF
U+010001 0000 01C4 80A1 21
U+015D01 5D5D 01C5 9DA1 7E
U+015E01 5E5E 01C5 9EA1 A0
U+01BD01 BDBD 01C6 BDA1 FF
U+01BE01 BEBE 01C6 BEA2 21
U+07FF07 FFFF 07DF BFAA 72
U+080008 0000 08E0 A0 80AA 73
U+0FFF0F FFFF 0FE0 BF BFB5 48
U+100010 0000 10E1 80 80B5 49
U+401540 1515 40E4 80 95F5 FF
U+401640 1616 40E4 80 96F6 21 21
U+D7FFD7 FFFF D7ED 9F BFF7 2F C3
U+E000E0 0000 E0EE 80 80F7 3A 79
U+F8FFF8 FFFF F8EF A3 BFF7 5C 3C
U+FDD0FD D0D0 FDEF B7 90F7 62 BA
U+FDEFFD EFEF FDEF B7 AFF7 62 D9
U+FEFFFE FFFF FEEF BB BFF7 64 4C
U+FFFDFF FDFD FFEF BF BDF7 65 AD
U+FFFEFF FEFE FFEF BF BEF7 65 AE
U+FFFFFF FFFF FFEF BF BFF7 65 AF
U+10000D8 00 DC 0000 D8 00 DCF0 90 80 80F7 65 B0
U+38E2DD8 A3 DE 2DA3 D8 2D DEF0 B8 B8 ADFB FF FF
U+38E2ED8 A3 DE 2EA3 D8 2E DEF0 B8 B8 AEFC 21 21 21 21
U+FFFFFDB BF DF FFBF DB FF DFF3 BF BF BFFC 21 37 B2 7A
U+100000DB C0 DC 00C0 DB 00 DCF4 80 80 80FC 21 37 B2 7B
U+10FFFFDB FF DF FFFF DB FF DFF4 8F BF BFFC 21 39 6E 6C
U+7FFFFFFF오류오류FD BF BF BF BF BFFD BC 2B B8 40



현대 유니코드는 U+10FFFF에서 끝나지만, UTF-1과 UTF-8은 원래 범용 문자 집합(UCS-4)의 전체 31비트를 인코딩하도록 설계되었다.

2. 1. 코드 포인트 표현

UTF-1은 유니코드 코드 포인트를 단일 바이트 또는 2, 3, 5바이트 시퀀스로 표현하는 가변 길이 인코딩 방식이다. ASCII와 하위 호환되며, 모든 ASCII 코드 포인트는 단일 바이트로 표현된다. 특히 코드 포인트 U+0080에서 U+009F도 단일 바이트로 표현되는 특징이 있다.

UTF-1은 C0 및 C1 제어 코드나 멀티바이트 인코딩의 공백 문자를 사용하지 않아, 0–0x20 또는 0x7F–0x9F 범위의 바이트는 항상 해당 코드 포인트를 나타낸다. 이러한 설계는 ISO/IEC 2022와의 호환성을 고려한 것이다.

UTF-1은 "모듈로 190" 산술(256 − 66 = 190)을 사용한다. 이는 모든 128개의 ASCII 문자를 보호하고 자체 동기화를 위해 추가 비트가 필요한 UTF-8의 "모듈로 64" 산술과 비교된다.

다음은 UTF-1과 UTF-8의 코드 포인트 표현을 비교한 표이다.

코드 포인트UTF-8UTF-1
U+007F7F7F
U+0080C2 8080
U+009FC2 9F9F
U+00A0C2 A0A0 A0
U+00BFC2 BFA0 BF
U+00C0C3 80A0 C0
U+00FFC3 BFA0 FF
U+0100C4 80A1 21
U+015DC5 9DA1 7E
U+015EC5 9EA1 A0
U+01BDC6 BDA1 FF
U+01BEC6 BEA2 21
U+07FFDF BFAA 72
U+0800E0 A0 80AA 73
U+0FFFE0 BF BFB5 48
U+1000E1 80 80B5 49
U+4015E4 80 95F5 FF
U+4016E4 80 96F6 21 21
U+D7FFED 9F BFF7 2F C3
U+E000EE 80 80F7 3A 79
U+F8FFEF A3 BFF7 5C 3C
U+FDD0EF B7 90F7 62 BA
U+FDEFEF B7 AFF7 62 D9
U+FEFFEF BB BFF7 64 4C
U+FFFDEF BF BDF7 65 AD
U+FFFEEF BF BEF7 65 AE
U+FFFFEF BF BFF7 65 AF
U+10000F0 90 80 80F7 65 B0
U+38E2DF0 B8 B8 ADFB FF FF
U+38E2EF0 B8 B8 AEFC 21 21 21 21
U+FFFFFF3 BF BF BFFC 21 37 B2 7A
U+100000F4 80 80 80FC 21 37 B2 7B
U+10FFFFF4 8F BF BFFC 21 39 6E 6C
U+7FFFFFFFFD BF BF BF BF BFFD BD 2B B9 40



현대 유니코드는 U+10FFFF에서 끝나지만, UTF-1과 UTF-8은 원래 범용 문자 집합 (UCS-4)의 전체 31비트를 인코딩하도록 설계되었다.

2. 2. 인코딩 방식

UTF-1은 UTF-8과 유사하게 가변 길이 인코딩이며 ASCII와 하위 호환된다. 모든 유니코드 코드 포인트는 단일 바이트 또는 2, 3, 5 바이트 시퀀스로 표현된다. 모든 ASCII 코드 포인트는 단일 바이트이다(코드 포인트 U+0080에서 U+009F도 단일 바이트이다).

UTF-1은 C0 및 C1 제어 코드 또는 멀티 바이트 인코딩의 공백 문자를 사용하지 않는다. 0–0x20 또는 0x7F–0x9F 범위의 바이트는 항상 해당 코드 포인트를 나타낸다. 66개의 "보호된" 문자를 사용하는 이 설계는 ISO/IEC 2022와 호환되도록 시도되었다.

UTF-1은 "모듈로 190" 산술(256 − 66 = 190)을 사용한다. 비교를 위해 UTF-8은 모든 128개의 ASCII 문자를 보호하고 이를 위해 1비트가 필요하며, 자체 동기화를 만들기 위해 두 번째 비트가 필요하므로 "모듈로 64" 산술(26 = 64)이 된다. BOCU-1은 MIME 호환성에 필요한 최소한의 세트(0x00, 0x07–0x0F, 0x1A–0x1B, 및 0x20)만 보호하므로 "모듈로 243" 산술(256 − 13 = 243)이 된다.

다음은 코드 포인트에 따른 UTF-1의 인코딩 방식을 보여주는 표이다.

코드포인트UTF-1UTF-8
U+007F7F7F
U+008080C2 80
U+009F9FC2 9F
U+00A0A0 A0C2 A0
U+00BFA0 BFC2 BF
U+00C0A0 C0C3 80
U+00FFA0 FFC3 BF
U+0100A1 21C4 80
U+015DA1 7EC5 9D
U+015EA1 A0C5 9E
U+01BDA1 FFC6 BD
U+01BEA2 21C6 BE
U+07FFAA 72DF BF
U+0800AA 73E0 A0 80
U+0FFFB5 48E0 BF BF
U+1000B5 49E1 80 80
U+4015F5 FFE4 80 95
U+4016F6 21 21E4 80 96
U+D7FFF7 2F C3ED 9F BF
U+E000F7 3A 79EE 80 80
U+F8FFF7 5C 3CEF A3 BF
U+FDD0F7 62 BAEF B7 90
U+FDEFF7 62 D9EF B7 AF
U+FEFFF7 64 4CEF BB BF
U+FFFDF7 65 ADEF BF BD
U+FFFEF7 65 AEEF BF BE
U+FFFFF7 65 AFEF BF BF
U+10000F7 65 B0F0 90 80 80
U+38E2DFB FF FFF0 B8 B8 AD
U+38E2EFC 21 21 21 21F0 B8 B8 AE
U+FFFFFFC 21 37 B2 7AF3 BF BF BF
U+100000FC 21 37 B2 7BF4 80 80 80
U+10FFFFFC 21 39 6E 6CF4 8F BF BF
U+7FFFFFFFFD BD 2B B9 40FD BF BF BF BF BF



현대 유니코드는 U+10FFFF에서 끝나지만, UTF-1과 UTF-8은 원래 범용 문자 집합 (UCS-4)의 전체 31비트를 인코딩하도록 설계되었으며, 위 표의 마지막 항목은 이 원래 최종 코드 포인트를 보여준다.

2. 3. UTF-8과의 비교

UTF-8과 유사하게 UTF-1은 가변 길이 인코딩이며 ASCII와 하위 호환된다. 모든 유니코드 코드 포인트는 단일 바이트 또는 2, 3 또는 5 바이트 시퀀스로 표현된다. 모든 ASCII 코드 포인트는 단일 바이트이다(코드 포인트 에서 도 단일 바이트이다).

UTF-1은 C0 및 C1 제어 코드 또는 멀티 바이트 인코딩의 공백 문자를 사용하지 않는다. 0–0x20 또는 0x7F–0x9F 범위의 바이트는 항상 해당 코드 포인트를 나타낸다. 66개의 "보호된" 문자를 사용하는 이 설계는 ISO/IEC 2022와 호환되도록 시도되었다.

UTF-1은 "모듈로 190" 산술(256 − 66 = 190)을 사용한다. 비교를 위해 UTF-8은 모든 128개의 ASCII 문자를 보호하고 이를 위해 1비트가 필요하며, 자체 동기화를 만들기 위해 두 번째 비트가 필요하므로 "모듈로 64" 산술(26 = 64)이 된다. BOCU-1은 MIME 호환성에 필요한 최소한의 세트(0x00, 0x07–0x0F, 0x1A–0x1B, 및 0x20)만 보호하므로 "모듈로 243" 산술(256 − 13 = 243)이 된다.

코드 포인트UTF-8UTF-1
U+007F7F7F
U+0080C2 8080
U+009FC2 9F9F
U+00A0C2 A0A0 A0
U+00BFC2 BFA0 BF
U+00C0C3 80A0 C0
U+00FFC3 BFA0 FF
U+0100C4 80A1 21
U+015DC5 9DA1 7E
U+015EC5 9EA1 A0
U+01BDC6 BDA1 FF
U+01BEC6 BEA2 21
U+07FFDF BFAA 72
U+0800E0 A0 80AA 73
U+0FFFE0 BF BFB5 48
U+1000E1 80 80B5 49
U+4015E4 80 95F5 FF
U+4016E4 80 96F6 21 21
U+D7FFED 9F BFF7 2F C3
U+E000EE 80 80F7 3A 79
U+F8FFEF A3 BFF7 5C 3C
U+FDD0EF B7 90F7 62 BA
U+FDEFEF B7 AFF7 62 D9
U+FEFFEF BB BFF7 64 4C
U+FFFDEF BF BDF7 65 AD
U+FFFEEF BF BEF7 65 AE
U+FFFFEF BF BFF7 65 AF
U+10000F0 90 80 80F7 65 B0
U+38E2DF0 B8 B8 ADFB FF FF
U+38E2EF0 B8 B8 AEFC 21 21 21 21
U+FFFFFF3 BF BF BFFC 21 37 B2 7A
U+100000F4 80 80 80FC 21 37 B2 7B
U+10FFFFF4 8F BF BFFC 21 39 6E 6C
U+7FFFFFFFFD BF BF BF BF BFFD BD 2B B9 40



현대 유니코드는 U+10FFFF에서 끝나지만, UTF-1과 UTF-8은 원래 범용 문자 집합(UCS-4)의 전체 31비트를 인코딩하도록 설계되었으며, 이 표의 마지막 항목은 이 원래 최종 코드 포인트를 보여준다.



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com