Architecture Logicielle et matérielle

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

Download "Architecture Logicielle et matérielle"

Transcription

1 Architecture Logicielle et matérielle Cours 6 : Programmation LC3 (sans routine) D après les transparents de N. Louvet (univ Lyon1) Laure Gonnord Laure.Gonnord@univ-lyon1.fr Licence d info - Université Lyon 1 - FST

2 Introduction Le LC-3 est un processeur développé dans un but pédagogique par Yale N. Patt et J. Patel dans [Introduction to Computing Systems : From Bits and Gates to C and Beyond, McGraw-Hill, 2004]. Des sources et exécutables sont disponibles à l adresse : Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

3 Intro 2/2 Nous allons nous baser sur le LC-3 pour illustrer les points suivants : Comment programme-t-on en assembleur? Comment mettre en place des routines? Comment mettre en place une pile d exécution de programme? Que doit faire un assembleur? Ce cours est inspiré de celui d Olivier Carton (Université Paris Diderot - Paris 7), disponible à l adresse : Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

4 Introduction à l architecture du LC-3 1 Introduction à l architecture du LC-3 2 Les instructions du LC3 Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

5 Introduction à l architecture du LC-3 La mémoire centrale et les registres du LC-3 La mémoire du LC-3 est organisée par mots de 16 bits, avec un adressage également de 16 bits. La mémoire du LC-3 est donc formée de 2 16 mots de 16 bits, c est-à-dire 128 Kio avec des adresses de (0000) H à (FFFF) H. 8 registres généraux 16 bits : R0,...,R7. Toutefois, R6 : gestion de la pile d exécution, R7 : stockage de l adresse de retour d un appel de fonction (RET). quelques registres spécifiques 16 bits : PC (Program Counter), IR (Instruction Register) PSR (Program Status Register) plusieurs drapeaux. quelques autres. Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

6 Introduction à l architecture du LC-3 Registre PSR Les bits N,Z,P du PSR indiquent si la dernière valeur placée dans un registre général est négative strictement (N), zéro (Z) ou positive strictement (P). On s en sert pour les tests Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

7 Introduction à l architecture du LC-3 Exemple : afficher les entiers de 9 à 0-1/5 print("affichage des entiers de 9 à 0 :\n"); i <- 9; while(i >= 0) { print(i + '0'); i <- i - 1; } print("\nfin de l'affichage!\n"); Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

8 Introduction à l architecture du LC-3 Exemple 2/5 : pseudo code + registres R0 pour l affichage, R1 comme compteur et R2 pour 0 : print("affichage des entiers de 9 à 0 :\n"); R2 <- '0'; R1 <- 9; while(r1 >= 0) { R0 <- R1 + '0'; print(r0); R1 <- R1-1; } print("\nfin de l'affichage!\n"); Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

9 Introduction à l architecture du LC-3 Exemple 3/5 : schéma général de traduction boucle while : /* En peudo-code */ while(e cmp 0) { corps de boucle } ; En langage d'assemblage du LC3 loop: evaluation de e BR!cmp endloop ; condition de sortie de boucle corps de boucle BR loop ; branchement inconditionnel endloop: Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

10 Introduction à l architecture du LC-3 Exemple 4/5 : application /* En peudo-code */ R1 <- 9; while(r1 >= 0) { } R0 <- R1 + '0'; print(r0); R1 <- R1-1; ; En langage d'assemblage du LC3 AND R1,R1,0 ; ADD R1,R1,9 ; R1 <- 9 loop: ADD R1,R1,0 ; pour forcer la maj du PSR endloop: BRn endloop ; si R1 < 0, on sort de la boucle ADD R0,R1,R2 ; R0 <- (code ascii du chiffre R1) OUT ADD R1,R1,-1 BR loop ; affiche le caractère dans R0 ; R1 <- R1-1, maj du PSR d'après R1 ; retour au début de boucle Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

