The arrangement
and numbering of rows in a column on physical punched cards originated
with the Hollerith system of encoding characters and numbers. It was
based on using a pair of values to represent either a character or
a numeric digit. In the Hollerith system, each column on a card had
a maximum of two punches, one punch in the zone portion, and one in
the digit portion. These punches corresponded to a pair of values,
and each pair of values corresponded to a specific alphabetic character
or sign and numeric digit.
In the zone portion
of the punched card, which is the first three rows, the zone component
of the pair can have the values 12, 11, 0 (or 10), or not punched.
In the digit portion of the card (the fourth through the twelfth rows),
the digit component of the pair can have the values 1 through 9, or
not punched.
The following figure
shows the multi-punch combinations corresponding to letters of the
alphabet.
SAS stores each column
of column-binary data (a “virtual” punched card) in
two bytes. Since each column has only 12 positions and since 2 bytes
contain 16 positions, the 4 extra positions within the bytes are located
at the beginning of each byte. The following figure shows the correspondence
between the rows of “virtual” punched card data and
the positions within 2 bytes that SAS uses to store them. SAS stores
a punched position as a binary 1 bit and an unpunched position as
a binary 0 bit.