Logo ÉTS
Session
Cours
Responsable(s) Florent Hernandez

Se connecter
 

Sauvegarde réussie
La notification a été envoyée
Echec de sauvegarde
Avertissement
École de technologie supérieure

Responsable(s) de cours : Florent Hernandez


PLAN DE COURS

Hiver 2026
TCH017 : Architecture des ordinateurs (3 crédits)


Préalables
Aucun préalable requis.



Description du cours
Ce cours ne peut être reconnu dans le cadre d’un programme de baccalauréat.

Ce cours vise à initier l’étudiante ou l’étudiant au rôle des différentes composantes matérielles d’un ordinateur.

Au terme de ce cours, l’étudiante ou l’étudiant sera en mesure de : identifier les principales composantes matérielles d’un ordinateur et leurs rôles; manipuler des nombres sous forme binaire et hexadécimale; écrire un programme à l’aide du langage assembleur d’une machine virtuelle.

Architecture de base d’un ordinateur : unités de stockage, d’entrées/sorties, de contrôle, arithmétique et logique, bus de données et types de mémoires. Éléments de base du langage assembleur : opérations booléennes et arithmétiques avec les entiers, modes d’adressage, structures de contrôle, appels de fonctions, variables locales et entrées/sorties. Notations binaire et hexadécimale. Calculs en virgule flottante. Composition et fonctionnement d’un processeur : registres, instructions-machine, unité de contrôle et unité arithmétique/logique. Modes d’adressage et cycle d’instructions. Organisation et adressage de la mémoire. Bases du traitement parallèle : en pipeline, matriciel et multiprocesseur



Stratégies pédagogiques

3 heures de cours magistral par semaine
3 heures de laboratoire par semaine

Le matériel (c.-à-d. notes de cours, carnets, etc.) est disponible sur la page Moodle du cours à l'adresse : https://ena.etsmtl.ca. Du matériel pédagogique supplémentaire pourrait vous être fourni par l'enseignant(e).

Les objectifs principaux des laboratoires sont :

  • la mise en pratique des notions vues en cours à travers des exercices proposés par l'enseignant(e);
  • le développement de programmes donnés en travaux pratiques.



Utilisation d’appareils électroniques

Chaque étudiant(e) doit disposer d'un ordinateur portable permettant d'exécuter l'environnement de développement utilisée dans le cours.




Horaire
Groupe Jour Heure Activité
01 Mardi 09:00 - 12:30 Activité de cours
Jeudi 13:30 - 15:30 TP/Laboratoire (Groupe A)
Jeudi 15:45 - 17:45 TP/Laboratoire (Groupe B)
02 Mardi 09:00 - 12:30 Activité de cours
Mercredi 13:30 - 15:30 TP/Laboratoire (Groupe A)
Mercredi 15:45 - 17:45 TP/Laboratoire (Groupe B)



Coordonnées du personnel enseignant le cours
Groupe Nom Activité Courriel Local Disponibilité
01 Charles Pillet Activité de cours charles.pillet@lacime.etsmtl.ca
01 Charles Pillet Activité de cours charles.pillet@lacime.etsmtl.ca B-2566
01 Charles Pillet TP/Laboratoire (Groupe A) charles.pillet@lacime.etsmtl.ca
01 Charles Pillet TP/Laboratoire (Groupe A) charles.pillet@lacime.etsmtl.ca B-2566
02 Simon Pichette Activité de cours Simon.Pichette@etsmtl.ca
02 Simon Pichette Activité de cours Simon.Pichette@etsmtl.ca B-2568
02 Simon Pichette TP/Laboratoire (Groupe A) Simon.Pichette@etsmtl.ca
02 Simon Pichette TP/Laboratoire (Groupe A) Simon.Pichette@etsmtl.ca B-2568



Cours

BLOCS

MATIÈRE

1

Architecture de l'ordinateur

- Architectures von Neumann et Harvard

- Processeur, cartes (PCI et mémoire), bus et périphériques d’entrées et de sorties.

- Types de mémoire (RAM, ROM, PROM, EPROM, EEPROM, flash, cache)

- Mémoire virtuelle

Bases numériques (binaire, décimale, hexadécimale et octale).

Représentation des nombres et des symboles

- Entiers
- Caractères alphabétiques
- Nombres réels en simple et double précision (norme IEEE-754)

Composition d’un processeur

- Bus de données, registres, unités arithmétique et logique (UAL), de stockage, et de contrôle-commande (UCC).

