CS3 Introduction to Computer Systems
David Morgan
Santa Monica College

 

Administrativa
Syllabus

Grade reports

Assignments/due

Submittal folder

Web page
mypage1.html
mypage2.html
mypage3.html
mypage4.html

Information

Get an Account

Class photos
Big snowman
Little snowman

Binary numbers

Number systems

ASCII chart
Foreign "ASCII"
Foreign keyboard

CPU Registers

A CPU instruction

HTML reference
Loops
Linux links

Slide presentations

Shelley textbook
Chapter 1 Intro
Ch 2
Ch3
Ch4
Ch5
Ch6
Ch7
Ch8
Ch9
Ch10
Ch11
Ch12
Ch13
Ch14
Ch15

 



SUMMER 2009
Sec 4043 6:30p-9:40p TTh Rm 203

This Website (http://homepage.smc.edu/morgan_david/)  will be used extensively to communicate with you. Announcements, grade reports, and assignments will be posted here. Please access the website from any SMC computer lab. Alternatively, it can be viewed from an internet-connected browser anywhere. You are responsible for awareness of the information posted here.

Thank you for taking the class - stay curious, have fun. (8/14)

Everything is graded! I think. But check me. - I believe I've graded everything I'm supposed to, including the final Alice program (aerobatics) and last night's test. Results are posted at the "Grade reports" link. I haven't factored those 2 new grades into the average, so no average is shown. The main purpose is to serve as an inventory so you will be aware of what you may be missing. Several of you last night expressed intention to supply missing homework. That's fine but if you do so you must make sure to bring it to my attention on email, otherwise I have no reason to go back and grade anything-- it's all in my rear-view mirror at the moment. I want to turn in final grades to the College by the end of the weekend. Anything you give me will need to beat that deadline. (8/14)

Test - covering Shelley book chapters 9 (networks) and 2 (internet) on Thursday 8/14. Please be sure to bring a scantron form. (8/12)

Future classes - the Marines is a service looking for a few good men and CS41 is a class looking for a few good students. You could take it, now that you've finished our current class, should linux interest you. CS70 isn't looking for anybody; it found them already. But that's another class you could take, if networking interests you. I teach both. If you're tired of classes, computers, or me you could take a different class or the semester off. But you would be welcome in either class of mine if you turned up (Tu eve, Sat aft respectively). (8/12)

Chapter 11 (security) and 13 (languages) slides - posted! (8/12)

Live CDs, from which you can boot an operating system. We booted into Opensolaris last night. Here are many live CDs listed and downloadable, as files to be burned onto a physical CD for booting. Most of them are variants of linux but Opensolaris is there too. It's equally possible technically to create a bootable Windows CD but licensing considerations generally oppose it. People also create bootable USB drives, which have the advantage against CDs of being writable. (8/12)

Grades - updated to include Alice homework, pp410 (clock). (8/12)
Grades - updated to include Alice homework, pp46 (averaging). (8/12)
Grades - updated to include Alice homework, pp41 (hopping animal). (8/12)
Grades - updated to include Alice homework, pp36 (farmer in the dell). (8/9)
Grades - updated to include Alice homework, pp34 (Einstein). (8/9)

Homework due date revision - last night following the break we didn't talk about the Alice program "aerobatics" program assigned below, as we'd intended. Consequently I changed the due date from next Tuesday to next Thursday. I'll talk about the program Tuesday. You may be able to figure it out for yourself by reading about Alice events in chapter 6. The homework program itself is simpler than most of the others you've done. (8/7)

Chapter 9 slides - posted! (8/6)

Homework - events - due Tuesday 8/13
implement the biplane acrobatic airshow as shown in class. There, the flyForward method made the biplane fly forward a short distance whenever the up-arrow key was depressed, and the space key provoked the barrel method to cause a 360-degree sideways barrel roll. Implement those 2 methods. Also implement 3 additional methods: 1) flyRight to cause a right turn when the right arrow key is pressed, 2) flyLeft to cause a left turn when the left arrow key is pressed, and forwardLoop for a 360 backward pitch-over when the Enter key is pressed. Play the engine sound file whenever any of these actions is being executed. Please name your file with "aerobatics" prefix, eg "aerobaticssmith.a2w".
   download starting point file (a "zip" file but Alice can open it directly as-is; a2w's actually are zip's)
   download plane engine sound file (8/6)

Homework and test news
 - Shelley book's network related chapters 9 and 2 will not be separately tested 8/6. Rather they will be included in the final a week later.
 - Here's my code for the clock homework, project 4.10. Model your homework after it if you like. (8/5)

Telephone junction box - on my street corner. The house wires from me an my neighbors on the block all concentrate here. Then they run a couple miles to the "central office" building at Melrose and Crescent Heights. It services the surrounding area of about a 3-mile radius. Your house is similarly served by a junction box somewhere near you. Look for it. If you get DSL service to connect to the internet, it's speed will depend greatly on your distance from the central office.

