Architecture des ordinateurs TD 1

Dimension: px
Commencer à balayer dès la page:

Download "Architecture des ordinateurs TD 1"

Transcription

1 Architecture des ordinateurs TD 1 ENSIMAG 1 re année April 29, 2008 Imprimer pour chaque étudiant le listing des instructions (page 36 de la doc, ou page 2 du chapitre 7). Pas la peine de tout imprimer. 1 Découverte du processeur Soit un processeur, équipé de 4 registres internes de 8 bits (nommés r0, r1, r2 et r3) et d un bus adresse sur 16 bits. Son jeu d instruction est le suivant : st stocke la valeur du registre ri dans l octet d ; ri stocke le contenu de l octet d dans le registre ri ; op rs, rd stocke le résultat de l opération dans le registre rd, avec op appartenant à : add : rd = rs + rd ; sub : rd = rd rs (Attention au sens des opérandes!) ; and : rd = rs & rd ; or : rd = rs rd ; xor : rd = rsˆrd; not : rd = rd ; shl : rd = rd << 1 ; shr : rd = rd >> 1 (décalage arithmétique). On veut écrire un programme destiné à ce processeur et qui réalise le calcul : A = 2 (B + C) 18. On pose que le contenu de la variable A est à l adresse 0x1230, celui de B à l adresse 0x1231 et celui de C à l adresse 0x1232. On peut stocker des constantes à partir de l adresse 0x2000. Question 1 Quel doit être le contenu de la mémoire avant l exécution du programme si on veut que B soit égal à 10 et C à 26? Adresse Valeur Note 0x1230 non-définie variable A 0x variable B 0x variable C 0x constante Question 2 Ecrire un programme utilisant le jeu d instruction du processeur et calculant A = 2 (B + C) 18. 1

2 ld 0x1231, r0 ld 0x1232, r1 add r1, r0 shl r0, r0 ld 0x2000, r1 sub r0, r1 st r0, 0x1230 Question 3 Proposer un codage astucieux de chaque instruction en minimisant la taille d une instruction. Calculons l espace nécessaire pour une instruction : pour coder le numéro d un registre, on a besoin de 2 bits ; si on décompose les instructions en deux catégories (opérations et autres), on a besoin d un bit pour la décomposition et de 3 bits pour les opérations (il y en a 8) ; pour coder une adresse mémoire, on a besoin de 2 octets. On choisit d avoir des instructions de tailles variables selon si l instruction accède ou pas à la mémoire. Pour une opération comme add r0, r1 par exemple, on va avoir besoin de = 8 bits (1 bit pour dire qu il s agit d une opération, 3 pour coder l opération, 2 pour chaque registre). Pour une instruction n étant pas une opération (i.e. st et ld dans notre cas), on choisit de «gâcher» de la place dans le codop de façon à avoir une taille d instruction égale à un nombre entiers d octets. On peut donc proposer le codage suivant : Opérations : catégorie (= 0) action registre source registre destination Autres : catégorie (= 1) action registre adresse (1 er octet) adresse (2 e octet) Pour les opérations, on peut par exemple choisir les codages suivants pour le champ action : add : 000, sub : 001, shl : 110, etc. Pour les accès mémoire, on pose par exemple st : et ld : Noter qu on peut choisir l ordre de stockage des deux octets de l adresse pour les instructions st et ld : big-endian (i.e. l octet de poids fort en premier) ou little-endian (i.e. l octet de poids faible en premier). Question 4 Combien de combinaisons reste-t-il au maximum pour coder d autres instructions? Si on décide par exemple d utiliser le codage (resp ) pour l instruction st (resp. ld), on peut utiliser toutes les autres valeurs disponibles pour les bits 6, 5, 4, 3 et 2, soit valeurs. De plus, si les instructions ajoutées n utilisent pas de registre, on peut récupérer les bits 1 et 0 pour coder les instructions. Il reste donc au maximum (2 5 2) 2 2 = 120 valeurs possibles. Question 5 En supposant que le processeur va chercher la 1 re instruction du programme à l adresse 0x4000, donner le contenu de la mémoire avant l exécution du programme. On décide par exemple que les adresses sont codées en big-endian dans les instructions. Adresse Valeur Instruction 0x4000 0x84 ld 0x1231, r0 0x4001 0x12 0x4002 0x31 0x4003 0x85 ld 0x1232, r1 0x4004 0x12 0x4005 0x32 0x4006 0x04 add r1, r0 2 Adresse Valeur Instruction 0x4007 0x60 shl r0, r0 0x4008 0x85 ld 0x2000, r1 0x4009 0x20 0x400A 0x00 0x400B 0x11 sub r0, r1 0x400C 0x80 st r0, 0x1230 0x400D 0x12 0x400E 0x30

3 Question 6 Dessiner un chronogramme pour l exécution des deux premières instructions ld ainsi que pour le st final, sur lequel apparaitront les adresses auxquelles le processeur va lire les données, les données lues et les signaux de commande à destination de la mémoire. On note fetch l action «lire l instruction en mémoire» et exec l action «exécuter l instruction». fetch "ld 0x1231, r0" exec "ld 0x1231, r0" fetch "ld 0x1232, r1" exec "ld 0x1232, r1" Adresse (16 bits) 0x4000 0x4001 0x4002 0x1231 0x4003 0x4004 0x4005 0x1232 Donnée (8 bits) 0x84 0x12 0x x85 0x12 0x32 26 Commande R R R R R R R R exec "st r0, 1230" Temps fetch "st r0, 0x1230" Adresse 0x400C 0x400D 0x400E 0x1230 Donnée 0x80 0x12 0x30 54 Commande R R R W Question 7 Compléter le pseudo-algorithme donné ci-dessous et qui décrit le comportement du processeur. PC := 0x4000; while True loop... case IR[codop] is when ADD =>... end case; PC := PC + 1; 3

