Binary-to-text encoding: Difference between revisions

Content deleted Content added
Encoding standards: Apply erratum
Sakkath (talk | contribs)
s/organised/organized (en_US not en_UK afaik)
Line 4:
The ASCII text-encoding standard uses 128 unique values (0–127) to represent the alphabetic, numeric, and punctuation characters commonly used in the [[English language]], plus a selection of 'control codes' which do not represent printable characters. For example, the capital letter ''A'' is ASCII character 65, the numeral ''2'' is ASCII 50, the character ''}'' is ASCII 125, and the [[metacharacter ]]''carriage return'' is ASCII 13. Systems based on ASCII use seven bits to represent these values digitally.
 
By contrast, most computers store data in memory organisedorganized in eight-bit [[byte]]s, and, in the case of machine-executable code and non-textual data formats where maximum storage density is desirable, use the full range of 256 possible values in each eight-bit byte. Many computer programs came to rely on this distinction between seven-bit ''text'' and eight-bit ''binary'' data, and would not function properly if non-ASCII characters appeared in data that was expected to include only ASCII text. For example, the value of the eighth bit might not be preserved, or the program might interpret a byte value above 127 as a flag telling it to perform some function.
 
It is often desirable, however, to be able to send non-textual data through text-based systems, such as when one might attach an image file to an e-mail message. To accomplish this, the data are encoded in some way, such that eight-bit data are encoded into seven-bit ASCII characters (generally using only alphanumeric and punctuation characters). Upon safe arrival at its destination, it is then decoded back to its eight-bit form. This process is referred to as binary to text encoding. Many programs perform this conversion to allow for data-transport, such as [[PGP]] and [[GNU Privacy Guard]] (GPG).