Difference between revisions of "CSC103 Weekly Schedule Spring 2012"

From dftwiki3
Jump to: navigation, search
(Weekly Schedule)
 
(89 intermediate revisions by the same user not shown)
Line 2: Line 2:
 
<center> [http://cs.smith.edu/classwiki/index.php/CSC103_Page_2012 Wikis] |  [[CSC103 Weekly Schedule 2012 | Weekly Schedule]] | [[CSC103_2012 | Main Page]] </center>
 
<center> [http://cs.smith.edu/classwiki/index.php/CSC103_Page_2012 Wikis] |  [[CSC103 Weekly Schedule 2012 | Weekly Schedule]] | [[CSC103_2012 | Main Page]] </center>
  
 +
<br />
 +
'''Office Hours:''' M 1:10-3:00 p.m., W 4:00-6:00 p.m.
 +
<br />
 +
<br />
 +
=Weekly Schedule=
  
=Weekly Schedule=
 
  
 
{| style="width:100%" border="1"
 
{| style="width:100%" border="1"
Line 41: Line 45:
 
<br />
 
<br />
 
* '''Wednesday'''  
 
* '''Wednesday'''  
 +
** Review of the binary system
 +
** [[CSC103 Exercises on Binary System and Boolean Logic | Exercises]] on binary (and other) systems and Logic
 +
** <font color="magenta">George Boole</font> (1779-1848): logic expression = boolean expression.  Logic: creating formulas where variables are combined by operators.  The variables are ''boolean'' variables, the operators are ''logic operators''.  Any formula can be represented with a combination of just three operators: '''AND''', '''OR''', and '''NOT'''.
 +
** <font color="magenta">Claude Shannon</font> (1916-2001): writes a Master's thesis at MIT in 1948, which states that any binary numerical computation can be performed using logic expressions and logic operators.
 +
 
----
 
----
*   
+
[[CSC103 Homework 1 2012| Homework #1]]
 
||
 
||
 
* Reading
 
* Reading
Line 51: Line 60:
 
***[http://knol.google.com/k/counting-in-binary-for-beginners# Counting in binary for beginners]
 
***[http://knol.google.com/k/counting-in-binary-for-beginners# Counting in binary for beginners]
 
** Secondary:
 
** Secondary:
 +
** [[CSC103:_DT%27s_Notes_1 | DT's Notes]]
 
<!-- ** [[CSC103: DT's Notes 1 | DT's Notes]] -->
 
<!-- ** [[CSC103: DT's Notes 1 | DT's Notes]] -->
 
<!-- ================================================================== -->
 
<!-- ================================================================== -->
Line 57: Line 67:
 
||
 
||
 
* '''Monday'''
 
* '''Monday'''
 +
** we stopped last week at Shannon's Master's Thesis (MIT). 
 +
** building a 2-bit adder with logic gates.
 +
** Two-bit adder (verify the equations with [[CS103 TruthTableAdder| this exercise]]
 +
** Logic Gates
 +
** [http://cs.smith.edu/~thiebaut/classes/270/datasheets/sn74ls08rev5.pdf Data sheet] for the AND gate.
 +
** [http://maven.smith.edu/~thiebaut/classes/270/datasheets/sn74ls04rev5.pdf Data sheet] for the NOT gate.
 +
** [http://maven.smith.edu/~thiebaut/classes/270/datasheets/sn74ls32rev5.pdf Data sheet] for the OR gate.
 +
** Logic Design
 +
** Simulator
 +
** <font color="magenta"> '''[[CSC103 Lab #1 2012  | Lab #1]]'''</font>
 +
<br />
 +
<br />
 
* '''Wednesday'''  
 
* '''Wednesday'''  
 +
<center>
 +
<videoflash>WVwfDA4watU</videoflash>
 +
</center>
 +
** Schematics from [http://klabs.org/history/ech/agc_schematics/index.htm NASA]
 +
** [[CSC103 Exercise: Functional Description to Logic Design | Exercise]] on Logic Design: a review of the process of going from a description of the function to a circuit.
 +
** Identifying various parts inside a computer.  We want to be able to recognize:
 +
*** The processor
 +
*** The Crystal
 +
*** The Random Access Memory (RAM)
 +
*** The power supply
 +
*** The mother board
 +
*** The hard disk
 +
*** The optical disk (DVD/CD player/burner)
 +
*** The Wiring
 +
*** Various Ports
 +
** Creating a wiki page on the [http://cs.smith.edu/classwiki/index.php/CSC103_Page_2012 ClassWiki] system (owned by the Smith CS Department)
 +
*** headers
 +
*** paragraphs
 +
*** boxes
 +
*** lists (numbered or not)
 +
*** images
 +
*** links to other wiki pages in classwiki
 +
*** links to Web pages
 +
** Warning: Two wikis!
 +
<center>
 +
[[Image:DFTwiki.png|250px]]<br /><br />[[Image:ClassWiki.png|250px]]
 +
</center>
 
----
 
----
*
+
* [[CSC103 Lab #1 2012 | Lab #1]]: Logic Design [[Image:LabLogo.png|50px|right]]
 +
* [[CSC103 Homework #2 2012 | Homework #2]]: Logic Design, and [[CSC103 Homework 2 Solutions 2012| homework solution]].
 
||
 
||
*   
+
Reading:
 +
* Logic Gates on [http://en.wikipedia.org/wiki/Logic_gate wikipedia]: You can skip the Universal Logic Gate section, the De Morgan section, and the remaining sections until the end.
 +
* [http://math.hws.edu/TMCM/java/xLogicCircuits/ A good introduction on the Logic Circuit Simulator] (from [[CSC103 Lab #1 2012 | Lab #1]])
 +
* [http://cs.smith.edu/classwiki/index.php/CSWiki_Howto A "HowTo"] document for creating simple Wiki pages
 +
 
 
<!-- ================================================================== -->
 
<!-- ================================================================== -->
 
|- style="background:#ffffff" valign="top"
 
|- style="background:#ffffff" valign="top"
Line 67: Line 121:
 
||
 
||
  
* '''Monday''': '''Let's Take-Apart a PC ''' lab.  Ford Hall Foyer.
+
* '''Monday''':  
 +
**[[Image:LabLogo.png|50px|right]] [[CSC103 PC Demolition Lab 2012| '''Let's Take-Apart a PC ''' lab]].  Ford Hall Foyer. Pictures can be found [http://www.facebook.com/media/set/?set=a.10150543054626884.380818.264041891883&type=1 on the CS Facebook page]
 +
** How hard disks work:
 +
<center><videoflash>uJKxUPlhvZY</videoflash></center>
 +
** Disassembling a PC:
 +
<center><videoflash>1qwZ4eqToxI</videoflash></center>
 
* '''Wednesday'''  
 
* '''Wednesday'''  
 +
** Microprocessor and Assembly Language
 +
** [[CSC103 A Game of Numbers | Let's play a game]]
 +
** the [http://maven.smith.edu/~thiebaut/classes/103/applets.htm xComputer Simulator]
 +
** the [[CSC103 Basic Instructions| Instruction Set]] for our computer
 +
** [[CSC103 Assembly Program 1 | A first program]]
 +
** [[CSC103 Assembly Program 2 | A second program]]
 +
** Execution of selected instructions ([[Media:CSC103InstructionsBeforeAfter.pdf|pdf]])
 
----
 
----
*
+
* [[CSC103 Homework 3 2012 | Homework #3]] and [[CSC103 Homework3 Solutions, 2012| Solution]]
 
||
 
||
*
+
Reading:
 
+
* [http://math.hws.edu/TMCM/java/labs/xComputerLab1.html A good description of the Computer simulator]
 +
* You will find Wikipedia's [http://en.wikipedia.org/wiki/Central_processing_unit description of the processor] interesting.  Concentrate mostly on the sections labeled '''Microprocessor''', '''Operation''', and '''Clock Rate'''.
 
<!-- ================================================================== -->
 
<!-- ================================================================== -->
 
|- style="background:#eeeeff" valign="top"
 
|- style="background:#eeeeff" valign="top"
Line 79: Line 146:
 
||
 
||
 
* '''Monday'''
 
* '''Monday'''
* '''Wednesday'''  
+
** Execution of selected instructions ([[Media:CSC103InstructionsBeforeAfter.pdf|pdf]])
 +
** [http://www.pcguide.com/res/tablesASCII-c.html ASCII Table]: even characters are stored in computers as numbers!
 +
** [[CSC231 Homework 9 Solution 2010 | Example of a real assembly language program]][[CSC103 Assembly Language Exercises and Solutions|.]]
 +
** Von Neuman
 +
** using [http://www.wolframalpha.com/ wolfram alpha] for calculations
 +
** [[CSC103 Assembly Language Exercises| Exercises]]
 +
** [[CSC103 Assembly Language Lab | Lab]] on Assembly Language
 +
* '''Wednesday'''
 +
** Hot off the presses: [http://www.sciencedaily.com/releases/2012/02/120217145747.htm DNA computing] back in the news
 +
** [http://en.wikipedia.org/wiki/Von_Neumann_architecture von Neumann's bottleneck]
 +
** John von Neumann
 +
*** First video: history of computers, Part 2, narrated by Gordon Bell.  Advance to 37 min 50 sec, on the IAS "chapter".
 +
<center><videoflash>wsirYCAocZk</videoflash><br /><br />
 +
<videoflash>vLbllFHBQM4</videoflash>
 +
</center>
 +
** the von Neumann bottleneck
 +
*** Memory vs. processor.  What do fingernails and football fields have in common?
 +
*** Attempts to circumvent the bottleneck
 +
**** cache memory
 +
**** multicore architectures
 +
<center>[[File:MultiCorePerformance.jpg|300px]]</center>
 
----
 
----
*
+
* [[CSC103 Assembly Language Lab | Assembly Language Lab]] [[Image:LabLogo.png|50px|right]]
 +
* [[CSC103 Homework 4 2012 | Homework 4]] and [[CSC103 Homework 4 solution 2012| Solution program]]
 
||
 
||
*   
+
Reading
 +
** Primary
 +
*** [http://en.wikipedia.org/wiki/John_von_Neumann Jon von Neumann], who first defined the architecture of modern computers.  We are still building computers according to his original unpublished ''draft''
 +
** Secondary
 +
*** von Neumann's [http://cs.smith.edu/dftwiki/images/f/f8/VonNewmannEdvac.pdf ''draft'']
 +
*** [http://www.sciencedaily.com/releases/2012/02/120217145747.htm new research in DNA computing]: we are trying hard to find new ways to perform computation and leave the von Neumann architecture.
 +
*** [[CSC103 Notes on von Neumann's architecture | DT's Notes]]
 
<!-- ================================================================== -->
 
<!-- ================================================================== -->
 
|- style="background:#ffffff" valign="top"
 
|- style="background:#ffffff" valign="top"
Line 89: Line 183:
 
||
 
||
 
* '''Monday'''
 
* '''Monday'''
 +
** Moore's Law
 +
<br /><center>[[Image:MooresLaw.jpg|450px]]</center><br />
 +
** [[Linear vs Log Scale for MIPS | Difference between linear and log scales]]
 +
<br /><center><videoflash>NwVBzx0LMNQ</videoflash></center><br />
 +
** [[Introduction_to_Processing | Introduction to Processing]]
 
* '''Wednesday'''   
 
* '''Wednesday'''   
 +
**[[CSC103 Processing Lab| Processing Lab]] in FH 241
 
----
 
----
*
+
* [[CSC103 Processing Lab| Processing Lab]] and [[CSC103_Processing_Lab#Solutions | Solution sketches]][[CSC103_Processing_Lab | lab]]
 +
* [[CSC103 Homework 5 2012| Homework #5 ]] and [[CSC103 Homework 5 Solution 2012| solution program]]
 
||
 
||
*
+
'''Primary:'''
 
+
* [http://en.wikipedia.org/wiki/Moore's_law Moore's Law] in [http://en.wikipedia.org/ wikipedia]
 +
* [http://en.wikipedia.org/wiki/Programming_language What is a programming language?] on [http://en.wikipedia.org wikipedia]
 +
* [http://hlt.media.mit.edu/dfe_readings/processing.pdf C. Reas, B. Fry, Processing: programming for the media arts, AI & Soc (2006) 20: 526–538]
 +
* [http://processing.org/learning/ The ''Learning'' Processing] page on [http://processing.org processing.org]
 +
<!--*  [http://en.wikipedia.org/wiki/JavaScript#Use_in_web_pages Javascript page] on Wikipedia.  The sections to concentrate on are '''Syntax and Sementics''', and '''Use in Web pages'''.-->
 +
'''Secondary'''
 +
* [http://io9.com/5829403/moores-law-may-soon-be-broken Moore's Law may soon be broken]
 
<!-- ================================================================== -->
 
<!-- ================================================================== -->
 
|- style="background:#eeeeff" valign="top"
 
|- style="background:#eeeeff" valign="top"
 
| Week 6 <br /> 3/5<br />
 
| Week 6 <br /> 3/5<br />
 
||
 
||
 +
 
* '''Monday'''
 
* '''Monday'''
* '''Wednesday'''  
+
** Projects in Processing: Review of the [[CSC103_Processing_Lab#Solutions | solution sketches]] for the last [[CSC103_Processing_Lab | lab]].
 +
** Review of past homework assignment solutions:
 +
*** [[CSC103 Homework 4 solution 2012| Homework #4]]
 +
*** [[CSC103 Homework3 Solutions, 2012| Solution]]
 +
** The Singularity: Introduction ([http://cs.smith.edu/dftwiki/images/SingularityCSC103_2012.pdf pdf])
 +
<br />
 +
<videoflashright>1uIzS1uCOcE</videoflashright>
 +
<br />
 +
<br />
 +
<br />
 +
<videoflashright>IfbOyw3CT6A</videoflashright>
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
* '''Wednesday'''
 +
** [[CSC103 Quiz 2011 | Quiz]] on two papers
 +
** Class discussion: The singularity[[CSC103 Questions for Discussion on Singularity|.]]
 +
** Hod Lipson
 +
** ''Hard'' Computer Problems
 +
** ''Hard'' Computer Problems. Example "Towers of Hanoi" and [http://www.animatedrecursion.com/intermediate/towersofhanoi.html applet] (this [http://www.online-stopwatch.com/ stop-watch] can be useful to time the execution of the program).
 +
[[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 Take-Home Final Exam 2012| Final Exam]]
*   
+
 
 +
||  
 +
* '''Primary'''
 +
* [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.
 +
* '''Secondary'''
 +
*[http://en.wikipedia.org/wiki/NP-hard NP-Hard] Computer-Science Problems
  
 
<!-- ================================================================== -->
 
<!-- ================================================================== -->
Line 141: Line 307:
  
 
<br />
 
<br />
 
+
<onlydft>
 +
=Resources=
 +
* [[CSC103 Create Wiki Accounts for Students]]
 +
</onlydft>
 
<br />
 
<br />
 
[[Category:CSC103]]
 
[[Category:CSC103]]

Latest revision as of 13:03, 23 September 2013

Wikis | Weekly Schedule | Main Page


Office Hours: M 1:10-3:00 p.m., W 4:00-6:00 p.m.

Weekly Schedule

Week Topics Reading
Week 1
1/30
  • Monday
    • Introduction to the class and the 1/2 semester
    • Organization of the class
    • a short movie to get the discussion started...
    • some examples of computers:


AbacusWolfram.png


DifferenceEngine.jpg


DifferenceEngineDetail.jpg


DNAComputer.png


(start at 1min 47sec)

    • Keywords:
      • code: Translating from one system of values to another system.
    • Electricity
    • The Binary System: a system where the only two numbers available are 0 and 1. Every operation that we can do in decimal, with 10 digits, we can also do in binary.
    • The Transistor: A switch controlled by electricity.
    • Two giants for computer science:
      • George Boole (1779-1848): logic expression = boolean expression. Logic: creating formulas where variables are combined by operators. The variables are boolean variables, the operators are logic operators. Any formula can be represented with a combination of just three operators: AND, OR, and NOT.
      • Claude Shannon (1916-2001): writes a Master's thesis at MIT in 1948, which states that any binary numerical computation can be performed using logic expressions and logic operators.


  • Wednesday
    • Review of the binary system
    • Exercises on binary (and other) systems and Logic
    • George Boole (1779-1848): logic expression = boolean expression. Logic: creating formulas where variables are combined by operators. The variables are boolean variables, the operators are logic operators. Any formula can be represented with a combination of just three operators: AND, OR, and NOT.
    • Claude Shannon (1916-2001): writes a Master's thesis at MIT in 1948, which states that any binary numerical computation can be performed using logic expressions and logic operators.

Week 2
2/6
  • Monday
    • we stopped last week at Shannon's Master's Thesis (MIT).
    • building a 2-bit adder with logic gates.
    • Two-bit adder (verify the equations with this exercise
    • Logic Gates
    • Data sheet for the AND gate.
    • Data sheet for the NOT gate.
    • Data sheet for the OR gate.
    • Logic Design
    • Simulator
    • Lab #1



  • Wednesday

    • Schematics from NASA
    • Exercise on Logic Design: a review of the process of going from a description of the function to a circuit.
    • Identifying various parts inside a computer. We want to be able to recognize:
      • The processor
      • The Crystal
      • The Random Access Memory (RAM)
      • The power supply
      • The mother board
      • The hard disk
      • The optical disk (DVD/CD player/burner)
      • The Wiring
      • Various Ports
    • Creating a wiki page on the ClassWiki system (owned by the Smith CS Department)
      • headers
      • paragraphs
      • boxes
      • lists (numbered or not)
      • images
      • links to other wiki pages in classwiki
      • links to Web pages
    • Warning: Two wikis!

DFTwiki.png

ClassWiki.png


Reading:

Week 3
2/13
    • Disassembling a PC:

Reading:

Week 4
2/20


    • the von Neumann bottleneck
      • Memory vs. processor. What do fingernails and football fields have in common?
      • Attempts to circumvent the bottleneck
        • cache memory
        • multicore architectures
MultiCorePerformance.jpg

  • Reading
    • Primary
      • Jon von Neumann, who first defined the architecture of modern computers. We are still building computers according to his original unpublished draft
    • Secondary
Week 5
2/27
  • Monday
    • Moore's Law

MooresLaw.jpg




Primary:

Secondary

Week 6
3/5

























  • Wednesday
    • Quiz on two papers
    • Class discussion: The singularity.
    • Hod Lipson
    • Hard Computer Problems
    • Hard Computer Problems. Example "Towers of Hanoi" and applet (this stop-watch can be useful to time the execution of the program).
FoodForThought.jpg













Week 7
3/12


Take Home Exam Week


Week 7
3/19


Spring Break











...