vak: (Default)
[personal profile] vak
Вначале были точки и тире, и морзянка витала над бездною. Аналого-цифровое преобразование текста в сигнал выполнялось рукой передающего телеграфиста, обратное аналого-цифровое - ухом принимающего. Вопрос кодировки не стоял.

5-bit

В 1830х годах в электрическом телеграфе Кука и Уитстона было применено 5-битное кодирование букв латинского алфавита посредством стрелок, поворачивавшихся под действием магнитного поля. Понятно, почему пять бит: необходимый минимум, чтобы передать 26 латинских букв.



К 1870-м годам Эмиль Бодо переизобрёл велосипед, и пятибитная кодировка массово пошла в народ. К 1900-м годам Дональд Мюррей придумал переносить текст через перфоленту, и добавил коды переключения регистров, чтобы передавать не только буквы, но и цифры и знаки препинания.



6-bit

Кодировка Мюррея была вполне компактной, но потребности росли. Народ хотел передавать не только новостные сообщения, но и газеты целиком. Большие-маленькие буквы, типографские символы, разметку текста и прочие ништяки. В 1928 году придумали и к 1950-м стали массово применять шестибитную кодировку.



Когда появились компьютеры, к ним быстро приспособили всё наработанное к этому времени телеграфное оборудование: телетайпы, перфораторы и прочее. Многие ранние компьютеры начинали с шестибитных байтов. К примеру, на БЭСМ-6 имена в объектных файлах была представлены в 6-битном коде TEXT. В машинном слове помещалось восемь символов, чего было вполне достаточно по тем временам.

7-bit

Проблема с шестью битами в том, что в них не удаётся без свистоплясок уместить минимально нужное количество символов, хотя бы от печатной машинки. В 1960-х годах получил распространение и был утверждён стандарт ASCII, ставший с тех пор "таблицей умножения" для всех компьютерщиков.



8-bit

Одних латинских букв маловато будет. Большинство европейских языков, даже основанных на латинице, имеет массу других букв. Не говоря уже про кириллицу, греков, армян, грузин и прочих обособленцев. Довольно быстро возникла идея расширить семибитный ASCII другими буквами для разных языков. На настоящий момент известно несколько сотен таких кодировок.


Unicode

Довольно скоро стало понятно, что 8-битное представление символов не решает задачу. Во-первых, китайские, японские и корейские иероглифы остались за бортом. А также арабские, индийские и другие языки. Во-вторых, даже для тех кто поместился в 8 бит, встаёт проблема перекодировок. Всякая программа, даже тривиальная сортировка строк, обязана знать и уметь перекодировать все кодировки, а их количество продолжает расти.

Решение пришло из проекта Plan 9. Дадим каждому символу 32 бита, но упакуем их компактно в 8-битные байты. Получилась кодировка UTF-8, на которую в последние пятнадцать лет все и перешли.

В 32-битном пространстве можно не стесняться. Народ продолжает запихивать в Unicode всё более и более забавные символы.


Date: 2021-08-30 22:35 (UTC)
From: [personal profile] dijifi
Удивительно что стрелочные телеграфы были разработаны одновременно, а практически стали использоваться даже раньше чем азбука Морзе.

Date: 2021-08-30 22:40 (UTC)
ircicq: (Default)
From: [personal profile] ircicq
Код Морзе - оптимизация. Естественно, что к ней пришли после использования кода фиксированной длинны
Edited Date: 2021-08-30 22:43 (UTC)

Date: 2021-08-30 23:01 (UTC)
From: [personal profile] dijifi
Точно? По википедии первый коммерческий электрический телеграф все-таки стрелочный и многоканальный. И экспериментальные установки, начиная со статического электричества, тоже многоканальные.

Забавно что первоначальная опубликованная идея электрического телеграфа 1753 года — один провод на букву, то есть по-современному one-hot encoding
Edited Date: 2021-08-30 23:05 (UTC)

Date: 2021-08-30 23:22 (UTC)
From: [personal profile] dijifi
В том же 1837 когда Морзе и Вейл встретились, стрелочный телеграф начал всерьёз работать на железной дороге.

Date: 2021-09-01 02:32 (UTC)
juan_gandhi: (Default)
From: [personal profile] juan_gandhi

