Logo ÉTS
Session
Cours
Responsable(s) Iannick Gagnon

Se connecter
 

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

Responsable(s) de cours : Iannick Gagnon


PLAN DE COURS

Automne 2025
TCH017 : Architecture des ordinateurs (3 crédits)





Préalables
Aucun préalable requis
Unités d'agrément




Qualités de l'ingénieur

Qn
Qualité visée dans ce cours  
Qn
  Qualité visée dans un autre cours  
  Indicateur enseigné
  Indicateur évalué
  Indicateur enseigné et évalué



Descriptif 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



Objectifs du cours

Ce cours a pour objectif de permettre à l'étudiant(e):

  • d'identifier les principales composantes matérielles d’un ordinateur et leurs rôles;
  • de manipuler des nombres sous forme binaire et hexadécimale;
  • d'écrire un programme à l’aide du langage assembleur d’une machine virtuelle.

De façon plus spécifique, ce cours permet à l’étudiant(e):

  • de comprendre le fonctionnement fondamental d'un ordinateur et de ses composants;
  • d'apprendre les instructions d'un environnement de programmation en langage assembleur;
  • de résoudre des problèmes et de les coder en langage assembleur.



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 Lundi 09:00 - 12:30 Activité de cours
Mercredi 08:15 - 10:15 Laboratoire (Groupe A)
Mercredi 10:30 - 12:30 Laboratoire (Groupe B)
02 Mercredi 13:30 - 17:00 Activité de cours
Vendredi 08:15 - 10:15 Laboratoire (Groupe A)
Vendredi 10:30 - 12:30 Laboratoire (Groupe B)
03 Mercredi 13:30 - 15:30 Laboratoire (Groupe A)
Mercredi 15:45 - 17:45 Laboratoire (Groupe B)
Vendredi 09:00 - 12:30 Activité de cours
04 Mardi 13:30 - 15:30 Laboratoire (Groupe A)
Mardi 15:45 - 17:45 Laboratoire (Groupe B)
Vendredi 13:30 - 17:00 Activité de cours



Coordonnées du personnel enseignant le cours
Groupe Nom Activité Courriel Local Disponibilité
01 Stéphane Duval Activité de cours Stephane.Duval@etsmtl.ca B-2520
01 Stéphane Duval Laboratoire (Groupe A) Stephane.Duval@etsmtl.ca B-2520
02 Stéphane Duval Activité de cours Stephane.Duval@etsmtl.ca B-2520
02 Stéphane Duval Laboratoire (Groupe A) Stephane.Duval@etsmtl.ca B-2520
03 Lazhar Khelifi Activité de cours lazhar.khelifi@etsmtl.ca B-2568
03 Laboratoire (Groupe A)
04 Lazhar Khelifi Activité de cours lazhar.khelifi@etsmtl.ca B-2568
04 Laboratoire (Groupe A)



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

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 29 septembre 24 septembre 3 octobre 3 octobre

Examen intra 2
(3 heures)

15%

8 27 octobre 29 octobre 7 novembre 7 novembre

Travail #1

10%

9 3 novembre 5 novembre 15 novembre 15 novembre

Travail #2

10%

13 1er décembre 3 décembre 13 décembre 13 décembre

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. 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.



Double seuil
Note minimale : 50



Dates des examens intra
# Intra Groupe(s) Date
1 1 29 septembre 2025
1 2 24 septembre 2025
1 3, 4 3 octobre 2025
2 1 27 octobre 2025
2 2 29 octobre 2025
2 3, 4 7 novembre 2025



Date de l'examen final
Votre examen final aura lieu pendant la période des examens finaux, veuillez consulter l'horaire à l'adresse suivante : https://www.etsmtl.ca/programmes-et-formations/horaire-des-examens-finaux


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 l’enseignante ou l’enseignant du cours.



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