11 Introduction à l architecture du LC-3 Ex 5/5 : prog entier.orig x3000 ; adresse de début de programme ; partie dédiée au code LEA R0,msg0 ; charge l'adresse effective désignée par msg0 dans R0 PUTS ; affiche la chaine de caractères pointée par R0 (TRAP x22) LD R2,carzero ; charge '0' dans R2 AND R1,R1,0 ; ADD R1,R1,9 ; R1 <- 9 loop: BRn endloop ; si R1 < 0, alors on sort de la boucle ADD R0,R1,R2 ; R0 <- R1+'0' = (code ascii du chiffre R1) OUT ; affiche le caractère contenu dans R0 (TRAP x21) ADD R1,R1,-1 ; R1 <- R1-1, maj de NZP d'après R1 BR loop ; retour au début de boucle endloop: LEA R0,msg1 ; charge l'adresse effective désignée par msg0 dans R0 PUTS ; affiche la chaine de caractères pointée par R0 (TRAP x22) HALT ; termine le programme ; partie dédiée aux données carzero:.fill x30 ; code ASCII du caractère '0' (48 en décimal) msg0:.stringz "Affichage des entiers de 9 à 0 :\n" msg1:.stringz "\nfin de l'affichage!\n".end ; marque la fin du bloc de code Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

12 Introduction à l architecture du LC-3 Forme générale d un programme Un programme source écrit en langage d assemblage est un fichier texte qui comporte une suite de lignes. Sur chaque ligne, on trouve : soit une instruction (ADD, LD, BR,... ) ; soit une macro (GETC, OUT,... ) ; soit une directive d assemblage (.ORIG,.BLKW,... ) ; Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

13 Introduction à l architecture du LC-3 Forme générale d un programme : labels Une ligne peut être précédée par une étiquette pour référencer son adresse..orig x3000 ; directive pour le début de programme ; partie dédiée au code <- il s'agit d'un commentaire loop: GETC ; macro marquée par une étiquette... OUT LD R1,cmpzero ADD R0,R0,R1 ; partie dédiée aux données cmpzero:.fill xffd0 msg: ; macro ; instruction ; instruction ; directive.stringz "\nzero!\n" ; directive.end ; directive marquant la fin du programme Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

14 Introduction à l architecture du LC-3 Etiquettes ou labels L assembleur permet d utiliser des labels pour désigner des adresses. Un label est associé à une adresse et peut être utilisé par d autres instructions. L assembleur traduira ce label en une adresse effective lors de l assemblage. Par exemple, l étiquette label représente ci-dessous l adresse où se trouve l instruction ADD R6,R1,R2 :... label: ADD R6,R1,R2 ; R6 <- R1 + R2... BRz label ; Branchement conditionnel à l'adresse label... Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

15 Introduction à l architecture du LC-3 2 types de constantes Les chaînes de caractères : directive.stringz : elles sont délimitées par deux caractères " et implicitement terminées par le caractère nul. Les constantes entières écrites en hexadécimal sont précédées d un x, en décimal elles sont précédées d un # : Exemple : opérandes immédiats des instructions paramètres des directives.orig,.fill et.blkw..orig x3000 ; Constante entière en base 16 AND R2,R1,#2 ; Constante entière en base 10 ADD R6,R5,#-1 ; Constante entière négative en base 10.STRINGZ "Chaine" ; Constante chaîne de caractères Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

16 Introduction à l architecture du LC-3 Directives d assemblage.orig adresse : Spécifie l adresse à laquelle doit commencer le bloc d instructions qui suit..end : Termine un bloc d instructions..fill valeur : Réserve un mot de 16 bits et le remplit avec la valeur constante donnée en paramètre..stringz chaine : Réserve un nombre de mots égal à la longueur de la chaîne de caractères plus un caractère nul et y place la chaîne..blkw nombre : Cette directive réserve le nombre de mots de 16 bits passé en paramètre. Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

17 Introduction à l architecture du LC-3 Les interruptions prédéfinies : «appels système» L instruction TRAP appelle un gestionnaire d interruption mis en place par le petit système d exploitation du LC-3 : il s agit donc d un appel système. Chaque appel système est identifié par une constante sur 8 bits. Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

18 Introduction à l architecture du LC-3 Macros pour les interruptions Dans l assembleur du LC-3, on peut utiliser les macros suivantes pour effectuer des appels systèmes. instruction macro description TRAP x00 HALT termine un programme (rend la main à l OS) TRAP x20 GETC lit au clavier un caractère ASCII et le place dans l octet de poids faible de R0 TRAP x21 OUT écrit à l écran le caractère ASCII placé dans l octet de poids faible de R0 TRAP x22 PUTS écrit à l écran la chaine de caractères pointée par R0 TRAP x23 IN lit au clavier un caractère ASCII, l écrit à l écran, et le place dans l octet de poids faible de R0 Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

