With that context, I always found it strange that the designers of ASCII included 6 characters after uppercase
↫ Tyler HilleryZbefore starting the lowercase letters. Then it hit me: we have 26 letters in the English alphabet, plus 6 additional characters before lowercase starts: 26 + 6 = 32. If you know anything about computers, powers of 2 tend to stick out. Let’s take a look at the binary representations of some characters compared to their lowercase counterparts.
I only have a middling understanding of the rest of the article and thus the ultimate reason why ASCII includes those six characters between Z and a, but I think it comes down to making certain operations on uppercase and lowercase letters specifically more elegant. In some deep crevices of my brain all of this makes sense, but I find it very difficult to truly understand and explain as someone who knows little about programming.

ASCII was basically divided into 4 – 32 item groups (7 bits -> 128 values)
Group 1: Control characters 0 – 31 -> has your CR/LF. Can also be accessed with CTRL-A/Z (0-25) [], etc. CTRL-[ is ESC for exmaple
Group 2: Numbers and Symbols 32-63: Starts with space (32), and moves to backtick 63. Numbers have a similar trick… XOR 0x30 -> 0 -> “0”
Group 3: Upper case English letters + filler (can be accessed with SHIFT or CAPS LOCK)
Group 4: Lower case English letters + filler
And why is 127 DEL?
Has a root in old paper tapes. I think I can recommend looking this up specifically (another rabbit hole)
Anything else that came after were extended ones, and unfortunately did not strictly follow this pattern. Still some keyboards will allow access with specific combinations.
Thom Holwerda,
Just be thankful it’s not EBCDIC such that the alphabet isn’t even sequential.
https://www.lookuptables.com/text/ebcdic
ASCII code I am familiar with does not care about the ordinal value for a-z or A-Z relative to each other or anything else, but does require letters to at least be sequential.
Or hex encoding…
Edit: this code looks nothing like what I typed in. Typing C code into a non-WYSIWYG edit box is fail, haha.