2

Fonctionnement d’un processeur

- Mémoire : tas (heap), pile (stack), pointeur de pile (stack pointer) et compteur ordinal (program counter).

Programmation à l’aide du langage assembleur d’une machine virtuelle

- Éléments de base du langage assembleur
              - Instructions machine - Pep/8 (LDA, STA, ADDSP, SUBSP, etc.)

- Comparaison booléenne
              - Branchements (absolu, relatif, etc.)

- Variables locales (.WORD, .BYTE, etc.)
- Entrées/sorties (deci, chari, deco, charo)
- Structures de contrôle (if, while, for)
- Arithmétique avec les entiers
- Modes d'adressage: implicite (i), direct (d), indirect (n), etc.

Programme principal sans sous-programmes

3

Programmation à l’aide du langage assembleur d’une machine virtuelle (suite)

- Appel (call) et écriture de sous-programmes avec et sans paramètres

- Tableaux

- Enregistrements

- Programme principal avec sous-programmes et passage de paramètres

Bases du traitement parallèle  (branchements, dépendances, instructions) :

            - Pipeline (SISD)

            - Matriciel (SIMD)

            - Multiprocesseurs (MIMD)

 




Laboratoires et travaux pratiques

Trois heures de laboratoire par semaine pour un total de 36 heures.




Utilisation d'outils d'ingénierie

S.O.




Évaluation


Informations additionnelles :

Les dates de remise des travaux pratiques dans ce tableau sont données à titre indicatif. En cours de session, votre enseignant(e) vous fera part à l’avance de tout changement.

Évaluation Pondération Semaine(s) Groupe 01 Groupe 02 Groupe 03 Groupe 04
Évaluation continue 10% 1 à 10 - -    

Examen intra 1
(3 heures)

15%

4 27 janvier 27 janvier    

Examen intra 2
(3 heures)

15%

8 24 février 24 février    

Travail #1

10%

9 8 mars 8 mars    

Travail #2

10%

13 17 avril 17 avril    

Examen final
(3 heures)

40%

Période des examens finaux

À propos de l'évaluation continue : 

  • L'évaluation continue représente 10 % des points qui sont à la discrétion de l'enseignante ou de l'enseignant qui peut, sans toutefois s'y limiter, les distribuer sur des travaux pendant ou à l'extérieur des séances de cours et de laboratoire. Les modalités spécifiques vous seront communiquées par votre enseignante ou votre enseignant.

À propos des travaux pratiques :

  • Les travaux pratiques sont communs à tous les groupes et visent à mettre en application, dans le cadre d'un problème réaliste, les concepts et les méthodes de programmation enseignés pendant les cours théoriques. Il est attendu des étudiant(e)s qu'ils produisent des travaux permettant de résoudre le problème de l'énoncé MAIS SURTOUT qu'ils les réalisent selon les standards de qualité et les bonnes pratiques enseignés. La cohérence et l'optimalité des algorithmes implémentés constituent également des critères importants qui seront considérés. En tout état de cause, la note attribuée à l'exécution correcte du programme ne pourra excéder 40 % de la note globale d'un travail pratique.
     
  • Pour chaque travail pratique, l’enseignante ou l'enseignant indiquera sur l’énoncé s’il doit être réalisé en équipe et, si tel est le cas, la taille de l’équipe. Une équipe ne doit remettre qu’un seul travail.
     
  • Il est à noter que pour les travaux en équipe, chaque membre recevra une note inférieure ou égale à la note obtenue par l'équipe. Cette note individuelle est directement proportionnelle à l'implication de l'individu. La méthode d’évaluation de l’implication de chaque
    individu est laissée à la discrétion de l'enseignante ou de l'enseignant.

À propos des examens :

  •  Les examens ont lieu en présence.

À propos de l'examen final :

  • Aucune documentation et aucun accès Internet n'est permis.
  • Aucun appareil électronique (téléphone, tablette,etc.) n'est permis autre qu'un ordinateur personnel lorsque l'examen est sur ordinateur.

Double seuil : 

  • Une note moyenne pondérée de 50 % est exigée pour l’ensemble des évaluations à caractère individuel. Seuls les examens intras et final sont utilisés dans le calcul du double seuil. Ce seuil est une condition nécessaire à la réussite du cours mais ne la garantit pas.