19 Les instructions du LC3 1 Introduction à l architecture du LC-3 2 Les instructions du LC3 Les instructions de chargement et rangement Les instructions de branchement Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

20 Les instructions du LC3 Les instructions du LC-3 (redite, cf ISA) Les instructions du LC-3 se répartissent en trois classes. Instructions arithmétiques et logiques : ADD, AND, NOT. Instructions de chargement et rangement : LS, ST, LDR, STR, LEA. Instructions de branchement : BR, JSR, TRAP, RET Il y a aussi NOP, pour no operation, qui ne fait rien... Pour simplifier les choses, d autres instructions du jeu d instruction du LC3 sont ici omises. (cf ISA) Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

21 Les instructions du LC3 Récapitulatif des instructions du LC-3 Cf feuille jointe + ISA du LC3. La colonne «NZP» indique les instructions qui provoquent la mise à jour des drapeaux NZP. Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

22 Les instructions du LC3 Deux comportements pour ADD (rappel) Notez par exemple que l addition (ADD) se décline de deux façons : «ADD DR, SR1, SR2» ajoute les contenus des deux registres sources SR1 et SR2, et place le résultat dans le registre destination DR. «ADD DR, SR1, SR2» ajoute le contenu de SR1 à un immédiat codé en complément à 2 sur 5 bits, et de place le résultat dans DR. Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

23 Les instructions du LC3 Les instructions de chargement et rangement 1 Introduction à l architecture du LC-3 2 Les instructions du LC3 Les instructions de chargement et rangement Les instructions de branchement Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

24 Les instructions du LC3 Les instructions de chargement et rangement LD (principe symétrique pour ST) Soit adi adresse de l instruction LD considérée. syntaxe : LD DR,label le label servira à désigner une adresse mémoire AdM. action : DR Mem[PC + Sext(PCOffset9)] valeur de PC après son incrémentation lors du chargement : PC = adi+1. l adresse du chargement est calculé à partir d un offset codé en complément à 2 sur 9 bits : -256 Sext(PCOffset9) 255. La case mémoire chargée est donc celle à l adresse : adm = adi Sext(PCOffset9), Comme adi 255 adm adi + 256, la distance entre une instruction LD et la case mémoire dont elle peut charger le contenu est limitée, d où l utilité de l instruction LDR. Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

25 Les instructions du LC3 Les instructions de chargement et rangement LD 2/2 adm = adi Sext(PCOffset9). En pratique, c est l assembleur qui va se charger du calcul de PCOffset9 le programmeur en langage d assemblage se contente d utiliser des labels. label1: 10 data1 label2: 11 data LD R1,label LD R1, 8 Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

26 Les instructions du LC3 Les instructions de chargement et rangement LDR (principe symétrique pour STR) syntaxe : LDR DR,baseR,Offset6 action : DR Mem[baseR + Sext(PCOffset6)] l offset est codé en complément à 2 sur 6 bits : 32 Sext(Offset6) 31. La case mémoire chargée est celle à l adresse : adm = baser + Sext(PCOffset6), avec baser 32 adm baser Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

27 Les instructions du LC3 Les instructions de chargement et rangement Utilisation de STR/LDR Avec LDR et STR, on peut accéder à toutes les adresses de la mémoire. On utilise ses instructions pour manipuler des données sur la pile 1, comme les variables locales des fonctions ; accéder aux éléments d un tableau. baser est utilisé comme un pointeur. Par contre, comment initialiser baser? 1. on n a pas encore vu cette notion Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

28 Les instructions du LC3 Les instructions de chargement et rangement LEA - chargement d une adresse dans un registre syntaxe : LEA DR,label action : DR PC + Sext(PCOffset9) si adi est l adresse de l instruction, l adresse chargée est : adm = adi Sext(PCOffset9), adi 255 adm adi L adresse est calculée comme pour un LD, mais seule l adresse adm est chargée dans DR (pas Mem[AdM]). Cette instruction est utile pour : charger l adresse d un tableau dans un registre, charger l adresse de la base de la pile d exécution. On s en sert donc de LEA pour initialiser un pointeur. Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

