[unix] 곡절 / 캐럿 문자가 Ctrl의 기호로 사용되는 이유는 무엇입니까?

나는 오래 전에 리눅스 콘솔을 사용하기 시작했지만 곡절 캐럿 캐릭터 ( ^)에 대해 나 자신에게 질문하지 않았다 . 왜 단어를 대체하는 데 사용되는지 묻고 싶습니다 Ctrl.

나는 다른 날에 나노를 사용하는 동안 그것에 대해 생각하고 인터넷에 몇 가지 답변이 있는지 찾아 보았지만 내가 찾은 것은 “그것이 무엇인지”와 “이것이 무엇을 나타내는 지”에 대한 질문 일뿐입니다.

역사적인 이유가 있습니까? 아니면 이상한 규칙에서 비롯된 것입니까?



답변

circumflex ( ^)는 전신 프린터의 위쪽 화살표 문자와 동일합니다. SunOS 등이 등장했을 때이 부분은 과거 10 년이 넘었습니다. 같은 문자 (대체)가 수학적 표현에 사용되었습니다 ^( 예 : 힘 (다른 사람이 사용할 수있는 경우 **)). 파스칼에서도 포인터를 나타 내기 위해 사용되었습니다.

제어 문자를 나타내는 데 사용됩니다, 당신은 그것을 예를 들어 감속 설명서에 사용 찾을 수 있습니다 1980 년 이전에 (적어도)이 날짜 (그것이 내가 TECO을 사용하는 1970 년대 중반에 의해 사용 확실히했다. 유틸리티를 수동 1,973에서 (페이지 927) controlC예를 들어 보여줍니다 .

적합한 출처를 찾고, Gil Smith의 Teletypewriter 통신 코드 는 1960 년대 후반에 이것을 배치하기에 충분하다고 말합니다 (원점이 Unix 이전 버전임을 증명 함).

ASCII-63은 대부분 현재 ASCII-67 버전과 동일합니다. 제어 문자 (위의 col-1)의 정의는 아래 정의 된대로 두 버전간에 다양합니다. 또한 ASCII-63에서는 RUB (0x7F), ACK (0x7C) 및 ESC (0x7E)를 제외하고 상위 32 개 위치 (col-4)가 정의되지 않았습니다. ASCII-63에 ALT-MODE char (0x7D)에 대한 참조가 일치하지 않습니다. 1967 버전에서 RUB는 DEL이되어 같은 위치에 머물 렀지 만 ACK와 ESC는 제어 문자 영역 (col-1)으로 이동했습니다. ASCII-67에서 ^는 위쪽 화살표 기호를 대체하고 _는 왼쪽 화살표를 대체했습니다.

ASCII-63 및 ASCII-67은 ASCII의 일반적인 변형이지만 일부 과도기적 인 버전도있는 것으로 보입니다. Teletype Model 33 설명서에는 SUB 대신 SS가있는 1965 버전의 ASCII에 대한 참조가 있습니다. (0x1A), \ (@ (0x40), ~ (\ (0x5C)), | (0x7C) 및 | ~ (0x7E). M33 및 M35 시스템의 Teletype 코드 카드는 1966 버전의 ASCII 버전을 나타내지 만 카드에 표시된 인쇄 가능 문자는 모든 버전에서 동일합니다.

ASCII 및 EBCDIC와 같은 다른 인코딩간에 파일을 교환하는 데 문제가 있었기 때문에 문자가 더 이상 ASCII에 존재하지 않는 한 오랫동안 위쪽 화살표를 렌더링 할 수있는 프린터가있었습니다.


답변