CSC231 Schedule 2010

From dftwiki3
Revision as of 10:32, 1 September 2010 by Thiebaut (talk | contribs) (Created page with ' =Weekly Schedule= {| style="width:100%" border="1" |- style="background:#ffdead;" |'''Week''' || '''Topics''' || '''Reading''' |-valign="top" |width="15%"| Week 1 <br /> 9/05…')
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Weekly Schedule

Week Topics Reading
Week 1
9/05

Chapter 1 in the Art of Assembly.

Also Chapter 3, Sections 0 to 3.1.2. Sections 1.3.1, 1.3.2, 1.3.3, 1.3.4, and 1.3.5 in Carter's PC Assembly Language.

Week 2
9/08
  • First introduction to the Pentium processor. Registers, ALU, Control Unit, Busses, Memory
  • Exercises on binary, decimal, hexadecimal system
  • Bin/Dec/Hex converter
  • Listing file with assembly and opcodes
  • Step by Step execution of instructions
  • Exercise on reverse engineering. Solution
  • The mov instruction. Syntax. Operands
  • Units of storage: nybble, byte, word, double-word
  • The add instruction.
  • Using the ddd debugger

Week 3
9/15

Signed and unsigned numbers are covered in Sections 1.7 and 1.8 and Chap. 2 Boolean Algebra

Week 4
9/22

  • The signed and unsigned representations of numbers are covered in Sections 1.7 and 1.8 of The Art of Assembly, and in Chapter 2 of Carter's PC Assembly Language.
  • Addressing modes are covered in Chapter 4 of The Art of Assembly. We won't cover "Displacement Only Addressing" modes (Section 4.6.2.1). Mentally replace 16-bit registers by 32-bit registers when reading this section.
Week 5
9/29
  • Arduino hardware info
  • Addressing modes
    • inherent
    • register
    • immediate
    • direct
    • indirect/based/indexed
    • indirect with displacement
    • base-indexed
    • base-indexed with displacement
  • Ascii Table
  • Exercises on addressing modes
  • SHR and ADC instructions.
  • BMP processing programs and picture files.

Read/continue reading on Addressing Modes

Week 6
10/06
  • Monday: Burton B17: Lab #5
  • Wednesday: Bass 102
    • -----------
    • Exploring the schematics of the Arduino
    • Recipes of simple circuits
    • -----------
    • More logic instructions AND, OR, NOT, XOR, SHL, SHR.
    • HelpPC resource
  • Friday
    • Burton B17: Project early proposal (5min)


Week 7
10/13
  • Fall Break--No class on Monday
  • Wednesday: Continuation of Lab #5
  • Friday : in-class Midterm Exam. Midterm Prep

Week 8
10/20
  • Monday (Bass):
  • Friday (Burton): Project final proposal (10 min)

Week 9
10/27

Week 10
11/03

  • Linux System Calls. Section 1.1 shows the equivalence between registers and parameters. Section 3.3 explains how to interpret the parameters used by a system call. Appendix A lists all the system calls and the parameters.
Week 11
11/10
  • Friday: no class (work on your project!!!)

  • Nasm Macros
  • new Linux commands:
    • od (octal-dump)
    • hexdump
Week 12
11/17
  • Monday
    • Recursion and reentrancy. Reentrant programs must not modify global variables!
    • Recursion rule: 1) stopping condition, 2) recurse on a smaller problem than one given.
    • factorial.asm
  • Wednesday
    • Two programs related to the current hw assignment: driver2.c, and writeIntegerAtIndex.asm
    • Lab in Burton: Make it work! Develop the hardware/software pairs: each hardware sensor should have an assembly language routine that either knows how to read from it, or to write to it.
  • Friday: Presentation of working hardware

  • the LEA instruction: an more powerful alternative to mov when loading up a vector.
  • Section 2.1.3 of Carter's Assembly Manual on the MUL instruction (and IMUL).
Week 13
11/24
Turkey.gif
  • Monday:
    • Presentation of working projects (carry over from Friday)
    • Current homework ( binary search)
    • recursion
    • simulating communication with an Arduino stamp
  • Wednesday: Thanksgiving break
  • Friday: Thanksgiving break
Week 14
12/01

  • Article on number of interrupts, context swaps, read/write operations per second in a typical Windows machine.
  • PPT Presentation on interrupts from Carleton.
  • Chapter 9 of O'Reilly's Linux Device Drivers. Good for general overview. Don't worry about the details.



Week 15
12/08
Week 16
12/15
  • Monday: Pre-examination ends (DT away)
  • Tuesday: Exam Period
  • Wednesday: Exam Period 12:00p.m.--2:00p.m. Project Presentation in B17
  • Thursday: Exam Period
  • Friday: Exam Period (last day of the semester)


List of Programs

Assembly

Aduino pde

C

Python

Miscellaneous Information