29 Les instructions du LC3 Les instructions de branchement 1 Introduction à l architecture du LC-3 2 Les instructions du LC3 Les instructions de chargement et rangement Les instructions de branchement Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

30 Les instructions du LC3 Les instructions de branchement BR : registre dédié 1/2 Trois drapeaux N, Z et P (majuscules) du PSR sont mis à jour dès qu une nouvelle valeur est chargée dans l un des registres généraux : N passe à 1 si cette valeur est strictement négative, Z passe à 1 si cette valeur est nulle, P passe à 1 si cette valeur est strictement positive. (cf TP circuits combinatoires) Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

31 Les instructions du LC3 Les instructions de branchement BR : instruction 2/2 L instruction BR contient elle trois bits n, z et p (minuscules) : syntaxe : BR[n][z][p] label action : si cond alors PC PC+Sext(PCOffset9) cond = (n z p) + (n = N) + (z = Z) + (p = P ) si adi est l adresse de l instruction, l adresse de branchement est : adm = adi Sext(PCOffset9), adi 255 adm adi On réalise avec BR des branchements inconditionnels ou conditionnels. L assembleur se charge de calculer PCOffset9 d après le label fourni : il faut néanmoins garder à l esprit le fait que la distance du saut est limitée... Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

32 Les instructions du LC3 Les instructions de branchement Un autre exemple de programme 1/3 On veut écrire un programme qui calcule la longueur d une chaîne de caractères se trouvant à l adresse désignée par un label string. Le résultat sera stocké à l adresse désignée par res. On commence par mettre en place la structure de base du programme :.ORIG x3000 ; Partie contenant le code ; Chaine constante string:.stringz "Hello World" res:.blkw #1.END Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

33 Les instructions du LC3 Les instructions de branchement Ex 2/3 : pseudo code à traduire R0 <- &string; // R0 pointe vers le début de la chaine R1 <- 0; // Le compteur R1 est initialisé à 0 while((r2 <- *R0)!= '\0') { R0 <- R0+1; // Incrémentation du pointeur R1 <- R1+1; // Incrémentation du compteur } res <- R1; // Rangement du résultat Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

34 Les instructions du LC3 Les instructions de branchement Ex 3/3 : Programme final.orig x3000 LEA R0,string ; Initialisation du pointeur R0 AND R1,R1,0 ; Le compteur R1 est initialisé à 0 loop: LDR R2,R0,0 ; Chargement dans R2 du caractere pointé par R0 BRz end ; Test de sortie de boucle ADD R0,R0,1 ; Incrémentation du pointeur ADD R1,R1,1 ; Incrémentation du compteur BR loop end: ST R1,res HALT ; Chaine constante string:.stringz "Hello World" res:.blkw #1.END Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06 : Programmation LC3 1/ / 34

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

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

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java Info0101 Intro. à l'algorithmique et à la programmation Cours 3 Le langage Java Pierre Delisle, Cyril Rabat et Christophe Jaillet Université de Reims Champagne-Ardenne Département de Mathématiques et Informatique

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

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

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

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

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

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

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

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

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

1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)

1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles) 1/4 Objectif de ce cours /4 Objectifs de ce cours Introduction au langage C - Cours Girardot/Roelens Septembre 013 Du problème au programme I passer d un problème exprimé en français à la réalisation d

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

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

TP 1. Prise en main du langage Python

TP 1. Prise en main du langage Python TP. Prise en main du langage Python Cette année nous travaillerons avec le langage Python version 3. ; nous utiliserons l environnement de développement IDLE. Étape 0. Dans votre espace personnel, créer

Plus en détail

Cours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java

Cours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java Langages objets Introduction M2 Pro CCI, Informatique Emmanuel Waller, LRI, Orsay présentation du module logistique 12 blocs de 4h + 1 bloc 2h = 50h 1h15 cours, 45mn exercices table, 2h TD machine page

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

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

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

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

Plan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7

Plan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7 Université Lumière Lyon 2 Faculté de Sciences Economiques et Gestion KHARKIV National University of Economic Introduction au Langage Java Master Informatique 1 ère année Julien Velcin http://mediamining.univ-lyon2.fr/velcin

Plus en détail

Manuel d utilisation 26 juin 2011. 1 Tâche à effectuer : écrire un algorithme 2

