Uuencoding, A Rather Boring Article On

Why 8 Into 7 Won't Go

by Alexander Lachlan McLintock (Alex.McLintock@chadwyck.co.uk)
written 09 Jun 1995

This article is classified "Real"


When people first invented e-mail they thought that no one would need more
than the 128 characters which make up the ASCII character set.  (The 128
comes from 2 to the power of 7 -- hence the phrase 7 bit ASCII).
Unfortunately, a binary character (needed for executable programs, word
processor documents, pictures and the like) uses the full 8 bits, and
unsurprisingly if you try and send 8 bits down a communication medium
which only safely supports 7 then sometimes the eighth bit gets lost.

The solution is to translate your eight bit data (eg. a Word6 DOC file)
into characters which only use 7 bits.  You then can send the encoded file
across the world wide e-mail network and translate the 7 bit file back into
an 8 bit file at the other end.

Well, how do we do that?  There are two main ways.  The first one I will
mention is the imaginatively named a-to-b.  This was originally an Apple
Macintosh program which (together with its sister program b-to-a) [1] 
few people use outside the Apple community.  The more common method is
uuencoding.   Uuencoding (pronounced you-you-encoding) actually stands
for Unix to Unix encoding, but you don't have to have Unix to use this.

You usually do something like:

          uuencode binaryfilename newfilename > saveasfilename

Under DOS I might type:

          uuen alexpic.gif alexpic.gif > alexpic.uue
 
after which I get a new file called alexpic.uue which contains:

begin 644 alexpic.gif
M"0E!8W1I;VXZ($5D=VEN#0U%52M%1E1!("A2:7-T;RD-"2T@1FEN;&%N9"!H
M87,@<VEG;F5D('1H92!4;U(@86YD(&-A;B!A='1E;F0@9G)O;2!T:&4@8F5G
M:6YN:6YG#0DM($9I;FQA;F0@871T96YD<R!A<R!A;B!%52!C;W5N=')Y#0DM
M(%1H92!O;FQY($5&5$$@8V]U;G1R>2!I<R!.;W)W87DL('=H:6-H(&AA<R!N
M;W0@<VEG;F5D('1H92!4;U(-"0E.;W)W87D@:&%S('1O('-E;F0@82!L971T
end

I can now e-mail my mug shot to anyone I want, even if it goes across dodgy
7 bit ASCII e-mail links.

Coming Next Time On Alex's Boring Articles:
-------------------------------------------
Decoding the uuencoded file.
What happens when the uuencoded file gets too large.
Tools to aid uuencoding and uudecoding.
Mime.
Why do my email messages get truncated to 60K or 255K?

[1] I don't believe that the rumoured a-to-b-via-c program actually exists.

See also:
  • Unix, Part 1
  • Unix, Part 2
  • Unix, Part 3
  • McLintock, Alexander Lachlan

  • Go to [Root page | Title list | Author list | Date list | Index]