Ancien cours d'Architecture des Ordinateurs
Dispensé jusqu'en 2019
Objectif
Le cours d'Architecture des Ordinateurs aborde plusieurs aspects liés à la compréhension du fonctionnement d'un ordinateur. On se focalise sur les points suivants :
- algèbre de Boole et simplification de fonctions booléennes qui servent également en logique et démonstration automatique
- circuits logiques (additionneur, multiplexeur, ...)
- fonctionnement d'un microprocesseur de type x86
- compréhension et programmation en assembleur x86 (partie centrale du cours)
- mémoire et mémoire cache
- aperçu des dernières nouveautés architecturales (Intel,AMD)
Contenu
Cours (12h)
TD (10h)
TP (18h)
utilisez le package Ubuntu nasm ou alors télécharger et installer depuis nasm.us
- TP 1 : prise en main de nasm
- TP 2 : copie de tableaux
- TP 3 : somme de deux vecteurs d'entiers
- TP 4 : calculs avec entiers et réels
- TP 5 : produit scalaire
- TP 6 : vecteurs de bits
- TP 7 : produit de matrice par un vecteur
Projet
- 2017-18 : même sujet qu'en 2016-2017
- 2016-17 : sujet
- 2013-14 : amélioration d'une fonction de calcul
- 2012-13 : amélioration d'une fonction de calcul
- 2011-12 : au choix
- cheat-sheet ou Quick Reference Card pour l'assembleur x86.
- implantation de la fonction chr_replace, sujet au format pdf
- 2010-11 : calculatrice vertorielle pour flottants simple précision avec SSE : sujet au format pdf
- 2009-10 : implantation SSE de l'algorithme de Needleman et Wunsch pdf, fichiersequences1.txt
Examens
Contrôle des connaissances
- contrôle continu : 1h30 à 2h00
- examen final : 2h00
Bibliographie
- Guide to Assembly Language Programming in Linux 2005 (à télécharger)
- The Definitive Guide to GCC, William Von Hagen, Apress, 2006, ISBN 1-59059-585-8
- The Intel Microprocessors, Barry B. Brey, Pearson Education, ISBN 7-04-010098-3
- 32/64-Bit 80x86 Assembly Language Architecture, James C. Leiterman, Wordware Publishing Inc, 2005, ISBN 1-59822-002-0
- Code Optimization : effective memory usage, Kris Kaspersky, A-List, 2003, ISBN 1-931769-24-9
- Inside the Machine, John Stokes, Ars Technica Library, No Starch Press, Inc., 2007, ISBN 1-59327-104-2
- Organisation et architecture de l'ordinateur, William Stallings, Pearson Education France, 6eme Edition, 2003, ISBN 2-7440-7007-6
- Les processeurs Itanium : programmation et optimisation, Smail Niar, Jamel Tayeb, Eyrolles, 2005, ISBN 2-212-11536-9
- 8086/8088 : fonctionnement et programmation, James W. Coffron, Sybex, 1984, ISBN 2-7361-0546-X
- Le PC : architecture, maintenance et mise à niveau, Scott Mueller, 7eme Edition, CampusPress, 2004, ISBN 2-7440-1692-6
- Le micro : architecture matérielle et logicielle, Christian Schuller, Ellipses, 2000, ISBN 2-7298-0194-4