example of the newer VRAD boxes ("video ready access device") containing fiber end-points for  delivery of TV, phone, internet to surrounding homes:

 

Fibonacci numbers can be the basis for programming movement in the shape of a spiral.

Quiz/test - Shelley book's network related chapters 9 and 2. Will probably have it Thursday 8/6. Thereafter a single week of class remains. (7/31)

Homework- due Thursday 8/6; submit as described in the "Homework details" post below

project 4.1 p 138 (hop);  please name your file with "pp41" prefix, eg pp41smith.a2w
The chapter showed some fancy ways to make things move around (turn method with "as seen by" to make dragon fly around a castle, fibonacci approach to generating a mathematical spiral) but here it's sufficient to make a simple loop in which your animal advances-and-turns, advances-and-turns, over and over enough time to walk around the building.

project 4.6 p 139 (averaging); please name your file with "pp46" prefix, eg pp46smith.a2w
The previous exercise, 4.5, asks you to do something similar using a "for" loop for a set, known, predetermined number of cycles, instead of a "while" loop for an indeterminate, unknown, to-be-determined number of cycles. For reference, here's a solution to 4.5 you could download and examine for comparison (try right-click, then save link/target, it's a zip file named pp45.zip but Alice will be happy to open it even though it's not named "...a2w").

project 4.10 p 140 (clock);   please name your file with "pp410" prefix, eg pp410smith.a2w
I will show my solution in detail next Tuesday.
Here's the code for my solution, which we examined in class, in the form of a pdf (adobe acrobat) file. (8/5)

read Shelley book's network related chapters 9 and 2.

(7/31)


Grades - updated, includes fish/shark. (7/30)