4 PC := 0x4000; while True loop Bus adresse PC; IR Bus donnée; case IR[codop] is when ADD rd := rs + rd; when SUB rd := rs - rd;... when LD PC := PC + 1; Bus adresse PC; ADH := Bus donnée; PC := PC + 1; Bus adresse PC; ADL := Bus donnée; Bus address ADHL; ri Bus donnée; when ST PC := PC + 1; Bus adresse PC; ADH := Bus donnée; PC := PC + 1; Bus adresse PC; ADL := Bus donnée; Bus address ADHL; Bus donnée ri; end case; PC := PC + 1; Avec : PC : le program counter est un registre 16 bits contenant l adresse de l instruction courante ; IR : registre 8 bits interne pour stocker le 1 er octet de l instruction courante ; ADHL : registre 16 bits interne pour stocker une adresse et pouvant être accédé comme 2 registres 8 bits avec les mnémoniques ADH (partie haute) et ADL (partie basse). Question 8 Quelle est la valeur de Res à la fin de l exécution du programme ci-dessous? Cpt := B; Res := 0; while Cpt /= 0 loop Res := Res + A; Cpt := Cpt - 1; Res = A B Question 9 Quelles instructions élémentaires doit-on rajouter pour pouvoir écrire ce programme avec le jeu d instruction proposé? Écrire le programme avec ces instructions. Il manque des instructions de branchement, par exemple qui branche toujours vers l et qui provoque un branchement à l si le résultat de l opération précédente est nul. Supposons qu on a le couplage mémoire suivant : Adresse Valeur Note 0x1230 non-définie variable Cpt 0x1231 non-définie variable Res 0x2000 A constante 0x2001 B constante 0x constante 4

5 On donne la tradution systématique (non optimisée) du code : -- Cpt := B ld 0x2001, r0 st r0, 0x Res := 0 xor r0, r0 st r0, 0x1231 L0: -- while Cpt /= 0 loop ld 0x1230, r0 xor r1, r1 sub r0, r1 jz L1 -- Res := Res + A ld 0x1231, r0 ld 0x2000, r1 add r0, r1 st r1, 0x Cpt := Cpt - 1 ld 0x1230, r0 ld 0x2002, r1 sub r0, r1 st r0, 0x1230 jmp L0 L1: 2 Microprocesseurs spécialisés On utilise couramment des processeurs spécialisés pour réaliser des tâches spécifiques, comme par exemple des DSP spécialisés dans le traitement du signal audio, ou des microcontrôleurs intégrant à la fois un processeur et tous ses périphériques sur une seule puce. On utilise ici le microcontrôleur 16F84 vu en TP pour réaliser le décodage d une trame PS/2 (issue d un clavier ou d une souris). On donne l algorithme de décodage suivant (qui n a aucun sens sorti de son contexte comme c est le cas ci-dessous, mais le but n est pas de comprendre son fonctionnement) : Debut loop loop if PORTB[1] = 0 then exit; end if; Res := 0; if PORTB[0] = 0 then exit; end if; for I in loop Res := Res / 2; while PORTB[1] = 0 loop null; while PORTB[1] = 1 loop null; 5

6 Res := OR(Res, PORTB[0] * 128); PORTA <- Res; On décide de coupler les variables de ce programme comme suit : I est stockée dans le registre 0x11 ; Res est stockée dans le registre 0x12 ; C, la retenue d une opération arithmétique et logique, est stockée dans le bit 0 du registre STATUS ; Z, le drapeau indiquant si la dernière opération a eu pour résultat 0, est stocké dans le bit 2 du registre STATUS ; PORTA et PORTB sont des registres accessibles normalement par le programmeur. Question 10 Localiser les tests effectués dans ce programme. Quelles instructions permettent de coder ces tests? Il y a des tests dans les lignes : if PORTB[1] = 0 if PORTB[0] = 0 for I in while PORTB[1] = 0 while PORTB[1] = 1 Pour coder ces tests, on va utiliser les instructions btfss et btfsc. Question 11 Quelles instructions permettent de coder la ligne Res := 0; et l initialisation de I à 0? On utilise les instructions clrf Res et clrf I. Question 12 Quelles instructions permettent de coder la ligne Res := Res / 2;? On utilise l instruction rrf Res, F, en prennant soin de mettre C à 0 avant à l aide de l instruction bcf STATUS, C. Question 13 Quelles instructions permettent de coder la ligne Res := OR(Res, PORTB[0] * 128);? Cette ligne revient à mettre à 1 le bit 7 de Res ssi PORTB[0] vaut 1, on utilise donc la séquence d instructions : btfsc PORTB, 0 bsf Res, 7 Question 14 Ecrire en assembleur les lignes ci-dessous. Debut loop if PORTB[1] = 0 then exit; end if; 6

7 Debut btfsc PORTB, 1 goto Debut Question 15 Donner le contenu de la mémoire contenant le code ci-dessus, en supposant que l adresse de début est 0x24 et que chaque instruction est codée sur 14 bits. Il faut bien noter que les adresses ici ne correspondent pas à un déplacement en octet mais en mot de 14 bits (on peut faire un parallèle avec l arithmétique des pointeurs en C). On a les schémas suivants pour les instructions btfsc et goto : Bit btfsc f, b b b b f f f f f f f goto k k k k k k k k k k k k Soit dans notre cas (puisque PORTB est le registre numéro 6) : Bit btfsc 6, goto 0x On obtient donc le contenu mémoire suivant : Adresse Valeur Note 0x24 0x1886 btfsc PORTB, 1 0x25 0x2824 goto 0x24 Question 16 Traduire le programme complet en assembleur. Debut btfsc PORTB, 1 goto Debut clrf Res btfsc PORTB, 0 goto Debut clrf I L0 movlw 8 subwf I, W btfsc STATUS, Z goto L3 bcf STATUS, C rrf Res, F L1 btfss PORTB, 1 goto L1 L2 btfsc PORTB, 1 goto L2 btfsc PORTB, 0 bsf Res, 7 incf I, F goto L0 L3 movf Res, W movwf PORTA 7

