Computers and Programming
• Look at the organization of computers.
• Discuss computer software and compiling and executing programs.
• Introduce the programming language Java.
Computers do not speak English. Instead, they have a rather peculiar communi-
cation system involving electric signals carried through silicon, etched using
acids and electric current. Despite this rather alien and complex nature, humans
still manage to create incredibly useful virtual tools using computers. (A hammer
is real. A spreadsheet is virtual. You will not be able to pick up and hold anything
that you learn how to build during your introductory programming course or, in
fact, during your entire career as a programmer.)
A program is a set of instructions for a computer to follow. Over half a cen-
tury ago, the first computer programs were created rather tediously, by plugging
wires into sockets in intricate patterns. Flashing lights were used to indicate
results. In the first programming courses, students would write a program on
“paper tape” or “punch cards” and then submit the tape or deck of cards for pro-
cessing. A few hours later, or even more, they would see the results of running the
program and get their tape or cards back. Today, programs are created using a
keyboard, or even automatically generated using drawing tools, and executed
immediately. In a few seconds, you see the results. What a difference!
To understand how to build computers, engineering students go back to
basics and think about the patterns of the wires. You do not have to go back that
far, but, as beginning programmers, you will benefit from an understanding of
hardware organization and of how programs and other files are stored and man-
aged. Therefore, in the first section of this chapter, we discuss this topic. The rest