Homework - due Thursday 7/30; submit as described in the "Homework details" post below
project 3.4 p102 (Einstein's formula); please name your file with "pp34" prefix, eg pp34smith.a2w
project 3.6 p102 (Farmer in the Dell); please name your file with "pp36" prefix, eg pp36smith.a2w (7/23)

Alice textbook's example programs found in the various chapters can be downloaded from alice.calvin.edu. Alternatively, to save you the trouble, I downloaded them all. You can get them by
 1. downloading programs individually from alice.calvin.edu directly
 2. downloading and unzipping this 60MB zip file containing the whole set of all the examples from all the chapters
 3. getting them at Santa Monica College from its "titan" server. At an SMC computer (titan is not accessible from outside), in the Start/Run box enter \\titan\data\morgan_david. There you will see a folder titled "alicebook." Copy it or its contents to any storage device you wish (e.g, a USB drive) on your local computer (the computer you're at).
Either of the last 2 methods give you the same thing. (7/23)

Starter shells - for certain of the programs from the textbook that we examined in class, in case you want to experiment with them. They are the programs scenes with the code removed (which saves you having to set up the scenes). The following 3 can be found in this zip file:
 Computer hypotenuse
 Sing Old MacDonald
 Jumping Fish
Unzip the file to extract the individual Alice programs. Then you can practice putting the code into them (which for the most part is shown the textbook). This is a tool for your optional use if you think it helpful. (7/23)

Homework details -
name of file to submit - prefix your lastname exactly as rendered here with "pp23" ("programming project 2.3" as the book calls it). Alice program files have filename extension "a2w" so you would name your file

   pp23smith.a2w

if your last name were Smith. Please use lowercase letters only. If you mess up the name (i.e., name it anything different) it will mess up my auto-grading method and very possibly your grade. So please name it right. It's easy.
a starter shell (to be downloaded, not "opened") - populated with the fishes, but lacking code to make anything happen. For your optional use. If you utilize it, of course, change the name of the file eventually before submitting it so as to conform with the above filename requirements.
how/where to submit - use ftp to submit to sputnik.dmorgan.us. I will demonstrate how to do it in class 7/21.
You can view an example of the finished-product behavior that the project asks you to produce.  (7/20)

Grades - have been posted, up-to-date to the best of my knowledge. Please call my attention to any anomalies or problems. I used an ID number for you that I derived from your telephone number. Namely, the last 2 digits out of the 3-digit exchange followed the first 3 out of the 4-digit number. So if your phone number is 632-8195, for example, it's 32819. The phone number I used is the one SMC gave me for you, on the class roster. Please look yourself up accordingly, at the link entitled "Grade reports" at left. (7/20)

Homework - will be due Thursday 7/23
project 2.3 p 63 (making fish swim)
details about what to name your file, and where to submit it, forthcoming later
work on it over the weekend and on Tuesday 7/21 we'll spend part of the time as a class in the lab where you can work out problems with help from each other or me. (7/16)

Homework -
read the chapters in the Alice book as we cover them (7/16)

Lost and found - a black Kingston USB drive left last night in a computer on the west side of the room, 3rd row. I put it aside at school and will return it on request. (7/15)

Test date - Thursday, 7/16. Please bring a scantron form 882. (7/15)

Test - will cover chapters 1 through 7 except 2, multiple-choice. Date to be announced soon. Please bring a scantron form 882. (7/7)

Homework - take 2 practice, online tests at the textbook website and turn in printouts. Do so for chapters 5 and 6 (just as you did previously for 1 and 4).
turn in your printout Thursday 7/9. Late work not accepted. (7/7)

Alice homework - explore Alice either on your own computer or in room B231 (the computer lab across from our classroom). To install it on your computer, visit www.alice.org and download. To use it in the lab please see  these instructions. If you use it there, your work will end up in files there. Since you don't control the lab computers, you want to transfer your work to another location (a usb flash drive for example) so you can keep it, to use or turn in later for example.
Once you have it running, work through the 4 tutorials. Read the first chapter in the Alice textbook for guidance about installing, locating tutorials, and other aspects of familiarization with the Alice environment. (7/7)

July 4 special - technology firsts and U.S. presidents
 train - Andrew Jackson  first prez to ride one
 typewriter - invented 1829, Jackson's term. Did he take one on the train like a laptop on a plane?
 telephone - Rutherford B. Hayes, White House installation, Alexander Graham Bell participated
 electricity - Benjamin Harrison first had it installed in the White House (1891)
  but he and his wife didn't use the light switches for fear of electrocution
 automobile - William McKinley first prez to ride one
 airplane - Theodore Roosevelt first prez to fly (1910)
 radio - Warren G. Harding gave the first presidential address by radio (1922)
 television - Franklin Roosevelt first to appear on TV (1939)
 computers - Jimmy Carter had the White House computerized
 email - George H.W. Bush used it as president first (1992). Clinton, W abstained in office.
 web site - Bill Clinton had the first White House website established (1994)
 blackberry - Barak Obama first to insist on using one. Does he use linux? (7/4)
 

Apollo 11 on-board computer.
Buzz Aldrin does hip-hop. But can he do the moonwalk??

Low-end mini 1985 - RX405 by Rexon Business Machines, Culver City. (6/30)

Homework - take 2 practice, online tests at the textbook website and turn in printouts.
1. create an account for yourself using your name exactly as rendered here, then log in.
2. choose chapter 1 from the table of contents, then "Practice Test" link in the lefthand column.
3. answer the questions and then press the "Grade Test" button.
4. then repeat for chapter 4 also.
5. choose the "Gradebook" link from the horizontal menu across the top to view the grades.
6. print by pressing the "Print" button, producing a result like this making sure both chapter test results are visible.
7. turn in your printout Thursday 7/2. Late work not accepted. (6/30)

How many computer languages are there?

Alice homework - explore Alice either on your own computer or in room B231 (the computer lab across from our classroom). To install it on your computer, visit www.alice.org and download. To use it in the lab please see  these instructions. If you use it there, your work will end up in files there. Since you don't control the lab computers, you want to transfer your work to another location (a usb flash drive for example) so you can keep it, to use or turn in later for example.
Once you have it running, work through the 4 tutorials. Read the first chapter in the Alice textbook for guidance about installing, locating tutorials, and other aspects of familiarization with the Alice environment. (6/23)

Homework - complete reading of chapters 1, 4, 5, 6 and 7 which we cover in class, as well as 3, which we do not. Also, review the links concerning binary numbers, ascii code, and CPU instructions. See respectively the links in the left column entitled "Binary numbers," "ASCII chart" and "Foreign 'ASCII'," and "A CPU instruction." Be able to translate small numbers between their decimal and binary representations, and back. See the bottom of "Binary numbers" for the chart of the 16 numbers of interest. There is a stupid and a smart way to be able to translate: memorize the chart or learn how it works. (6/27)

Binary and other ways of counting - please read the material at the links (below left) entitled "Binary numbers" and "Number systems" (6/23)

Binary clock - this clock is kind of interesting. (6/23)

ASCII code for representing letters and other symbols
Here are a couple of good links showing the exact bit/switch setting patterns for the symbols:
- http://www.pcguide.com/res/tablesASCII-c.html
- http://en.wikipedia.org/wiki/ASCII

Homework - is to read the textbook (identified in the syllabus, link at left). In this first week begin reading the first chapters in the Shelley book, as we cover them in class. Chapter1 (intro) and 4 (hardware in the system unit), which we cover in class. Also read Chapter 3 (application software) on your own, which we have not covered. Defer Chapter 2 (internet) till later, when we'll cover it together with Chapter9 (networks) with which it closely relates. (6/23)

Discovering Computers website - the publishers maintain a website for our textbook. (6/23)

 

"What hath God wrought?"
May 24, 1844

"Mr. Watson come here, I want to see you."
March 10, 1876

"lo"
October 29, 1969