CSIS 360 - Computer Architecture & Assembly Programming

Course Description

An introduction to digital computer hardware architecture and organization. Topics include digital logic, processor design, instruction sets, and system architecture. Programs written in assembly language will be used to gain hands-on experience with the underlying system architecture.


Dr. David M. Hansen
Current Weekly Schedule




  • Students will be exposed to basic digital logic and will be familiar with basic logical building blocks for digital computational hardware at the logic-gate level.
  • Students will be able to describe the basic computational units of a modern computer and how they work together including memory, I/O, arithmetic and control units, etc.
  • Students will be familiar with common mechansims for representing data and operations in binary format and will understand the basics of instruction-set-architectures for modern computer hardware.
  • Students will be able to solve small problems using a low-level assembly language.

Course Organization

In addition to regular lectures and written assignments, this course will include programming exercises demonstrating computer architecture and organization and may include lab-oriented assignments involving gate-level logic.

Programming assignments will be carried out in a prescribed low-level assembly language. Instruction in the use of this language will be provided.

The course will include regular homework and programming assignments (please see my comments on collaboration and programming). Assignments are due before 11:59pm on the due date; there will be NO CREDIT given for late assignments (without an excused absence) - turn in as much as you can.

Reading assignments should be completed before the lecture covering the material. Not all reading material will be covered in the lectures, but you will be responsible for the material on homework and exams. Quizes over the assigned reading may be given at any time.

The Vision Statement of the Computer Science and Information Systems majors states that our students are distinctive by: "Bringing a Christ-centered worldview to our increasingly technological world." As one step towards the fulfillment of this objective, each semester, we will identify an influential Christian writing to be read and reflected upon by students in our classes throughout the term. This will be treated as an official component of every course and will be uniquely integrated and assessed at our discretion, generally as a component of the quiz grade. See the semester's reading schedule. In addition, regular meetings will be scheduled throughout the semester that can be attended for Chapel credit.

It is my hope that students will not view this as one more task to complete, but as a catalyst for continued discussion ultimately leading to a deeper walk with Christ.

The chief end of man is to glorify God, and enjoy Him forever.
(Westminster Confession)

If you have specific physical, psychiatric, or learning disabilities and require accommodations, please contact the Disability Services Office as early as possible so that your learning needs may be appropriately met. You will need to provide current documentation of your disability to the Disability Services Office. For more information, go to ds.georgefox.edu or contact Rick Muthiah, Dean of the Center for Teaching and Learning (ext. 2314)


Grading Scale

The final grade will be based on:

Tentative Schedule

Lectures Topic Reading
1 Introduction SCO 1
2 Processors SCO 2.1
1 Memory SCO 2.2 - 2.3
1 Input/Output SCO 2.4
1 Binary Representations SCO Appendix A & B
1 Gates & Boolean Algebra SCO 3.1
2 Basic Circuits SCO 3.2
1 Memory SCO 3.3
2 CPU & Buses SCO 3.4 - 3.8
1 Assembly Language SCO 5.5.9, 7.1 and ARM Assembly
1 Assembling Programs SCO 7.2-7.5
1 Instruction Set Architecture SCO 5.1
2 Intro to ARM Assembly  ARM Assembly Tutorial (1-4)
1 Flow of Control in Assembly SCO 5.5-5.6; ARM Flow of Control & Functions (5-6)
2 Instruction Formats & Addressing SCO 5.2-5.4; ARM Addressing Modes & Arrays (7-8)
2 More ARM Assembly...  ARM Tutorial (9-12) and Floating Point (13) and Simulating Int Division (15)
1 Microarchitectures SCO 4.1-4.2
1 Optimizations SCO 4.3-4.4
1 Caches SCO 4.5
1 Additional Optimizations SCO 4.6-4.7
This page was last updated .
For questions or comments about this page, please email the webmaster.