Manuel d utilisation 26 juin 2011. 1 Tâche à effectuer : écrire un algorithme 2 éducalgo Manuel d utilisation 26 juin 2011 Table des matières 1 Tâche à effectuer : écrire un algorithme 2 2 Comment écrire un algorithme? 3 2.1 Avec quoi écrit-on? Avec les boutons d écriture........

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

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

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

É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

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

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

LES TYPES DE DONNÉES DU LANGAGE PASCAL

LES TYPES DE DONNÉES DU LANGAGE PASCAL LES TYPES DE DONNÉES DU LANGAGE PASCAL 75 LES TYPES DE DONNÉES DU LANGAGE PASCAL CHAPITRE 4 OBJECTIFS PRÉSENTER LES NOTIONS D ÉTIQUETTE, DE CONS- TANTE ET DE IABLE DANS LE CONTEXTE DU LAN- GAGE PASCAL.

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

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

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

INTRODUCTION A JAVA. Fichier en langage machine Exécutable INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du

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

Algorithmique et Programmation, IMA

Algorithmique et Programmation, IMA Algorithmique et Programmation, IMA Cours 2 : C Premier Niveau / Algorithmique Université Lille 1 - Polytech Lille Notations, identificateurs Variables et Types de base Expressions Constantes Instructions

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

Informatique Générale

Informatique Générale Informatique Générale Guillaume Hutzler Laboratoire IBISC (Informatique Biologie Intégrative et Systèmes Complexes) guillaume.hutzler@ibisc.univ-evry.fr Cours Dokeos 625 http://www.ens.univ-evry.fr/modx/dokeos.html

Plus en détail

Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples

Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation impérative et structures de données simples Introduction au langage C Sandrine Blazy - 1ère année 24 octobre 2007 Cours d Algorithmique-Programmation

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

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

HMI target Visu / PLC HMI. Pour réaliser une interface homme machine avec PLC control

HMI target Visu / PLC HMI. Pour réaliser une interface homme machine avec PLC control HMI target Visu / PLC HMI Pour réaliser une interface homme machine avec PLC control VERSION : 1.4 / PH DATE : 5 Novembre 2014 Sommaire Ce manuel explique de manière pratique les étapes successives pour

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

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

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

Logiciel de Base. I. Représentation des nombres

Logiciel de Base. I. Représentation des nombres Logiciel de Base (A1-06/07) Léon Mugwaneza ESIL/Dépt. Informatique (bureau A118) mugwaneza@univmed.fr I. Représentation des nombres Codage et représentation de l'information Information externe formats

Plus en détail

Architecture des ordinateurs

Architecture des ordinateurs Architecture des ordinateurs Cours 7 17 décembre 2012 Archi 1/1 Fonctions, suite et fin Archi 2/1 Rappel Forme générale d un sous-programme (fonction) : etiquette sousprogramme: push ebp ; empile la valeur

Plus en détail

ARDUINO DOSSIER RESSOURCE POUR LA CLASSE

ARDUINO DOSSIER RESSOURCE POUR LA CLASSE ARDUINO DOSSIER RESSOURCE POUR LA CLASSE Sommaire 1. Présentation 2. Exemple d apprentissage 3. Lexique de termes anglais 4. Reconnaître les composants 5. Rendre Arduino autonome 6. Les signaux d entrée

Plus en détail

Algorithmique et programmation : les bases (VBA) Corrigé

Algorithmique et programmation : les bases (VBA) Corrigé PAD INPT ALGORITHMIQUE ET PROGRAMMATION 1 Cours VBA, Semaine 1 mai juin 2006 Corrigé Résumé Ce document décrit l écriture dans le langage VBA des éléments vus en algorithmique. Table des matières 1 Pourquoi

Plus en détail

L informatique en BCPST

L informatique en BCPST L informatique en BCPST Présentation générale Sylvain Pelletier Septembre 2014 Sylvain Pelletier L informatique en BCPST Septembre 2014 1 / 20 Informatique, algorithmique, programmation Utiliser la rapidité

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

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

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2 Anne Tasso Java Le livre de premier langage 10 e édition Avec 109 exercices corrigés Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2 Table des matières Avant-propos Organisation de l ouvrage..............................

Plus en détail

Limitations of the Playstation 3 for High Performance Cluster Computing

