Basic Computer Architecture
By Stephen Bucaro
Understanding computers, or anything else for that matter, requires an understanding of
the basics. I've searched the Internet for an article that explains computer architecture
in simple basic terms. All I could find are explanations that were far too complicated. So
in this article I explain basic computer architecture in simple basic terms. If you know
anything about computers, don't read this article, because I don't want to insult your intelligence.
Computers today, even that PC on your desk are unbelievably complex. This complexity
makes it difficult to explain them without saying anything that is absolutely true. For
example, I could say that your keyboard is an input device and your computer screen is an
output device. But what about a touch screen? A touch screen is both an input device and
an output device.
I could explain that the controller has a processor and memory. But most of today's
peripherals also have processors and memory of their own. In other words, your keyboard is
a computer on its own.
So, in order to explain basic computer architecture in an understandable way, I'm going
to have to describe a fictitious computer that doesn't really exist, at least not in the
last 30 years. Then, when I go into deeper detail later, you'll realize that everything
that I said in the beginning was untrue.
The first thing to understand is that a computer consists of hardware and software.
Hardware is the physical, mechanical part of the computer. If you take a part of the
computer and whack yourself in the head with it, and it hurts, it's hardware.
Software is the instructions that a computer follows. If you have an instruction in
your mind, for example, an instruction for your child to wear their coat when they go
outside, the instruction itself has no physical or mechanical existence.
Your head is not the instruction. The coat is not the instruction. Your child is not
the instruction. You can write the instruction on a piece of paper. The piece of paper
then becomes a storage media for the instruction, but it's not the actual instruction itself.
The next thing to understand is that computers use many kinds of storage media.
Storage media can be divided into two general types; "volatile" and "nonvolatile" memory.
Volatile memory forgets everything when you turn the power off. Nonvolatile memory
remembers everything permanently.
Nonvolatile memory, like tape storage, is sequential. You have to read a tape in
sequence to access the data that you're looking for. Volatile memory is usually referred
to as RAM, for Random Access Memory. With RAM you can go directly to the data your looking
for. Today we have all kinds of nonvolatile RAM, so using using the term RAM for volatile
memory is a misnomer.
Looking at the diagram above, you see that at the center of the computer is the
processor. Another name for the processor is the CPU, for Central Processing Unit.
The CPU is considered to be the "brains" of the computer. It basically reads instructions
and data from memory and processes the data according to the instructions, and then
stores the results back in memory.