PIC : COURS ASSEMBLEUR

PIC : COURS ASSEMBLEUR PIC : COURS ASSEMBLEUR I) Fonctions de base d une machine informatique Contenir de façon permanente les tâches à exécuter (mémoire programme) en ROM ou sur support magnétique. Contenir de façon temporaire

Plus en détail

Architecture : Circuits numériques et éléments d architecture

Architecture : Circuits numériques et éléments d architecture Ecole Nationale Supérieure d Informatique et de Mathématiques Appliquées Architecture : Circuits numériques et éléments d architecture 1 ère année Année scolaire 2014 2015 Consignes Les exercices de ce

Plus en détail

Licence Sciences et Technologies Examen janvier 2010

Licence Sciences et Technologies Examen janvier 2010 Université de Provence Introduction à l Informatique Licence Sciences et Technologies Examen janvier 2010 Année 2009-10 Aucun document n est autorisé Les exercices peuvent être traités dans le désordre.

Plus en détail

Assembleur. Faculté I&C, André Maurer, Claude Petitpierre

Assembleur. Faculté I&C, André Maurer, Claude Petitpierre Assembleur Faculté I&C, André Maurer, Claude Petitpierre INTRODUCTION Logiciel utilisé Faculté I&C, André Maurer, Claude Petitpierre MEMOIRE Mémoire Faculté I&C, André Maurer, Claude Petitpierre Mémoire

Plus en détail

ASR1 TD7 : Un microprocesseur RISC 16 bits

ASR1 TD7 : Un microprocesseur RISC 16 bits {Â Ö Ñ º ØÖ Ý,È ØÖ ºÄÓ Ù,Æ ÓÐ ºÎ ÝÖ Ø¹ ÖÚ ÐÐÓÒ} Ò ¹ÐÝÓÒº Ö ØØÔ»»Ô Ö Óº Ò ¹ÐÝÓÒº Ö» Ö Ñ º ØÖ Ý»¼ Ö½» ASR1 TD7 : Un microprocesseur RISC 16 bits 13, 20 et 27 novembre 2006 Présentation générale On choisit

Plus en détail

Conception de circuits numériques et architecture des ordinateurs

Conception de circuits numériques et architecture des ordinateurs Conception de circuits numériques et architecture des ordinateurs Frédéric Pétrot Année universitaire 2014-2015 Structure du cours C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 Codage des nombres en base 2, logique

Plus en détail

DU BINAIRE AU MICROPROCESSEUR - D ANGELIS CIRCUITS CONFIGURABLES NOTION DE PROGRAMMATION

DU BINAIRE AU MICROPROCESSEUR - D ANGELIS CIRCUITS CONFIGURABLES NOTION DE PROGRAMMATION 145 NOTION DE PROGRAMMATION 1/ Complétons notre microprocesseur Nous avons, dans les leçons précédentes décrit un microprocesseur théorique, cependant il s inspire du 6800, premier microprocesseur conçu

Plus en détail

Rappels d architecture

Rappels d architecture Assembleur Rappels d architecture Un ordinateur se compose principalement d un processeur, de mémoire. On y attache ensuite des périphériques, mais ils sont optionnels. données : disque dur, etc entrée

Plus en détail

Contraintes, particularités. 1. Généralités... 2. 2. Gestion de la mémoire... 2. a. Type des variables et constantes... 2

Contraintes, particularités. 1. Généralités... 2. 2. Gestion de la mémoire... 2. a. Type des variables et constantes... 2 C Embarque Contraintes, particularités 1. Généralités... 2 2. Gestion de la mémoire... 2 a. Type des variables et constantes.... 2 b. Variables locales ou globales... 3 3. Interruptions... 5 4. Imposer

Plus en détail

GPA770 Microélectronique appliquée Exercices série A

GPA770 Microélectronique appliquée Exercices série A GPA770 Microélectronique appliquée Exercices série A 1. Effectuez les calculs suivants sur des nombres binaires en complément à avec une représentation de 8 bits. Est-ce qu il y a débordement en complément

Plus en détail

MICROINFORMATIQUE NOTE D APPLICATION 1 (REV. 2011) ARITHMETIQUE EN ASSEMBLEUR ET EN C

MICROINFORMATIQUE NOTE D APPLICATION 1 (REV. 2011) ARITHMETIQUE EN ASSEMBLEUR ET EN C Haute Ecole d Ingénierie et de Gestion Du Canton du Vaud MICROINFORMATIQUE NOTE D APPLICATION 1 (REV. 2011) ARITHMETIQUE EN ASSEMBLEUR ET EN C Programmation en mode simulation 1. DOCUMENTS DE RÉFÉRENCE...

Plus en détail

Représentation des Nombres

Représentation des Nombres Chapitre 5 Représentation des Nombres 5. Representation des entiers 5.. Principe des représentations en base b Base L entier écrit 344 correspond a 3 mille + 4 cent + dix + 4. Plus généralement a n a n...

Plus en détail

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits Architecture des ordinateurs TD1 - Portes logiques et premiers circuits 1 Rappel : un peu de logique Exercice 1.1 Remplir la table de vérité suivante : a b a + b ab a + b ab a b 0 0 0 1 1 0 1 1 Exercice

Plus en détail

Exécution des instructions machine

Exécution des instructions machine Exécution des instructions machine Eduardo Sanchez EPFL Exemple: le processeur MIPS add a, b, c a = b + c type d'opération (mnémonique) destination du résultat lw a, addr opérandes sources a = mem[addr]

Plus en détail

Informatique Industrielle