Limitations of the Playstation 3 for High Performance Cluster Computing Introduction Plan Limitations of the Playstation 3 for High Performance Cluster Computing July 2007 Introduction Plan Introduction Intérêts de la PS3 : rapide et puissante bon marché L utiliser pour faire

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

Table des matières PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS. Introduction

Table des matières PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS. Introduction PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS Depuis SAS 9.2 TS2M3, SAS propose un nouveau langage de programmation permettant de créer et gérer des tables SAS : le DS2 («Data Step 2»). Ces nouveautés

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

RACCOURCIS CLAVIERS. DEFINITION : Une «combinaison de touches» est un appui simultané sur plusieurs touches.

RACCOURCIS CLAVIERS. DEFINITION : Une «combinaison de touches» est un appui simultané sur plusieurs touches. S Vous n aimez pas la souris Les raccourcis clavier sont là pour vous faciliter la vie! INTRODUCTION : Vous avez du mal à vous habituer à la manipulation de la souris Des solutions existent : les raccourcis

Plus en détail

Programmation C++ (débutant)/instructions for, while et do...while

Programmation C++ (débutant)/instructions for, while et do...while Programmation C++ (débutant)/instructions for, while et do...while 1 Programmation C++ (débutant)/instructions for, while et do...while Le cours du chapitre 4 : le for, while et do...while La notion de

Plus en détail

Concept de machine virtuelle

Concept de machine virtuelle Concept de machine virtuelle Chap. 5: Machine virtuelle Alain Sandoz Semestre été 2007 1 Introduction: Java Virtual Machine Machine Virtuelle Java: qu est-ce que c est? c est la spécification d une machine

Plus en détail

Cours d algorithmique pour la classe de 2nde

Cours d algorithmique pour la classe de 2nde Cours d algorithmique pour la classe de 2nde F.Gaudon 10 août 2009 Table des matières 1 Avant la programmation 2 1.1 Qu est ce qu un algorithme?................................. 2 1.2 Qu est ce qu un langage

Plus en détail

Introduction à l algorithmique et à la programmation (Info 2)

Introduction à l algorithmique et à la programmation (Info 2) Introduction à l algorithmique et à la programmation (Info 2) Premier cours: présentation du module, codage et définition de l algorithmique Matthieu Puigt IUT du Littoral Côte d Opale DUT Génie Industriel

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

Rappels Entrées -Sorties

Rappels Entrées -Sorties Fonctions printf et scanf Syntaxe: écriture, organisation Comportement Données hétérogènes? Gestion des erreurs des utilisateurs 17/11/2013 Cours du Langage C ibr_guelzim@yahoo.fr ibrahimguelzim.atspace.co.uk

Plus en détail

DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51

DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51 DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51 PLAN DU COURS Introduction au langage C Notions de compilation Variables, types, constantes, tableaux, opérateurs Entrées sorties de base Structures de

Plus en détail

Le langage C. Séance n 4

Le langage C. Séance n 4 Université Paris-Sud 11 Institut de Formation des Ingénieurs Remise à niveau INFORMATIQUE Année 2007-2008 Travaux pratiques d informatique Le langage C Séance n 4 But : Vous devez maîtriser à la fin de

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

Cours Informatique Master STEP

Cours Informatique Master STEP Cours Informatique Master STEP Bases de la programmation: Compilateurs/logiciels Algorithmique et structure d'un programme Programmation en langage structuré (Fortran 90) Variables, expressions, instructions

Plus en détail

Programmation système I Les entrées/sorties

Programmation système I Les entrées/sorties Programmation système I Les entrées/sorties DUT 1 re année Université de Marne La vallée Les entrées-sorties : E/O Entrées/Sorties : Opérations d échanges d informations dans un système informatique. Les

Plus en détail

Initiation à la programmation en Python

Initiation à la programmation en Python I-Conventions Initiation à la programmation en Python Nom : Prénom : Une commande Python sera écrite en caractère gras. Exemples : print 'Bonjour' max=input("nombre maximum autorisé :") Le résultat de

Plus en détail

Java Licence Professionnelle CISII, 2009-10

Java Licence Professionnelle CISII, 2009-10 Java Licence Professionnelle CISII, 2009-10 Cours 4 : Programmation structurée (c) http://www.loria.fr/~tabbone/cours.html 1 Principe - Les méthodes sont structurées en blocs par les structures de la programmation

