Projects & Assignments
Due DateAssignment
01/18/2009HW 1 - Operations
01/25/2009HW 2 - Spreadsheets
01/30/2009HW 3 - Spreadsheets II
02/01/2009HW 4 - Parts of a Computer
02/13/2009HW 5 - Hexadecimal, Binary, and ASCII
02/15/2009HW 6 - Two's Complement Numbers
02/18/2009Midterm I Review
02/18/2009MIDTERM EXAM I
02/29/2009HW 7 - Floating Point Numbers
03/19/2009HW 8 - Digital Logic
03/21/2009HW 9 - Logic and Truth Tables
03/24/2009HW 10 - Sum of Products and Karnaugh Maps
03/28/2009Midterm II Review
03/28/2009MIDTERM EXAM II
04/02/2009HW 11 - Information Theory
04/07/2009HW 12 - File Compression
04/11/2009HW 13 - Error Codes
04/16/2009HW 14 - Google Queries
04/23/2009Final Exam Review
05/02/2009FINAL EXAM: 8:00am to 10:30am (Friday)

The study of computer science began when mathematicians first tackled the idea of "computability". They were interested in discovering the limits of human knowledge. In particular, they were interested in the question, "Are there some things that the human mind is incapable of figuring out?" (The more religious mathematicians asked, "Are there some things that only God knows?") They developed all sorts of different models to describe what kinds of things could be computed and what could not. Eventually, they settled on something called the "Turing Machine", which seemed about as sophisticated a model as they could develop. Using the Turing Machine, they were able to prove that there were some problems that even the a sophisticated mathematical model couldn't solve (for instance: Is the answer to this question, "no?").

While this discovery was very titillating for mathematicians, the rest of the world was far more interested in what these "computing machines" could do. Using computers, the Allies cracked the extremely complicated Enigma code used by the Germans during WWII. Soon other applications of computers, such as data storage, statistical analysis, and simulation, became practical (and of course, computer gaming) and an information revolution swept the world.

Today, computer science is a less philosophical field. Computer Scientists still study computation, but they also work in more practical areas, such as software development, computer organization, and systems administration. In this course, we will examine some of the key fields of modern computer science. We will explore the different parts of a computer and how they are organized. We will discuss the ways in which numbers are represented in a computer program. We will briefly discuss programming and explore topics such as data compression.


Syllabus


The syllabus for this course is here.

Other Resources