Course Syllabus
Computer Science 122 - Computer Architecture and Assembly Language
Course Description: Introduction to computer architecture, assembly language programming,
system software and computer applications. Number systems
and data representation. Internal organization of a computer. Primitive
instructions and operations.
Please check the CS 122 Web Page
each week for:
- Weekly Lecture Notes
- Weekly Reading Assignments
- Project Assignments and Deadlines
Required Text:
Grading: Grading will be based on the following breakdown:
Quiz 1 10% 20 points
Midterm 20% 40 points
Quiz 2 10% 20 points
Final 30% 60 points
Project 1 10% 20 points
Project 2 10% 20 points
Project 3 10% 20 points
Needed Point Totals: A – 175 points, B – 150 points, C– 120 points, D – 100 points
NO, NO, NO Laptops, cell phones or Ipod/MP3 players are to be used during class lectures.
Laptops may ONLY be used during lab time.
Surfing the Internet during class time is reserved for class related
web sites. EBay, chat rooms, sports sites and other non class related
surfing is strictly prohibited.
Violations of these rules may result in a penalty reduction of points.
Important Dates:
Please be sure to avoid scheduling conflicts with these dates.
Student Learning Outcomes:
Evaluate the basic concepts of computer architecture and assembly language.
Course Outline
-
Abstraction, Hardware Overview, Software Overview, Database Overview
Reading Assignment - Chapter 1
-
C++: Variables, Control Flow, Functions, Recursion, Memory Allocation
Reading Assignment - Chapter 2
-
Information Representation: Unsigned Binary, Two's Complement Binary, Binary Operations, Hexadecimal and Character Representations, Floating Point Representation
Reading Assignment - Chapter 3
-
Computer Architecture: Hardware, Direct Addressing, von Neumann Machines
Reading Assignment - Chapter 4
-
Assembly Language: Assemblers, Immediate Addressing, Symbols, Translation
Reading Assignment - Chapter 5
-
Compiling to the Assembly Level: Stacks, Branching, Functions, Parameters, Index Addressing, Memory Allocation
Reading Assignment - Chapter 6
-
Language Translation Principles: Languages Grammars and Parsing, Finite State Machines, Implementing Finite State Machines, Code Generation
Reading Assignment - Chapter 7