CSC103 2008
Contents
CSC 103: How Computers Work
Overview
This course has no prerequisites. It is intended to introduce students to the history, theory and use of digital computers. Students from all majors are welcome - though there is some math and computer programming during the semester, the course is designed assuming students have no previous computer experience. Through the material presented in this course, students will be introduced to:
- A brief history of computers
- Binary numbers, and understanding how and why computers use them
- Logic gates - the basic building blocks of computers
- Javascript programming - which you may find you'll like to use beyond this course!
- A better understanding of how the computer does everything you direct it to do.
- Some important issues about computers in our future
A great number of topics are discussed in this seven week period, with the purpose not to explore any one topic fully or in depth. Rather the purpose is to provide a high level view of how a computer works - from the most fundamental hardware component (the logic gate) through the sophisticated programs we all use every day (such as word processors). Hopefully this first look at all these topics will encourage students to take additional courses in areas that are of most interest.
Schedule
First half of Fall 2008: Sept 4th to Oct. 21st.
Textbook
The Most Complex Machine., by David Eck, A. K. Peters, Natick Ma [1]. This book should be available at the Greycourt bookstore. ( List of Chapters)
Organization, Schedule & Reading
- Week 1:
- General introduction (Chap 1)
- Week 2:
- Binary system, arithmetic, logic gates (Chap 2)
- logic gates, binary adder (Chap 2)
- Week3:
- Building a computer (Chap 5)
- von Neuman architecture
- Von Neuman bottleneck
- CPU, RAM, Secondary Memory
- Case Study: the Suse EEE, and the switch from magnetic to semiconductor storage
- History of computers (Chap 5)
- video "Machine that changed the world"
- Loom, Craig.
- Building a computer (Chap 5)
- Week 4:
- Client/Server architecture. (Chap 10)
- Trends.
- Services.
- Google vs. Microsoft
- Programming: Javascript (Chap 6)
- Client/Server architecture. (Chap 10)
- Week 5:
- Programming: Javascript (Chap 7)
- Programming: Javascript
- Week 6:
- Programming: other languages
- Chapter 4, NP, solvability, towers of hanoi (Chap. 4)
- Week 7:
- Parallel programming (Chap 10)
- SETI@home
- Folding@home
- Parallel programming (Chap 10)
- Week 8:
- Singularity:
- Signs of the Singularity by Vernor Vinge.
- Can Machine Be Conscious?, Christof Koch and Giulio Tononi.
- Singularity: