Ce que vous voyez est simplement une conversion de jeu de caractères de texte ordinaire.
En ce qui concerne PuTTY, vous tapez (et lisez) texte , pas de données binaires brutes, il doit donc convertir le texte en octets dans tout jeu de caractères configuré avant de l’envoyer par le fil.
En d'autres termes, lorsque vous tapez Alt + 1 8 2 , PuTTY reçoit le message correspondant personnage à partir du jeu de caractères "OEM" hérité pour lequel le système est configuré. (Dactylographie Alt + 0 1 8 2 choisirait dans l’ancien jeu de caractères "ANSI" (Windows-125x).) Dans ce cas, le caractère est ¶
, un pilcrow.
Maintenant, PuTTY doit convertir ce caractère en octets. Les versions antérieures de PuTTY choisissaient par défaut le même jeu de caractères Windows-125x hérité que celui utilisé par le système d'exploitation lui-même, par exemple. Windows-1257, la conversion était donc presque directe - entrée 1 8 2 , recevez l'octet 182 décimal (0xB6 hex).
Cependant, comme PuTTY se connecte généralement à des serveurs Linux ou BSD, la très grande majorité d’entre eux ont migré vers UTF-8 Par défaut, la dernière version de PuTTY a également commencé à utiliser UTF-8 par défaut. UTF-8 est un encodage du méga-jeu de caractères Unicode, qui a ¶
en position U + 00B6, et il est surtout juste une coïncidence que UTF-8 code cette valeur en octets 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
Wikipedia a des couleurs
Comme autre exemple, la lettre ė
utilisé pour être octet E6
dans le jeu de caractères Windows-1257, mais dans Unicode, il s'agit de U + 0117, correspondant aux octets C4 97
en UTF-8. Ces séquences sont de longueur variable, jusqu'à 4 octets pour les positions plus grandes.
Si vous devez absolument utiliser PuTTY pour envoyer des données binaires, ouvrez l'écran de paramétrage "Fenêtre → Traduction" et choisissez CP437, ISO-8859-1 ou Windows-1252 comme "Jeu de caractères à distance". (Enregistrez ceci dans une session séparée; ne ne pas enregistrez ceci en tant que valeur globale par défaut, car cela rompra les connexions SSH habituelles.)