À propos de la langue utilisée :

  • Afin de respecter les exigences relatives à la langue française, le code et les commentaires de code doivent être principalement en français tel que c'est le cas pour tous les exemples et documents qui seront fournis aux étudiantes et étudiants.



Seuil de passage pour les éléments à caractère individuel

Note minimale : 50



Dates des examens intra
Groupe(s) Date
1 27 janvier 2026
1, 2 24 février 2026
2 27 janvier 2025



Politique de retard des travaux
Tout travail (devoir pratique, rapport de laboratoire, rapport de projet, etc.) remis en retard sans motif valable, c’est-à-dire autre que ceux mentionnés dans le Règlement des études (1er cycle, article 7.2.5/ cycles supérieurs, article 6.5.2) se verra attribuer la note zéro, à moins que d’autres dispositions ne soient communiquées par écrit par l’enseignante ou l’enseignant dans les consignes de chaque travail à remettre ou dans le plan de cours pour l’ensemble des travaux.



Absence à une évaluation

Afin de faire valider une absence à une évaluation en vue d’obtenir un examen de compensation, l’étudiante ou l’étudiant doit utiliser le formulaire prévu à cet effet dans son portail MonÉTS pour un examen final qui se déroule durant la période des examens finaux ou pour tout autre élément d’évaluation surveillé de 15% et plus durant la session. Si l’absence concerne un élément d’évaluation de moins de 15% durant la session, l’étudiant ou l’étudiante doit soumettre une demande par écrit à son enseignante ou enseignant.

Toute demande de validation d’absence doit se faire dans les cinq (5) jours ouvrables suivant la tenue de l’évaluation, sauf dans les cas d’une absence pour participation à une activité prévue aux règlements des études où la demande doit être soumise dans les cinq (5) jours ouvrables avant le jour de départ de l’ÉTS pour se rendre à l’activité.

Toute absence non justifiée par un motif majeur (voir articles 7.2.6.1 du RÉPC et 6.5.2 du RÉCS) entraînera l’attribution de la note zéro (0).




Infractions de nature académique
Les clauses du « Règlement sur les infractions de nature académique de l’ÉTS » s’appliquent dans ce cours ainsi que dans tous les cours du département. Les étudiantes et les étudiants doivent consulter le Règlement sur les infractions de nature académique (www.etsmtl.ca/a-propos/gouvernance/secretariat-general/cadre-reglementaire/reglement-sur-les-infractions-de-nature-academique) pour identifier les actes considérés comme étant des infractions de nature académique ainsi que prendre connaissance des sanctions prévues à cet effet. À l’ÉTS, le respect de la propriété intellectuelle est une valeur essentielle et tous les membres de la communauté étudiante sont invités à consulter la page Citer, pas plagier ! (www.etsmtl.ca/Etudiants-actuels/Baccalaureat/Citer-pas-plagier).

Systèmes d’intelligence artificielle générative (SIAG)
L’utilisation des systèmes d’intelligence artificielle générative (SIAG) dans les activités d’évaluation constitue une infraction de nature académique au sens du Règlement sur les infractions de nature académique, sauf si elle est explicitement autorisée par la personne enseignante du cours ou la personne coordonnatrice dans le cas des stages.



Documentation obligatoire

Aucune.




Ouvrages de références

Les références suivantes ne sont pas obligatoires, car le matériel qui vous sera fourni est suffisant. Toutefois, notez que le langage assembleur Pep/8 utilisé dans le cours fut introduit à la référence no.1 ci-dessous (Warford, 2010).

Les références nos. 2, 3 et 5 sont abordables et accessibles à votre niveau. La référence no. 5 est plus avancée et vous pourriez la réutiliser au niveau du baccalauréat.

RÉFÉRENCES INTÉRESSANTES

  1. Stanley J. Warford. Computer Science. Jones and Bartlet Publisher, 4e édition, 2010 : https://computersystemsbook.com/
  2. Nicholas Carter. Schaum's Outline of Computer Architecture, 2002.
  3. John C. Scott. But How Do It Know?, 2009.
  4. Kenneth  Hoganson. Concepts in Computing, 2008.
  5. David A. Patterson & John L. Hennessey. Computer Organization and Design, 5e édition, 2014.



Adresse internet du site de cours et autres liens utiles

LIENS INTERNET

  • Le site du cours se trouve sur Moodle : cliquez ici
  • Livre Web qui couvre l'architecture de l'ordinateur du point de vue de la programmation : cliquez ici