C0 및 C1 제어 코드

C0 and C1 control codes

C0 C1 제어 코드 또는 제어 문자 집합은 ASCII 및 ASCII 파생 모델을 사용하는 컴퓨터 시스템에서 텍스트에 사용할 제어 코드를 정의한다. 코드는 텍스트에 대한 추가 정보(: 커서 위치, 새 줄 시작 지침 또는 텍스트가 수신되었다는 메시지)를 나타낸다.

C0 코드는 00HEX–1FHEX 범위이며, 기본 C0 세트는 원래 ISO 646(ASCII)에서 정의되었다. C1 코드는 80HEX–9FHEX 범위이며, 기본 C1 세트는 원래 ECMA-48에 정의되었다(나중에 ISO 6429로 조정됨). 제어 및 그래픽 문자를 지정하는 ISO/IEC 2022 시스템은 다른 C0 및 C1 세트를 전문 애플리케이션에 사용할 수 있도록 허용하지만 거의 사용되지 않는다.

C0 컨트롤

ASCII는 32개의 제어 문자와 더불어 전체 1 DEL 문자에 필요한 추가 문자(종이 테이프의 모든 구멍을 펀칭하여 지워야 함)를 정의했다.

멀티바이트 제어는 단말기에 상태 머신을 구현해야 할 것이기 때문에, 현대의 전자제품과 기계식 단말에서는 매우 어려웠기 때문에, 이 많은 수의 코드가 당시에는 바람직했다. 그 이후로, BS, TAB, LF, VT, FF, CR의 "스페이스" 범위, BEL 코드, ESC(그러나 ISO-2022-JP를 제외하고 거의 항상 ESC의 일부로서), '[' 등 원래의 제어장치 중 일부만이 그 사용을 유지했다. ANSI 이스케이프 시퀀스를 시작하는 CSI 표현). 다른 것들은 사용되지 않거나, NUL이 C 문자열 종단기가 되는 것과 같은 다른 의미를 얻었다.

ANPA-1312, KermitXMODEM과 같은 일부 직렬 전송 프로토콜은 원래 정의에 근접한 목적으로 제어 문자 SOH, STX, ETX, EOT, ACK, NAC 및 SYN을 광범위하게 사용한다.

기본 ASCII 제어 코드

이들은 ANSI X3.4에 원래 정의되어 있는 표준 ASCII 제어 코드다. ISO/IEC 2022 확장 메커니즘을 사용하는 경우, 8진수 순서에 따라 액티브 C0 제어 문자 집합으로 지정된다. 0x1B 0x21 0x40 (ESC ! @).[1]