Fuck, one-hot encoding for the telegraph! Like, like.

Date: 2021-09-01 07:40 (UTC)
From: [personal profile] dijifi
Так Морзе даже в очереди не стояло

Date: 2021-09-01 07:41 (UTC)
From: [personal profile] dijifi
Похоже я знаю кто такой C.M. из Ренфру. Есть тут у нас один путешественник по времени.

Date: 2021-08-30 23:09 (UTC)
spamsink: (Default)
From: [personal profile] spamsink
обратное аналого-цифровое - ухом принимающего

Прием на слух - очень позднее изобретение. Много десятилетий телеграф с каким-нибудь из морзеподобных кодов (кстати о вопросах кодировки) был ленточный.

Date: 2021-08-30 23:28 (UTC)
spamsink: (Default)
From: [personal profile] spamsink
Насчет кодировок: https://en.wikipedia.org/wiki/Morse_code#/media/File:Morse_comparison.svg
ITU ближе к Gerke, чем к Morse.

Что значит "изначально"? Прием морзянки на ленту использовался как минимум вплоть до 1920-х годов; достаточно вспомнить картины с Лениным у телеграфа.


Date: 2021-08-30 23:34 (UTC)
paserbyp: (Default)
From: [personal profile] paserbyp
Раньше были соревнования и даже проводились чемпионаты мира по приему и передаче морзянки. Я в глубокой своей юности даже руку сорвал готовясь к соревнованиям по приему и передачи морзянки, но это было так давно… интересно, а сегодня кто-то этим мазохизмом ещё занимается?
Edited Date: 2021-08-30 23:35 (UTC)

Date: 2021-08-31 00:04 (UTC)
spamsink: (Default)
From: [personal profile] spamsink
Судя по сайту рекордов Гиннесса, в начале 2000-х ещё занимались.

https://www.guinnessworldrecords.com/world-records/fastest-speed-for-a-morse-code-transmission/

Интересно, в какой стране количество рекордсменов Гиннесса на душу населения самое большое? Как бы не в Беларуси.

Date: 2021-08-31 00:17 (UTC)
paserbyp: (Default)
From: [personal profile] paserbyp
Спасибо!

Date: 2021-08-31 22:36 (UTC)
From: [personal profile] igrdk
какая прелесть телеграфа Кука и Уитстона! я в восторге от изобретательности авторов!

строго говоря, он был не 5-битным: из 5 "каналов" одновременно использовались только 2, по одному из которых передавали +1, а по другому -1; и всё из-за ограничения "декодера":

(так передавали букву G)

итого кодировалось максимум 5*4=20 различных знаков (зато практически не требовалось обучение персонала, в отличие той же азбуки Морзе).

я даже не знаю, как назвать такую кодировку... двухсимвольная четырех-с-половиной уровневая? QAM20?

Date: 2021-09-01 02:31 (UTC)
juan_gandhi: (Default)
From: [personal profile] juan_gandhi

Тема EUC и Shift-JIS не раскрыта. В Японии еще в 90-е на ЖД использовали пятибитную кодировку.

Date: 2021-09-01 15:52 (UTC)
From: [personal profile] flamedancerii
> Понятно, почему пять бит: необходимый минимум, чтобы передать 26 латинских букв.
Там не совсем так - каждая стрелка - двунаправленная, код +-2 из 5
https://upload.wikimedia.org/wikipedia/commons/f/fc/Cooke_Wheatstone_Telegraph_2.jpg
26 не помещается :)

P.S.:Прошу прощения за дубль, опередили пока собрался акк на dreamwidth зарегистрировать
Edited (Duplicate comment) Date: 2021-09-01 15:54 (UTC)

Date: 2021-09-01 16:57 (UTC)
From: [personal profile] dijifi
Кстати как насчет оптического телеграфа?
Какой код использовал римский император Тиберий передавая сообщения гелиографом с виллы на Капри?
Edited Date: 2021-09-01 17:00 (UTC)

Date: 2021-09-02 21:33 (UTC)
From: [personal profile] dijifi
не факт что у индейцев и африканцев было раньше чем у римлян.

Тут — серьёзная вещь: управление империей. То есть место и время известны. Жаль я не историк.