Demystifying Computers

How They Really Work

Osher Lifelong Learning Institute
University of Illinois, Urbana-Champaign

Scott Badman, Instructor

Core Concepts

This course is about the fundamental concepts of computing. Please relax and just try to get as deep an understanding of those concepts as you can, but don't worry about every detail. Please, please let me know as soon as possible if you are felling lost. If you are feeling lost, someone else in the classroom is probably also feeling lost. I can adjust the course's content considerably, to adapt to the needs and desire of the students, and will gladly do so.

Concepts that appear throughout the course in many different ways:

A computer is a machine that does logic.

The fundamental principles that computers use to operate are amazingly simple -- the complexity is only in the implementation.

The isolation of that complexity using layers of abstraction

Maintaining compatibility whenever possible, especially backwards compatibility

The importance of standards and protocols to allow different components to work together

The logical equivalence of hardware and software

Computer engineers are primarily interested in performance, efficiency, and cost.

They will do anything that works, no matter how complicated or arcane for human beings.

However, they have no motivation to make computers more complicated or arcane than necessary.

Top computer engineers who make the important decisions are usually very smart and do a really good job.

If a hardware component fails, make sure it's really the hardware that's failed, and then just replace it.

If any software starts acting really funky, just uninstall it, and then reinstall it.

Always, always, let Microsoft (or Apple, or whoever) automatically apply the latest Operating System updates.

Turn on and use all of Microsoft's (or Apple's, or whoever's) security features.

Almost all danger to your computer comes through the Internet, usually by entering and sending information, or by letting something be installed on your computer.

The fundamentals of computing have stayed remarkably stable since the 1950's, even though computers have become incredibly complex and sophisticated.

How to protect yourself from feeling overwhelmed by technical details and jargon

When it comes to technology, Wikipedia tells all. However, it's easy to get overwhelmed if you pick a topic that is too specific.

Absolutely every statement anyone makes about computers will have an exception (including this statement).

Specific core concepts, usually the topic of a session or part of a session:

The six to ten components in a typical computer

Computer repair is mostly just component replacement.

The definition of "data"

Parallel data transmission versus serial data transmission

The Binary Number System (Base 2) works exactly as the Decimal Number System (Base 10) (or any other number base)

The definition of "computer", along with "data processing", "algorithm", "programming language", and "program"

Simple logic (NOT, AND, OR, XOR (exclusive OR)) and its implementation

The Central Processing Unit implements logic, and therefore arithmetic.

The Central Processing Unit consists of transistors that form simple logic gates.

The four operations that comprise almost all programming

-- assignment, if statements, loops, and input/output

The the two most common ways that programs isolate complexity

-- procedures and objects

The importance of a good algorithm

The relationship of the structure of a program to it's algorithm, which is usually independent of the programming language

Virtual Machines can create a complete computer, in software, on a hardware computer.

Any software program can (in theory at least) be implemented directly on a hardware chip.

The core tasks of an operating system

-- running programs, doing multiple concurrent tasks, managing memory, handling all input/output (including the user interface), and security

The components and data flow in a connection to a peripheral

Most peripherals are special purpose computers, and the communication between them is essentially a computer to computer dialog using a protocol.

The importance of the International Standards Organization's Open Standards Interface Model (ISO/OSI) in allowing the equipment that implements the Internet to work together

The World's two electronic addressing systems: telephone numbers and Internet Protocol (IP) addresses