What’s special about 55 and AA? Or more specifically, 0x55 and 0xAA?
What does 0x prefix on a number mean?
To put it simply, 0x means 55 and AA are in hexadecimal. And in hexadecimal world, “A” means ten. We human being use decimal notation in real world. So 0xA in our understanding is 10 in decimal notation.
Okay. But why we should care about 0x55 and 0xAA?
Few months ago, when I read some documents about Operating System, the author tried to show readers how computer actually boots. What he approached is actually coded the very first program for computer to load.
I won’t dive into too much details about OS, programs, etc. At least not right now. What really caught my eye is the author used 0x55 and 0xAA to finish the very first program. According to his explanation, this is not his invention. And why it was done that way is also beyond his knowledge.
Out of curiosity, I did some research about 0x55 and 0xAA. It turned out not a big secret at all. Decades ago, the programmers choose them may simply because 0x55 in binary notation is 01010101. And 0xAA in binary notation is 10101010.
You can think of 01010101 and 10101010 as a signature. It helps computers recognize the program.
I’d write more details about how computer boots and numeral system in the future. Any suggestions are welcome. :)