CSci 230: Computing Systems Organization
Home Syllabus Assignments Tests

Classroom: TR: 1:15p-2:30p, MCRey 315
Web page www.cburch.com/cs/230/
Instructor: Dr. Carl Burch
E-mail: burch at grendel dot hendrix dot e d u
Telephone: 450-1377 (office); 548-0036 (home)
Office: MCRey 310
Office hours: T 2:40-3:30, RF 10:10-11:00, R 3:40-4:30
drop-ins, appointments always welcome
Creative Commons License This work from xkcd is licensed under a Creative Commons Attribution-NonCommercial 2.5 License. This means you're free to copy and share these comics (but not to sell them). More details

Useful links

Sauron submission system (instructions)
Computing Systems Organization textbook
C programming: compiling, debugging, and profiling
C function reference (remote copy)
ARM assembly reference card
ARM: Assembly Language Programming, by Knaggs and Welsh (remote copy)

Schedule

The assignment of topics to days will change as the class progresses.

Textbook references are on the right, prefaced by a section symbol §.

§20.3–20.6
Tue 26 Aug C: Introduction §2.1–2.5
Thu 28 Aug C: Constants §2.6
C: Pointers §3.1
C: Arrays §3.2–3.3
C: Dynamic memory §4.1
1 Sep Labor Day
Tue 2 Sep C: Strings §3.4
C: Structures §4.0, 4.2
Thu 4 Sep C: String tokenizing §3.5
integer representation §5.1–5.2
Fri 5 Sep Assn 1 due
Tue 9 Sep bit operators: Introduction §5.3
Quiz 1
Thu 11 Sep bit operators: Counting one bits §5.4
logic gates §7
Fri 12 Sep Assn 2 due
Tue 16 Sep Karnaugh maps §8.0–8.2
adders §9.1
Thu 18 Sep universality §8.3
work on Assn 4 in class
Fri 19 Sep Assn 3 due
Tue 23 Sep latches §10.1
flip-flops §10.2
registers §10.3
Thu 25 Sep plexers §9.2
memory §10.4
Fri 26 Sep Assn 4 due
Tue 30 Sep assembly intro §11.1–11.2
Exam 1
Thu 2 Oct more assembly §11.3
subroutines §13.1
memory access §12.1
Fri 3 Oct Assn 5 due
Tue 7 Oct condition codes §11.4
addressing modes §12.2
multiple-word access §12.4
program stack §13.2
Thu 9 Oct calling convention
Fri 10 Oct Assn 6 due
Tue 14 Oct floating-point §6
16-19 Oct Fall break - no class
Tue 21 Oct memory hierarchy §14.1
direct-mapped caches §14.2
Quiz 2
Thu 23 Oct other cache types §14.3
cache effects in programs §14.5
Fri 24 Oct Assn 7 due
Tue 28 Oct cache write policies §14.4
operating system: introduction §15.0
exceptions & system calls §15.1–15.2
Thu 30 Oct read & write §15.3
processes §16.1–16.4
fork system call §16.5.1
Fri 31 Oct Assn 8 due
Tue 4 Nov Exam 2
Thu 6 Nov an elementary shell §16.5.2–16.5.3
file descriptor management
Fri 7 Nov Assn 9 due
Tue 11 Nov virtual memory introduction §17.0–17.2
Thu 13 Nov virtual memory complications §17.3
compiler optimizations §18.0–18.5
Fri 14 Nov Assn 10 due
Tue 18 Nov compiler optimizations, cont'd §18.6–18.9
garbage collection introduction
Thu 20 Nov garbage collection, cont'd
Fri 21 Nov Assn 11 due
Tue 25 Nov Java garbage collection
Quiz 3
26-30 Nov Thanksgiving break - no class
Tue 2 Dec compiling classes   subclasses §20.1–20.2
Thu 4 Dec compiling interfaces
Fri 5 Dec Assn 12 due
Thu 11 Dec Final, 2:00pm
18 Dec-11 Jan Winter break