DEC/PDP Character Codes
DEC/PDP, The now defunct Digital Equipment Corporation, used
three main character sets on its computers. The main one was
of course the standard seven-bit ASCII,
the other two were six bit codes.
DEC Six-bit, was simply the 64 basic ASCII characters, with
codes from 32-95 (decimal) or 20-5F (hexadecimal) or 40-77 (octal),
in exactly the same order, but with 32 (decimal) subtracted from
their codes, so they ran from 0 to 63. The missing characters
were control codes and lower case letters (and oddities like
curly brackets), and as sixbit was mostly used when interacting
with the operating system to specify a file name or something
of that nature, those characters were not missed. (Most operating
systems do not give files case-sensitive names, or allow invisible
letters in them). Six bits was a good character size because the
really important DEC computers (PDP-10 and such) had 36 bit memory
words, and six characters (with a three character extension) was
considered to be plenty for a file name.
DEC Squoze was a 40-character code, containing only letters,
digits, and a couple of other bonus characters. Strings in Squoze are
computed base-40, which means that a 6 character string would only
occupy 32 bits. That meant that in the standard 36 bit memory word,
there would be enough space for a 6 character file name together
with four bits of flags or other information.
DEC Sixbit Character Table, Octal
| |
__0 |
__1 |
__2 |
__3 |
__4 |
__5 |
__6 |
__7 |
| 0_ |
|
! |
" |
# |
$ |
% |
& |
' |
| 1_ |
( |
) |
* |
+ |
, |
- |
. |
/ |
| 2_ |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
| 3_ |
8 |
9 |
: |
; |
< |
= |
> |
? |
| 4_ |
@ |
A |
B |
C |
D |
E |
F |
G |
| 5_ |
H |
I |
J |
K |
L |
M |
N |
O |
| 6_ |
P |
Q |
R |
S |
T |
U |
V |
W |
| 7_ |
X |
Y |
Z |
[ |
\ |
] |
^ |
_ |
DEC Sixbit Character Table, Decimal
| |
__0 |
__1 |
__2 |
__3 |
__4 |
__5 |
__6 |
__7 |
__8 |
__9 |
| 0_ |
|
! |
" |
# |
$ |
% |
& |
' |
( |
) |
| 1_ |
* |
+ |
, |
- |
. |
/ |
0 |
1 |
2 |
3 |
| 2_ |
4 |
5 |
6 |
7 |
8 |
9 |
: |
; |
< |
= |
| 3_ |
> |
? |
@ |
A |
B |
C |
D |
E |
F |
G |
| 4_ |
H |
I |
J |
K |
L |
M |
N |
O |
P |
Q |
| 5_ |
R |
S |
T |
U |
V |
W |
X |
Y |
Z |
[ |
| 6_ |
\ |
] |
^ |
_ |
|
|
|
|
|
|
DEC Sixbit Character Table, Hexadecimal
| |
__0 |
__1 |
__2 |
__3 |
__4 |
__5 |
__6 |
__7 |
__8 |
__9 |
__A |
__B |
__C |
__D |
__E |
__F |
| 0__ |
|
! |
" |
# |
$ |
% |
& |
' |
( |
) |
* |
+ |
, |
- |
. |
/ |
| 1__ |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
: |
; |
< |
= |
> |
? |
| 2__ |
@ |
A |
B |
C |
D |
E |
F |
G |
H |
I |
J |
K |
L |
M |
N |
O |
| 3__ |
P |
Q |
R |
S |
T |
U |
V |
W |
X |
Y |
Z |
[ |
\ |
] |
^ |
_ |
DEC Squoze Character Table
| Decimal | Octal | Character
|
| 0 | 00 | space
|
| 1 | 01 | 0
|
| 2 | 02 | 1
|
| 3 | 03 | 2
|
| 4 | 04 | 3
|
| 5 | 05 | 4
|
| 6 | 06 | 5
|
| 7 | 07 | 6
|
| 8 | 10 | 7
|
| 9 | 11 | 8
|
| 10 | 12 | 9
|
| 11 | 13 | A
|
| 12 | 14 | B
|
| 13 | 15 | C
|
| 14 | 16 | D
|
| 15 | 17 | E
|
| 16 | 20 | F
|
| 17 | 21 | G
|
| 18 | 22 | H
|
| 19 | 23 | I
|
| 20 | 24 | J
|
| 21 | 25 | K
|
| 22 | 26 | L
|
| 23 | 27 | M
|
| 24 | 30 | N
|
| 25 | 31 | O
|
| 26 | 32 | P
|
| 27 | 33 | Q
|
| 28 | 34 | R
|
| 29 | 35 | S
|
| 30 | 36 | T
|
| 31 | 37 | U
|
| 32 | 40 | V
|
| 33 | 41 | W
|
| 34 | 42 | X
|
| 35 | 43 | Y
|
| 36 | 44 | Z
|
| 37 | 45 | .
|
| 38 | 46 | $
|
| 39 | 47 | %
|
Example of the squoze encoding of "FILE05" into the 32 bit number 1688472045:
| 'F'
| 'I'
| 'L'
| 'E'
| '0'
| '5'
|
|
| 16
| 19
| 22
| 15
| 1
| 5
|
|
| ((((16
| ×40+19)
| ×40+22)
| ×40+15)
| ×40+1)
| ×40+5
| = 1688472045
|