то, что вы видите, это просто обычный набор символов преобразования текста.
что касается шпатлевки, вы печатаете (и читаете) текст, не необработанные двоичные данные, поэтому он должен преобразовать текст в байты в любом настроенном наборе символов перед отправкой его по проводу.
другими словами, при вводе Alt+1 8 2, шпатлевка получает соответствующий символ от наследия " OEM" кодировка, для которой настроена система. (Набрав Alt+0 1 8 2 будет выбирать из устаревшего набора символов" ANSI " (Windows-125x).) В этом случае, символ ¶
, а абзаца.
теперь PuTTY должен преобразовать этот символ в байты. Более ранние версии PuTTY по умолчанию будут выбирать тот же устаревший набор символов Windows-125x, что и сама ОС, например Windows-1257, поэтому преобразование было почти прямым вводом 1 8 2, получить байт 182 десятичный (0xb6 шестнадцатеричный).
однако, поскольку PuTTY обычно подключается к серверам Linux или BSD, подавляющее большинство из которых перешли на UTF-8 по умолчанию последняя версия PuTTY также начала использовать UTF-8. UTF-8 является кодировкой мега-набора символов Unicode, который имеет ¶
в позиции U+00B6, и это в основном просто совпадение что UTF-8 кодирует это значение в байтах C2 B6
:
U+00B6
→ 0000|0000 10|110110
→ [110]00010 [10]110110
→ C2 B6
U+00FC
→ 0000|0000 11|111100
→ [110]00011 [10]111100
→ C3 BC
U+20AC
→ 0010|0000 10|101100
→ [1110]0010 [10]000010 [10]101100
→E2 82 AC
Википедия имеет его с цветами
в качестве другого примера, буква ė
раньше было byte E6
в кодировке Windows-1257, но в Unicode это U + 0117, что соответствует bytes C4 97
в UTF-8. Эти последовательности имеют переменную длину, до 4 байт для больших позиций.
Если Вам абсолютно необходимо использовать PuTTY для отправки двоичных данных, откройте экран настроек " окно → перевод "и выберите CP437, ISO-8859-1 или Windows-1252 в качестве"удаленного набора символов". (Сохраните это в отдельном сеансе; do не сохранить это как глобальное значение по умолчанию, потому что он будет нарушать регулярные соединения SSH.)