Faculdade de Ciências e Tecnologia

Computer Architecture

Code

11152

Academic unit

Faculdade de Ciências e Tecnologia

Department

Departamento de Informática

Credits

9.0

Teacher in charge

Pedro Abílio Duarte de Medeiros

Weekly hours

5

Total hours

65

Teaching language

Português

Objectives

Computer science and IT professionals must be able to understand the various layers of software and hardware that allow for their programs written in a high-level language like C or Java to run a computer system. The central goal of this course is to provide a holistic view on how a computer is organized, the design of the software and hardware layers that form a computer system, and the interaction between these layers, with a particular focus on the computer architecture aspects of this design.

Subject matter

1. Programming in C.

2. Number representation.

3. Assembly language: instruction types, instruction format, procedures and calling conventions.

4. Compiling, linking, assembling, and loading.

5. Internal organization of processing units. Single cycle processor. Pipelining. Advanced concepts.

6. Caches and memory units. Virtual memory basics.

7. I/O.

Bibliography

Computer Systems: A Programmer''s Perspective, 2/E , Randal E. Bryant and David R. O''Hallaron, Prentice Hall, 2011

Computer Organization and Design: The Hardware/Software Interface (revised Fourth Edition). By David A. Patterson, John L. Hennessy. Morgan Kaufmann editors, 2011.
 
C Programming Language (2nd Edition). By Brian W. Kernighan and Dennis M. Ritchie. Prentice Hall, 1988.
 

Courses