Ok, so I know that the alphabet of computers consists of only two symbols, or states: zero and one.
I also seem to understand how computers count beyond one even though they don’t have symbols for anything above one.
What I do NOT understand is how a computer knows* that a particular string of ones and zeros refers to a number, or a letter, or a pixel, or an RGB color, and all the other types of data that computers are able to render.
*EDIT: A lot of you guys hang up on the word “know”, emphasing that a computer does not know anything. Of course, I do not attribute any real awareness or understanding to a computer. I’m using the verb “know” only figuratively, folks ;).
I think that somewhere under the hood there must be a physical element–like a table, a maze, a system of levers, a punchcard, etc.–that breaks up the single, continuous stream of ones and zeros into rivulets and routes them into–for lack of a better word–different tunnels? One for letters, another for numbers, yet another for pixels, and so on?
I can’t make do with just the information that computers speak in ones and zeros because it’s like dumbing down the process human communication to the mere fact of relying on an alphabet.
In: 264
It’s a little above an ELI5, but this is perhaps the easiest ‘computer architecture’ course on YouTube:
It starts from ‘this is how a simple one-chip timer circuit works’,, expands that into a ‘simple computer clock’, and then goes through each part of the entire design process from +5v to running actual code.
The short answer to your question is a combination of good design and good timing. For any set of data bits in a computer, there’s another set of address bits that references them. So it’s not that the computer knows that a given set of bits is a pixel, it’s that when it calls for the bits that belong to that pixel’s address, those bits come up.
And the address is coded somewhere else in memory, which in turn has an address and set of instructions associated with it, and you can work backwards like so until you get to the very first bit the computer can ‘recognize’, the power button.
The term ‘booting up’ a computer comes from word ‘bootstrap’ which comes from the old saying ‘lift one’s self up by one’s bootstraps’, an impossible thing to do.
The first ‘bit’ is power = on. That goes to a simple circuit that starts distributing power and turns on a slightly more complex set of instructions that do various tasks, and turn on even more complicated instructions, and so on and so on.
All of this is done by synchronizing each subsystem to a centralized clock, and using various control signals to turn chips on and off at the right time so that it can read from the central data bus that shuttles the bits around.
Latest Answers