Plus en détail

1 Définition et Appel d une fonction. V. Phan Luong. Cours 4 : Fonctions

1 Définition et Appel d une fonction. V. Phan Luong. Cours 4 : Fonctions Université de Provence Licence Math-Info Première Année V. Phan Luong Algorithmique et Programmation en Python Cours 4 : Fonctions La construction de fonctions dans un langage de programmation permet aux

Plus en détail

Informatique UE 102. Jean-Yves Antoine. Architecture des ordinateurs et Algorithmique de base. UFR Sciences et Techniques Licence S&T 1ère année

Informatique UE 102. Jean-Yves Antoine. Architecture des ordinateurs et Algorithmique de base. UFR Sciences et Techniques Licence S&T 1ère année UFR Sciences et Techniques Licence S&T 1ère année Informatique UE 102 Architecture des ordinateurs et Algorithmique de base Jean-Yves Antoine http://www.info.univ-tours.fr/~antoine/ UFR Sciences et Techniques

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

INF 321 : mémento de la syntaxe de Java

INF 321 : mémento de la syntaxe de Java INF 321 : mémento de la syntaxe de Java Table des matières 1 La structure générale d un programme 3 2 Les composants élémentaires de Java 3 2.1 Les identificateurs.................................. 3 2.2

Plus en détail

Créer le schéma relationnel d une base de données ACCESS

Créer le schéma relationnel d une base de données ACCESS Utilisation du SGBD ACCESS Polycopié réalisé par Chihab Hanachi et Jean-Marc Thévenin Créer le schéma relationnel d une base de données ACCESS GENERALITES SUR ACCESS... 1 A PROPOS DE L UTILISATION D ACCESS...

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

Les chaînes de caractères

Les chaînes de caractères Les chaînes de caractères Dans un programme informatique, les chaînes de caractères servent à stocker les informations non numériques comme par exemple une liste de nom de personne ou des adresses. Il

Plus en détail

Rappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme

Rappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme Rappel Ralf Treinen Université Paris Diderot UFR Informatique Laboratoire Preuves, Programmes et Systèmes treinen@pps.univ-paris-diderot.fr 6 mai 2015 Jusqu'à maintenant : un petit langage de programmation

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

Manuel de référence du langage Exemples Les aventures de Docteur R. www.irai.com

Manuel de référence du langage Exemples Les aventures de Docteur R. www.irai.com Manuel de référence du langage Exemples Les aventures de Docteur R. www.irai.com 1. Eléments communs... 7 1.1. Les variables... 7 1.1.1. Les variables booléennes... 7 1.1.2. Les variables numériques...

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

SYSTÈME DE GESTION DE FICHIERS

SYSTÈME DE GESTION DE FICHIERS SYSTÈME DE GESTION DE FICHIERS - DISQUE 1 Les couches logiciels réponse requête Requêtes E/S Système E/S Pilote E/S Interruptions utilisateur traitement S.E. commandes S.E. S.E. matériel Contrôleur E/S

Plus en détail

Structure d un programme et Compilation Notions de classe et d objet Syntaxe

Structure d un programme et Compilation Notions de classe et d objet Syntaxe Cours1 Structure d un programme et Compilation Notions de classe et d objet Syntaxe POO 1 Programmation Orientée Objet Un ensemble d objet qui communiquent Pourquoi POO Conception abstraction sur les types

Plus en détail

Langage Java. Classe de première SI

Langage Java. Classe de première SI Langage Java Table des matières 1. Premiers pas...2 1.1. Introduction...2 1.2. Mon premier programme...2 1.3. Les commentaires...2 2. Les variables et les opérateurs...2 3. La classe Scanner...3 4. Les

Plus en détail

Logiciel de base. Première année ENSIMAG

Logiciel de base. Première année ENSIMAG Logiciel de base Première année ENSIMAG 1 Procédures, paramètres, pile En assembleur une fonction est une étiquette, c'est l'adresse de sa première instruction Lors de l'appel d'une fonction, la pile sert

Plus en détail

TP Contraintes - Triggers

