Sådan omdanner du binærkode til tekst

Binærkode består af cifrene nul og et. I computere bruges cifrene til at repræsentere data, herunder tekst. For at læse en binær tekststreng skal cifrene opdeles i grupper og fortolkes efter en bestemt tegnkodning. En byte består almindeligvis af otte bits, men selve bitmønstret fortæller ikke alene, hvilket tegn der menes. Afsender og modtager skal bruge samme kodning, ellers kan resultatet blive forkert eller uforståeligt.

Hvad betyder binær tekst?

Hvert tegn kan repræsenteres af en numerisk værdi. Tegnkodningen knytter denne værdi til et tegn, eksempelvis et bogstav, et mellemrum eller et tegnsætningstegn. I en almindelig bytebaseret fremstilling skrives værdien som otte binære cifre. Et nul foran et kortere bitmønster kan derfor være nødvendigt for at få den rette længde.

Ældre tekstkodninger dækker et begrænset udvalg af tegn. Unicode er en standard, der giver tegn fra mange skriftsystemer en fælles identitet, mens UTF-8 er en måde at kode Unicode-tegn som bytes på. I UTF-8 kan et tegn bruge mere end én byte. Derfor kan man ikke altid læse en lang bitstreng ved blot at oversætte hver gruppe på otte cifre til et enkelt bogstav.

Sådan læses en simpel binær tekststreng

  1. Find først ud af, hvilken kodning bitmønstret bruger. Hvis kodningen er ukendt, kan samme byte have forskellige fortolkninger.

  2. Del bitstrengen ved de angivne grænser. I en enkel bytebaseret tekst kan du begynde med grupper på otte bits. Kontrollér, at der ikke mangler cifre i en gruppe.

  3. Omsæt hver gruppe fra binær notation til et tal. Gå fra højre mod venstre: positionerne har værdierne én, to, fire, otte og videre, hvor hver position til venstre er dobbelt så stor som den foregående. Læg værdierne for de positioner sammen, hvor bitværdien er et.

  4. Slå talværdien op i den valgte kodnings tegnsæt. Gentag for de øvrige grupper. Hvis kodningen bruger flere bytes til ét tegn, skal de bytes behandles samlet efter kodningens regler.

  5. Saml tegnene i samme rækkefølge som grupperne. Mellemrum og tegnsætning skal også have deres egne værdier; de kan ikke udledes af afstanden mellem bogstaverne.

Et sikkert lille regneeksempel er bitmønstret 01000001. De positioner, der har værdien et, svarer til 64 og 1. Summen er 65. I ASCII, som også indgår i UTF-8 for dette tegn, er værdien 65 det store bogstav A. Eksemplet viser metoden, men ikke alle tegnkodninger følger samme opslagstabel.

Hvor bruges omkodningen?

Forståelse af binær tekst er nyttig, når data undersøges i netværksbeskeder, tekstfiler, programmering eller fejllogning. Den kan hjælpe med at skelne mellem selve bitmønstret og den tekst, en bestemt kodning viser. Hvis resultatet indeholder mærkelige tegn, kan årsagen være en forkert kodning, en manglende byte eller en grænse, der er placeret forkert.

Ved længere tekst er kodningsreglerne afgørende. UTF-8 har regler for, hvordan bytes sammensættes til tegn, og nogle tegn kræver flere bytes. Derfor bør du ikke dele vilkårligt i grupper og antage, at hver gruppe er ét bogstav. Når både kodning og bytegrænser er kendt, kan den binære repræsentation fortolkes på en ensartet måde.