CS 242: Computer Architecture and Organization
Citrus College Course Outline of Record
Heading | Value |
---|---|
Effective Term: | Fall 2021 |
Credits: | 3 |
Total Contact Hours: | 54 |
Lecture Hours : | 54 |
Lab Hours: | 0 |
Hours Arranged: | 0 |
Outside of Class Hours: | 108 |
Prerequisite: | CS 225 (or concurrent enrollment). |
Transferable to CSU: | Yes |
Transferable to UC: | Yes - Approved |
Grading Method: | Standard Letter |
Catalog Course Description
The organization and behavior of real computer systems at the assembly-language level. The mapping of statements and constructs in a high-level language onto sequences of machine instructions is studied, as well as the internal representation of simple data types and structures. Numerical computation is examined, noting the various data representation errors and potential procedural errors. 54 lecture hours.
Course Objectives
- Design and implement assembly language programs using machine instructions, addressing modes, subroutines, macros and interrupts to solve problems of simple complexity.
- Investigate how fundamental high-level programming constructs are implemented at the machine-language level.
- Compare and contrast the basic relationship between hardware and software design.
- Analyze the basic computer architecture using engineering principles and quantitative cost/performance trade-offs.
- Design an ALU by understanding the basics of computer binary arithmetic and logic including addition, multiplication and division floating point representation.
- Illustrate the basics of logic design including gates, truth tables and combinatorial logic.
Major Course Content
- Bits, bytes, and words
- Numeric data representation and number bases
- Fixed- and floating-point systems
- Signed and twos-complement representations
- Representation of nonnumeric data (character codes, graphical data)
- Representation of records and arrays
- Basic organization of the von Neumann machine
- Control unit; instruction fetch, decode, and execution
- Instruction sets and types (data manipulation, control, I/O)
- Assembly/machine language programming
- Instruction formats
- Addressing modes
- Subroutine call and return mechanisms
- I/O and interrupts
Suggested Reading Other Than Required Textbook
The student will visit several programming online websites in order to read documentation about object oriented programming languages.
Examples of Required Writing Assignments
The student will create a flowchart and a pseudocode before implementing the programming code for any given assignment.
Examples of Outside Assignments
Students will be required to complete the following types of assignments outside of the regular class time:
- Study course concepts - Answer various programming questions - Practice skills (i.e., writing programs and creating flowcharts). - Read required materials - Solve programming problems - Create programs that apply assembly language programming techniques
- Study course concepts - Answer various programming questions - Practice skills (i.e., writing programs and creating flowcharts). - Read required materials - Solve programming problems - Create programs that apply assembly language programming techniques
Instruction Type(s)
Lecture, Online Education Lecture