Difference between revisions of "CSC103 Schedule 2011"

From dftwiki3
Jump to: navigation, search
 
(116 intermediate revisions by the same user not shown)
Line 17: Line 17:
 
Ford Hall, 356.<br />
 
Ford Hall, 356.<br />
 
Telephone: 3854<br />
 
Telephone: 3854<br />
Office hours TBA, and by appointments
+
Office Hours: M:4-5, T3-4, W3-4, and my appointment
 
|}
 
|}
  
Line 23: Line 23:
  
 
=Weekly Schedule=
 
=Weekly Schedule=
<onlysmith>
+
 
{| style="width:100%" border="1"
 
{| style="width:100%" border="1"
 
|- style="background:#ffdead;"
 
|- style="background:#ffdead;"
Line 33: Line 33:
 
|width="60%"|
 
|width="60%"|
  
* '''Monday''': Introduction to the semester
+
* '''Monday''':
* '''Wednesday''':  
+
** Introduction to the semester
 +
** Overview
 +
** <font color="magenta">Binary System</font>
 +
** The <font color="magenta">Transistor</font>
 +
* '''Wednesday'''  
 +
** Quick review
 +
** <font color="magenta">George Boole</font> (1779-1848)
 +
** Logic, logic expression = boolean expression
 +
** <font color="magenta">Any complicated logic expression can be expressed with only 3 operators: AND, OR, and NOT</font>
 +
** <font color="magenta">Shannon</font> (1916-2001), in 1948 writes a Master's thesis at MIT: <font color="magenta">Any binary numerical computation can be performed using logic expressions, and logic operators</font>
 +
** Verify that we can add in binary.
 +
** Therefore we should be able to <font color="magenta">add</font> using AND, OR, and NOT.
 +
** This creates a <font color="magenta">need</font> for electrical circuits that implement the 3 boolean operators
 +
** <font color="magenta">Logic Gates</font>: NOT, AND, OR
 +
** Truth tables and verification of rules of addition
 
----
 
----
* [[CSC270_Lab_1 | Lab #1 ]]
+
----
 +
* [[CSC103 2011 Homework 1 | Homework #1 ]]
  
 
||
 
||
*
+
* Read Chapter 1 of the textbook.  Skip Section 1.3 and up.
 
<!-- ================================================================== -->
 
<!-- ================================================================== -->
 
|- style="background:#eeeeff" valign="top"
 
|- style="background:#eeeeff" valign="top"
Line 45: Line 60:
 
||  
 
||  
 
* '''Monday'''
 
* '''Monday'''
 +
 +
** Two-bit adder (verify the equations with [[CS103 TruthTableAdder| this exercise]]
 +
** Logic Gates
 +
** [https://docs.google.com/viewer?url=http://cs.smith.edu/~thiebaut/classes/270/datasheets/sn74ls08rev5.pdf Data sheet] for the AND gate.
 +
** Logic Design
 +
** Simulator
 +
** <font color="magenta"> '''[[CSC103 2011 Lab #1        | Lab #1]]'''</font> Part 1 only, (and a copy of the [[:Image:CSC103Lab1Working3BitAdder.png | simulator]] courtesy of Debbie S. and her lab partner)
 
* '''Wednesday'''
 
* '''Wednesday'''
 +
[[Image:Calvin snow.jpg|150px|right]]
 +
** Snow Day!
 
----
 
----
*  
+
----
 +
* [[CSC103_Lab_1_2011        | Lab #1]]
 +
 
 
||  
 
||  
*  
+
* Read Chapters 2 and 3
 +
<!-- ================================================================== -->
 +
<!-- ================================================================== -->
 
<!-- ================================================================== -->
 
<!-- ================================================================== -->
 
|- style="background:#ffffff" valign="top"
 
|- style="background:#ffffff" valign="top"
 
| Week 3 <br /> 2/7
 
| Week 3 <br /> 2/7
 
||  
 
||  
* '''Monday'''
+
; '''Monday'''
* '''Wednesday'''
+
[[Image:CSC103PcDemolitionLab.jpg|150px|right]]
 +
[[Image:Processor_die.jpg | right | thumb | 100px]]
 +
[[Image:CSC103 Conversation.jpg | thumb | 150px ]]
 +
* PC Lab: "Take apart a PC"
 +
* [http://www.facebook.com/pages/Computer-Science-Smith-College/264041891883 Photos of the event] on Facebook
 +
; '''Wednesday'''
 +
* Review of WikiMedia editing
 +
* Review of demolition lab
 +
** What did we learn?
 +
** Wiki report of the lab
 +
** [[CSC103_Numbers_Game | A game of numbers]]
 +
**[http://www.wolframalpha.com/input/?i=3000000000+seconds WolframAlpha]: How long is 3,000,000,000 seconds?
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
 
 +
----
 
----
 
----
*  
+
* [[CSC103 2011 Homework 2 | Homework #2 ]]
 +
* [[CSC103_Lab_2_2011        | Lab #2]]
 
||  
 
||  
*  
+
Please watch the following videos before the lab on 2/7!
 +
* [http://www.videojug.com/film/what-components-are-inside-my-computer Video] on PC
 +
* [http://www.youtube.com/watch?v=L0nbo1VOF4M Video] on Hard Drive
 +
* [http://www.youtube.com/watch?v=kCqpxapCsNU Video] on CDRom
 +
* [http://www.youtube.com/watch?v=vGXFfFNQqNk Animation] on CDRom
 +
* Concentrate on Sections 3.2 and 3.4 in the book.
 +
<!-- ================================================================== -->
 +
<!-- ================================================================== -->
 
<!-- ================================================================== -->
 
<!-- ================================================================== -->
 
|- style="background:#eeeeff" valign="top"
 
|- style="background:#eeeeff" valign="top"
Line 65: Line 125:
 
||  
 
||  
 
* '''Monday'''
 
* '''Monday'''
 +
** assembly language
 +
*** Computer  [http://maven.smith.edu/~thiebaut/classes/103/applets.htm Simulator]
 +
***[http://math.hws.edu/TMCM/java/labs/xComputerLab1.html A good introduction] to the xComputer Applet.
 +
***[[CSC103_Basic_Instructions | Basic processor instructions]]
 +
***[[CSC103_Assembly_Program_1 | A first program]]
 +
***[[CSC103_Assembly_Program_2 | A second program]]
 
* '''Wednesday'''
 
* '''Wednesday'''
 +
[[Image:CSC103PCDemolitionMovie.png|right|150px|link=http://www.smith.edu/news/2010-11/camcam-computers-172.php]]
 +
** [http://www.smith.edu/news/2010-11/camcam-computers-172.php Something fun!]
 +
[[Image:CSC103ExecutionOfAnInstruction.png|right|100px]]
 +
** Execution of an instruction ([[Media:ExecutionOfInstruction.pdf|pdf]])
 +
*** ''LOD-C 1''
 +
::::<font color="magenta">Exercise 1:</font> initialize the contents of several variables to 0
 +
*** ''LOD 10''
 +
::::<font color="magenta">Exercise 2:</font> increment a counter
 +
::::<font color="magenta">Exercise 3:</font> compute sum of 3 variables
 +
 +
*** ''LOD-I 10/STO-I 10''
 +
::::<font color="magenta">Exercise 4:</font> create an index and use it to sum up the same 3 variables
 +
** Loops (infinite loop)
 +
*** ''JMP'' instruction and '''labels'''
 +
::::<font color="magenta">Exercise 5:</font> create an infinite loop (incrementing a variable, for example)
 +
::::<font color="magenta">Exercise 6:</font> create an infinite loop that clears the memory starting at 10
 +
::::<font color="magenta">Exercise 7:</font> why does the program of Exercise 6 stop?
 +
** Controlled Loops
 +
*** ''JMZ''
 +
::::<font color="magenta">Exercise 8:</font> write a loop that loops 10 times (use a counter)
 +
::::<font color="magenta">Exercise 9:</font> write a loop that stores 55 in the memory locations between 15 and 30
 +
** [[CSC231_Homework_9_Solution_2010| Example]] of a real assembly language program
 +
** [http://www.pcguide.com/res/tablesASCII-c.html ASCII Table]: even characters are stored in computers as numbers!
 +
** [[CSC103 Assembly Language Exercises and Solutions| Solution to exercises]]
 
----
 
----
*  
+
* [[CSC103 2011 Lab 3| Lab #3]]
 +
* [[CSC103_2011_Homework_3 | Homework #3]] and [[CSC103_2011_Homework_3_Solution | Solution Programs]] <font color="magenta">'''&lt;=== NEW'''</font>
 
||  
 
||  
*  
+
* Concentrate on Sections 3.2 and 3.4 in the textbook.
 +
* Read [http://math.hws.edu/TMCM/java/labs/xComputerLab1.html the introduction] to the xComputer Applet.
 +
* Start reading the papers on the ''Singularity'' which we will discuss the last day of class:
 +
** [http://cs.smith.edu/~thiebaut/research/singularity/ieee_spectrum__signs_of_the_singularity.pdf Signs of the Singularity] by Vernor Vinge.
 +
** [http://cs.smith.edu/~thiebaut/research/singularity/ieee_spectrum__can_machines_be_conscious.pdf Can Machine Be Conscious?], Christof Koch and Giulio Tononi.
 +
 
 +
<!-- ================================================================== -->
 +
<!-- ================================================================== -->
 
<!-- ================================================================== -->
 
<!-- ================================================================== -->
 
|- style="background:#ffffff" valign="top"
 
|- style="background:#ffffff" valign="top"
Line 75: Line 173:
 
||  
 
||  
 
* '''Monday'''
 
* '''Monday'''
 +
** Our JavaScript editor: http://htmledit.squarefree.com/
 +
** Elements of a Web page: the &lt;html&gt;, &lt;body&gt;, and &lt;h1&gt; tags
 +
** Creating a Web page and loading it up in a browser
 +
** HTML links: &lt;a href="http://www.smith.edu"&gt;Smith College&lt;/a&gt;
 +
** javascript
 +
*** printing ''strings''
 +
*** comments
 +
*** variables
 +
*** displaying the contents of variables
 +
*** concatenating strings and variables
 +
*** computing with variables
 +
*** loops
 +
** First part of [[CSC103 Lab 4 2011 | Lab #4]] on Javascript: creating a javascript program, and running it.
 
* '''Wednesday''': <font color="magenta">'''Rally Day'''</font>
 
* '''Wednesday''': <font color="magenta">'''Rally Day'''</font>
 +
<br>
 +
<center>[[Image:RallyDay2011.png|200px]]</center>
 +
 +
<br />
 
----
 
----
*  
+
----
 +
* [[CSC103 Lab 4 2011 | Lab #4]] (first part)
 +
* NO HOMEWORK this week
 
||  
 
||  
*  
+
* Read Chapters 6 and 7
 +
<!-- ================================================================== -->
 +
<!-- ================================================================== -->
 
<!-- ================================================================== -->
 
<!-- ================================================================== -->
 
|- style="background:#eeeeff" valign="top"
 
|- style="background:#eeeeff" valign="top"
Line 85: Line 204:
 
||  
 
||  
 
* '''Monday'''
 
* '''Monday'''
* '''Wednesday'''
+
** Javascript
 +
*** Review
 +
*** A case study: the [[CSC103 Towers of Hanoi in Javascript|Towers of Hanoi]]
 +
**  [[CSC103 Lab 4 2011 | Lab #4]]: '' Do Sections 1.3, and 2.  Do all the subsections of Section 2''.
 +
*'''Wednesday'''
 +
[[Image:GrierVideo.png|right|200px|link=http://www.youtube.com/profile?user=ComputerHistory#p/search/0/YwqltwvPnkw]]
 +
** Q&A on Javascript
 +
** A look at the history of computing: two different dimensions
 +
** [http://www.youtube.com/profile?user=ComputerHistory#p/c/C2FA7B2C8E5FF1D2/4/KBuJqUfO4-w Babbage] and his Difference Engine #2, 1840's
 +
** [http://www.youtube.com/watch?v=NbhbssXWDAE&feature=relateds BBC's History of computers] Part I.
 +
** [http://www.youtube.com/profile?user=ComputerHistory#p/search/0/YwqltwvPnkw When Computers were Human], by Prof. Grier, 2007. (first 44min 44sec).
 +
** Some questions to start a discussion
 +
*** In the Babbage video, did you hear any expressions mentioned in the videos that has stuck throughout the times? 
 +
*** What attributes are given to Babbage's computer that are still debated today?
 +
*** What similarity between Babbage's engine and  today's computers? 
 +
*** What are the key players in the history of computers?
 +
*** "Computers" is a vague term, in fact. What particular computer "products" seem to mark the evolution of computers?
 +
*** What companies have influenced the PC industry?  How active are they today?
 +
*** Grier video: What is the importance of Halley's comet?
 +
*** At some point there is a graph showing humans as part of a graph.  Most cost effective (cheap) option for computations.  Have you heard of Amazon's "Mechanical Turk"?  What is it?  How is that related to the video?
 +
*** How are canons connected to the main story?
 +
<br/> ([[CSC103 Questions on Computer History videos|handout]])
 +
* '''Friday'''
 +
** [[CSC103 2011 Take-Home Final Exam| Final Exam]]
 +
----
 
----
 
----
*  
+
* [[CSC103 2011 Homework 4 | Homework #4 ]] <font color="magenta">&lt;=== will due Monday March 7</font> [[CSC103 Homework 4 Solutions | Solutions]]
 +
*  [[CSC103 Lab 4 2011 | Lab #4]] and [[CSC103 Lab 4 Solution 2011 | Solution programs]]
 
||  
 
||  
*  
+
* [[CSC103 2011 Take-Home Final Exam| Take-Home Final Exam]] <font color="magenta">&lt;=== will due Friday March 11</font>
 
<!-- ================================================================== -->
 
<!-- ================================================================== -->
 
|- style="background:#ffffff" valign="top"
 
|- style="background:#ffffff" valign="top"
Line 95: Line 239:
 
||  
 
||  
 
* '''Monday'''
 
* '''Monday'''
 +
** Limits of what computers can and cannot do
 +
** [http://cs.smith.edu/~thiebaut/misc/LimitsOfComputation.pdf Moore's Law and Von Neumann], class presentation on Moore's Law and Von Neumann's architecture. ([http://cs.smith.edu/~thiebaut/misc/LimitsOfComputation_CSC103_Thiebaut.mov Quicktime])
 +
** [[Media:vonNewmannEdvac.pdf | First Draft of a Report on the EDVAC]] by John von Neumann.
 +
** [http://www.nytimes.com/2011/03/01/science/01compute.html?_r=1 Remapping Computer Circuitry to Avert Impending Bottlenecks],  by John Markoff, NYT 3/2/11 ([[Media:RemappingComputerCircuitryNYT030211.pdf | pdf]])
 
* '''Wednesday'''
 
* '''Wednesday'''
 +
** [[CSC103 Quiz 2011 | Quiz]]
 +
** Class discussion: The singularity
 +
<br />
 +
<videoflashright>1uIzS1uCOcE</videoflashright>
 +
<br />
 +
<videoflashright>IfbOyw3CT6A</videoflashright>
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
[[Image:FoodForThought.jpg|right|130px]]
 +
* Food for thought:
 +
** [[Information_about_the_Singularity | Additional articles]] on the issue of the Singularity (including IEEE Spectrum issue on the subject).
 +
** [http://www.ted.com/talks/susan_blackmore_on_memes_and_temes.html Susan Blackmore's] TED talk on Memes and Temes.
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
 
----
 
----
*  
+
* [[CSC103 2011 Take-Home Final Exam| Final Exam]]
 +
 
 
||  
 
||  
*  
+
* [http://cs.smith.edu/~thiebaut/research/singularity/ieee_spectrum__signs_of_the_singularity.pdf Signs of the Singularity] by Vernor Vinge.
 +
* [http://cs.smith.edu/~thiebaut/research/singularity/ieee_spectrum__can_machines_be_conscious.pdf Can Machine Be Conscious?], Christof Koch and Giulio Tononi.
 +
 
 
<!-- ================================================================== -->
 
<!-- ================================================================== -->
 
|- style="background:#ffeecc" valign="top"
 
|- style="background:#ffeecc" valign="top"
Line 112: Line 305:
 
=Wiki pages=
 
=Wiki pages=
  
Click  [http://tango.csc.smith.edu/classwiki/index.php/CSC103_Page here] to access the class Wiki pages.
+
Click  [http://cs.smith.edu/classwiki/index.php/CSC103_Page_2011 here] to access the class Wiki pages.
  
 
=Additional Resources=
 
=Additional Resources=
Line 120: Line 313:
 
* Javascript Resources
 
* Javascript Resources
 
** [http://www.w3schools.com/js/js_examples.asp Tutorials and examples] of Javascript code.  Type in the code and see its effect directly on the same page.
 
** [http://www.w3schools.com/js/js_examples.asp Tutorials and examples] of Javascript code.  Type in the code and see its effect directly on the same page.
 +
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
[[Category:CSC103]]

Latest revision as of 09:01, 22 April 2011

--D. Thiebaut 08:44, 7 January 2011 (EST)


Back to Main Page for CSC103


Prof

Dominique Thiébaut email
Dept. Computer Science
Ford Hall, 356.
Telephone: 3854
Office Hours: M:4-5, T3-4, W3-4, and my appointment


Weekly Schedule

Week Topics Reading
Week 1
1/24
  • Monday:
    • Introduction to the semester
    • Overview
    • Binary System
    • The Transistor
  • Wednesday
    • Quick review
    • George Boole (1779-1848)
    • Logic, logic expression = boolean expression
    • Any complicated logic expression can be expressed with only 3 operators: AND, OR, and NOT
    • Shannon (1916-2001), in 1948 writes a Master's thesis at MIT: Any binary numerical computation can be performed using logic expressions, and logic operators
    • Verify that we can add in binary.
    • Therefore we should be able to add using AND, OR, and NOT.
    • This creates a need for electrical circuits that implement the 3 boolean operators
    • Logic Gates: NOT, AND, OR
    • Truth tables and verification of rules of addition


  • Read Chapter 1 of the textbook. Skip Section 1.3 and up.
Week 2
1/31
  • Monday
    • Two-bit adder (verify the equations with this exercise
    • Logic Gates
    • Data sheet for the AND gate.
    • Logic Design
    • Simulator
    • Lab #1 Part 1 only, (and a copy of the simulator courtesy of Debbie S. and her lab partner)
  • Wednesday
Calvin snow.jpg
    • Snow Day!


  • Read Chapters 2 and 3
Week 3
2/7
Monday
CSC103PcDemolitionLab.jpg
Processor die.jpg
CSC103 Conversation.jpg
Wednesday
  • Review of WikiMedia editing
  • Review of demolition lab














Please watch the following videos before the lab on 2/7!

Week 4
2/14
CSC103PCDemolitionMovie.png
CSC103ExecutionOfAnInstruction.png
    • Execution of an instruction (pdf)
      • LOD-C 1
Exercise 1: initialize the contents of several variables to 0
      • LOD 10
Exercise 2: increment a counter
Exercise 3: compute sum of 3 variables
      • LOD-I 10/STO-I 10
Exercise 4: create an index and use it to sum up the same 3 variables
    • Loops (infinite loop)
      • JMP instruction and labels
Exercise 5: create an infinite loop (incrementing a variable, for example)
Exercise 6: create an infinite loop that clears the memory starting at 10
Exercise 7: why does the program of Exercise 6 stop?
    • Controlled Loops
      • JMZ
Exercise 8: write a loop that loops 10 times (use a counter)
Exercise 9: write a loop that stores 55 in the memory locations between 15 and 30

Week 5
2/21
  • Monday
    • Our JavaScript editor: http://htmledit.squarefree.com/
    • Elements of a Web page: the <html>, <body>, and <h1> tags
    • Creating a Web page and loading it up in a browser
    • HTML links: <a href="http://www.smith.edu">Smith College</a>
    • javascript
      • printing strings
      • comments
      • variables
      • displaying the contents of variables
      • concatenating strings and variables
      • computing with variables
      • loops
    • First part of Lab #4 on Javascript: creating a javascript program, and running it.
  • Wednesday: Rally Day


RallyDay2011.png




  • Lab #4 (first part)
  • NO HOMEWORK this week
  • Read Chapters 6 and 7
Week 6
2/28
  • Monday
    • Javascript
    • Lab #4: Do Sections 1.3, and 2. Do all the subsections of Section 2.
  • Wednesday
GrierVideo.png
    • Q&A on Javascript
    • A look at the history of computing: two different dimensions
    • Babbage and his Difference Engine #2, 1840's
    • BBC's History of computers Part I.
    • When Computers were Human, by Prof. Grier, 2007. (first 44min 44sec).
    • Some questions to start a discussion
      • In the Babbage video, did you hear any expressions mentioned in the videos that has stuck throughout the times?
      • What attributes are given to Babbage's computer that are still debated today?
      • What similarity between Babbage's engine and today's computers?
      • What are the key players in the history of computers?
      • "Computers" is a vague term, in fact. What particular computer "products" seem to mark the evolution of computers?
      • What companies have influenced the PC industry? How active are they today?
      • Grier video: What is the importance of Halley's comet?
      • At some point there is a graph showing humans as part of a graph. Most cost effective (cheap) option for computations. Have you heard of Amazon's "Mechanical Turk"? What is it? How is that related to the video?
      • How are canons connected to the main story?


(handout)



Week 7
3/7























FoodForThought.jpg













Week 8
3/14
DancingCalving.gif

 

Wiki pages

Click here to access the class Wiki pages.

Additional Resources