나는 다음이 있다는 것을 읽었습니다.6비트 문자 인코딩5비트 인코딩을 사용하는 것이 유용할지, 어떤 경우에는 개선이 될지 궁금했습니다.
나는 그것을 달성하는 방법을 찾았다고 생각합니다. 텍스트를 8비트에서 5비트로 또는 그 반대로 인코딩/디코딩하는 상대 코드를 작성하면 됩니다.
답변1
텔레타이프에 사용되는 이전 Baudot 코드는 5개의 데이터 비트를 사용했습니다. 전신 시스템을 통해 텍스트를 보내고 받을 수 있었고 타자기와 유사한 장치에서 인쇄할 수 있었습니다. 1840년대에 처음 소개되었으며 1970년대에도 여전히 일반적으로 사용되었습니다. 직렬 통신의 경우 2개의 시작 비트와 1개의 종료 비트가 추가되었습니다.
5비트 코드는 32개의 조합만 제공했습니다. 알파벳 문자와 숫자 및 기호를 지원하기 위해 2가지 모드가 사용되었습니다. 문자 모드에는 알파벳이 있었고 숫자 모드에는 숫자와 기호가 있었습니다. 공백, 캐리지 리턴, 줄 바꿈 및 전환 모드에 대한 문자는 두 가지 모두에 공통되었습니다. 소문자는 지원되지 않았습니다.
5비트 코드를 사용한 이유는 기계 장치에서 구현이 간편하고 느린 전송 시스템을 효율적으로 사용할 수 있기 때문이다. 현재로서는 그 유용성이 의심되지만 매우 특별한 목적에는 유용할 수 있습니다. 그러나 모든 이점은 한계와 신중하게 비교되어야 합니다.
답변2
예, 어떤 경우에는 5비트 인코딩이 유용합니다. 특히 제한된 환경에서는 오래된 게임 하드웨어(예: NES)나 네트워크를 통한 데이터 전송을 생각해 보세요.
문자 집합이 작으면 문자열은 문자당 8비트가 아닌 문자당 5비트를 압축하는 비트스트림으로 인코딩될 수 있습니다. 이로 인해 데이터 크기가 줄어듭니다. 고정 비트 길이 인코딩을 사용하여 데이터를 압축하고 있습니다. 물론 "인코딩/디코딩"이 필요하기 때문에 "더 높은 처리 속도"와 "압축된 데이터"를 교환하고 있습니다.
5비트를 사용하면 데이터가 0-31($00-$1F) 범위의 값을 가질 수 있습니다. 32개 항목만 나타낼 수 있습니다. 페이징/모드를 사용하면 지원되는 항목 수를 확장할 수 있습니다. 예를 들어 32자 + 32자 + 32개 제어 명령이 포함된 3페이지를 생각해 보세요.
말했듯이 이것은 고정 비트 길이 인코딩입니다. 후속 주제는 가변 비트 길이 인코딩과 허프만 인코딩(항목 빈도/발생 분석을 수행하여 인코딩 최적화)입니다.