Informatique Industrielle Informatique Industrielle Cours Master SIS Micro-contrôleurs Microchip Intervenants : Marc Allain - marc.allain@fresnel.fr Julien Marot - julien.marot@fresnel.fr Coordonnées Marc Allain [Maître de conférence]

Plus en détail

Cours Informatique 1. Monsieur SADOUNI Salheddine

Cours Informatique 1. Monsieur SADOUNI Salheddine Cours Informatique 1 Chapitre 2 les Systèmes Informatique Monsieur SADOUNI Salheddine Un Système Informatique lesystème Informatique est composé de deux parties : -le Matériel : constitué de l unité centrale

Plus en détail

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux. UEO11 COURS/TD 1 Contenu du semestre Cours et TDs sont intégrés L objectif de ce cours équivalent a 6h de cours, 10h de TD et 8h de TP est le suivant : - initiation à l algorithmique - notions de bases

Plus en détail

Assembleur i8086. Philippe Preux IUT Informatique du Littoral. Année universitaire 95 96

Assembleur i8086. Philippe Preux IUT Informatique du Littoral. Année universitaire 95 96 Assembleur i8086 Philippe Preux IUT Informatique du Littoral Année universitaire 95 96 1 Avertissement Ce document décrit le langage d assemblage étudié et utilisé dans le cadre des TP d architecture.

Plus en détail

La mémoire. Un ordinateur. L'octet. Le bit

La mémoire. Un ordinateur. L'octet. Le bit Introduction à l informatique et à la programmation Un ordinateur Un ordinateur est une machine à calculer composée de : un processeur (ou unité centrale) qui effectue les calculs une mémoire qui conserve

Plus en détail

Programmation C. Apprendre à développer des programmes simples dans le langage C

Programmation C. Apprendre à développer des programmes simples dans le langage C Programmation C Apprendre à développer des programmes simples dans le langage C Notes de cours sont disponibles sur http://astro.u-strasbg.fr/scyon/stusm (attention les majuscules sont importantes) Modalités

Plus en détail

ARCEAU DE PARKING MOTORISÉ VIGIPARK

ARCEAU DE PARKING MOTORISÉ VIGIPARK BEP Métiers de l électronique ARCEAU DE PARKING MOTORISÉ VIGIPARK Dossier technique Épreuve EP1 DOSSIER SUPPORT DE L ÉPREUVE EP1 Page 1 / 49 SOMMAIRE 1. ÉTUDE DU SYSTÈME TECHNIQUE...4 1.1. MISE EN SITUATION...4

Plus en détail

Compilation (INF 564)

Compilation (INF 564) Présentation du cours Le processeur MIPS Programmation du MIPS 1 Compilation (INF 564) Introduction & architecture MIPS François Pottier 10 décembre 2014 Présentation du cours Le processeur MIPS Programmation

Plus en détail

Architecture des ordinateurs

Architecture des ordinateurs Architecture des ordinateurs Cours 4 5 novembre 2012 Archi 1/22 Micro-architecture Archi 2/22 Intro Comment assembler les différents circuits vus dans les cours précédents pour fabriquer un processeur?

Plus en détail

Microprocesseur + Logiciel

Microprocesseur + Logiciel Microprocesseur + Logiciel Robot EVALBOT MOHAMED AKIL BUREAU 5253 UNITE IGI 1001 PROGRAMMATION DES MICROPROCESSEURS Présentation [IGI1001] CONTEXTE SCIENTIFIQUE... 4 1. OBJECTIFS DE L UNITE... 6 2. OBJECTIFS

Plus en détail

TD Architecture des ordinateurs. Jean-Luc Dekeyser

TD Architecture des ordinateurs. Jean-Luc Dekeyser TD Architecture des ordinateurs Jean-Luc Dekeyser Fiche 1 Nombres de l informatique Exercice 1 Une entreprise désire réaliser la sauvegarde de ses données sur un site distant. Le volume de données à sauvegarder

Plus en détail

Architecture matérielle des systèmes informatiques

Architecture matérielle des systèmes informatiques Architecture matérielle des systèmes informatiques IDEC, Renens. Version novembre 2003. Avertissement : ce support de cours n est pas destiné à l autoformation et doit impérativement être complété par

Plus en détail

CM2 L architecture MIPS32

CM2 L architecture MIPS32 CM2 L architecture MIPS32 Olivier Marchetti (CM-TD-TP) Alexandre Brière (TD-TP) Laboratoire d informatique de Paris 6 Pôle SoC UPMC Année 2014-2015 Instructions MIPS Contrôle Données en MIPS E/S en MIPS

Plus en détail

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if Pierre Boudes 28 septembre 2011 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike

Plus en détail

Partie 1. Professeur : Haouati Abdelali. CPGE Lycée Omar Ibn Lkhattab - Meknès www.haouati.com haouaticpge@gmail.com

Partie 1. Professeur : Haouati Abdelali. CPGE Lycée Omar Ibn Lkhattab - Meknès www.haouati.com haouaticpge@gmail.com Partie 1 Professeur : Haouati Abdelali CPGE Lycée Omar Ibn Lkhattab - Meknès www.haouati.com haouaticpge@gmail.com Partie I : Généralités et algorithmique de base 1. Environnement matériel et logiciel

Plus en détail

2013 Nos nouveaux outils basés sur Arduino www.didel.com/diduinopub.pdf

2013 Nos nouveaux outils basés sur Arduino www.didel.com/diduinopub.pdf http://www.didel.com/ info@didel.com http://www.bricobot.ch/ info@bricobot.ch www.didel.com/pic/prog877.pdf Apprendre à programmer avec le 16F877A --plus mis à jour voir http://www.didel.com/pic/cours877-1.pdf

Plus en détail

Structure d un programme

Structure d un programme Architecture des ordinateurs Cours 6 Structure d un programme 3 décembre 2012 Archi 1/30 Programme en Assembleur Archi 2/30 Sections de données programme en assembleur = fichier texte (extension.asm) organisé

