CU website

ECEN 2120

Information

Assignments

Lecture Schedule

Supporting Material

Syllabus

Staff

 

Computers as Components
Class Schedule

This schedule is organized by weeks. All of the class periods for the week are listed, and a lecture title, an hour examination or a holiday is given for each. Lecture titles are accompanied by a list of sections from the textbook that are relevant to that lecture. When a sequence of lectures is devoted to the same material, all are listed with the same title. In this case, relevant sections of the text are listed only for the first lecture in the sequence. Subsequent lectures bear the notation ``(continued)''.

The homework exercise that you should be working on during the week is listed, along with the important ideas covered by that homework. Each homework title is a link to the corresponding assignment.


Quick link to a week:
Dates
Week
8/24-8/28
#1
8/31-9/4
#2
9/7-9/11
#3
9/14-9/18
#4
Dates
Week
9/21-9/25
#5
9/28-10/2
#6
10/5-10/9
#7
10/13-10/16
#8
Dates
Week
10/19-10/23
#9
10/26-10/30
#10
11/2-11/6
#11
11/9-11/13
#12
Dates
Week
11/16-11/20
#13
11/23-11/27
#14
11/30-12/4
#15
12/7-12/11
#16

Week 1

  • 8/24: Introduction

    • Course goals
    • Course mechanics
    • Complex systems from a digital perspective

  • 8/26: CPU architecture

    • Registers and memory
    • Expression evaluation and the stack

    Required reading:

    • Text Chapters 1, 2, 4, Sections 5.2.1, 5.3, 5.4, 6.1

  • 8/28: Control flow

    • The condition code
    • Conditional jumps
    • Unconditional jumps

    Required reading:

    • Text Sections 4.2.6, 4.2.7, 4.2.8, 6.2


Week 2

  • 8/31: Procedure call and return

    • How the call and return operations use the stack
    • Passing arguments via the stack
    • Use of A6 to access arguments
    • Saving and restoring state

    Required reading:

    • Text Section 4.2.4, 4.2.6, 6.3, 9.4

  • 9/2: Program structure

    • Allocation of program structures to memory
    • Public symbols
    • C naming conventions

    Required reading:

  • 9/4: Binary integer arithmetic

    • Representation of integers
    • Translation of numbers from decimal to binary
    • 2's complement arithmetic
    • Signed and unsigned numbers
    • Signed and unsigned condition code interpretations

    Required reading:

    • Text Section 3.1, 7.1, 7.2, 7.3, 7.4


Week 3


Week 4

  • 9/14: Assembler directives

    • How directives are used to separate data layout from code
    • Storage reservation and data generation
    • ORG, EQU, DC

    Required reading:

  • 9/16: Recursion

    • Interface specifications
    • Use of the stack for local variables
    • The concept of an activation record
    • Printing integer values as digit sequences

    Required reading:

  • 9/18: Modularity and separate assembly

    • Separation of concerns and information hiding
    • Visibility and lifetime
    • Assembly and linkage

    Required reading:


Week 5


Week 6

  • 9/28: Serial I/O

    • Access to I/O devices
    • The RS-232 interface
    • The function of a UART

    Required reading:

  • 9/30: Serial I/O (continued)

    • Programming the UART
    • Writing characters to the UART
    • Reading characters from the UART

  • 10/2: Review for Exam 1


Week 7


Week 8


Week 9


Week 10


Week 11


Week 12


Week 13


Week 14

  • 11/23 - 11/27: Fall Break - No Classes


Week 15

  • 11/30 - 12/4: Complex Data Structures in C and Assembly


Week 16


Final examination: Wednesday, December 16, 2007, 7:30pm-10:00pm.