Here's an extract from the ASCII table:
Decimal Octal Hex Binary Value
------- ----- --- ------ -----
010 012 00A 00001010 LF (Line Feed)
011 013 00B 00001011 VT (Vertical Tab)
012 014 00C 00001100 FF (Form Feed)
013 015 00D 00001101 CR (Carriage Return)
As you can see, (using decimal codes)
10 = Line feed (\n) ie move printhead/cursor down one line
13 = Carriage Return (\r) ie move printhead/cursor back to start of line
In MS systems, they use \r\n to start a 'newline', as the old tech did.
However, it was decided in Unix that we would just go with \n and take the \r as assumed. This is what causes issues if you move text files between the two systems eg see dos2unix tool.
However it was possible with typewriters to just do a \r and overtype the same line, as you can also in *nix.
You really need to bookmark a copy of the ASCII table eg http://www.asciitable.com/
and write a program to test out the various ctrl chars (anything where decimal code is < 32) so you understand.