TP Contraintes - Triggers TP Contraintes - Triggers 1. Préambule Oracle est accessible sur le serveur Venus et vous êtes autorisés à accéder à une instance licence. Vous utiliserez l interface d accés SQL*Plus qui permet l exécution

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

Claude Delannoy. 3 e édition C++

Claude Delannoy. 3 e édition C++ Claude Delannoy 3 e édition Exercices Exercices C++ en en langage langage delc++ titre 4/07/07 15:19 Page 2 Exercices en langage C++ AUX EDITIONS EYROLLES Du même auteur C. Delannoy. Apprendre le C++.

Plus en détail

Chap III : Les tableaux

Chap III : Les tableaux Chap III : Les tableaux Dans cette partie, on va étudier quelques structures de données de base tels que : Les tableaux (vecteur et matrice) Les chaînes de caractères LA STRUCTURE DE TABLEAU Introduction

Plus en détail

IFT2880 Organisation des ordinateurs et systèmes

IFT2880 Organisation des ordinateurs et systèmes Représentation des nombres flottants Notation exponentielle Représentations équivalentes dans la base 10 de 1,234 1 2 3, 4 0 0. 0 x 1 0-2 1 2, 3 4 0. 0 x 1 0-1 1, 2 3 4. 0 x 1 0 1 2 3. 4 x 1 0 1 2. 3 4

Plus en détail

Exceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ;

Exceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ; CNAM NFP121 TP 10 19/11/2013 (Séance 5) Objectif Manipuler les exceptions ; 1 Entrées/sorties Exercice 1 : Lire un entier à partir du clavier Ajouter une méthode readint(string message) dans la classe

Plus en détail

SYSTÈME DE GESTION DE FICHIERS SGF - DISQUE

SYSTÈME DE GESTION DE FICHIERS SGF - DISQUE SYSTÈME DE GESTION DE FICHIERS SGF - DISQUE C.Crochepeyre MPS_SGF 2000-20001 Diapason 1 Les couches logiciels réponse SGF requête matériel matériel Requêtes E/S Système E/S Pilote E/S Interruptions Contrôleur

Plus en détail

SIP. Plan. Introduction Architecture SIP Messages SIP Exemples d établissement de session Enregistrement

SIP. Plan. Introduction Architecture SIP Messages SIP Exemples d établissement de session Enregistrement SIP Nguyen Thi Mai Trang LIP6/PHARE Thi-Mai-Trang.Nguyen@lip6.fr UPMC - M2 Réseaux - UE PTEL 1 Plan Introduction Architecture SIP Messages SIP Exemples d établissement de session Enregistrement UPMC -

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

TP1 : Initiation à Java et Eclipse

TP1 : Initiation à Java et Eclipse TP1 : Initiation à Java et Eclipse 1 TP1 : Initiation à Java et Eclipse Systèmes d Exploitation Avancés I. Objectifs du TP Ce TP est une introduction au langage Java. Il vous permettra de comprendre les

Plus en détail

SOFI Gestion+ Version 5.4. Echanges de données informatiques Spicers Sofi gestion+ Groupements. SOFI Informatique. Actualisé le 10.09.

SOFI Gestion+ Version 5.4. Echanges de données informatiques Spicers Sofi gestion+ Groupements. SOFI Informatique. Actualisé le 10.09. SOFI Gestion+ SOFI Informatique Version 5.4 Echanges de données informatiques Spicers Sofi gestion+ Groupements Actualisé le 10.09.2004 Table des matières 1. Catalogue et tarifs... 4 1.1 Définition EDI...

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

Sub CalculAnnuite() Const TITRE As String = "Calcul d'annuité de remboursement d'un emprunt"

Sub CalculAnnuite() Const TITRE As String = Calcul d'annuité de remboursement d'un emprunt TD1 : traduction en Visual BASIC des exemples du cours sur les structures de contrôle de l'exécution page 1 'TRADUCTION EN VBA DES EXEMPLES ALGORITHMIQUES SUR LES STRUCTURES 'DE CONTROLE DE L'EXECUTION

Plus en détail

Millenium3 Atelier de programmation

Millenium3 Atelier de programmation Millenium3 Millenium 3 Millenium3 1. Aide en ligne CLSM3... 2 1.1 Présentation de l'atelier de programmation... 2 1.1.1 Présentation de l'atelier de programmation... 2 1.2 Comment débuter avec l'atelier

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