../ss-98/InfIng/Contact ../ss-98/InfIng/People ../ss-98/InfIng/Projects ../ss-98/InfIng/Teaching ../ss-98/InfIng/Papers  ../ss-98/InfIng/Intranet 

Computer Science for Engineers I

Lecturer:
Florian Matthes

Duration:

3 hours per week lectures, 1 hour per week lab classes

ECTS Credits:

4,5 Credits
Periodicity:
Every summer semester
Certificate:
Written exam at the end of the semester
   
Goals

This two-semester course provides an overview of the models and methods that are used for the formal description and the systematic construction of modern computing systems. Equal emphasis is put on software and on hardware techniques, which are both presented from an engineering perspective.

Prerequisites
Participation in the course Programming Methods in the first semester or equivalent practical programming experience.
Position in the Curriculum
Contents

1. Introduction: Models and abstractions in computer scienc

2. Atomic data types and digital data representation

3. Data structures and data types

3.1 Basic concpets of the programming language Java

3.2 Software: Predefined and user-defined data types (typing, simple types and reference types)

4. Stateless digital systems

4.1 Hardware: Combinatory circuits (construction, adder, carry-bypass circuits, multiplexer, ...)

4.2 Software: Functional programming techniques

5. Sequential stateful digital systems

5.1 Model: Automata and Grammars

5.2 Hardware: Synchronous sequential circuits (flip-flops, register, counter, memory)

5.3 Software: Imperative programming techniques

5.4 Software: Object-oriented programming techniques

6. Fundamentals of computer architectures

Recommended Literature
Additional Literature
  f.matthes, 7-dec-1998