Plus en détail

Représentation d un entier en base b

Représentation d un entier en base b Représentation d un entier en base b 13 octobre 2012 1 Prérequis Les bases de la programmation en langage sont supposées avoir été travaillées L écriture en base b d un entier est ainsi défini à partir

Plus en détail

PIC 16F84. Philippe Hoppenot

PIC 16F84. Philippe Hoppenot Département GEII PIC 16F84 Philippe Hoppenot hoppenot@lsc.univ-evry.fr http://lsc.univ-evry.fr/~hoppenot/presentationfrancaise.html Ce cours sur le PIC est dispensé en licence professionnelle Concepteurs

Plus en détail

Jeu d instructions NIOS II

Jeu d instructions NIOS II Jeu d instructions NIOS II 1 Formats d instructions Le processeur NIOS II a un jeu d instructions de type RISC. Il possède 32 registres de 32 bits, notés r0 à r31, avec r0 0. Les instructions sont de longueur

Plus en détail

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par

Plus en détail

IV- Comment fonctionne un ordinateur?

IV- Comment fonctionne un ordinateur? 1 IV- Comment fonctionne un ordinateur? L ordinateur est une alliance du hardware (le matériel) et du software (les logiciels). Jusqu à présent, nous avons surtout vu l aspect «matériel», avec les interactions

Plus en détail

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application Université de Provence Licence Math-Info Première Année V. Phan Luong Algorithmique et Programmation en Python Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application 1 Ordinateur Un

Plus en détail

Architecture Matérielle et Logicielle (LIF6) Cahier d'exercices, automne 2014

Architecture Matérielle et Logicielle (LIF6) Cahier d'exercices, automne 2014 Architecture Matérielle et Logicielle (LIF6) Cahier d'exercices, automne 2014 Table des matières 1 Vue d'ensemble de l'ordinateur 4 11 Taille du bus, volume de mémoire centrale 4 12 Petits calculs autour

Plus en détail

Conversion d un entier. Méthode par soustraction

Conversion d un entier. Méthode par soustraction Conversion entre bases Pour passer d un nombre en base b à un nombre en base 10, on utilise l écriture polynomiale décrite précédemment. Pour passer d un nombre en base 10 à un nombre en base b, on peut

Plus en détail

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE QCM Remarque : - A une question correspond au moins 1 réponse juste - Cocher la ou les bonnes réponses Barème : - Une bonne réponse = +1 - Pas de réponse = 0

Plus en détail

1 Architecture du cœur ARM Cortex M3. Le cœur ARM Cortex M3 sera présenté en classe à partir des éléments suivants :

1 Architecture du cœur ARM Cortex M3. Le cœur ARM Cortex M3 sera présenté en classe à partir des éléments suivants : GIF-3002 SMI et Architecture du microprocesseur Ce cours discute de l impact du design du microprocesseur sur le système entier. Il présente d abord l architecture du cœur ARM Cortex M3. Ensuite, le cours

Plus en détail

Un ordinateur, c est quoi?

Un ordinateur, c est quoi? B-A.BA Un ordinateur, c est quoi? Un ordinateur, c est quoi? Un ordinateur est une machine dotée d'une unité de traitement lui permettant d'exécuter des programmes enregistrés. C'est un ensemble de circuits

Plus en détail

Skype (v2.5) Protocol Data Structures (French) Author : Ouanilo MEDEGAN http://www.oklabs.net

Skype (v2.5) Protocol Data Structures (French) Author : Ouanilo MEDEGAN http://www.oklabs.net Skype (v2.5) Protocol Data Structures (French) Author : Ouanilo MEDEGAN http://www.oklabs.net : Champ Encodé SKWRITTEN() : Champ Variable défini Précédemment & définissant l état des champs à suivre ECT

Plus en détail

Cours 1 : La compilation

Cours 1 : La compilation /38 Interprétation des programmes Cours 1 : La compilation Yann Régis-Gianas yrg@pps.univ-paris-diderot.fr PPS - Université Denis Diderot Paris 7 2/38 Qu est-ce que la compilation? Vous avez tous déjà

Plus en détail

UE Programmation Impérative Licence 2ème Année 2014 2015

UE Programmation Impérative Licence 2ème Année 2014 2015 UE Programmation Impérative Licence 2 ème Année 2014 2015 Informations pratiques Équipe Pédagogique Florence Cloppet Neilze Dorta Nicolas Loménie prenom.nom@mi.parisdescartes.fr 2 Programmation Impérative

Plus en détail

USTL - Licence ST-A 1ère année 2005-2006 Codage de l information TP 1 :

USTL - Licence ST-A 1ère année 2005-2006 Codage de l information TP 1 : USTL - Licence ST-A 1ère année 2005-2006 Codage de l information TP 1 : Objectifs du TP Ce TP a pour but 1. de découvrir quelques opérations logiques sur les nombres 2. et quelques formats de fichiers.

Plus en détail

Traduction binaire dynamique de l extension SIMD Néon de l ARMv7 dans Qemu

Traduction binaire dynamique de l extension SIMD Néon de l ARMv7 dans Qemu Travaux d études et de recherches Traduction binaire dynamique de l extension SIMD Néon de l ARMv7 dans Qemu Étudiant : Luc Michel Encadrants : Frédéric Pétrot Nicolas Fournel 23 mai 2010 TABLE DES MATIÈRES

Plus en détail

Programmation assembleur : aperçu

Programmation assembleur : aperçu Assembleur : Younès EL AMRANI. 1 Programmation assembleur : aperçu Programmation en assembleur : NASM Module M14 Semestre 4 Printemps 2010 Equipe pédagogique : Younès El Amrani, Abdelhakim El Imrani, Faissal

Plus en détail

Programmation en langage C d un µcontrôleur PIC à l aide du compilateur C-CCS Sommaire