Seq 12월 육각 약어 기호 이름 C 설명
^@ 00 00 NUL Null \0 원래 편집하기 위해 종이 테이프에 빈칸을 남길 수 있도록 하기 위해 사용되었다. 나중에 처리하는데 시간이 걸릴 수 있는 코드(예: 캐리지 리턴 또는 인쇄 터미널의 라인 피드) 이후 패딩에 사용됨. 지금은 특히 프로그래밍 언어 C에서 문자열 터미네이터로 자주 사용된다.
^A 01 01 SOH 제목 시작 메시지 전송에서 메시지 헤더의 시작을 구분하십시오. 이 헤더의 형식은 저널리즘 텍스트 전송을 위한 IPTC 7901과 같은 해당 프로토콜에 의해 정의될 수 있으며, 일반적으로 STX에 의해 종료된다.[2] Hadoop에서는 필드 구분자로 자주 사용된다.
^B 02 02 STX 텍스트 시작 메시지 텍스트의 첫 번째 문자, 메시지 제목을 종료하는 데 사용할 수 있다.
^C 03 03 ETX 텍스트 끝 메시지 전송에서 메시지의 기본 텍스트 끝을 구분하십시오. 적용 가능한 프로토콜[2] 또는 추가 텍스트에 의해 정의된 "후 텍스트 정보"(즉, 구조화된 바닥글)가 뒤따를 수 있으며,[3] 그 뒤에 EOT가 뒤따를 수 있다.[2][3] 키보드 입력에서 프로그램 또는 프로세스를 중단하거나 종료하기 위한 "중단" 문자(Ctrl-C)로 자주 사용된다.
^D 04 04 EOT 전송의 끝. 헤더, 메시지 텍스트 및 포스트 텍스트 바닥글 [2]또는 심지어 여러 텍스트와 관련 제목까지 포함할 수 있는 전송 메시지의 끝을 구분한다.[3] 또한 터미널을 대기 상태로 설정하는 데 사용할 수 있다.[3] Unix에서 터미널의 파일 끝을 나타내기 위해 자주 사용되며, 셸에 의해 명령으로 해석됨 exit 또는 logout.
^E 05 05 ENQ 문의 수신 엔드에서 응답을 트리거하여 여전히 존재하는지 확인하기 위한 신호.
^F 06 06 ACK 인정하다 ENQ에 대한 응답 또는 메시지 수신 성공 표시.
^G 07 07 [a] , 경보 \a 원래 터미널에서 을 울리곤 했다. 나중에 물리적 벨이 없는 시스템에서 삐 소리가 나는 데 사용되었다. 또한 빠르게 반전 비디오(비주얼 벨)를 켜고 끌 수 있다.
^H 08 08 BS 백스페이스 \b 커서를 왼쪽으로 한 위치 이동시킨다. 입력 시 커서 왼쪽에 있는 문자가 삭제될 수 있다. 초기 컴퓨터 기술에서 한 번 인쇄된 문자를 지울 수 없는 출력에서는 백스페이스가 ASCII로 악센트 문자를 생성하는 데 사용되기도 했다. 예를 들어, 세 개의 문자 시퀀스를 사용하여 제작할 수 있다. a BS ` (또는 문자의 16진수 값을 사용하여) 0x61 0x08 0x60이 용도는 일반적으로 지원되지 않는다(예를 들어 ISO/IEC 8859에서는 금지된다).[9] 백스페이스의 두 가지 잠재적 용도 사이에 모호성을 제공하기 위해, 취소 문자 제어 코드는 표준 C1 제어 세트의 일부가 되었다.
^I 09 09 HT 문자표, 수평표 \t 다음 문자 탭 중지 위치로 이동하십시오.
^J 10 0A LF 라인 피드 \n 타이프라이터, 프린터 및 일부 터미널 에뮬레이터의 경우, 커서를 열 위치에 영향을 주지 않고 한 행 아래로 이동시킨다. Unix에서 회선 종료를 표시하는 데 사용됨. DOS, Windows 및 다양한 네트워크 표준에서 LF는 종단 표시의 일부로 CR에 따라 사용된다.
^K 11 0B VT 선표, 수직표 \v 다음 줄 탭 스톱에 양식을 배치하십시오.
^L 12 0C FF 폼 피드 \f 프린터에서 다음 페이지를 로드하십시오. 많은 프로그래밍 언어에서 공백으로 취급되며, 코드에서 논리적 구분을 분리하는 데 사용될 수 있다. 일부 단자 에뮬레이터에서는 화면을 지운다. IETF에서 발행한 RFC와 같은 일부 일반적인 일반 텍스트 파일에는 여전히 페이지 구분 문자로 나타난다.
^M 13 0D CR 캐리지 리턴 \r 원래 같은 선에 머무르면서 커서를 0열로 이동하기 위해 사용되었다. 클래식한 Mac OS(Mac OS X 이전)는 물론, Apple II와 Commodore 64와 같은 초기 시스템에서도 종단선을 표시하기 위해 사용되었다. DOS, 윈도 및 다양한 네트워크 표준에서는, 종단 표시의 일부로 선행 LF를 사용한다. 키보드의 Enter 또는 Return 키는 이 문자를 보내지만, 터미널 프로그램에 의해 다른 종단 시퀀스로 변환될 수 있다.
^N 14 0E 그렇게 Shift Out 대체 문자 집합으로 전환하십시오.
^O 15 0F SI Shift In Shift Out 후 일반 문자 집합으로 돌아가십시오.
^P 16 10 DLE 데이터 링크 이스케이프 연속적으로 팔괘를 따르는 제한된 수의 수가 제어 코드나 그래픽 문자가 아닌 원시 데이터로 해석되도록 한다.[10] 이것의 세부사항은 구현에 의존한다.

(지금 그린) ECMA-37과 같은 표준은 추가 전송 제어 기능에 액세스하기 위한 데이터 링크 이스케이프 문자의 특정 애플리케이션에 대해 존재했다.[11]

유니코드를 위한 표준 압축 체계는 모든 C0 범위 바이트를 DLE로 교체하고, 그 다음에 SCSU 데이터가 C0 바이트의 용도 변경으로 혼동될 수 있는 시스템을 통해 전송되어야 하는 경우 바이트 + 0x40을 추가할 것을 제안한다.[12]

^Q 17 11 DC1 장치 제어 1(XON) 이 네 가지 제어 코드는 장치 제어를 위해 예약되어 있으며, 해석은 장치들이 연결된 장치에 따라 달라진다. DC1과 DC2는 주로 장치의 작동을 표시하기 위한 것이었고, DC3와 DC4는 주로 장치의 일시 중지 또는 끄기를 표시하기 위한 것이었다. DC1과 DC3(이 용도에서 각각 XON과 XOFF라고도 함)는 ASCII Telex 네트워크에서 "원격 용지 테이프 읽기 시작 및 중지" 함수로 유래했다. 이러한 텔레프린터 사용은 소프트웨어 흐름 제어사실상의 표준이 되었다.[13]
^R 18 12 DC2 장치 제어 2
^S 19 13 DC3 장치 제어 3(XOFF)
^T 20 14 DC4 장치 제어 4
^U 21 15 NAK 부정 확인 연결이 설정된 스테이션에 대한 음성 응답으로 스테이션에서 전송한다. 이진 동기 통신 프로토콜에서, NAC는 이전에 수신된 블록에서 오류가 감지되었고, 수신자가 그 블록의 재전송을 받아들일 준비가 되었음을 나타내기 위해 사용된다. 다중점 시스템에서 NAC는 여론조사에 대한 준비되지 않은 응답으로 사용된다.
^V 22 16 SYN 동기식 유휴 상태 특히 다른 문자가 전송되지 않을 때 데이터 단말 장비 간에 동기 교정을 달성할 수 있는 신호를 제공하기 위해 동기식 전송 시스템에 사용된다.
^W 23 17 ETB 변속기 블록 끝 데이터 전송을 위해 데이터를 해당 블록으로 나눌 때 데이터 전송 블록의 끝을 나타낸다.

다른 목적으로 사용하지 않는 경우 IPTC 7901은 ETB를 문단 문자의 끝으로 해석할 것을 권고한다.[2]

^X 24 18 취소하다 앞의 데이터가 잘못되었거나 무시되어야 함을 나타낸다.
^Y 25 19 EM 중간 끝 테이프에서 사용 가능한 부분의 끝에 도달했음을 종이 또는 자기 테이프에 표시하기 위한 수단이다. 또한 매체에서 사용된 부분의 끝을 표시할 수 있으며, 매체의 물리적 끝과 반드시 일치하는 것은 아니다.[1]

다른 목적으로 사용하지 않는 경우 IPTC 7901은 단락의[2] 첫 번째 줄을 들여쓰기 위한 전자파 공간으로 전자파 용도를 변경할 것을 권고한다(EMSP 참조).

^Z 26 1A 후보선수 대체 원래 전송 제어 문자로 사용되어 왜곡되거나 잘못된 문자가 수신되었음을 표시하기 위한 것이었다. 특히 강력한 오류 감지 수정 방법을 사용하거나 다른 목적으로 문자를 사용할 수 있을 정도로 오류가 드물 것으로 예상되는 경우, 그것이 제공하는 오류의 대역신호가 필요하지 않을 때 다른 목적으로 사용하는 경우가 많다. DOS, 윈도, CP/M, 디지털 장비 회사 운영 체제의 파생 모델에서는, 단말기에 타이핑할 때, 그리고 때로는 디스크에 저장된 텍스트 파일에 모두 파일의 끝을 표시하는 데 사용된다.
^[ 27 1B ESC 탈출 \e[b] 키보드의 Esc 키로 인해 대부분의 시스템에서 이 문자가 전송된다. 그것은 화면, 메뉴 또는 모드를 종료하기 위한 소프트웨어 사용자 인터페이스 또는 기기 제어 프로토콜(예: 프린터 및 터미널)에서 사용될 수 있으며, 뒤에 나오는 것이 일반 텍스트가 아닌 특수 명령 순서라는 신호를 보낼 수 있다. ISO/IEC 2022에 근거한 시스템에서는, 다른 C0 제어 코드 세트를 사용하더라도, 본 옥텟은 항상 탈출 문자를 나타내야 한다.

^\ 28 1C FS 파일 구분자 데이터 구조 필드를 표시하는 구분자로 사용할 수 있다. 계층적 수준에 사용된다면 미국은 최하위 수준(일반 텍스트 데이터 항목 구분)이고, RS, GS, FS는 그 아래 수준의 항목으로 구성된 그룹을 나누는 수준이 증가하는 추세다.

Unix 정보 형식은 노드의 시작을 표시하기 위해 미국 다음으로 옵션 폼 피드와 줄 바꿈을 사용한다.[14]

MARC 21은 하위 필드 구분 기호로, RS는 필드 터미네이터로, GS는 레코드 터미네이터로 사용한다.[15]

IPTC 7901의 최신호에서는 다른 용도로 사용되지 않는 경우 테이블에서 기둥 분리기로, 테이블에서 FS로, GS와 RS는 다음 공간이나 하이픈을 각각 비파괴 또는 소프트로 표시(명시 NBSP와 SHY CHA를 제공하지 않는 문자 집합에서)할 것을 각각 권고한다.라이터들[2]

파이톤스 splitlines 문자열 방법은 줄 바꿈 문자 외에도 FS, GS 및 RS를 구분자로 취급하지만 미국은 취급하지 않는다.[16]

^] 29 1D GS 그룹 구분 기호
^^ 30 1E RS 기록 구분 기호
^_ 31 1F 미국 단위 구분 기호
기술적으로 C0 제어 문자 범위의 일부는 아니지만, ISO/IEC 2022에서 다음 두 문자를 어떤 제어 문자 및 그래픽 문자 집합이 등록되었는지에 관계없이 항상 사용할 수 있는 것으로 정의한다. 그것들은 제어 문자의 일부 특성을 가지고 있다고 생각할 수 있다.
32 20 SP 공간 공간은 그래픽 문자다. 그것은 그래픽 기호가 없는 시각적 표현으로 구성되어 있다. 활성 위치를 한 문자 위치만큼 전진시킨다. 일부 애플리케이션에서 스페이스는 인접한 구분 문자와 함께 사용할 최저 수준의 "단어 구분자"로 간주될 수 있다.
^? 127 7층 DEL 삭제 기술적으로 C0 제어 문자 범위의 일부가 아닌, 이것은 원래 종이 테이프에 삭제된 문자를 표시하기 위해 사용되었는데, 이는 모든 곳에 구멍을 뚫어서 모든 문자로 변경할 수 있기 때문이다. VT100 호환 단말기에서 이것은 ⌫이라고 라벨이 붙여진 키에 의해 생성되는 문자로, 일반적으로 현대의 기계에서는 백스페이스라고 불리며 PC 삭제 키와 일치하지 않는다.

카테고리 번호 이름

기본 ASCII 제어 코드 중 몇 개는 몇 개의 범주로 분류되며, 때로는 그 범주로 구성된 대체 약칭과 숫자로 분류되기도 한다.[1]

  • 변속기 컨트롤:[1] TC1(SOH), TC2(STX), TC3(ETX), TC4(EOT), TC5(ENQ), TC6(ACK), TC7(DLE), TC8(NAC), TC9(SYN), TC10(ETB)
  • 포맷 이펙터:[1] FE0(BS), FE1(HT), FE2(LF), FE3(VT), FE4(FF), FE5(CR)
  • 장치 컨트롤:[1] DC1, DC2, DC34.
  • 정보 구분자:[1] IS1(미국), IS2(RS), IS3(GS), IS4(FS)
  • 잠금 변속:[17] LS0(SI), LS1(SO)
  • 기타: NUL, BEL, CAN, EM, SUB, ESC.

ISO/IEC 2022(ECMA-35)는 8비트 환경에서는 C0 잠금 변속을 LS0과 LS1로, 7비트 환경에서는 SI와 SO로 지칭한다.[17]

1963년 제1판 ASCII는 DLE를 전송 제어(transmission control)가 아닌 장치 제어(device control)로 분류하고, 약칭 DC0("데이터 링크 탈출을 위해 예약된 장치 제어")[18]을 부여했다.

포맷 이펙터(FE) 코드는 하드웨어 장치의 다른 기능을 제어하거나 다른 부작용을 갖는 것과 반대로 그래픽 문자가 배치되고 렌더링되는 방식에 영향을 미치는 포맷(예: 라인 브레이크)을 정의하고 작동시킨다. C0 형식 이펙터는 ISO/IEC 6429 DCS, OSC, PMAPC 시퀀스에서 허용된다. 정보 분리기와 C0 형식 이펙터(minus BS)는 유니코드 표준에 의해 정의된 의미론을 가진 유일한 C0 제어 코드로서, C0 제어의 나머지 해석은 상위 수준의 프로토콜에 맡겨진다.[19]

ISO/IEC 2022(ECMA-35)는 C0 제어 코드 세트에 10개의 ASCII 전송 제어(TC) 코드가 포함된 경우, 반드시 ASCII 위치에서 인코딩되어야 한다고 요구한다.[20] 또한 그러한 10개의 전송 제어장치가 C1 제어 코드 세트에 포함되는 것을 금지하고,[21] 그러한 10개 이외의 전송 제어장치가 C0 제어 세트에 포함되는 것을 금지한다.[20]

수정된 C0 제어 코드 세트

일반적으로 C0 제어 코드 세트는 대부분의 ASCII 제어 코드를 변경하지 않고 보존하지만, 특정 제어 기능을 대체하는 숫자가 등록된다. 비데오텍스와 관련된 것을 제외한 이것들의 선택은 아래와 같다.

Seq 12월 육각 교체된 코드 집합에서 축약하다 이름 설명
^I 09 09 HT NATS,[22] IPTC[23] FO 서식 표 형식 데이터에 사용되어 다음 표 형식(이에 관한 "Tab" 의미론 유지)으로 이동하고 다음 단계를 나타내기 위해 표준 형식으로 표시된다. 대신 현재 IPTC 규격은 일반 ASCII C0 컨트롤을 사용하고 미국 컨트롤을 표의 열 구분으로 사용할 것을 권장한다.[2]
^K 11 0B VT NATS,[22] IPTC[23] ECD 교육 종료 형식 설정 장치를 위한 인쇄 지침의 끝을 구분한다.
^L 12 0C FF NATS,[22] IPTC[23] SCD 지침 시작 형식 설정 장치를 위한 인쇄 지침의 시작을 구분한다.
^M 13 0D CR NATS,[22] IPTC[23] QL 쿼드 레프트 선을 종료하고, 선을 왼쪽으로 정렬해야 함을 표시한다. 현재의 IPTC 규격은 대신 정규 ASCII C0 컨트롤을 사용할 것을 권장하며, 이 기능을 다음과 같이 표현한다. < CR LF 순서를 [2]정하다
^N 14 0E 그렇게 NATS[22] UR 상부 레일 강조된 텍스트 영역 시작 1975년 현재 스칸디나비아 저널리즘 텍스트 전송에서 사용되었으며 1976년 현재 IPTC 권장사항은 FT2와 FT3를 대신 사용했다([22]아래 참조).[23] 대신 현재 IPTC 사양은 일반 ASCII C0 컨트롤을 사용할 것을 권장하며, 이 기능을 다음과 같이 표시한다. ^ 인격의[2]
^O 15 0F SI NATS[22] LR 하부 레일 강조된 텍스트 영역을 종료한다. 1975년 현재 스칸디나비아 저널리즘 텍스트 전송에서 사용되었으며 1976년 현재 IPTC 권장사항은 FT1을 대신 사용했다([22]아래 참조).[23] 대신 현재 IPTC 사양은 일반 ASCII C0 컨트롤을 사용할 것을 권장하며, 이 기능을 다음과 같이 표시한다. @ 인격의[2]
^Q 17 11 DC1 IPTC[23] FT1 폰트 원 일반 서체로 전환(예: 굵게 또는 기울임꼴을 사용하지 않음)
^R 18 12 DC2 IPTC[23] FT2 글꼴 2 기울임꼴로 전환한다.
^S 19 13 DC3 IPTC[23] FT3 글꼴 3 굵은 글꼴로 전환.
^X 24 18 NATS,[22] IPTC[23] KW 킬 워드 앞의 단어 삭제(마지막 공백 포함 또는 이전 줄 바꿈/제외 중 먼저 만나는 항목으로 삭제) 이 점에서 "취소" 의미론을 유지하지만, 더 구체적인 기능을 가지고 있다.
^Y 25 19 EM T.61/T.51,[24] 독립[25] 실행형 SS2 싱글 시프트 2 G2에 대한 비잠금 시프트 코드, 7비트 환경에서 1바이트로 나타낼 수 있는 C0 표현.
^\ 28 1C FS NATS,[22] IPTC,[23] 독립[26] 실행형 SS, SS2 슈퍼 시프트 또는 싱글 시프트 2 비잠금 변속 코드.
JIS C 6225[27] CEX 제어 확장 현재 제시된 JIS C 6225, 이후 소스에서 지정된 JIS X 0207에 따라 제어 시퀀스를 도입한다.[28] 여기에는 수직 텍스트 동작 제어, 위첨자 및 첨자 제어 [29]사용자 정의 문자 그래픽 전송을 위한 시퀀스가 포함되었다.[28]
^] 29 1D GS NATS,[22] IPTC[23] QC 쿼드 센터 중심화되어야 함을 나타내는 선을 종료한다.
T.61/T.51[24] SS3 싱글 시프트 3 G3에 대한 비잠금 시프트 코드, 7비트 환경에서 1바이트로 나타낼 수 있는 C0 표현.
^^ 30 1E RS NATS,[22] IPTC[23] QR 쿼드 라이트 선을 종료하고, 선이 올바르게 정렬되어야 함을 표시한다.
^_ 31 1F 미국 NATS,[22] IPTC[23] JY. 정당화 정당화되어야 할 선을 종료한다.

기타 C0 제어 코드 세트

텔레텍스트전혀 다른 제어 코드 세트를 정의한다. ECMA-48의 C0 제어 코드와의 호환성이 필요하지 않은 형식에서, 이러한 제어 코드는 유니코드 C0 제어 코드 범위(U+0000 ~ U+001F)에 투명하게 매핑되는 경우가 있다.[30]

C1 제어 장치

미국에서 유래한 ASCII 외에 국가 버전의 코드의 개념을 도입하기 위해 표준을 개정한 ISO 646의 1972년판 개발과 병행하여 7비트 환경과 8비트 환경 모두에 적용할 수 있는 ASCII의 확장 메커니즘을 정의하기 위한 작업도 진행 중이었으며, 이 메커니즘은 E로 공표될 예정이었다.CMA-35ISO 2022.[31]

이러한 메커니즘은 순응적인 8비트 코드가 해당 7비트 코드로 변환될 수 있도록 설계되었으며, 그 반대의 경우도 마찬가지였습니다.[32] 7비트 환경에서 Shift Out(SO) 컨트롤은 94바이트의 의미를 변경한다. 0x21 을 통해 0x7E 대체 집합에서 문자를 호출하기 위한 그래픽 코드(즉, 공백 제외)와 Shift In(SI) 컨트롤은 문자를 다시 변경한다.[33] 8비트 환경에서는 시프트 코드를 사용하는 대신 추가 그래픽 문자 집합을 참조하는 바이트에 여덟 번째 비트를 설정했다. 이것은 바이트를 의미했다. 0xA1 을 통해 0xFE 추가 그래픽 문자를 위해 사용되었다. 7비트 코드의 이동 상태에 영향을 받지 않는 C0 제어 문자는 항상 8비트 코드로 표시되어야 하며, 8비트 코드는 설정되지 않았다.[32] 결과적으로 사용되지 않은 바이트의 범위 0x80 을 통해 0x9F 대신 다음과 같이 표현되는 추가 제어 코드에 사용될 수 있다. 0x1B 0x40 을 통해 0x1B 0x5F (ESC @ 을 통해 ESC _)를 7비트 코드로 입력하십시오.[32] 이러한 추가 제어 코드는 C1 제어 코드로 알려져 있다. 7비트 표현과 호환성을 유지하려면 바이트 동작 0xA0 그리고 0xFF 원래 정의되지 않은 채로 [34]남겨졌었죠

ISO 2022에 최초로 등록한 C1 제어코드는 1979년에 등록한 서지 사용 전문 세트인 [35]DIN 31626이었다.[36] 범용 ISO/IEC 6429 세트는 1976년에 처음 발표된 ECMA-48 규격이지만 1983년에 등록되었다.[37][38]

그 표준의 추가 판은 그 조항들을 어느 정도 변경시켰다. 예를 들어 1985년 ECMA-35와 ISO 2022에 대한 추가 개정에서는 96코드 그래픽 문자 집합의 개념이 도입되었다.[39] 8비트 코드에서 이 코드는 전체 범위를 0xA00xFF 그래픽 문자에 사용된다. 96 코드 세트를 사용한다는 것은 바이트의 의미도 의미했다. 0x20 그리고 0x7F 해당 7비트 코드는 Shift In 상태가 아닌 한 "Space" 및 "Delete"와 다를 수 있다.[40] G0(Shift In) 세트에 96 코드 세트를 사용할 수 없었다.[39]

수정된 8비트 ISO 2022 코드 구조에 따라, ISO 8859는 0xA0–0xA0에 걸쳐 인코딩될 문자 집합을 정의한다.FF는 0x20–7E 이상의 ASCII 그래픽 문자와 조합하여 ISO 6429와 같은 다른 규격에 의한 비그래픽 코드로 사용하기 위해 이 범위 밖의 바이트를 예약한다.[41] 유니코드는 ISO 8859-1로부터 첫 256 코드 포인트를 상속받으므로, C1 제어 코드 세트를 위해 예약된 범위도 포함하지만, 대부분 상위 수준의 프로토콜에 의해 정의되도록 내버려두지만, ISO/IEC 6429는 디폴트로 제안되었다.[19]

일반용 C1 제어 코드

이것들은 가장 일반적인 확장 제어 코드로서 ISO/IEC 6429, ECMA-48JIS X 0211(이전의 JIS C 6323)에 정의되어 있다.[42] ISO/IEC 2022 확장 메커니즘을 사용하는 경우, 시퀀스와 함께 액티브 C1 제어 문자 세트로 지정된다. 0x1B 0x22 0x43 (ESC " C유니코드는 특정 C1 제어 코드 세트를 요구하지 않고, 이들의 해석을 상위 수준의 프로토콜에 의해 지정되도록 하고, U+0085에 대한 동작만 명시하고 있지만, 다른 목적으로 사용하지 않는 경우에는 ISO/IEC 6429에 명시된 C1 제어 코드를 해석할 것을 제안한다.[37][19] 아래 표에도 ISO/IEC 6429 코드와 함께 나열된 세 가지 제어 코드가 수록되어 있다. RFC1345. 그러나 실제로 ISO/IEC 6429(PAD, HOPSGC)에 의해 정의되지는 않는다.[5][43]

EUC-JP 텍스트의 SS2SS3EBCDIC에서 변환된 텍스트의 NEL을 제외하고, 이러한 코드의 8비트 형식은 거의 사용되지 않는다. CSI, DCSOSC텍스트 단자단자 에뮬레이터를 제어하는 데 사용되지만 거의 항상 7비트 이스케이프 코드 표현을 사용한다. Their ISO/IEC 2022 compliant single-byte representations are invalid in UTF-8, and the UTF-8 encodings of their corresponding codepoints are two bytes long like their escape code forms (for instance, CSI at U+009B is encoded as the bytes 0xC2, 0x9B in UTF-8), so there is no advantage to using them rather than the equivalent two-byte escape sequence. 이러한 코드가 현대 문서, 웹 페이지, 전자 메일 메시지 등에 나타나는 경우, 일반적으로 C1 코드를 사용하여 추가 그래픽 문자를 제공하는 Windows-1252 또는 Mac OS Roman과 같은 독점적인 인코딩으로 해당 위치에 문자를 인쇄하는 것을 목적으로 한다.

일부 C1 코드의 공식 영어 명칭은 일반적으로 사용되는 제어 코드 표준(ISO 6429:1992 또는 ECMA-48:1991)의 최신호에서 라틴어 스크립트에서와 같이 한 페이지에 줄이 쓰여지고 그 문자가 쓰여진다고 가정하지 않기 위해 개정되었다.왼쪽에서 오른쪽으로 한 줄에 ers가 쓰여 있다. 사용된 약어는 표준이 다른 언어로 번역될 때 변경되지 않는다고 이미 명시되어 있었기 때문에 변경되지 않았다. 이름이 변경된 경우 약어가 파생된 원래 이름도 아래 표의 괄호 안에 제시되어 있다.

에스크+ 12월 육각 아크로 이름 설명[44]
@ 128 80 패드[6] 패딩 문자 ISO/IEC 6429(ECMA-48)의 일부가 아님. ISO 10646의 초기 초안에서는 비 ASC 인코딩을 위한 제안된 메커니즘의 일부로 사용되었다.II 문자. 이 용도는 나중의 초안에서 삭제되었다.[5][43] 그럼에도 불구하고 코드 세트 1과 3에서 단일 바이트 문자를 왼쪽 패딩하는 ISO-2022 기반 확장 유닉스 코드(EUC)의 내부 사용 2바이트 고정 길이 형식에 의해 사용되는 반면, NUL은 코드 세트 0과 2에 대해 동일한 기능을 제공한다. 이것은 일반적인 "포장된" EUC 형식으로는 수행되지 않는다.[45]
A 129 81 깡충깡[6] 하이 옥텟 사전 설정 ISO/IEC 6429(ECMA-48)의 일부가 아님. ISO 10646의 초안 초안에서, 동일한 첫 번째 바이트로 ISO 2022 준수 다중 바이트 문자 시퀀스를 도입하는 수단으로 의도되었고, 따라서 길이를 줄이지 않았다. 이러한 행동은 표준 구현이나 공표된 구현의 일부가 아니었다. 그럼에도 불구하고 그것의 이름은 RFC 1345 표준 코드 포인트 이름으로 유지되었다.[5][43]
B 130 82 BPH 여기서 브레이크 허용됨 줄 바꿈이 허용되는 그래픽 문자를 따르십시오. 바꿈을 나타내는 평균이 반드시 하이픈이 아니라는 점을 제외하고 소프트 하이픈과 대략 동등하다. ISO/IEC 6429 초판의 일부가 아님.[37] 너비가 0인 공간도 참조하십시오.
C 131 83 NBH 여기서 끊기면 안 함 깨지지 않아야 할 그래픽 문자를 따르십시오. ISO/IEC 6429 초판의 일부가 아님.[37] 단어 가입자를 참조하십시오.
D 132 84 인디아 색인 LF의 의미에 대한 모호성을 제거하려면 활성 위치를 한 줄 아래로 이동하십시오. 1988년에 폐지되었고 1992년에 ISO/IEC 6429 (ECMA-48의 경우 각각 1986년과 1991년)에서 철회되었다.
E 133 85 넥스트 라인 CR+LF와 동일함. 일부 IBM 메인프레임에서 End-of-line을 표시하기 위해 사용됨.
F 134 86 SSA 선택한 영역의 시작 블록 지향 단자에서 사용한다.
G 135 87 ESA 선택한 영역의 끝
H 136 88 HTS 문자표 집합
수평 테이블링 세트
문자표 표시 중지가 활성 위치에서 설정되도록 한다.
I 137 89 HTJ 맞춤이 있는 문자표
맞춤을 사용한 수평 표 계산
문자표와 유사하게, 다음 탭 스톱에 도달할 때까지 앞의 문자 뒤에 공백이나 줄을 배치하는 대신, 공백이나 줄이 활성 필드 앞에 배치되어 선행 그래픽 문자가 다음 탭 스톱 바로 앞에 배치된다.
J 138 8A VTS 라인 표 집합
수직 테이블링 세트
라인 표 계산 중지가 활성 위치에서 설정되도록 한다.
K 139 8B PLD 부분 라인 포워드
부분 라인 다운
ISO/IEC 6429, 예를 들어 프린터에서 첨자와 상위 첨자를 만드는 데 사용된다.
첨자 사용 PLD text PLU 위첨자를 사용하면서. PLU text PLD.
L 140 8C PLU 부분 선 뒤쪽으로
부분 라인 업
M 141 8D RI 리버스 라인 피드
역지수
N 142 8E SS2 싱글 시프트 2 다음 문자는 각각 G2 또는 G3 그래픽 세트에서 그래픽 문자를 호출한다. ISO/IEC 4873(ECMA-43)에 부합하는 시스템에서는, 디폴트 이외의 C1 세트를 사용하더라도, 이 두 옥텟은 이러한 목적으로만 사용할 수 있다.
O 143 8층 SS3 싱글 시프트 3
P 144 90 DCS 장치 제어 문자열 그 다음에 인쇄 가능한 문자(0x20 ~ 0x7E)와 형식 이펙터(0x08 ~ 0x0D)의 문자열(0x9C)이 표시되며 ST(0x9C)에 의해 종료된다. 이는 텍스트 단자 및 단자 에뮬레이터에 대한 가변 길이 제어 시퀀스에 의해 사용될 수 있다(예: terminfo 쿼리).[46]
Q 145 91 PU1 개인용도 1 필요에 따라 사적인 용도로 표준화된 의미가 없는 함수를 위해 예약되며, 송신자와 데이터 수신자의 사전 합의에 따른다.
R 146 92 PU2 개인 용도 2
S 147 93 STS 전송 상태 설정
T 148 94 CCH 캐릭터 취소 BS의 의미에 대한 모호성을 제거하기 위한 파괴적인 백스페이스.
U 149 95 MW 메시지 대기 중
V 150 96 SPA 보호구역 시작 블록 지향 단자에서 사용한다.
W 151 97 EPA 보호 구역 끝
X 152 98 SOS 문자열의 시작 이어 ST(0x9C)에 의해 종료된 제어 문자열이 DCS, OSC, PM 또는 APC에 의해 시작된 것과 대조적으로 SOS 또는 ST를 제외한 모든 문자를 포함할 수 있다. ISO/IEC 6429 초판의 일부가 아님.[37]

MARC 21은 유니코드 형식 레코드에 SOS와 ST를 사용하여 데이터 정렬을 위해 무시해야 하는 문자열을 표시하며, MARC-8 형식 레코드는 NSBNSE를 동일한 목적으로 사용한다.[15][47]

Y 153 99 SGC[6] 싱글 그래픽 캐릭터 소개서 ISO/IEC 6429의 일부가 아님. ISO 10646의 초기 초안에서는, HOP 모드를 끄지 않고 단일 다중 바이트 문자를 인코딩하는 데 사용되었다. 이후 초안에서는 이 설비가 제거되었지만, 그 명칭은 RFC 1345 표준 코드 포인트 이름으로 유지되었다.[5][43]
Z 154 9A SCI 싱글 캐릭터 소개서 인쇄 가능한 단일 문자(0x20 ~ 0x7E) 또는 포맷 이펙터(0x08 ~ 0x0D) 뒤에 오십시오. 그 목적은 사용 중인 그래픽이나 컨트롤 세트에 관계 없이 사용할 수 있는 컨트롤 기능이나 그래픽 문자를 정의하는 방법을 제공하는 것이었다. 다음 바이트가 호출할 내용에 대한 정의는 국제 표준에서는 구현되지 않았다. ISO/IEC 6429 초판의 일부가 아님.[37]
[ 155 9B CSI 제어 시퀀스 소개기 파라미터를 이용하는 제어 시퀀스를 도입하는 데 사용된다.
\ 156 9C 세인트 문자열 터미네이터 DCS, SOS, OSC, PM 또는 APC에 의해 시작된 가변 길이 제어 문자열을 종료한다.
] 157 9D OSC 운영 체제 명령 그 다음에 인쇄 가능한 문자(0x20 ~ 0x7E)와 형식 이펙터(0x08 ~ 0x0D)의 문자열(0x9C)이 표시되며 ST(0x9C)에 의해 종료된다. 이 세 가지 제어 코드는 프로토콜 정보의 대역 내 신호를 허용하기 위해 사용되었지만, 그러한 목적으로는 거의 사용되지 않는다.

xterm을 포함한 일부 터미널 에뮬레이터는 창 제목을 설정하고 사용 가능한 색상 팔레트를 재구성하기 위해 OSC 시퀀스를 지원한다. 그들은 또한 표준 ST에 대한 비표준 대안으로서 BEL로 OSC 시퀀스를 종료하는 것을 지원할 수 있다.[48]

보안상의 이유로 Kermit 명령을 전송하거나 필터링할 수 있지만 APC는 때때로 Kermit 명령을 전송하는 데 사용된다.[49]

^ 158 9E PM 개인 정보 메시지
_ 159 9층 APC 응용 프로그램 명령

서지학 사용을 위한 C1 제어 코드

다음의 대안 C1 제어 코드 세트는 도서관 시스템과 같은 서지학 용도에 대해 정의된다. 그것은 주로 문자열의 정렬과 서지학 필드의 마크업과 관련이 있다. 약간 다른 변형은 독일 표준[36] DIN 31626 (1978년에 발행된 이후 철회된 이후)[50]ISO 표준 ISO 6630에 정의되어 있으며,[51][52] 그 중 후자는 독일에서도 DIN ISO 6630으로 채택되었다.[53] 이러한 차이가 해당되는 경우 아래 표에 명시되어 있다. MARC-8은 이 세트로부터 NSBNSE의 코딩을 사용하며, ISO 버전에서 사용하지 않는 위치에 일부 추가적인 포맷 이펙터를 추가하지만, MARC 21은 유니코드 형식 레코드가 아닌 MARC-8 레코드에서만 이 컨트롤 세트를 사용한다.[15]

ISO/IEC 2022 확장 메커니즘을 사용하는 경우, DIN 31626 세트는 시퀀스와 함께 액티브 C1 제어 문자 세트로 지정된다. 0x1B 0x22 0x45 (ESC " E()[36]와 함께 ISO 6630 / DIN ISO 6630 세트가 지정됨 0x1B 0x22 0x42 (ESC " B1985년 ISO 6630 세트의 확장도 시퀀스를 사용하여 명시적으로 지정할 수 있다.[51] 0x1B 0x26 0x40 0x1B 0x22 0x42 (ESC & @ ESC " B).[52]

에스크+ 12월 육각 아크로 이름 설명[36][51][52]
@…F 128…134 80…86 - (iii)
G 135 87 CUS 정렬을 위한 클로즈업 (DIN 31626, ISO 6630) 공백이나 분리기로 구분된 두 개의 연속적인 문자 시퀀스를 하나의 단어로 취급해야 함을 선언한다.
H 136 88 NSB 정렬되지 않은 문자 시작 (DIN 31626, ISO 6630, MARC 21) 데이터 정렬을 위해 무시될 일련의 문자의 시작을 표시한다. MARC 21MARC-8 레코드에서 이 문자를 사용하지만, 유니코드 레코드에서 같은 목적으로 0x98(SOS)을 사용한다.[15][47]
I 137 89 NSE 정렬되지 않은 문자 끝 (DIN 31626, ISO 6630, MARC 21) 데이터 정렬을 위해 무시해야 할 일련의 문자의 끝을 표시한다. MARC 21은 MARC-8 레코드에서 이 문자를 사용하지만, 유니코드 레코드에서 같은 목적으로 0x9C(ST)를 사용한다.[15][47]
J 138 8A FIL 필러 문자 (DIN 31626) 필드의 필수 영숫자 대체 문자.
K 139 8B TCI 컨텍스트 표시기의 태그 (DIN 31626) 서지 영역 내에서 태그 번호로 다른 서지 영역의 데이터를 참조하는 데 사용된다.
PLD 부분 라인 다운 (ISO 6630) ISO 6630의 원본에는 해당되지 않는다.[51] 1985년판 ISO 6630에서 부분 라인 다운에 사용됨([52]위의 PLD 참조).
L 140 8C ICI 컨텍스트 표시기의 식별 번호 (DIN 31626) 서지 영역 내에서 ID 번호로 다른 서지 기록의 데이터를 참조하는 데 사용된다.
PLU 부분 라인 업 (ISO 6630) ISO 6630의 원본에는 해당되지 않는다.[51] 1985년판 ISO 6630에서 부분 라인 업에 사용됨([52]위의 PLU 참조).
M 141 8D OSC[c] 선택적 강의식[d] 제어 (DIN 31626) 음절 경계를 긴 단어로 표시한다. 부드러운 하이픈도 참조하십시오.
ZWJ 조이너 (MARC 21) Zero-Width Joiner에 사용되는 MARC-8에서 U+200D는 유니코드 형식 MARC 레코드에 사용된다.[15][47]
N 142 8E SS2 싱글 시프트 2 (DIN 31626) 비잠금 변속 코드, 위의 SS2를 참조하십시오.
ZWNJ 비조인자 (MARC 21) MARC-8에서 0폭 비조이너에 사용되는 반면 U+200C는 유니코드 형식 MARC 레코드에 사용된다.[15][47]
O 143 8층 SS3 싱글 시프트 3 (DIN 31626) 비잠금 변속 코드, 위의 SS3를 참조하십시오.
P 144 90 - (iii)
Q 145 91 EAB 포함된 주석 시작 (DIN 31626, ISO 6630) 내용 지정을 사용하여 분리되는 것과 반대로, 서지 영역 내에 포함된 가변 길이 주석의 시작을 표시한다.
R 146 92 EAE 포함된 주석 끝 (DIN 31626, ISO 6630) 가변 길이 내장 주석의 끝을 표시한다.
S 147 93 ISB 항목 사양 시작 중 (DIN 31626) 키워드 또는 순열 문자열 이외의 어떤 설명에 대한 특정 정보 문자열의 시작을 표시한다.
T 148 94 ISE 항목 사양 끝 (DIN 31626) 일련의 특정 정보의 끝을 표시한다.
U 149 95 SIB 보간 정렬 시작 (ISO 6630) 데이터 정렬 목적으로만 사용되는 문자 시퀀스의 시작을 표시한다.
V 150 96 SIE 보간 끝 정렬 (ISO 6630) 데이터 정렬 목적으로만 사용되는 일련의 문자의 끝을 표시한다.
W 151 97 SSB 보조 정렬 값 시작 (ISO 6630) 하위 데이터 정렬 값으로 문자열의 시작을 표시한다.
X 152 98 SSE 보조 정렬 값 끝 (ISO 6630) 문자열의 끝을 하위 데이터 정렬 값으로 표시한다.
Y 153 99 주식회사 비표준 문자 표시기 (DIN 31626) 다음과 같은 비표준 문자를 식별한다.
Z 154 9A - (iii)
[ 155 9B - (iii)
\ 156 9C KWB 키워드 시작 (DIN 31626, ISO 6630) 참고문헌 필드 내에서 키워드의 시작을 표시한다.
] 157 9D KWE 키워드 끝 (DIN 31626, ISO 6630) 참고문헌 필드 내에서 키워드의 끝을 표시한다.
^ 158 9E PSB 순열 문자열 시작 (DIN 31626, ISO 6630) 참고문헌이나 지표가 생성될 때 원소 전면으로 퍼머할 문자열의 시작을 표시한다. PSE 또는 요소의 끝에 의해 종료된다.
_ 159 9층 PSE 순열 문자열 끝 (DIN 31626, ISO 6630) 원소 전면으로 퍼머할 문자열의 끝을 표시한다.

기타 C1 제어 코드 세트

EBCDIC는 ASCII에 존재하는 코드 외에 16개의 추가 제어 코드를 정의한다. 유니코드 또는 ISO 8859에 매핑될 때, 이러한 코드는 IBM의 문자 데이터 표현 아키텍처(CDRA)에서 지정한 방식으로 C1 제어 문자에 매핑된다.[54][55]

뉴 라인(NL) 컨트롤의 기본 매핑은 ISO/IEC 6429 NEL(0x85, UNIX 라인 종료 규약에 따라 LF와 교환되기도 하지만),[54] 제어 코드의 나머지 부분은 ISO/IEC 6429와 일치하지 않는다. 예를 들어 EBCDIC 제어 SPS(0x09, 0x8D에 매핑됨)와 ECMA-48 제어 PLU(0x8C)는 모두 위첨자를 시작하거나 첨자를 끝내는 데 사용되지만 서로 매핑되지는 않는다. 따라서 확장 ASCII 맵 EBCDIC는 ISO/IEC 2022에 사용하기 위해 ISO-IR 레지스트리에 등록되지 않았지만 자체 C1 세트를 가지고 있는 것으로 간주할 수 있다.[35]

다양한 비데오텍스 포맷에서 사용할 수 있도록 다양한 전문 C1 제어 코드 세트가 등록되어 있다.[35]

유니코드

유니코드는 ISO/IEC 2022와의 호환성을 위해 일반 카테고리 "Cc"(Control)에 65개의 코드 포인트를 적립한다. 이 범주의 제어 코드는 U+0000을 포함한다.U+001F(C0 컨트롤), U+007F(삭제) 및 U+0080-U+009F(C1 컨트롤). 유니코드는 U+0009에 대한 의미론만 지정한다.U+000D, U+001C—U+001F 및 U+0085. 나머지 제어 코드는 유니코드에 투명하며 그 의미는 상위 수준의 프로토콜에 맡겨진다.[19]

유니코드는 C0과 C1 외에 할당된 범주 "Cc" 코드 포인트가 없다. 단, 명시적 양방향 포맷을 위한 마크, 매립, 절연팝스, 그리고 연결 사용을 제어하기 위한 제로조이너비조이너와 같은 C0 및 C1 제어 세트의 그것들 외에 추가적인 포맷 이펙터 문자를 포함한다. 여기에는 "Ccf"(형식)가 아닌 일반 범주 "Cf"(형식)가 주어진다.

참고 항목

각주

  1. ^ BELL이라는 이름은 유니코드에 의해 관련 없는 이모지 문자 🔔(U+1F514)에 할당된다. 당시 C0과 C1 제어 문자는 유니코드 표준 자체에 의해 공식적으로 명명되지 않았지만, 이는 UTS#18(유니코드 정규 표현 표준)의 이전 버전([4]예: Perl)에 이은 소프트웨어에서 이 제어 문자의 이름으로 BELL을 사용하는 것과 충돌했다.[5] 코드 차트에는 여전히 BELL이 ISO 6429 별칭으로 나열되어 있고,[7] 해당 제어 그림 코드 포인트를 SYPECT FOR BELL이라고 부르지만 유니코드는 이제 ALERT와 BEL(BEL은 제외)을 제어 문자의 공식 별칭으로 받아들인다.[6] Perl은 이후 버전 5.18의 이모지에 BELL을 사용하는 것으로 전환했다.[8]
  2. ^ ''\e' 이스케이프 시퀀스는 ISO C와 많은 다른 언어 규격의 일부가 아니다. 그러나 GCC를 포함한 여러 컴파일러가 이해한다.
  3. ^ ISO/IEC 6429 C1 코드 세트의 OSC(Operating System Command)와 같지 않음.
  4. ^ ISO-IR-040 문서에서 "Sic" 철자가 "sic"이고 설명에서 "syllabe [sic]"로 철자가 "sic"인 "syllabe [sic]. 이것들은 아마 인쇄상의 오류일 것이다.

참조

  1. ^ Jump up to: a b c d e f g ISO/TC 97/SC 2 (1975). The set of control characters of the ISO 646 (PDF). ITSCJ/IPSJ. ISO-IR-1.
  2. ^ Jump up to: a b c d e f g h i j k IPTC (1995). The IPTC Recommended Message Format (PDF) (5th ed.). IPTC TEC 7901.
  3. ^ Jump up to: a b c d "end-of-transmission character (EOT)". Federal Standard 1037C. 1996.
  4. ^ Williamson, Karl. "Re: PRI #202: Extensions to NameAliases.txt for Unicode 6.1.0".
  5. ^ Jump up to: a b c d e Ken Whistler (July 20, 2011). "Formal Name Aliases for Control Characters, L2/11-281". Unicode Consortium.
  6. ^ Jump up to: a b c d "Name Aliases". Unicode Character Database. Unicode Consortium.
  7. ^ "C0 Controls and Basic Latin" (PDF). Unicode Consortium.
  8. ^ "charnames". Perl Programming Documentation.
  9. ^ ISO/IEC JTC 1/SC 2 (1998-02-12). Final Text of DIS 8859-10, Information Technology — 8-bit single-byte coded graphic character sets — Part 10: Latin alphabet No. 6 (PDF). ISO/IEC FDIS 8859-10:1998, JTC1/SC2 N2992, WG3 N415.
  10. ^ "data link escape character (DLE)". Federal Standard 1037C. 1996.
  11. ^ "Supplementary transmission control functions (an extension of the basic mode control procedures for data communication systems)". European Computer Manufacturers Association. 1972. ECMA-37.
  12. ^ Wolf, Misha; Whistler, Ken; Wicksteed, Charles; Davis, Mark; Freytag, Asmus; Scherer, Markus (2005-05-06). "10.1 Avoiding Control Byte Values". A Standard Compression Scheme for Unicode. Unicode Consortium. UTS #6.
  13. ^ "What is the point of Ctrl-S?". Unix and Linux Stack exchange. Retrieved 14 February 2019.
  14. ^ Fox, Brian. "Adding a new node to Info". Info: The online, menu-driven GNU documentation system. GNU Project.
  15. ^ Jump up to: a b c d e f g "Control function codes". MARC 21 Specifications for Record Structure, Character Sets, and Exchange Media. Library of Congress. 2007-12-04.
  16. ^ "Built-in Types § str.splitlines". The Python Standard Library. Python Software Foundation.
  17. ^ Jump up to: a b ECMA (1994). "7.3: Invocation of character-set code elements". Character Code Structure and Extension Techniques (PDF) (ECMA Standard) (6th ed.). p. 14. ECMA-35.
  18. ^ American Standards Association (1963). American Standard Code for Information Interchange: 4. Legend. p. 6. ASA X3.4-1963.
  19. ^ Jump up to: a b c d Unicode Consortium (2019). 23.1: Control Codes (PDF). The Unicode Standard (12.0.0 ed.). pp. 868–870. ISBN 978-1-936213-22-1.
  20. ^ Jump up to: a b ECMA (1994). "6.4.2: Primary sets of coded control functions". Character Code Structure and Extension Techniques (PDF) (ECMA Standard) (6th ed.). p. 11. ECMA-35.
  21. ^ ECMA (1994). "6.4.3: Supplementary sets of coded control functions". Character Code Structure and Extension Techniques (PDF) (ECMA Standard) (6th ed.). p. 11. ECMA-35.
  22. ^ Jump up to: a b c d e f g h i j k l m Sveriges Standardiseringskommission (1975). NATS Control set for newspaper text transmission (PDF). ITSCJ/IPSJ. ISO-IR-7.
  23. ^ Jump up to: a b c d e f g h i j k l m n IPTC (1976). Control set for newspaper text transmission (PDF). ITSCJ/IPSJ. ISO-IR-26.
  24. ^ Jump up to: a b ITU (1985). Teletex Primary Set of Control Functions (PDF). ITSCJ/IPSJ. ISO-IR-106.
  25. ^ Úřad pro normalizaci a měřeni (1987). The set of control characters of ISO 646, with EM replaced by SS2 (PDF). ITSCJ/IPSJ. ISO-IR-140.
  26. ^ ISO/TC 97/SC 2 (1977). The set of control characters of ISO 646, with IS4 replaced by Single Shift for G2 (SS2) (PDF). ITSCJ/IPSJ. ISO-IR-36.
  27. ^ ISO/TC 97/SC 2 (1982). The C0 set of Control Characters of Japanese Standard JIS C 6225-1979 (PDF). ITSCJ/IPSJ. ISO-IR-74.
  28. ^ Jump up to: a b ISO/TC97/SC2/WG6. "Liaison statement to ISO/TC97/SC2/WG8 and ISO/TC97/SC18/WG8" (PDF). ISO/TC97/SC2/WG6 N317.rev.
  29. ^ Printronix (2012). OKI® Programmer's Reference Manual (PDF). p. 26.
  30. ^ Ewell, Doug (2020-10-16). "Teletext separated mosaic graphics". Unicode Mailing List Archive. Unicode Consortium.
  31. ^ ECMA/TC 1 (1973). "Brief History". 7-bit Input/Output Coded Character Set (PDF) (4th ed.). ECMA. ECMA-6:1973.
  32. ^ Jump up to: a b c ECMA/TC 1 (1971). "8.2: Correspondence between the 7-bit Code and an 8-bit Code". Extension of the 7-bit Coded Character Set (PDF) (1st ed.). ECMA. pp. 21–24. ECMA-35:1971.
  33. ^ ECMA/TC 1 (1973). "4.2: Specific Control Characters". 7-bit Input/Output Coded Character Set (PDF) (4th ed.). ECMA. p. 16. ECMA-6:1973.
  34. ^ ECMA/TC 1 (1974). "5: Notes on Table 1". 8-bit Coded Character Set (PDF) (1st ed.). ECMA. pp. 4–5. ECMA-43:1974.
  35. ^ Jump up to: a b c ISO/IEC International Register of Coded Character Sets To Be Used With Escape Sequences (PDF), ITSCJ/IPSJ, ISO-IR
  36. ^ Jump up to: a b c d DIN (1979-07-15). Additional Control Codes for Bibliographic Use according to German Standard DIN 31626 (PDF). ITSCJ/IPSJ. ISO-IR-40.
  37. ^ Jump up to: a b c d e f ISO/TC97/SC2 (1983-10-01). C1 Control Set of ISO 6429:1983 (PDF). ITSCJ/IPSJ. ISO-IR-77.
  38. ^ ECMA/TC 1 (1979). "Brief History". Additional Control Functions for Character-Imaging I/O Devices (PDF) (2nd ed.). ECMA. ECMA-48:1979.
  39. ^ Jump up to: a b ECMA/TC 1 (1985). "5.3.8: Sets of 96 graphic characters". Code Extension Techniques (PDF) (4th ed.). ECMA. pp. 17–18. ECMA-35:1985.
  40. ^ ECMA/TC 1 (1985). "5.2.1: Use of locking-shift functions". Code Extension Techniques (PDF) (4th ed.). ECMA. pp. 9–10. ECMA-35:1985.
  41. ^ ISO/IEC JTC 1/SC 2/WG 3 (1998-02-12). Final Text of DIS 8859-1, 8-bit single-byte coded graphic character sets—Part 1: Latin alphabet No.1 (PDF). ISO/IEC FDIS 8859-1:1998; JTC1/SC2/N2988; WG3/N411. This set of coded graphic characters may be regarded as a version of an 8-bit code according to ISO/IEC 2022 or ISO/IEC 4873 at level 1. […] The shaded positions in the code table correspond to bit combinations that do not represent graphic characters. Their use is outside the scope of ISO/IEC 8859; it is specified in other International Standards, for example ISO/IEC 6429.
  42. ^ "JIS X 02xx 符号" (in Japanese).
  43. ^ Jump up to: a b c d Ken Whistler (2015-10-05). "Why Nothing Ever Goes Away". Unicode Mailing List.
  44. ^ ECMA (1991). Control Functions for Coded Character Sets. Standard ECMA-48.
  45. ^ Lunde, Ken (2008). CJKV Information Processing: Chinese, Japanese, Korean, and Vietnamese Computing. O'Reilly. p. 244. ISBN 9780596800925.
  46. ^ Moy, Edward; Gildea, Stephen; Dickey, Thomas. "Device-Control functions". XTerm Control Sequences.
  47. ^ Jump up to: a b c d e "Code Table Extended Latin (ANSEL)". MARC 21 Specifications for Record Structure, Character Sets, and Exchange Media. Library of Congress. 2007-12-05.
  48. ^ Moy, Edward; Gildea, Stephen; Dickey, Thomas. "Operating System Commands". XTerm Control Sequences.
  49. ^ Frank da Cruz; Christine Gianone (1997). Using C-Kermit. Digital Press. p. 278. ISBN 978-1-55558-164-0.
  50. ^ "Information processing; bibliographic control characters". Beuth: publishing DIN. DIN 31626:1978-12.
  51. ^ Jump up to: a b c d e ISO/TC 46 (1983-06-01). Additional Control Codes for Bibliographic Use according to International Standard ISO 6630 (PDF). ITSCJ/IPSJ. ISO-IR-67.
  52. ^ Jump up to: a b c d e ISO/TC 46 (1986-02-01). Additional Control Codes for Bibliographic Use according to International Standard ISO 6630 (PDF). ITSCJ/IPSJ. ISO-IR-124.
  53. ^ "DIN ISO 6630 December 1997". AFNOR Editions Online Store.
  54. ^ Jump up to: a b Umamaheswaran, V.S. (1999-11-08). "3.3 Step 2: Byte Conversion". UTF-EBCDIC. Unicode Consortium. Unicode Technical Report #16. The 64 control characters […], the ASCII DELETE character (U+007F)[…] are mapped respecting EBCDIC conventions, as defined in IBM Character Data Representation Architecture, CDRA, with one exception -- the pairing of EBCDIC Line Feed and New Line control characters are swapped from their CDRA default pairings to ISO/IEC 6429 Line Feed (U+000A) and Next Line (U+0085) control characters
  55. ^ Steele, Shawn (1996-04-24). cp037_IBMUSCanada to Unicode table. Microsoft/Unicode Consortium.