Info Schedule Assignments Policies Canvas Ed

Week-by-Week Schedule

Click on a week to see its content. The schedule will be updated frequently, so check it every day or two.

Weeks start on Mondays and are indexed from 1.


(Corresponding): Unix Tutorial for Beginners

(Complementary): GNU Emacs Tutorial

(Complementary): Linux Pocket Guide (excerpt: Programming with Shell Scripts)

Slides
Optional supplemental videos from Fall 2020:

Handouts.


(Corresponding): C Programming (King) 1-6, 7.3, 9, 14, 20.1
This is a lot, but two calming notes:
1 - the reading assignments don't continue at this frenetic pace all term, Weeks 2 and 4 are the bulk.
2 - much of this content will already be familiar to you from another high level language, e.g. Java.

(Complementary): The Practice of Programming (Kernighan & Pike) 1

(Complementary): Wikipedia "Deterministic finite automaton" article

Slides
Recording

Handouts.

Slides
Recording

Handouts.


Reading (corresponding): C Programming (King) 7, 15

Slides
Recording

Handouts.

Slides
Recording

Handouts.


Reading (corresponding): C Programming (King) 8, 11-13, 24.1

Reading (complementary): The Practice of Programming (Kernighan & Pike) 2, 4

Reading (complementary): GNU GDB Tutorial

Reading (complementary): GNU Make Tutorial

Slides
Recording

Handouts.

Slides
Recording

Handouts


Reading (corresponding): C Programming (King) 16, 17.1-6

Reading (complementary): The Practice of Programming (Kernighan & Pike) 6

Slides
Recording

Handouts.

Slides
Ed post with wrap-up and links to recordings

Handouts.

Q&A session for midterm exam. Sunday 10/9 4:00 PM in Computer Science 104.
Midterm details and Study Resources
Recording


Reading (corresponding): C Programming (King) 19

Reading (complementary): The Practice of Programming (Kernighan & Pike) 5

Q&A session for midterm exam. Sunday 10/9 4:00 PM in Computer Science 104.
Midterm details and Study Resources
Recording

Slides
Recording

Handouts.

Details and Study Resources

Handouts.



Reading (corresponding): C Programming (King) 17.7, 10, 18

Reading (complementary): The Practice of Programming (Kernighan & Pike) 8

Slides
Recording

Handouts.

Slides
Recording

Handouts.


None.

Slides
Recording

Handouts.

Slides
Recording

Handouts.


Reading (corresponding): ARM 64 Bit Assembly Language (Pyeatt with Ughetta) 2-5

Reading (complementary, for reference only):ARMv8 Instruction Set Overview

Reading (complementary, for reference only):ARM Architecture Reference Manual

Slides
Recording

Handouts.

Slides
Recording

Handouts.


Reading (corresponding): ARM 64 Bit Assembly Language (Pyeatt with Ughetta) 6-7

Slides
Recording

Handouts.

Slides
Recording
Supplemental gdb walkthrough video from Fall 2020.

Handouts.


Reading (corresponding): The C Programming Language (Kernighan & Ritchie) 8.7 (available through Canvas in the "Files" section)

Reading (complementary, for reference only):GNU Gprof Tutorial

Reading (complementary): The Practice of Programming (Kernighan & Pike) 7

Christopher Moretti will hold (optional) office hours in Corwin 036 during the regular lecture time.
Here are two older versions of the cancelled lecture, for those interested in the topic:
Slides and Recording from Fall 2021 (Szymon Rusinkiewicz).
Slides and Recordings Part A, Part B, and Part C from Fall 2020 (Christopher Moretti).


Reading (corresponding): C Programming (King) 24.2-3

Slides
Recording from Fall 2021 (Szymon Rusinkiewicz)
Recording from Fall 2020 (Christopher Moretti)

Handouts.

Slides
Recording

Handouts.


Reading (corresponding): C Programming (King) 24.2-3

Slides
Recording

Handouts.

Slides (same as last time)
Recordings from Fall 2020 (Christopher Moretti) End of Lecture 23 covered in Lecture 24 this term and Lecture 24
Final Exam Details and Study Resources


Details and Study Resources

Details and Study Resources