Microprocessor Programming

Objectives

To know:

Describe the organization and operation of microprocessor systems.

Structured specification and modular description of systems (hardware and software views). Algorithm representation methods: flowcharts, pseudo-code, program graphs, basic schemata, ASM.

Codification and execution of programs using programming languages.

To Do:

To write trivial programs with a small algorithmic component

Soft skills:

Life long learning, basic knowledge

General characterization

Code

7777

Credits

6.0

Responsible teacher

José António Barata de Oliveira, Luís Manuel Camarinha de Matos

Hours

Weekly - 5

Total - 70

Teaching language

Português

Prerequisites

There are no requirements about the skills of the students

Bibliography

 

- Slides of the lectures - Paulo da Fonseca Pinto

- Linguagem C, Luís Damas, Tecnologias de Informação, FCA Editora de Informática, Lda

Teaching method

 

The theoretical part is covered in lecturers where specific aspects are highlighted not to make them unnoticed in the middle of the entire description of the adopted book.

The laboratory part consists of providing small problems to be solved by the students. The difficulty of the exercises increases as the semester goes on. Each class finishes with a class-final assessment. The final classes of the term are used for imlementing the final assessment.

Evaluation method

The assessment has a theoretical and a practical part.
Each part counts 50% for the final grade.
It is necessary to obtain more than 9,5 points in each part.

Theoretical part:
The theoretical part can be obtained either by
                3 assessment mid-term tests
                final exam

Practical part:
               Weekly projects that are assessed during the following week
                Final project with a final oral assessment
All the projects are group projects but the assessments are made on an individual basis.

Subject matter

1st Chapter

Introduction. The Architecture of the computers


2nd Chapter – The C Language

The covered subjects include chapters 1 to 12 (inclusive) of the recommended book.
Basic Data types
Tests and conditions
Cycles
Functions
Arrays
Strings
Pointers
Parameter passing
Files
Structures
Dynamic Memory

All aspects covered in these chapters are relevant for the course:

From chapter 14 the following aspects are relevant:

enum
union
Pointers to functions
Separating a project into several files
Usage of global variables across files
static functions
static variables

Programs

Programs where the course is taught: