Inspired by this question on ASCII, I have wondered similar things about EBCDIC.
At work we have an EBCDIC file that gets sent to a mainframe (I presume an IBM one) and to view it on my laptop I needed to run a command to convert it.
dd if=blah.ebcdic conv=ascii > blah.txt Before I found that command I took a peek at the code page to see if I could whip something up myself.
Like ASCII you can shift a bit to get from lowercase to uppercase (
0xc_ is one bit different). However, the cases are not contiguous themselves. The low bits
0x_f are skipped. Is there a reason?
Also like ASCII, the numbers' low bits match the number they represent.