Rechercher Se connecter FR EN

Architecture des ordinateurs et programmation assembleurInitiation Système et Réseau (STI)

FISEFISA STI Semestre 5 Tronc Commun

Architecture des ordinateurs et programmation assembleur

Unité d'enseignement Initiation Système et Réseau · S05T_SMI1  |  Code EC S05T_SMI1-2
9ECTS (UE)
1.5Coefficient
32:00Heures

Séquencement

C TD C TD C TD C TD C TD C TD C C C C C C TP TP

Objectifs pédagogiques

Ce cours est une introduction à l'architecture matérielle des ordinateurs au travers de l'étude du fonctionnement d'un système minimal à micro-instructions. Mise en pratique de ces notions lors de l'analyse des architectures matérielles des PC.

Le but est d’étudier les concepts et la programmation en langage assembleur sur des architectures de type x86. Ce cours vise également les méthodes de l’analyse et le débogage du code assembleur. La mise en pratique des notions abordées par l’analyse et la programmation en assembleur de nombreux algorithmes.

Pré-requis

ModuleUnité d'enseignementSemestre
Programmation CPrincipes de la programmationS5
Algorithmique et ComplexitéPrincipes de la programmationS5

Programme

  • Historique de l'évolution des systèmes calculateurs,
  • Structure d'un système à microprocesseur,
  • Composants de la couche physique,
  • Architecture micro-programmée d'un CPU,
  • Codage des micro-instructions,
  • Les instructions machine et les modes d'adressages,
  • Architectures parallèles, RISC, CISC,
  • Architecture matérielle des PC,
  • Cartes mères, BIOS, mémoires, les entrées/sorties.
  1. Architecture des processeurs Intel x86
  2. Concepts fondamentaux et principes du langage assembleur
  3. Les instructions x86
  4. Tableaux et chaînes de caractères
  5. Procédures et interuptions
  6. Calculs flottants
  7. Interface avec les langages haut niveau
  8. Programmation avancée

Modalités d'évaluation

Examen Final Examens écrit et sur machine

Références bibliographiques

  • Irvine, Kip ; Engler, Olivier, "Assembleur X86", CampusPress
  • Carter, Nicholas P. ; Fabre, Patrick, "Architecture de l'ordinateur", Ediscience

Compétences

3
Réf.VerbeDescriptionNiveau
C2_2reconnaîtreles principes de base de la programmation assembleur3
C2_2analyserun code assembleur et remonter au pseudo-code1
C2_3concevoirdu code assembleur à partir d'un algorithme ou pseudo code3

Compétences SecNumEdu

CompétenceHeures coursHeures pratiqueNiveau entréeNiveau sortie
Sécurité de l’électronique et des architectures matérielles3301
Architecture des ordinateurs, Architecture matérielle, microprocesseur, cartes mères, BIOS, mémoires, les entrées/sorties.
Rétro-ingénierie2.662.6601
rétro ingénierie des programmes écrits en langage assembleur, étude et modification de binaires. Etude des formats d'exécutables, utilisation de gdb.