Programmation en langage C d un µcontrôleur PIC à l aide du compilateur C-CCS Sommaire Programmation en langage C d un µcontrôleur PIC à l aide du compilateur C-CCS CCS Sommaire Généralités sur le langage. 2 Structure d un programme en C.. 3 Les constantes et équivalences.. 4 Les variables...

Plus en détail

Procédure appropriée pour éditer les diagrammes avec ECM Titanium

Procédure appropriée pour éditer les diagrammes avec ECM Titanium Procédure appropriée pour éditer les diagrammes avec ECM Titanium Introduction: Dans ce document vous trouverez toutes les renseignements dont vous avez besoin pour éditer les diagrammes avec le logiciel

Plus en détail

Architecture des ordinateurs : Programmation des processeurs avec l'environnement «y86» (INF155)

Architecture des ordinateurs : Programmation des processeurs avec l'environnement «y86» (INF155) Architecture des ordinateurs : Programmation des processeurs avec l'environnement «y86» (INF155) F. Pellegrini Université Bordeaux 1 Ce document est copiable et distribuable librement et gratuitement à

Plus en détail

Découverte de l ordinateur. Partie matérielle

Découverte de l ordinateur. Partie matérielle Découverte de l ordinateur Partie matérielle SOMMAIRE I L ORDINATEUR ET SES PERIPHERIQUES... 3 1-1 : GENERALITES... 3 1-2 : LES PERIPHERIQUES D ENTREE ET DE SORTIE... 3 II L UNITE CENTRALE... 4 2-1 : GENERALITES...

Plus en détail

Cours 3 : L'ordinateur

Cours 3 : L'ordinateur Cours 3 : L'ordinateur Abdelkrim Zehioua 2éme année Licence Gestion Faculté des sciences Économiques et sciences de Gestion Université A, Mehri - Constantine 2 Plan du cours 1.Définitions de l'ordinateur

Plus en détail

ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview.

ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview. ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview. Sciences et Technologies de l Industrie et du Développement Durable Formation des enseignants parcours : ET24 Modèle de

Plus en détail

Programmation en langage C

Programmation en langage C Programmation en langage C Anne CANTEAUT INRIA - projet CODES B.P. 105 78153 Le Chesnay Cedex Anne.Canteaut@inria.fr http://www-rocq.inria.fr/codes/anne.canteaut/cours C 2 Table des matières 3 Table des

Plus en détail

Solution du challenge SSTIC 2013. Emilien Girault ANSSI/COSSI/DTO/BAI 06/06/13

Solution du challenge SSTIC 2013. Emilien Girault ANSSI/COSSI/DTO/BAI 06/06/13 Solution du challenge SSTIC 2013 Emilien Girault ANSSI/COSSI/DTO/BAI 06/06/13 Plan Analyse d une capture réseau Détermination des canaux cachés Déchiffrement de l archive Etude d un FPGA Déduction du jeu

Plus en détail

THEME 1 : L ORDINATEUR ET SON ENVIRONNEMENT. Objectifs

THEME 1 : L ORDINATEUR ET SON ENVIRONNEMENT. Objectifs Architecture Matérielle des Systèmes Informatiques. S1 BTS Informatique de Gestion 1 ère année THEME 1 : L ORDINATEUR ET SON ENVIRONNEMENT Dossier 1 L environnement informatique. Objectifs Enumérer et

Plus en détail

Programmation sous QT

Programmation sous QT SN IR 1 2014-2015 Développement logiciel Programmation Objet Programmation sous QT Projet Alarme Domestique ~ TD n 6~ Conception et Tests Unitaires Date : mars 2015 Version : 3.2 Référence : TD6 Conception

Plus en détail

Ordinateurs, Structure et Applications

Ordinateurs, Structure et Applications Ordinateurs, Structure et Applications Cours 10, Les interruptions Etienne Tremblay Université Laval, Hiver 2012 Cours 10, p.1 Les interruptions du 8086 Une interruption interrompt l exécution séquentielle

Plus en détail

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions Cours d introduction à l informatique Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions Qu est-ce qu un Une recette de cuisine algorithme? Protocole expérimental

Plus en détail

Gestion mémoire et Représentation intermédiaire

Gestion mémoire et Représentation intermédiaire Gestion mémoire et Représentation intermédiaire Pablo de Oliveira March 23, 2015 I Gestion Memoire Variables locales Les variables locales sont stockées: Soit dans un registre,

Plus en détail

Une version javascript sera disponible directement dans le cours prochainement.

Une version javascript sera disponible directement dans le cours prochainement. Author : Cédric Vanconingsloo Ce cours est principalement axé sur la compréhension du fonctionnement d'un ordinateur et l'étude du seul langage qu'il connaisse, le binaire. De ce fait, le cours est relativement

Plus en détail

TS 35 Numériser. Activité introductive - Exercice et démarche expérimentale en fin d activité Notions et contenus du programme de Terminale S

TS 35 Numériser. Activité introductive - Exercice et démarche expérimentale en fin d activité Notions et contenus du programme de Terminale S FICHE Fiche à destination des enseignants TS 35 Numériser Type d'activité Activité introductive - Exercice et démarche expérimentale en fin d activité Notions et contenus du programme de Terminale S Compétences

Plus en détail

ACTIVITÉ DE PROGRAMMATION

ACTIVITÉ DE PROGRAMMATION ACTIVITÉ DE PROGRAMMATION The purpose of the Implementation Process is to realize a specified system element. ISO/IEC 12207 Sébastien Adam Une introduction 2 Introduction Ø Contenu Utilité de l ordinateur,

Plus en détail

Bases de programmation. Cours 5. Structurer les données

Bases de programmation. Cours 5. Structurer les données Bases de programmation. Cours 5. Structurer les données Pierre Boudes 1 er décembre 2014 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License. Types char et

Plus en détail

Architecture des ordinateurs Introduction à l informatique

