Difference between revisions of "CSC103 Weekly Schedule Spring 2012"
(→Weekly Schedule) |
|||
(97 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= | ||
− | |||
{| style="width:100%" border="1" | {| style="width:100%" border="1" | ||
Line 18: | Line 22: | ||
** [http://www.youtube.com/watch?v=0eAk6oNBSMU a short movie] to get the discussion started... | ** [http://www.youtube.com/watch?v=0eAk6oNBSMU a short movie] to get the discussion started... | ||
** some examples of computers: | ** some examples of computers: | ||
+ | <br /> | ||
+ | <center>[[Image:AbacusWolfram.png|400px]]</center> | ||
<br /> | <br /> | ||
<center>[[Image:DifferenceEngine.jpg|400px]]</center> | <center>[[Image:DifferenceEngine.jpg|400px]]</center> | ||
Line 29: | Line 35: | ||
<br /> | <br /> | ||
+ | ** Keywords: | ||
+ | *** <font color="magenta">code</font>: Translating from one system of values to another system. | ||
** <font color="magenta">Electricity</font> | ** <font color="magenta">Electricity</font> | ||
− | ** | + | ** <font color="magenta">The Binary System</font>: 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. |
− | + | ** <font color="magenta">The Transistor</font>: A switch controlled by electricity. | |
+ | ** Two giants for computer science: | ||
+ | *** <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. | ||
+ | <br /> | ||
+ | * '''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 | |
− | * | + | ** Primary: |
+ | ***[http://www.youtube.com/watch?v=Bl2RlVekfwM Video] (Part 2) on George Boole and Boolean Algebra. (5.18 min) | ||
+ | ***[http://en.wikipedia.org/wiki/Claude_E._Shannon#Boolean_theory Shannon's MIT Thesis], and boolean theory | ||
+ | ***[http://en.wikipedia.org/wiki/Binary_numeral_system#Counting_in_binary Counting in Binary] | ||
+ | ***[http://knol.google.com/k/counting-in-binary-for-beginners# Counting in binary for beginners] | ||
+ | ** Secondary: | ||
+ | ** [[CSC103:_DT%27s_Notes_1 | DT's Notes]] | ||
+ | <!-- ** [[CSC103: DT's Notes 1 | DT's Notes]] --> | ||
<!-- ================================================================== --> | <!-- ================================================================== --> | ||
|- style="background:#eeeeff" valign="top" | |- style="background:#eeeeff" valign="top" | ||
Line 42: | 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 52: | Line 121: | ||
|| | || | ||
− | * '''Monday''' | + | * '''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 64: | 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 74: | 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 126: | Line 307: | ||
<br /> | <br /> | ||
− | + | <onlydft> | |
+ | =Resources= | ||
+ | * [[CSC103 Create Wiki Accounts for Students]] | ||
+ | </onlydft> | ||
<br /> | <br /> | ||
[[Category:CSC103]] | [[Category:CSC103]] |
Latest revision as of 12:03, 23 September 2013
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 |
(start at 1min 47sec)
|
|
Week 2 2/6 |
|
Reading:
|
Week 3 2/13 |
|
Reading:
|
Week 4 2/20 |
|
|
Week 5 2/27 |
|
Primary:
Secondary |
Week 6 3/5 |
|
|
Week 7 3/12 |
|
|
Week 7 3/19 |
|
|