LECTURE 2 - COMPUTER HARDWARE
Modern computer design is "one out of many" - could have been different
Computers are just a bunch of switches - may be electric or mechanical
Tinker-toy computer (a working computer that can
play tic-tac-toe built by MIT students in the 1980s out of Tinker-toy components
and turned with a crank
http://www.rci.rutgers.edu/~cfs/472_html/Intro/TinkertoyComputer/TinkerToy.html

Electronic computers use binary counting
Encoding of alphanumeric characters using bytes
00000001 = 1 (base 2 counting)
00001000 = 8 (base 2 counting)
00110001 = 49 base 2 counting, or keyboard "1" (using ASCII code)
01000001 = 65 base 2 counting, or keyboard "A" (using ASCII code)
ASCII CODE TABLE
http://www.neurophys.wisc.edu/www/comp/docs/ascii.html
![]() |
![]() |
| Basic theory of modern computers developed by Alan Turing | John von Neumann developed a practical physical
architecture for digital computers (1946). All computers today use a
variation of von Neumann architecture http://www.idemployee.id.tue.nl/g.w.m.rauterberg/presentations/HCI-history/tsld007.htm |
Elements of von Neumann computers:
![]() |
![]() |
| von Neumann architecture of a typical personal computer. A clock is connected to a "bus" bundle of wires which causes synchronized flipping of switches inside each component of the computer. | Basic von Neumann memory architecture. Data (program code and data) are stored separately from the primary processors, collected into the "central processing unit" or CPU. Data is relayed back and forth on a "bus". In addition, program code (software) and data are stored separately. |
![]() |
![]() |
| Arrangement of von Neumann design in a Personal Computer (PC) using modern microprocessor components. These components are typically wired together on a single "mainboard" or "motherboard" | von Neumann architecture in a single-chip computer (used in portable computing) |
Types of computers today
![]() |
![]() |
| Mainframe/Mini-mainframe | Supercomputer (1000s of workstation-level PCs together) |
|
|
|
| Desktop workstation (high-performance PC, optimized for business use) | Gamer computer (high-end PC, 3D graphics optimized, power-hungry, needs extra fans to blow off waste heat) |
![]() |
|
| Low-end personal computer (bundled computer/monitor, may use non-windows OS, low-power, ok for web surfing and email) | Media center PC/"set top box" (uses remote instead of keyboard, high-quality audio output, can accept/process video signals from cable, output to TV, VCR, DVD, "search engine" for programs, video on demand, Digital Rights Mangement (DRM), connect to "home network, record television for later viewing) |
![]() |
![]() |
| Notebook computer (same programs as general PC, | Dedicated game console (Xbox 360) |
![]() |
|
| PDA (business use, can't run PC programs, has own OS and programs, pointing stylus, mini-keyboard, sometimes cellphone capacity) | Portable game console (dedicated game graphics, some PDA functions |
![]() |
|
| Single-board computer (equivalent to PC from 10 years ago, no user interface, used to control complex devices, e.g. automobile engines) | Smartphone (cellphone with PDA computer functions and PDA OS, camera, GPS, sensors) |
|
|
|
| Basic cellphone, simple OS, some computer functions, camera | SPOT watch (one-way reception of data, calendar, time functions) |
|
|
|
| Multimedia "gadgets" (IPod) - special-purpose media processing computers | Multimedia "gadgets" (portable DVD player/recorder) - special-purpose media-processing conputers |
|
|
|
| dedicated microprocessor | Microprocessor on circuit board (embedded device like microwaves, parking meters) |
What computer circuits are made of
![]() |
![]() |
| vacuum tubes in early computer | transistor radio |



How ICs are made
Factors controlling speed of ICs
Limits to ICs - estimated "endpoint" ~ 2010
Build your own - Computer components
![]() |
![]() |
![]() |
| CPU - AMD Athlon processor (64-bit) | CPU - Intel Pentium 4 processor (64-bit) | Nvidia GeForce Graphics Card (GPU) |
![]() |
![]() |
![]() |
| AMD 64-bit System Board | Intel "Prescott" System Board 32-bit | Intel 64-bit System Board |
![]() |
![]() |
![]() ![]() |
| Tyan Quad-dual processor system board (total of 8 CPUs) | Types of System memory (RAM) | Flash Memory (MMC, SD, in Thumbdrive) |
![]() |
![]() |
![]() |
| Hard disk inside | Hard disk case | Tiny Hard drive for portables |
![]() |
![]() |
![]() |
| RAID (redundant array of hard disks) | Fan for cooling CPU | Hard drive cooling fan |
![]() |
![]() |
![]() |
| Liquid cooling system for mainboard | Graphic card cooler | Typical computer power supply |
Monitors and display devices
![]() |
![]() |
| CRT (Cathode Ray Tube) monitor | LCD (Liquid-Crystal Display) Monitor |
Connecting computer components
http://www.refurbished-laptops.biz/laptop-ports/
![]() |
![]() |
| Cables - IDE (parallel) for hard drives | Cables - SATA (serial) for hard drives |
![]() ![]() |
![]() ![]() |
| Ethernet cable (compared to phone cable) for Internet connections | USB (Universal Serial Bus) cable (hard disks, thumbdrives, keyboard, mouse) |
![]() ![]() |
![]() ![]() |
| Firewire (I394, digital video, 6 and 4-pin configurations) | PS/2 connector (keyboards, mouse) |
![]() ![]() |
![]() |
| PCMCIA (hard disks, modems, wireless Internet on portables) | IRDa (Infra-red wireless connections for modems, cellphones) |
![]() ![]() |
![]() ![]() |
| Serial port cable (modems, joysticks) | VGA Monitor (most monitors) |
![]() ![]() |
![]() |
| Parallel port cable (inexpensive printers) | S-Video plus audio cables (output signal to television, VCR, DVD) |
| Wifi card installed in PC | |
| Flash memory (thumbdrive) with Bluetooth |
Networking
![]() |
![]() |
| Flash memory (thumbdrive) with Bluetooth | Bluetooth wireless phone headset |
![]() |
![]() |
| WiFi hub | Apple AirPort wireless hub and connector |
![]() |
![]() |
| WiFi PCMIA card (portable) | WiFi card in PC |
COMPUTER SOFTWARE
Programming
The art/science of writing code that, when executed by a computer, will form a useful function
History of programming languages
http://perso.wanadoo.fr/levenez/lang/ \
Brief history of programming languages
http://www.byte.com/art/9509/sec7/art19.htm
Levels of programming for computers
NOTE - each "level" becomes 10-100 times slower than the previous one as writing software is made easier