Architecture des ordinateurs Introduction à l informatique Architecture des ordinateurs Introduction à l informatique 17 septembre 2004 1 2 3 4 5 6 Les interrupteurs... 0V 5V Ce sont des composants électroniques qui laissent pser un courant principal lorsque la

Plus en détail

Licence ST Université Claude Bernard Lyon I LIF1 : Algorithmique et Programmation C Bases du langage C 1 Conclusion de la dernière fois Introduction de l algorithmique générale pour permettre de traiter

Plus en détail

Structure de base d un ordinateur

Structure de base d un ordinateur Structure de base d un ordinateur 1-Définition de l ordinateur L ordinateur est un appareil électronique programmable qui traite automatiquement les informations. Il est constitué de l unité centrale et

Plus en détail

Hubert & Bruno Lundi 12 octobre 2009 SAINT-QUENTIN (02)

Hubert & Bruno Lundi 12 octobre 2009 SAINT-QUENTIN (02) Hubert & Bruno Lundi 12 octobre 2009 SAINT-QUENTIN (02) Ne rien livrer au hasard, c est économiser du travail Pont Sainte Maxence(O C est quoi USB? Comment ça marche? Les standards? La technique en détail

Plus en détail

Transmission d informations sur le réseau électrique

Transmission d informations sur le réseau électrique Transmission d informations sur le réseau électrique Introduction Remarques Toutes les questions en italique devront être préparées par écrit avant la séance du TP. Les préparations seront ramassées en

Plus en détail

Proteus VSM. manuel_vsm.doc

Proteus VSM. manuel_vsm.doc Manuel Utilisateur Proteus VSM Circuits Animés Interactifs (Proteus VSM - Août 2000) Multipower manuel_vsm.doc SOMMAIRE SOMMAIRE...... 2 TUTORIELS...... 4 TUTORIEL DE LA SIMULATION INTERACTIVE...4 Introduction...4

Plus en détail

Cours 1 : Qu est-ce que la programmation?

Cours 1 : Qu est-ce que la programmation? 1/65 Introduction à la programmation Cours 1 : Qu est-ce que la programmation? Yann Régis-Gianas yrg@pps.univ-paris-diderot.fr Université Paris Diderot Paris 7 2/65 1. Sortez un appareil qui peut se rendre

Plus en détail

1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3.

1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3. 1. Structure d un programme C Un programme est un ensemble de fonctions. La fonction "main" constitue le point d entrée pour l exécution. Un exemple simple : #include int main() { printf ( this

Plus en détail

Partie 7 : Gestion de la mémoire

Partie 7 : Gestion de la mémoire INF3600+INF2610 Automne 2006 Partie 7 : Gestion de la mémoire Exercice 1 : Considérez un système disposant de 16 MO de mémoire physique réservée aux processus utilisateur. La mémoire est composée de cases

Plus en détail

Introduction à l architecture des ordinateurs. Adrien Lebre Décembre 2007

Introduction à l architecture des ordinateurs. Adrien Lebre Décembre 2007 Introduction à l architecture des ordinateurs Adrien Lebre Décembre 2007 Plan - partie 1 Vue d ensemble La carte mère Le processeur La mémoire principal Notion de bus Introduction à l architecture des

Plus en détail

Correction TD algorithmique

Correction TD algorithmique Affectation Correction TD algorithmique Exercice 1 algo affect1b b 5 a b+1 b 2 Il vaut faire passer la notion de variable et la notion de stockage mémoire. Une variable n a donc pas d historique et à un

Plus en détail

Algorithmique des Systèmes Répartis Protocoles de Communications

Algorithmique des Systèmes Répartis Protocoles de Communications Algorithmique des Systèmes Répartis Protocoles de Communications Master Informatique Dominique Méry Université de Lorraine 1 er avril 2014 1 / 70 Plan Communications entre processus Observation et modélisation

Plus en détail

V- Manipulations de nombres en binaire

V- Manipulations de nombres en binaire 1 V- Manipulations de nombres en binaire L ordinateur est constitué de milliards de transistors qui travaillent comme des interrupteurs électriques, soit ouverts soit fermés. Soit la ligne est activée,

Plus en détail

IFT1215 Introduction aux systèmes informatiques

IFT1215 Introduction aux systèmes informatiques Introduction aux circuits logiques de base IFT25 Architecture en couches Niveau 5 Niveau 4 Niveau 3 Niveau 2 Niveau Niveau Couche des langages d application Traduction (compilateur) Couche du langage d

Plus en détail

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/ Recherche opérationnelle Les démonstrations et les exemples seront traités en cours Souad EL Bernoussi Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/ Table des matières 1 Programmation

Plus en détail

CQP 112 Introduc/on à la programma/on. Thème 2 : Architecture d un système informa/que. Département d informa/que

CQP 112 Introduc/on à la programma/on. Thème 2 : Architecture d un système informa/que. Département d informa/que CQP 112 Introduc/on à la programma/on Thème 2 : Architecture d un système informa/que Département d informa/que CQP 112 : Introduc/on à la programma/on Plan 1. Historique des ordinateurs 2. Composants

Plus en détail

Projet d informatique M1BI : Compression et décompression de texte. 1 Généralités sur la compression/décompression de texte

Projet d informatique M1BI : Compression et décompression de texte. 1 Généralités sur la compression/décompression de texte Projet d informatique M1BI : Compression et décompression de texte Le but de ce projet est de coder un programme réalisant de la compression et décompression de texte. On se proposera de coder deux algorithmes

Plus en détail

Présentation du cours

Présentation du cours Thibault HILAIRE thibault.hilaire@lip6.fr François PECHEUX francois.pecheux@lip6.fr Informatique générale 1 (Python) Introduction Présentation du cours AGRAL-MTX-GM 2014-2015 20h de cours, 40h de TP/projets

Plus en détail

Codage d information. Codage d information : -Définition-

Codage d information. Codage d information : -Définition- Introduction Plan Systèmes de numération et Représentation des nombres Systèmes de numération Système de numération décimale Représentation dans une base b Représentation binaire, Octale et Hexadécimale

Plus en détail

SIN-FPGA DESCRIPTION PAR SCHEMA

SIN-FPGA DESCRIPTION PAR SCHEMA SIN-FPGA DESCRIPTION PAR SCHEMA Documents ressources: http://www.altera.com/literature/lit-index.html Introduction to Quartus II : intro_to_quartus2.pdf Documentation QUARTUS II : quartusii_handbook.pdf

Plus en détail

Architecture de l ordinateur

Architecture de l ordinateur Architecture de l ordinateur Emmanuel Lazard Université Paris-Dauphine mars 2011 Computers are my forte! BRAZIL (Terry Gilliam, 1985) Ce document a initialement été publié sous forme de livre : Emmanuel

Plus en détail

IN 102 - Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C

IN 102 - Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C IN 102 - Cours 1 Qu on le veuille ou non, les systèmes informatisés sont désormais omniprésents. Même si ne vous destinez pas à l informatique, vous avez de très grandes chances d y être confrontés en

Plus en détail

L informatique en solo

L informatique en solo Jean Louis LEQUEUX Les astuces d un pro L informatique en solo Préface de Jean JOSKOWICZ Président de l AFISI, 2003 ISBN : 2-7081-2875-2 L INTÉRIEUR D UN MICRO-ORDINATEUR 1 L intérieur d un PC (ou de tout

Plus en détail

Installer des périphériques

Installer des périphériques Installer des périphériques Le rôle des pilotes... 161 Le Gestionnaire de périphériques... 162 Installer un périphérique... 165 Installer des périphériques courants... 167 FAQ... 172 Chapitre 5 Installer

Plus en détail

Feuille TD n 1 Exercices d algorithmique éléments de correction

Feuille TD n 1 Exercices d algorithmique éléments de correction Master Sciences, Technologies, Santé Mention Mathématiques, spécialité Enseignement des mathématiques Algorithmique et graphes, thèmes du second degré Feuille TD n 1 Exercices d algorithmique éléments

Plus en détail

Conventions d écriture et outils de mise au point

Conventions d écriture et outils de mise au point Logiciel de base Première année par alternance Responsable : Christophe Rippert Christophe.Rippert@Grenoble-INP.fr Introduction Conventions d écriture et outils de mise au point On va utiliser dans cette

Plus en détail

Introduction à la Programmation Parallèle: MPI

Introduction à la Programmation Parallèle: MPI Introduction à la Programmation Parallèle: MPI Frédéric Gava et Gaétan Hains L.A.C.L Laboratoire d Algorithmique, Complexité et Logique Cours du M2 SSI option PSSR Plan 1 Modèle de programmation 2 3 4

Plus en détail

Travaux Pratiques de Commande par ordinateur 1 TRAVAUX PRATIQUES

Travaux Pratiques de Commande par ordinateur 1 TRAVAUX PRATIQUES TRAVAUX PRATIQUES Le présent travail vise à développer une interface visuelle de programmation des entrées- sorties du port LPT d un PC à l aide du logiciel VISUAL BASIC. I- EDITION ET TEST DU PROGRAMME

Plus en détail

Chapitre 10 Arithmétique réelle

Chapitre 10 Arithmétique réelle Chapitre 10 Arithmétique réelle Jean Privat Université du Québec à Montréal INF2170 Organisation des ordinateurs et assembleur Automne 2013 Jean Privat (UQAM) 10 Arithmétique réelle INF2170 Automne 2013

Plus en détail

UE C avancé cours 1: introduction et révisions

UE C avancé cours 1: introduction et révisions Introduction Types Structures de contrôle Exemple UE C avancé cours 1: introduction et révisions Jean-Lou Desbarbieux et Stéphane Doncieux UMPC 2004/2005 Introduction Types Structures de contrôle Exemple

Plus en détail

Algorithme. Table des matières

Algorithme. Table des matières 1 Algorithme Table des matières 1 Codage 2 1.1 Système binaire.............................. 2 1.2 La numérotation de position en base décimale............ 2 1.3 La numérotation de position en base binaire..............

Plus en détail

REALISATION d'un. ORDONNANCEUR à ECHEANCES

REALISATION d'un. ORDONNANCEUR à ECHEANCES REALISATION d'un ORDONNANCEUR à ECHEANCES I- PRÉSENTATION... 3 II. DESCRIPTION DU NOYAU ORIGINEL... 4 II.1- ARCHITECTURE... 4 II.2 - SERVICES... 4 III. IMPLÉMENTATION DE L'ORDONNANCEUR À ÉCHÉANCES... 6

Plus en détail

6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr

6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr 6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr Interface d un SGF Implémentation d un SGF Gestion de la correspondance entre la structure logique et la structure

Plus en détail

Partie I : Créer la base de données. Année universitaire 2008/2009 Master 1 SIIO Projet Introduction au Décisionnel, Oracle

Partie I : Créer la base de données. Année universitaire 2008/2009 Master 1 SIIO Projet Introduction au Décisionnel, Oracle Année universitaire 2008/2009 Master 1 SIIO Projet Introduction au Décisionnel, Oracle Ce projet comporte trois parties sur les thèmes suivants : création de base de donnée, requêtes SQL, mise en œuvre

Plus en détail

Ensimag 1ère année Algorithmique 1 Examen 2ième session 24 juin 2010. Algorithmique 1

Ensimag 1ère année Algorithmique 1 Examen 2ième session 24 juin 2010. Algorithmique 1 Algorithmique 1 Durée : 2h Machines électroniques interdites Tous documents papiers autorisés Il est conseillé de traiter les deux parties dans l ordre du sujet. Veuillez respecter les notations introduites

Plus en détail