* Ces horaires sont donnés à titre indicatif.
Le cours est une introduction approfondie aux principes fondamentaux qui sous-tendent le fonctionnement des ordinateurs modernes. Il offre aux étudiants une description claire et détaillée de l'architecture interne des ordinateurs, en se concentrant sur quatre domaines clés : la logique booléenne, les circuits temporisés, le fonctionnement d'un processeur et le langage assembleur.
Le cours débute par une exploration approfondie de la logique booléenne, qui est à la base de tous les systèmes informatiques. Les étudiants apprendront les principes fondamentaux de la logique booléenne, y compris les opérations logiques, les tables de vérité et les portes logiques. Ils acquerront une compréhension solide des concepts de base tels que les variables booléennes, les expressions booléennes et les fonctions logiques, ainsi que leur application dans la conception de circuits numériques.
Ensuite, le cours se concentre sur la mémoire, l'un des éléments essentiels de tout système informatique. Les étudiants découvriront comment retenir de l'information. Nous verrons ensuite comment construire des circuits temporisés, c'est-à-dire dont la sortie évolue en fonction du temps. Le cours aborde ensuite le processeur, qui est le cœur de tout système informatique. Les étudiants étudieront l'architecture du processeur, le jeu d'instructions et le principe de l'exécution des instructions. Ils se familiariseront avec les composants clés du processeur, tels que l'unité de contrôle, l'unité arithmétique et logique (ALU) et les registres.
Enfin, le cours explore l'assembleur, qui est un langage de programmation bas niveau spécifique à une architecture. Les étudiants apprendront les principes de base de l'assembleur, y compris la syntaxe, les instructions et les registres. Ils acquerront des compétences pratiques en écrivant et en déboguant des programmes assembleur simples, ce qui leur permettra de comprendre le lien entre le code assembleur et l'architecture matérielle sous-jacente.
Ce cours combine une approche théorique avec des exemples pratiques et des exercices, offrant aux étudiants une base solide dans le domaine de l'architecture des ordinateurs. Il fera aussi des parallèles avec le cours de compilation ayant lieu au même semestre. À la fin du cours, un projet sera réalisé par les étudiants ; ils devront construire leur propre processeur.