This is about font encoding: the standard OT1 font encoding developed by Knuth uses all of the slots in the font, not just those you might normally think of as printable. Most famously, \char0 is used in this encoding and used to cause issues for some PDF viewers.
The idea that there is one 'universal' encoding has arisen with the adoption of Unicode, but this simply doesn't apply to older material. There are lots of encodings for fonts, both 'standard' and entirely non-standard (think pifonts).
What you have have to bear in mind is that the input codepoint doesn't have to match the output codepoint: the key is that it shows the correct information. That's perhaps most easily understood with something like \alpha: clearly the output (a single glyph) is different from the input, and in a 'classical' encoding such as Latin-1 there is no alpha.
Probably the easiest way to see the full font table for an (8-bit) font is to use the LaTeX package fonttable:
\documentclass{article}
\usepackage{fonttable}
\begin{document}
\fonttable{cmr10}
\end{document}
\quadfor a "tab" of space. – dexteritas Jun 22 '17 at 16:19}(character 125) doesn't print as a}– David Carlisle Jun 22 '17 at 18:42}and in this case you typeset character 9 and get whatever the font has in slot 9 instead of a tab. – David Carlisle Jun 22 '17 at 18:52Afor generating the token (65,11)), and 6. a TeX command for printing some glyph in the current font (e.g.\char9). – Evan Aad Jun 22 '17 at 19:05