Syllabus and course info

Class links

Software needed/used

Except for PuTTY, all of these are already installed on the FCCSCI server. PuTTY, or another SSH client, is the only program you need to download onto your own computer.

  • PuTTY (or other SSH client, needed to access server)
  • YASM (assembler)
  • GCC and tools (compiler and linker, other tools)
  • GDB (debugger) with GDB Dashboard
  • Emacs, Jmacs, Vim, Nano, Micro, etc. (editor)

Calendar, Notes, and Assignments

Date Subject Assignment
Week 1
Mon, Feb. 02 Introduction; Terminology; Digital Circuits
Wed, Feb. 04 Basic assembly; converting between numeric representations
Week 2
Mon, Feb. 09 Registers and simple loops Assignment 1
Wed, Feb. 11 Arithmetic operations; simple functions
Week 3
Mon, Feb. 16 President's Day Holiday
Wed, Feb. 18 Branching
Week 4
Mon, Feb. 23 Branching and conditions -- applications
Wed, Feb. 25 Functions and the stack
Week 5
Mon, Mar. 02 Functions continued
(Lecture files to date)
Wed, Mar. 04 Interop. with C; Floating-point operations
Week 6
Mon, Mar. 09 Floating point and vector operations
Wed, Mar. 11 Floating point, continued
Week 7
Mon, Mar. 16 Instruction-level parallelism; pipelining on MIPS
Wed, Mar. 18 Bitwise operations
Week 8
Mon, Mar. 23 Midterm Review
Wed, Mar. 25 Midterm exam
Week 9
Mar 30 — Apr 3 Spring Recess and Cesar Chavez Holiday
Mar 30 — Apr 3 Spring Recess and Cesar Chavez Holiday
Week 10
Mon, Apr. 06 Midterm Recap
Wed, Apr. 08 C-style strings; string operations
Week 11
Mon, Apr. 13 Macros part 1
Wed, Apr. 15 Macros part 2
Week 12
Mon, Apr. 20 Macros part 3
Wed, Apr. 22 Structures
Week 13
Mon, Apr. 27 MIPS assembly language
Wed, Apr. 29 MIPS assembly
Week 14
Mon, May. 04 Instruction formats
Wed, May. 06 Memory Management
Week 15
Mon, May. 11 Operating systems part 1: the boot process
Wed, May. 13 Operating systems pt. 2: boot process continued
Week 16
Mon, May. 18 Digital circuits
Wed, May. 20 Final review
Week 17
Mon, May. 25 Memorial Day Holiday
Wed, May. 27 Final exam