1.3. Computer hardware architecture — Python for Everybody – Interactive
1.3.
Computer hardware architecture¶
Before we start learning the language we speak to give instructions to
computers to develop software, we need to learn a small amount about how
computers are built. If you were to take apart your computer or cell
phone and look deep inside, you would find the following parts:
The high-level definitions of these parts are as follows:
-
The Central Processing Unit (or CPU) is the part of
the computer that is built to be obsessed with “what is next?” If
your computer is rated at 3.0 Gigahertz, it means that the CPU will
ask “What next?” three billion times per second. You are going to
have to learn how to talk fast to keep up with the CPU. -
The Main Memory is used to store information that
the CPU needs in a hurry. The main memory is nearly as fast as the
CPU. But the information stored in the main memory vanishes when the
computer is turned off. -
The Secondary Memory is also used to store
information, but it is much slower than the main memory. The
advantage of the secondary memory is that it can store information
even when there is no power to the computer. Examples of secondary
memory are disk drives or flash memory (typically found in USB
sticks and portable music players). -
The Input and Output Devices are simply our screen,
keyboard, mouse, microphone, speaker, touchpad, etc. They are all of
the ways we interact with the computer. -
These days, most computers also have a Network
Connection to retrieve information over a network. We can
think of the network as a very slow place to store and retrieve data
that might not always be “up”. So in a sense, the network is a
slower and at times unreliable form of Secondary
Memory.
- Main Memory
- Information stored in the main memory vanishes when the computer is turned off.
- Secondary Memory
- Correct! The secondary memory will hod information without power.
- Central Processing Unit
- Try again! The CPU is what does the computing.
- Input Devices
- Try again! Input devices are other physical hardwares.
Q-1: Which of the following will keep information stored without a power source?
While most of the detail of how these components work is best left to
computer builders, it helps to have some terminology so we can talk
about these different parts as we write our programs.
As a programmer, your job is to use and orchestrate each of these
resources to solve the problem that you need to solve and analyze the
data you get from the solution. As a programmer you will mostly be
“talking” to the CPU and telling it what to do next. Sometimes you will
tell the CPU to use the main memory, secondary memory, network, or the
input/output devices.
You need to be the person who answers the CPU’s “What next?” question.
But it would be very uncomfortable to shrink you down to 5mm tall and
insert you into the computer just so you could issue a command three
billion times per second. So instead, you must write down your
instructions in advance. We call these stored instructions a
program and the act of writing these instructions down
and getting the instructions to be correct programming.
Q-2: A set of stored instructions used to direct your computer’s central processing unit is called a ________.
- Main Memory
- Stores information quickly for the CPU; needs power for storage.
- Secondary Memory
- Stores information slowly; can save information without power.
- Input/Output Devices
- Physical aspects beyond the internal computer.
- Network Connection
- Allows information to be stored on a network; very slow.
- Central Processing Unit
- Does the actual computing and executing of programs in the computer.
Q-3: Match each term with its definition.
How is memory stored?