Description:
Instruction formats and construction, addressing modes, instruction execution, memory hierarchy operation and performance, pipelining, input/output, and the relationships between high level programming languages and machine language.
Having successfully completed this course, the student will be able to:
- design and analyze instruction sets and their impact on processor design;
- identify and analyze the design and function of the basic instruction execution elements of a modern processor;
- apply finite state automata to computer design;
- describe the basic elements of computer architecture and their impact on the performance of a modern processor;
- explain the design and function of each element in a memory hierarchy;
- identify and explain the different methods of I/O in a computer system;
- explain the relationship between the computer hardware, the operating system that runs on it, and the applications that are compiled to it;
- compare computer architectures and organizations based on quantifiable performance metrics.
Together with CS2505, this course replaces CS2204 and CS2504.
Prerequisites: C or better in CS2505, C or better in CS2214, Math 2534
Recent Offerings: