Course credit
3 credit hours
Course description
Study of computers in terms of their major functional units. Machine representations of data, digital logic, memory, CPUs, buses, and input/output. Instruction set architectures and their implementations, addressing methods, and sequencing. Assembly language programming.
Delivery
This course is available in a web-based format, utilizing web pages and MyCourses, a computer conferencing program. MyCourses requires Internet access and a web browser — no additional software is required. Students may need access to someone who can assist with computer set-up.
Prerequisites
UNI students: Introduction to Computing (810:051) or equivalent. If you have, or are, taking an introductory programming course in any high-level programming language (C, C++, Java, Python, Ada, Ruby, Scheme, etc.), you satisfy the necessary prerequisite.
Instructor
Mark Fienup, Associate Professor of Computer Science
Fienup is an Associate Professor of Computer Science. He received his B.A. from the University of Northern Iowa in Mathematics and Chemistry. He earned both his M.S. and Ph.D. in Computer Science at Iowa State University. He has been a faculty member of the Computer Science Department at the University of Northern Iowa since 1985.
Fienup regularly teaches Introduction to Computing, Data Structures, Computer Organization, and Computer Architecture. His current research activity centers on the Bioinformatics topic of automatics, three-dimensional protein structure prediction.
Evaluation
13 assignments, 3 exams
Overview
Computer Organization provides an introduction of how a computer operates at the digital-logic level, machine-language level, and the assembly-language level. It can be taken after or concurrently with an introductory programming class such as UNI’s Introduction to Computing (810:051) course. This prerequisite is useful since an understanding of a high-level programming language is useful before studying lower-level, assembly-language programming in the second half of the course. The first half of the course is geared toward understanding how individual computer components (e.g., CPU, memory, bus, control unit) operate at the logic gate level, and how they are connected together to perform machine-language instructions.
Course Objectives
After this course, you should understand:
|
Course organization
Written Assignments:
Assignments will be both "pencil-and-paper" and assembly-language programming exercises. Assignments are organized around the chapter sections of the textbook according to the below schedule. For each assignment, you should follow these steps:
1) Read the corresponding chapter section(s) thoroughly.
2) Check the outline below to see if I have provided additional supplemental material to further explain a textbook topic or provide additional examples.
3) Complete the assignment related to the chapter section(s) and submit your solution via the Assignments tool.
Assignments consist of two types:
a. Textbook and instructor supplied exercises which are short-answer or problem based questions. You can use a word processor program (Word, Open-Office, etc.) to save your responses to a file in Rich-text format (.rtf). However, many of the assignments require complex diagrams that are more easily done on paper, so you might want to use a scanner/printer or digital camera to generate a .jpg file. Zip multiple files together and submit a single .zip file for the assignment.
b. Assembly-language programs as text files and their associated output files. Zip your output and assembly-language program files together and submit a single .zip file for the assignment.
Examinations:
There will be three proctored exams: two and a comprehensive final exam.
Grading
| Chapters | Supplemental Material | Assignment | |
| Sections | Topic | ||
| 1.1 - 1.5 | Intro. to Computer Organization and Computer History | Written Assignment 1 | |
| 2.1 - 2.4 | Binary and Hexadecimal number systems; Unsigned Integers; Signed Integers: two’s complement | Written Assignment 2 | |
| 2.5 - 2.7 | Floating point representation; Character representation; Error correction and detection | Written Assignment 3 | |
| 3.1 - 3.5 | Boolean Algebra; Logical Gates; Common Combinational Circuits | Written Assignment 4 | |
| 3.6 | 1-bit latches, Timing Diagrams; Flip-Flops, Registers, Register File | Supplement 5 | Written Assignment 5 |
| Exam 1: covering chapters 1- 3 | |||
| 4.1 - 4.7 | CPU, Bus, Clock, I/O, Memory, Interrupts | Written Assignment 6 | |
| 4.8 - 4.10 | Intro. to MARIE assembly instructions, Fetch-decode-execute cycle; simple programs | Supplement 7 | Written Assignment 7 |
| 4.11 - 4. 12 | Assemblers; MARIE subroutine instructions and programming | Written Assignment 8 | |
| 4.13 | MARIE Hardwired and Microprogrammed Control Units | Supplement 9 | Written Assignment 9 |
| Exam 2: covering chapter sections 4.1 - 4.13 | |||
| 4.14 | Intel x86 (CISC), MIPS (RISC) architectures, simple MIPS assembly language programming, arrays | Supplement 10 | Written Assignment 10 |
| Run-time stack; MIPS procedure/function calling conventions; PCSpim System calls | Supplement 11 | Written Assignment 11 | |
| MIPS logical and shifting instructions; bit-string set representation | Supplement 12 | Written Assignment 12 | |
| 4.5 7.1-7.4 8.1-8.4 | Hardware Support for OS: CPU timer, privileged instructions, dual-mode CPU operation, memory protection | Supplement 13 | Written Assignment 13 |
| Final exam: comprehensive, but focusing on details since Exam 2 | |||
Grading policy
Course components are weighted as:
Written Assignments: 30 %
Exam 1: 23 %
Exam 2: 23 %
Final Exam: 24 %
Course grades will be assigned based on the following grading scale:
100-90 = A
89 - 80 = B
79 - 70 = C
69 - 60 = D
Below 59 = F
Plus and minus grades will be assigned for scores within two percentage points from a grade cutoff (e.g., 91.9 to 90 is an A-, and 89.9 to 88 is a B+).
UNI Guided Independent Study requires that you complete all assignments and exams to pass the course.
Textbook
Required Textbook
Linda Null and Julia Lobur, The Essentials of Computer Organization and Architecture, second edition, Jones and Bartlett Publishers, 2006. ISBN-10: 0-7637-3769-0.
Texts are available from www.bookfinder.com
University Book and Supply carries most books used in guided independent study.
To search for textbooks by course, click on "Select a Campus Term" and select Univ.Northern Iowa - Guided Independent Study
Visit the store at 1009 West 23rd Street, Cedar Falls, IA 50613
Phone: 319-266-7581 or 800-728-7581
Fax: 319-277-1266
E-mail: bookstore@panthersupply.com
To enroll
ONLINE
GIS enrollment information
IN PERSON
UNI Continuing and Distance Education
2637 Hudson Road (corner of 27th St. and Hudson Rd.)
Cedar Falls, IA 50614-0223
Campus map (Look for Building 31)
For more information
Cindy Klodt, Guided Independent Study
UNI Continuing and Distance Education
319-273-2123 or 800-772-1746
ContinuingEd@uni.edu
