Some strings in DEC's 16-bit systems were encoded as 8-bit bytes, while others used RADIX 50 (then also called
MOD40). In RADIX 50, strings were encoded in successive words as needed, with the first character within each word located in the most significant position. For example, using the PDP-11 encoding, the string "ABCDEF", with character values 1, 2, 3, 4, 5, and 6, would be encoded as a word containing the value 1×402 + 2×401 + 3×400 = , followed by a second word containing the value 4×402 + 5×401 + 6×400 = . Thus, 16-bit words encoded values ranging from 0 (three spaces) to ("999"). When there were fewer than three characters in a word, the last word for the string was padded with trailing spaces. There were several minor variations of this encoding with differing interpretations of the 27, 28, 29 code points. Where RADIX 50 was used for filenames stored on media, the code points represent the , , characters, and will be shown as such when listing the directory with utilities such as DIR. When encoding strings in the PDP-11 assembler and other PDP-11
programming languages the code points represent the , , characters, and are encoded as such with the default RAD50 macro in the global macros file, and this encoding was used in the
symbol tables. Some early documentation for the
RT-11 operating system considered the code point 29 to be undefined. The use of RADIX 50 was the source of the filename size conventions used by
Digital Equipment Corporation PDP-11 operating systems. Using RADIX 50 encoding, six characters of a filename could be stored in two 16-bit words, while three more extension (file type) characters could be stored in a third 16-bit word. Similarly, a three-character device name such as "DL1" could also be stored in a 16-bit word. The period that separated the filename and its extension, and the colon separating a device name from a filename, was implied (i.e., was not stored and always assumed to be present). ==See also==