Xxencoding - Xxencoding

Xxencode jest kodowanie binarne na tekst podobny do UUEncode który wykorzystuje tylko znaki alfanumeryczne oraz znaki plus i minus. Został wymyślony jako środek do przesyłania plików w formacie, który będzie przetrwać zestawu znaków tłumaczenia, szczególnie, że pomiędzy ASCII i EBCDIC kodowania używany na komputerach mainframe IBM.

Proces kodowania

Xxencoded danych rozpoczyna się od linii postaci:

 begin <mode> <file>

Gdzie <tryb> to plik jest do odczytu / zapisu / Wykonanie uprawnienia jako trzy cyfry ósemkowe i <plik> jest nazwą mają być stosowane przy odtwarzaniu danych binarnych.

Xxencode wielokrotnie odbywa się w grupach po trzy bajty, dodając kończące zera, gdy występuje mniej niż trzy bajty Lewicy. Te 24 bitów jest podzielona na cztery liczby 6-bitowych, z których każdy jest następnie przenoszony na th znaku w poniższej tabeli:

           1         2         3         4         5         6
 0123456789012345678901234567890123456789012345678901234567890123
 |         |         |         |         |         |         |
 +-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz

Każda grupa sześćdziesięciu wydrukowanych znaków (bajtów odpowiadających 45 wejściowego) jest odtwarzany jako oddzielna linia poprzedzonego zakodowanym postać daje liczbę zakodowanych bajtów na tej linii. Dla wszystkich linii z wyjątkiem ostatniego, to będzie znak „h” (mapowanie znaków na wartość 45). Jeżeli sygnał wejściowy nie jest podzielna przez 45, ostatni wiersz zawiera pozostałe znaki wyjściowe N, poprzedzonych liczbę pozostałych bajtów wejściowych zakodowany powyżej. Wreszcie linia zawierająca tylko jedną przestrzeń (lub znak plus) jest wyjście, a następnie jednego wiersza zawierającego „koniec” string.

Xxencoded danych jest zazwyczaj różni się od uuencoded danych przez pierwszą postać linii ( „h” dla Xxencode, „M” dla UUEncode). Zakłada się, co najmniej jedną linię o pełnej długości (45/60 bajtów kodowanych znaków) na wyjściu.

Przykład

Poniżej znajduje się przykład Xxencoding plik tekstowy jednej linii. W tym przykładzie, % 0D jest reprezentacją do karetki (CR) i % 0A jest reprezentacją do paszy linii (LF).

Plik
 File Name = wikipedia-url.txt
 File Contents = http://www.wikipedia.org%0D%0A
Xxencoding
 begin 644 wikipedia-url.txt
 OO5FoQ1cj9rRrRmtrOKhdQ4JYOK2iPr7b1Ec+
 end

Zobacz też

Linki zewnętrzne

Referencje

  1. ^ Tony Catone (luty 1995). „Klucze do Królestwa: Odblokowanie formatów Internet” . University of Pennsylvania .