1. PRESENTATION STRUCTURE D UN PROGRAMME EN LANGAGE C Première approche d un programme en langage C

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

Download "1. PRESENTATION STRUCTURE D UN PROGRAMME EN LANGAGE C Première approche d un programme en langage C"

Transcription

1

2 1. PRESENTATION STRUCTURE D UN PROGRAMME EN LANGAGE C Première approche d un programme en langage C Directives de compilation Déclaration d une fonction Déclaration des variables globales, des variables locales Point d entrée du programme Définitions des types les plus couramment employés Les types simples : Le type pointeur : Compilation d un programme C avec CodeVisionAVR Organisation de la mémoire SRAM Configuration du compilateur C LES OPERATEURS DE BASES L opérateur d affectation Les opérateurs arithmétiques Les opérateurs de comparaison Les opérateurs logiques Les opérateurs logiques de bits et de décalage Les opérateurs d incrémentation et d affectation combinée LES STRUCTURES DE CONTROLES Les structures alternatives (test) Structure IF ELSE (SI ALORS SINON) Structure SWITCH CASE (CHOIX MULTIPLES) Les structures ITERATIVES (Repetitives) La structure WHILE (TANT QUE FAIRE) La structure DO WHILE (FAIRE JUSQU'À) La structure FOR (POUR FAIRE) LES FONCTIONS ROle d une fonction Déclaration d une fonction Passage de paramètres... 12

3 1. PRESENTATION. La majorité des microcontrôleurs sur le marché actuel disposent parmi leurs outils de développement d un compilateur C. Ces compilateurs utilisent le langage «small C» qui reprend un large sous-ensemble des fonctionnalités du langage C issu de la norme ANSI. Le guide de programmation que vous tenez entre vos mains vous permettra de vous initier à l aide d exemples concrets aux concepts de base du langage C adapté au microcontrôleur. Pour plus de détails sur le langage C veuillez consulter les nombreux ouvrages proposés sur ce sujet. Contrairement à ce que l on pourrait croire, l utilisation du langage C ne vous dispense pas de consulter la documentation technique du micro ATMEL AVR que vous avez choisie! 2. STRUCTURE D UN PROGRAMME EN LANGAGE C. #include <90s8515.h> // directive de compilation permettant d inclure la bibliothèque // de définition des registres internes du microcontrôleur choisi void Tempo (unsigned long valeur); // Déclaration de la fonction Tempo, point virgule! int i; void main(void) DDRA=0xff; PORTA=0x01; // Déclaration d une variable globale // Fonction principale // Initialisation while (1) // Boucle inconditionnelle for (i=0; i<8; i++) // Structure FOR pour i=0 à i=8 avec un incrément de 1 PORTA= PORTA<<1; // On décale d un bit vers la gauche Tempo(100000); // appel fonction Tempo, passage du paramètre à l argument // valeur void Tempo (unsigned long valeur) // défnition de la fonction, pas de point virgule! unsigned long j; // Déclaration d une variable locale for (j=0; j<valeur; j++) // on ne fait rien 1

4 2.1 PREMIERE APPROCHE D UN PROGRAMME EN LANGAGE C Directives de compilation. Les directives de compilation permettent de définir au pré-processeur les informations nécessaires lors de la compilation du programme, le symbole # indique que le texte est une directive. Le fichier «include» du microcontrôleur cible doit être obligatoirement précisé en début de programme. Exemples : La directive #include permet d insérer un autre fichier dans votre fichier source. La directive #define peut être utilisée pour définir une macro ou une constante Déclaration d une fonction. Exemple : void Tempo (unsigned long valeur); La fonction Tempo ne renvoie aucune valeur, elle possède un argument valeur de type unsigned long. #include <90s8535.h> void Tempo (unsigned long valeur) unsigned long j; for (j=0; j<valeur; j++) void main(void) short int i; DDRA=0xff; PORTA=0x01; for (i=0; i<8; i++) PORTA= PORTA<<1; Tempo(100000); // Aucune erreur à la compilation, la fonction tempo est appelée après sa définition. #include <90s8535.h> void main(void) short int i; DDRA=0xff; PORTA=0x01; for (i=0; i<8; i++) PORTA= PORTA<<1; Tempo(100000); void Tempo (unsigned long valeur) unsigned long j; for (j=0; j<valeur; j++) //Erreur "undefined symbol tempo" à la compilation, la fonction tempo est appelée avant d'être définie. #include <90s8535.h> void Tempo (unsigned long valeur); void main(void) short int i; DDRA=0xff; PORTA=0x01; for (i=0; i<8; i++) PORTA= PORTA<<1; Tempo(100000); void Tempo (unsigned long valeur) unsigned long j; for (j=0; j<valeur; j++) // Aucune erreur à la compilation, le compilateur connaît la fonction tempo grâce à la déclaration. 2

5 Les fonctions doivent être déclarées en dehors de la fonction main. La déclaration permet d'appeler une fonction avant qu'elle ne soit définit. Les fonctions ne retournant pas de résultat utilisent le mot clé void en début de déclaration Déclaration des variables globales, des variables locales. Les variables globales sont déclarées en en-tête du programme et sont accessibles à n importe quel instant de l exécution du programme, ce sont des variables permanentes, elles font l objet d une réservation en mémoire. Les variables locales sont définies à l intérieur d une fonction, leur durée de vie est limitée à l exécution de cette fonction, ce sont des variables temporaires. Si on désire conserver la valeur d une variable locale celle-ci doit être déclarée avec le mot clé static Point d entrée du programme. Chaque programme C se compose au minimum de la fonction main, c est le point d entrée de notre programme. C est à partir de la fonction main que seront appelées les autres fonctions (main est écrit volontairement en minuscules, le compilateur C distinguant les majuscules des minuscules). 2.2 DEFINITIONS DES TYPES LES PLUS COURAMMENT EMPLOYES Les types simples : Type Taille (bits) Domaine non signé Domaine signé Bit 1 0,1 Char 8 0 à à 127 Int 16 0 à à Long int 32 0 à à Le mot clé unsigned placé devant la déclaration du type permet de préciser que le type est non signé. Pour les autres types voir la documentation de CodeVision AVR Le type pointeur : Le pointeur est une variable contenant une adresse. Il doit toujours être initialisé à une adresse avant son utilisation, il est comparable aux registres d index des microcontrôleurs. Exemple : int *ptr //on déclare un pointeur se nommant ptr de type int. Ptr = 0x0100 //on définit une adresse au pointeur. PORTB = *ptr //le contenu de l adresse pointée est transmis en sortie sur le PORTB. 3

6 Spécificités du compilateur CodeVision AVR : L architecture Harvard des microcontrôleurs AVR impose trois espaces d adresses différents : L espace des données (SRAM) L espace programme (FLASH) L espace mémoire EEPROM Le compilateur gère donc trois types de pointeurs : Les variables situées en SRAM sont accessibles avec des pointeurs classiques. Les constantes placées en mémoire FLASH sont accessibles avec des pointeurs déclarés avec le mot clé flash ou const. Les variables situées en EEPROM sont accessibles avec des pointeurs déclarés avec le mot clé eeprom. Bien que les pointeurs permettent d accéder aux différents espaces mémoires, ceux-ci sont toujours rangés en mémoire SRAM. Exemples : Char *résultat //Déclaration du pointeur résultat, le pointeur est localisé en SRAM. Char flash *message [2] = message 1, message 2 //message 1 et message2 sont placés-en //mémoire flash, le pointeur message est localisé en //SRAM Char eeprom *pointeur_mémoire = Ce texte est placé en EEPROM //Le chaîne de caractère est // placée en EEPROM, le //pointeur pointeur_mémoire //est localisé en SRAM 4

7 2.3 COMPILATION D UN PROGRAMME C AVEC CODEVISIONAVR Organisation de la mémoire SRAM. Un programme compilé avec CodeVisionAVR à l organisation suivante : 0 20h Registres de travail Registres d entrées sorties 12 registres utilisés par le compilateur (R0, R1, R22 à R31). R2 à R15 peuvent être alloués aux variables de type bit ( LSB de R2 = Premier bit déclaré, MSB de R15 = 112 eme bit déclaré, les registres inutilisés peuvent être alloués au var. globale de type int ou char ). Les registres R16 à R21 sont réservés aux variables locales de type int ou char. Espace de 64 adresses réservé aux fonctions périphériques du microcontrôleur ( Ports, timer.). 60h + Data stack SRAM End 60h 60h + Data stack + var. globales «Data stack» Espace pointeur de pile Variables globales «Hardware stack» Cet espace permet de sauvegarder les registres utilisés par le compilateur (R0, R1, R22 à R31), le passage des paramètres et le registre SREG lors de l utilisation des interruptions. Au départ la pile pointe 5F + taille Data stack. L adresse est décrémentée durant une sauvegarde, incrémentée durant une restitution. Cet espace permet de ranger les variables globales du programme pendant son exécution. Cet espace est utilisé pour ranger l adresse de retour des fonctions 5

8 2.3.2 Configuration du compilateur C. Une configuration optimisée du Project Configure Compiler permet de mieux maîtriser le code généré par le compilateur Valeurs par défaut selon le choix du micro choisi, vous pouvez optimiser l espace data stack size si nécessaire ou déclarer de la SRAM externe. A cocher si vous utilisez la liaison série Le modèle TINY génère des pointeurs 8 bits, on a accès aux 256 premiers octets de la SRAM. Le modèle SMALL génère des pointeurs 16 bits, on a accès aux 64K octets de la SRAM. Pour améliorer la taille du programme et la vitesse d exécution, vous devez toujours essayer d utiliser le modèle TINY. Permet d optimiser la taille du code généré (option size) ou la vitesse d exécution (option speed). Permet de générer automatiquement une séquence d initialisation après un reset du microcontrôleur. Validation de l utilisation de la fenêtre du terminal d AVR studio pour la simulation de la liaison UART. Valide la transformation char en type int. Voir exemple n 7 en fin de cours. Déclaration du nombre de variable de type bit, les registres inutilisés sont alloués aux variables globales. Valide par défaut le type char comme non signé. Optimise l allocation des registres R2 à R15 non utilisés par les variables de type bit. Cette option est utile lors du débuggage sous AVR studio, elle permet de vérifier l intégrité de la taille de l espace data stack size, pour plus de détails voir la page 85 de la doc CodeVisionAVR. 6

9 3. LES OPERATEURS DE BASES. 3.1 L OPERATEUR D AFFECTATION. Cet opérateur fondamental a pour symbole le signe égale =, sa syntaxe est left value = expression. 3.2 LES OPERATEURS ARITHMETIQUES. Ces opérateurs procèdent à des opérations arithmétiques sur leurs opérandes. Opérateur Opération Exemple + Addition a + b - Soustraction a - b * Multiplication a * b / Division a / b % Modulo a % b 3.3 LES OPERATEURS DE COMPARAISON. Ce sont des opérateurs binaires qui comparent la valeur de leurs opérandes. Opérateur Fonction Exemple == Égale à? a == b!= Différent de? a!= b <= Inférieur ou égal à? a <= b >= Supérieur ou égal à? a >= b < Inférieur à? a < b > Supérieur à? a > b 3.4 LES OPERATEURS LOGIQUES. Ces opérateurs permettent de relier logiquement des instructions. Opérateur Fonction Exemple && ET logique a && b OU logique a b! NON logique! b 3.5 LES OPERATEURS LOGIQUES DE BITS ET DE DECALAGE. Ces opérateurs réalisent des opérations logiques sur les bits de même rang. Opérateur Fonction Exemple & ET a & b OU a b ^ OU exclusif a ^ b ~ NON ( complément ) ~ a >> Décalage de n bits vers la droite a >> n << Décalage de n bits vers la gauche a << n 7

10 3.6 LES OPERATEURS D INCREMENTATION ET D AFFECTATION COMBINEE. Opérateur Fonction Exemple Equivalence ++ Incrément de 1 a ++ a = a Décrément de 1 a -- a = a -1 += Addition, résultat dans l opérande de gauche a += b a = a + b -= *= /= %= >>= <<= &= = ^= Soustraction, résultat Multiplication, résultat Division, résultat Modulo, résultat Décalage à droite, résultat Décalage à gauche, résultat ET, résultat OU, résultat OU exclusif, résultat a -= b a *= b a /= b a %= b a >>= n a <<= n a &= b a = b a ^= b a = a - b a = a * b a = a / b a = a % b a = a >> n a = a << n a = a & b a = a b a = a ^ b 4. LES STRUCTURES DE CONTROLES. 4.1 LES STRUCTURES ALTERNATIVES (TEST). Ces structures permettent de ne pas exécuter systématiquement certaines instructions Structure IF ELSE (SI ALORS SINON). if (<condition>) <séquence A> ; else < séquence B >; condition fausse ou if (<condition>) <séquence(s)>; else <séquence(s)>; vrai Séquence A Séquence B Exemple : if (test) //on allume si test different de 0 allume(); else éteint(); 8

11 4.1.2 Structure SWITCH CASE (CHOIX MULTIPLES). Cette structure permet de choisir entre plusieurs alternatives. Lorsque l expression située après le SWITCH coïncide avec une des constantes, le programme exécute la séquence ainsi que les séquences suivantes. Pour éviter ce désagrément l instruction break doit être placée à la fin de chaque séquence. switch (<expression>) case c1 : <séquence A>; case c2 : <séquence B>; case c3 : <séquence C>; case c4 : <séquence D>; default : < séquence par défaut >; Expression == c1 Expression == c2 vrai vrai Séquence A Séquence B Exemple : Expression == c3 vrai Séquence C Switch (numéro_de_touche) case 1 : lcd_putsf ( Touche n 1 ); break; case 2 : lcd_putsf ( Touche n 2 ); break; case 3 : lcd_putsf ( Touche n 3 ); break; default : lcd_putsf ( Touche erroné ); //lcd_putsf permet d envoyer une chaîne de // caractère vers un afficheur LCD (bibliothèque LCD.h) 4.2 LES STRUCTURES ITERATIVES (REPETITIVES). Expression == c4 fausse vrai Séquence D Séquence par défaut La structure WHILE (TANT QUE FAIRE). La structure WHILE permet de répéter la séquence tant que l expression est vraie. while (<expression>) <séquence>; ou while (<expression>) <séquence(s)>; Expression vraie Séquence fausse Exemple : while (BUSY==0) PORTA =0xaa ; PORTB = 0X25; 9

12 4.2.2 La structure DO WHILE (FAIRE JUSQU'À) Avec la structure DO WHILE la séquence est exécutée au moins une fois, elle est répétée tant que l expression est vraie. do <séquence>; while (<expression>); Séquence Expression fausse ou do <sequence(s)>; while (<expression>); vraie Exemple : do PORTA+=1 ; //incrément de 1 de PORTA PORTB=PORTB+1 ; //incrément de 1 de PORTB while (PINC.2==0); La structure FOR (POUR FAIRE) La structure FOR permet de répéter une séquence tant que l expression2 est vraie. Elle opère souvent sur l expression. Initialisation For (<expression1>; <expression2>; <expression3>) <séquence>; ou For (<expression1>; <expression2>; <expression3>) <séquence>; Expression vraie Séquence fausse Equivalent à : <expression1> While (<expression2>) <séquence>; <expression3>; Remarque : For (;;) //Boucle infinie Exemples : For (i=1; i<9 ;i++) PORTA<<=1; Opération 10

13 5. LES FONCTIONS. 5.1 ROLE D UNE FONCTION. Le corps d une fonction est délimité par des accolades... Un programme C doit se composer de plusieurs fonctions pour permettre une meilleure lisibilité et maintenance du programme. La fonction main () est exécutée en premier, elle gère le bon déroulement du programme et l'échange des données entres les autres fonctions. Exemple : Lecture de l'état de huit inters dils branchés sur la port A et affichage du résultat sur huit leds branchés sur le port C. #include <90s8515.h> char valeur; void init (void); void lecture (void); void affiche (void); void main(void) init(); lecture(); affiche (); #include <90s8515.h> char valeur; void main(void) DDRA=0x00; PORTA=0x00; DDRC=0x00; PORTC=0xff; valeur=pina; PORTC=valeur; void init(void) DDRA=0x00; PORTA=0x00; DDRC=0x00; PORTC=0xff; void lecture (void) valeur=pina; void affiche (void) PORTC=valeur; Le programme est plus long à écrire, le code généré est plus important (89 mots au lieu de 83 pour l'exemple droite), mais la fonction main est structurée et gère les appels des fonctions nécessaires à la réalisation de notre programme. La tache réalisée par ce programme est plus lisible et compréhensible par une tierce personne, ceci facilite et améliore les opérations de maintenance. L'écriture est simplifiée, mais la tache réalisé par le programme est plus difficile à déterminer. Pour une tache plus compliquée la lecture du programme par une tierce personne peut devenir rapidement très difficile voire impossible. L'écriture de ce type de programme est donc à proscrire. 11

14 5.2 DECLARATION D UNE FONCTION. Pour améliorer la lisibilité des programmes toutes les fonctions doivent être déclarées et «typées». Si la déclaration est omise le type de la fonction sera de type int. Chaque fonction peut recevoir ou non des arguments en paramètres, attention à respecter les types lors des passages d'arguments. Le mot clé void permet de déclarer une fonction ne renvoie pas de paramètres, il permet aussi de déclarer qu une fonction ne reçoit pas d arguments en paramètres. 5.3 PASSAGE DE PARAMETRES. Le passage des paramètres peut s effectuer par valeur ou par adresse. Lors du passage par valeur, la fonction ayant reçu les arguments en paramètres travaille avec des copies de ces variables, lors de la sortie de la fonction les variables originelles restent inchangées. Lorsque le passage s effectue par adresse, la fonction travaille directement avec la variable ( la fonction connaît son adresse). 12

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

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

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

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

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

Introduction au langage C

Introduction au langage C Introduction au langage C Cours 1: Opérations de base et premier programme Alexis Lechervy Alexis Lechervy (UNICAEN) Introduction au langage C 1 / 23 Les premiers pas Sommaire 1 Les premiers pas 2 Les

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

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

La programmation des PIC en C. Les fonctions, les interruptions.

La programmation des PIC en C. Les fonctions, les interruptions. La programmation des PIC en C Les fonctions, les interruptions. Réalisation : HOLLARD Hervé. http://electronique-facile.com Date : 26 août 2004 Révision : 1.2 Sommaire Sommaire... 2 Introduction... 3 Structure

Plus en détail

Notions fondamentales du langage C# Version 1.0

Notions fondamentales du langage C# Version 1.0 Notions fondamentales du langage C# Version 1.0 Z 2 [Notions fondamentales du langage Csharp] [Date : 25/03/09] Sommaire 1 Tout ce qu il faut savoir pour bien commencer... 3 1.1 Qu est ce qu un langage

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

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

Introduction à l algorithmique et à la programmation M1102 CM n 3

Introduction à l algorithmique et à la programmation M1102 CM n 3 Introduction à l algorithmique et à la programmation M1102 CM n 3 DUT Informatique 1 re année Eric REMY eric.remy@univ-amu.fr IUT d Aix-Marseille, site d Arles Version du 2 octobre 2013 E. Remy (IUT d

Plus en détail

Programmer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr)

Programmer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Programmer en JAVA par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Plan 1. Présentation de Java 2. Les bases du langage 3. Concepts avancés 4. Documentation 5. Index des mots-clés 6. Les erreurs fréquentes

Plus en détail

Les structures. Chapitre 3

Les structures. Chapitre 3 Chapitre 3 Les structures Nous continuons notre étude des structures de données qui sont prédéfinies dans la plupart des langages informatiques. La structure de tableau permet de regrouper un certain nombre

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

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

SUPPORT DE COURS. Langage C

SUPPORT DE COURS. Langage C Dpt Informatique 2010-2011 SUPPORT DE COURS Langage C Semestre 1 par : «CaDePe» Marie-Françoise Canut Marianne de Michiel André Péninou Table des Matières 1 Généralités...8 1.1 Introduction aux langages

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

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

PIC EVAL Dev Board PIC18F97J60

PIC EVAL Dev Board PIC18F97J60 PIC EVAL Dev Board PIC18F97J60 2 TP1 : Prise en main de l environnement de programmation pour la carte PIC EVAL-ANFA Pour répondre aux questions et justifier vos réponses, vous pouvez faire des copies

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

03/04/2007. Tâche 1 Tâche 2 Tâche 3. Système Unix. Time sharing

03/04/2007. Tâche 1 Tâche 2 Tâche 3. Système Unix. Time sharing 3/4/27 Programmation Avancée Multimédia Multithreading Benoît Piranda Équipe SISAR Université de Marne La Vallée Besoin Programmes à traitements simultanés Réseau Réseau Afficher une animation en temps

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

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

as Architecture des Systèmes d Information

as Architecture des Systèmes d Information Plan Plan Programmation - Introduction - Nicolas Malandain March 14, 2005 Introduction à Java 1 Introduction Présentation Caractéristiques Le langage Java 2 Types et Variables Types simples Types complexes

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

Introduction à Java. Matthieu Herrb CNRS-LAAS. Mars 2014. http://homepages.laas.fr/matthieu/cours/java/java.pdf

Introduction à Java. Matthieu Herrb CNRS-LAAS. Mars 2014. http://homepages.laas.fr/matthieu/cours/java/java.pdf Introduction à Java Matthieu Herrb CNRS-LAAS http://homepages.laas.fr/matthieu/cours/java/java.pdf Mars 2014 Plan 1 Concepts 2 Éléments du langage 3 Classes et objets 4 Packages 2/28 Histoire et motivations

Plus en détail

Cours d Algorithmique et de Langage C 2005 - v 3.0

Cours d Algorithmique et de Langage C 2005 - v 3.0 Cours d Algorithmique et de Langage C 2005 - v 3.0 Bob CORDEAU cordeau@onera.fr Mesures Physiques IUT d Orsay 15 mai 2006 Avant-propos Avant-propos Ce cours en libre accès repose sur trois partis pris

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

Le langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie

Le langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie Chapitre I : Les bases du C++ Le langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie du logiciel, et ce depuis

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

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

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

Langage C. Patrick Corde. Patrick.Corde@idris.fr. 22 juin 2015. Patrick Corde ( Patrick.Corde@idris.fr ) Langage C 22 juin 2015 1 / 289

Langage C. Patrick Corde. Patrick.Corde@idris.fr. 22 juin 2015. Patrick Corde ( Patrick.Corde@idris.fr ) Langage C 22 juin 2015 1 / 289 Langage C Patrick Corde Patrick.Corde@idris.fr 22 juin 2015 Patrick Corde ( Patrick.Corde@idris.fr ) Langage C 22 juin 2015 1 / 289 Table des matières I 1 Présentation du langage C Historique Intérêts

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

Le Langage C Version 1.2 c 2002 Florence HENRY Observatoire de Paris Université de Versailles florence.henry@obspm.fr

Le Langage C Version 1.2 c 2002 Florence HENRY Observatoire de Paris Université de Versailles florence.henry@obspm.fr Le Langage C Version 1.2 c 2002 Florence HENRY Observatoire de Paris Université de Versailles florence.henry@obspm.fr Table des matières 1 Les bases 3 2 Variables et constantes 5 3 Quelques fonctions indispensables

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

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

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

É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

Le langage C. Introduction, guide de reference

Le langage C. Introduction, guide de reference Le langage C Introduction, guide de reference Ce document est une présentation du langage de programmation C, de sa syntaxe et de ses spécificités. Il est destiné essentiellement à servir de mémo-guide

Plus en détail

Introduction à la programmation orientée objet, illustrée par le langage C++ Patrick Cégielski cegielski@u-pec.fr

Introduction à la programmation orientée objet, illustrée par le langage C++ Patrick Cégielski cegielski@u-pec.fr Introduction à la programmation orientée objet, illustrée par le langage C++ Patrick Cégielski cegielski@u-pec.fr Mars 2002 Pour Irène et Marie Legal Notice Copyright c 2002 Patrick Cégielski Université

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

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

REPUBLIQUE ALGERIENNE DEMOCRATIQUE ET POPULAIRE UNIVERSITE M HAMED BOGARA DE BOUMERDES

REPUBLIQUE ALGERIENNE DEMOCRATIQUE ET POPULAIRE UNIVERSITE M HAMED BOGARA DE BOUMERDES REPUBLIQUE ALGERIENNE DEMOCRATIQUE ET POPULAIRE MINISTERE DE L ENSEIGNEMENT SUPERIEUR ET DE LA RECHERCHE SCIENTIFIQUE UNIVERSITE M HAMED BOGARA DE BOUMERDES FACULTE DES SCIENCES - DEPARTEMENT PHYSIQUE

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

Langage Éric Guérin 5 octobre 2010

Langage Éric Guérin 5 octobre 2010 Langage Éric Guérin 5 octobre 2010 Langage C TABLE DES MATIÈRES Table des matières 1 Introduction 7 1.1 Historique........................................... 7 1.2 Architecture matérielle....................................

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

INTRODUCTION AUX SYSTEMES D EXPLOITATION. TD2 Exclusion mutuelle / Sémaphores

INTRODUCTION AUX SYSTEMES D EXPLOITATION. TD2 Exclusion mutuelle / Sémaphores INTRODUCTION AUX SYSTEMES D EXPLOITATION TD2 Exclusion mutuelle / Sémaphores Exclusion mutuelle / Sémaphores - 0.1 - S O M M A I R E 1. GENERALITES SUR LES SEMAPHORES... 1 1.1. PRESENTATION... 1 1.2. UN

Plus en détail

Programmation Classique en langage C

Programmation Classique en langage C DI GALLO Frédéric Programmation Classique en langage C Cours du Cycle d Approfondissement CNAM ANGOULEME 2000-2001 DI GALLO Frédéric Page 1 01/04/01 PROGRAMMATION CLASSIQUE : LANGAGE C DI GALLO Frédéric

Plus en détail

Utilisation d objets : String et ArrayList

Utilisation d objets : String et ArrayList Chapitre 6 Utilisation d objets : String et ArrayList Dans ce chapitre, nous allons aborder l utilisation d objets de deux classes prédéfinies de Java d usage très courant. La première, nous l utilisons

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 d initiation à la programmation en C++ Johann Cuenin

Cours d initiation à la programmation en C++ Johann Cuenin Cours d initiation à la programmation en C++ Johann Cuenin 11 octobre 2014 2 Table des matières 1 Introduction 5 2 Bases de la programmation en C++ 7 3 Les types composés 9 3.1 Les tableaux.............................

Plus en détail

STAGE IREM 0- Premiers pas en Python

STAGE IREM 0- Premiers pas en Python Université de Bordeaux 16-18 Février 2014/2015 STAGE IREM 0- Premiers pas en Python IREM de Bordeaux Affectation et expressions Le langage python permet tout d abord de faire des calculs. On peut évaluer

Plus en détail

Travaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation

Travaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation Université de Savoie Module ETRS711 Travaux pratiques Compression en codage de Huffman 1. Organisation du projet 1.1. Objectifs Le but de ce projet est d'écrire un programme permettant de compresser des

Plus en détail

STS SE. FreeRTOS. Programmation réseau WIFI. Programmation réseau. Socket Tcp. FlyPort smart Wi-Fi 802.11 module

STS SE. FreeRTOS. Programmation réseau WIFI. Programmation réseau. Socket Tcp. FlyPort smart Wi-Fi 802.11 module François SCHNEIDER Lycée Victor-Hugo BESANÇON. STS SE FreeRTOS Programmation réseau WIFI Programmation réseau Socket Tcp FlyPort smart Wi-Fi 802.11 module Prérequis : langage C, connaissance réseau : Ip,

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

I. Introduction aux fonctions : les fonctions standards

I. Introduction aux fonctions : les fonctions standards Chapitre 3 : Les fonctions en C++ I. Introduction aux fonctions : les fonctions standards A. Notion de Fonction Imaginons que dans un programme, vous ayez besoin de calculer une racine carrée. Rappelons

Plus en détail

Programmation C. J.-F. Lalande. 15 novembre 2012

Programmation C. J.-F. Lalande. 15 novembre 2012 Programmation C J.-F. Lalande novembre 0 Ce cours est mis à disposition par Jean-François Lalande selon les termes de la licence Creative Commons Attribution - Pas d Utilisation Commerciale - Partage à

Plus en détail

Anis ASSÈS Mejdi BLAGHGI Mohamed Hédi ElHajjej Mohamed Salah Karouia

Anis ASSÈS Mejdi BLAGHGI Mohamed Hédi ElHajjej Mohamed Salah Karouia Ministère de l Enseignement Supérieur, de la Recherche Scientifique et de la Technologie Direction Générale des Etudes Technologiques Institut Supérieur des Etudes Technologiques de Djerba SUPPORT DE COURS

Plus en détail

Cours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre 2009. Enrica.Duchi@liafa.jussieu.fr

Cours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre 2009. Enrica.Duchi@liafa.jussieu.fr . Cours intensif Java 1er cours: de C à Java Septembre 2009 Enrica DUCHI LIAFA, Paris 7 Enrica.Duchi@liafa.jussieu.fr LANGAGES DE PROGRAMMATION Pour exécuter un algorithme sur un ordinateur il faut le

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

MICROCONTROLEURS PIC PROGRAMMATION EN C. V. Chollet - cours-pic-13b - 09/12/2012 Page 1 sur 44

MICROCONTROLEURS PIC PROGRAMMATION EN C. V. Chollet - cours-pic-13b - 09/12/2012 Page 1 sur 44 MICROCONTROLEURS PIC PROGRAMMATION EN C V. Chollet - cours-pic-13b - 09/12/2012 Page 1 sur 44 Chapitre 1 GENERALITES 1 DEFINITION Un microcontrôleur est un microprocesseur RISC (Reduced Instruction Set

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

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

Algorithmes et Programmes. Introduction à l informatiquel. Cycle de vie d'un programme (d'un logiciel) Cycle de vie d'un programme (d'un logiciel)

Algorithmes et Programmes. Introduction à l informatiquel. Cycle de vie d'un programme (d'un logiciel) Cycle de vie d'un programme (d'un logiciel) Algorithmes et Programmes Introduction à l informatiquel! Vie d'un programme! Algorithme! Programmation : le langage! Exécution et test des programmes Chapitre : Algorithmes et Programmes 2 Cycle de vie

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

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

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

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

Solutions du chapitre 4

Solutions du chapitre 4 Solutions du chapitre 4 Structures de contrôle: première partie 4.9 Identifiez et corrigez les erreurs (il peut y en avoir plus d une par segment de code) de chacune des proposition suivantes: a) if (

Plus en détail

Organigramme / Algorigramme Dossier élève 1 SI

Organigramme / Algorigramme Dossier élève 1 SI Organigramme / Algorigramme Dossier élève 1 SI CI 10, I11 ; CI 11, I10 C24 Algorithmique 8 février 2009 (13:47) 1. Introduction Un organigramme (ou algorigramme, lorsqu il est plus particulièrement appliqué

Plus en détail

SNT4U16 - Initiation à la programmation 2014-2015. TD - Dynamique de POP III - Fichiers sources

SNT4U16 - Initiation à la programmation 2014-2015. TD - Dynamique de POP III - Fichiers sources SNT4U16 - Initiation à la programmation Licence SVT 2 ème année 2014-2015 TD - Dynamique de POP III - Fichiers sources contacts : mathias.gauduchon@univ-amu.fr, melika.baklouti@univ-amu.fr, xavier.giraud@univ-amu.fr,

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

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

AMICUS 18 (2ème partie) 4) Présentation du logiciel Amicus IDE

AMICUS 18 (2ème partie) 4) Présentation du logiciel Amicus IDE AMICUS 18 (2ème partie) Dans la première partie, nous avions présenté la platine Amicus 18 et nous avions réalisé quelques montages simples. Nous allons découvrir un peu mieux la programmation. Dans la

Plus en détail

Cours de C++ François Laroussinie. 2 novembre 2005. Dept. d Informatique, ENS de Cachan

Cours de C++ François Laroussinie. 2 novembre 2005. Dept. d Informatique, ENS de Cachan Cours de C++ François Laroussinie Dept. d Informatique, ENS de Cachan 2 novembre 2005 Première partie I Introduction Introduction Introduction Algorithme et programmation Algorithme: méthode pour résoudre

Plus en détail

Initiation. àl algorithmique et à la programmation. en C

Initiation. àl algorithmique et à la programmation. en C Initiation àl algorithmique et à la programmation en C Initiation àl algorithmique et à la programmation en C Cours avec 129 exercices corrigés Illustration de couverture : alwyncooper - istock.com Dunod,

Plus en détail

Introduction à la programmation Travaux pratiques: séance d introduction INFO0201-1

Introduction à la programmation Travaux pratiques: séance d introduction INFO0201-1 Introduction à la programmation Travaux pratiques: séance d introduction INFO0201-1 B. Baert & F. Ludewig Bruno.Baert@ulg.ac.be - F.Ludewig@ulg.ac.be Qu est-ce que la programmation? Programmer Ecrire un

Plus en détail

Cours d Informatique

Cours d Informatique Cours d Informatique 1ère année SM/SMI 2007/2008, Info 2 Département de Mathématiques et d Informatique, Université Mohammed V elbenani@hotmail.com sayah@fsr.ac.ma 2007/2008 Info2, 1ère année SM/SMI 1

Plus en détail

COMPARAISONDESLANGAGESC, C++, JAVA ET

COMPARAISONDESLANGAGESC, C++, JAVA ET REPUBLIQUE DU BENIN *******@******* MINISTERE DE L ENSEIGNEMENT SUPERIEUR ET DE LA RECHERCHE SCIENTIFIQUE(MESRS) *******@******* UNIVERSITE D ABOMEY CALAVI(UAC) *******@******* ECOLE POLYTECHNIQUE D ABPOMEY

Plus en détail

Java Licence Professionnelle CISII, 2009-2010

Java Licence Professionnelle CISII, 2009-2010 Licence Professionnelle CISII, 2009-2010 Cours 1 : Introduction à Java A. Belaïd abelaid@loria.fr Cours disponible sur le site : http://www.loria.fr/~abelaid puis Teaching 1 Fonctionnement 12 séances :

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

Machines virtuelles. Brique ASC. Samuel Tardieu sam@rfc1149.net. Samuel Tardieu (ENST) Machines virtuelles 1 / 40

Machines virtuelles. Brique ASC. Samuel Tardieu sam@rfc1149.net. Samuel Tardieu (ENST) Machines virtuelles 1 / 40 Machines virtuelles Brique ASC Samuel Tardieu sam@rfc1149.net École Nationale Supérieure des Télécommunications Samuel Tardieu (ENST) Machines virtuelles 1 / 40 Machines virtuelles La compilation peut

Plus en détail

Méthodes de programmation systèmes UE n NSY103. Notes de cours. Nombre d'heures : 55h (~18 + 1 cours de 3 heures)

Méthodes de programmation systèmes UE n NSY103. Notes de cours. Nombre d'heures : 55h (~18 + 1 cours de 3 heures) Méthodes de programmation systèmes UE n NSY103 Notes de cours Code de l UE : NSY103 Titre de la formation : Méthodes de programmation systèmes Ouvert : Ouvert Type de diplôme : Unité de valeur CNAM. Nombre

Plus en détail

Introduction au Langage de Programmation C

Introduction au Langage de Programmation C Faculté Polytechnique de Mons Service d'informatique Introduction au Langage de Programmation C Mohammed Benjelloun 1 ère Candidature Année académique 2003-2004 Avant-propos Ces notes permettent de se

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

Programmation impérative

Programmation impérative Programmation impérative Cours 4 : Manipulation des fichiers en C Catalin Dima Organisation des fichiers Qqs caractéristiques des fichiers : Nom (+ extension). Chemin d accès absolu = suite des noms des

Plus en détail

Langage et Concepts de ProgrammationOrientée-Objet 1 / 40

Langage et Concepts de ProgrammationOrientée-Objet 1 / 40 Déroulement du cours Introduction Concepts Java Remarques Langage et Concepts de Programmation Orientée-Objet Gauthier Picard École Nationale Supérieure des Mines de Saint-Étienne gauthier.picard@emse.fr

Plus en détail

Carte ARDUINO UNO Microcontrôleur ATMega328

Carte ARDUINO UNO Microcontrôleur ATMega328 Microcontrôleurs EI3 Option AGI Carte ARDUINO UNO Microcontrôleur ATMega328 B. Cottenceau B311 ISTIA bertrand.cottenceau@univ-angers.fr Microcontrôleurs 1/23 1 Introduction Le modèle UNO de la société

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

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

I00 Éléments d architecture

I00 Éléments d architecture I00 I Exemples d ordinateur Pour les informaticiens, différentes machines de la vie courante sont des ordinateurs : par exemple les ordinateurs portables, les ordinateurs fixes, mais aussi les supercalculateurs,

Plus en détail

PROGRAMMER EN MQL4. Apprenez à automatiser vos stratégies sur MetaTrader 4

PROGRAMMER EN MQL4. Apprenez à automatiser vos stratégies sur MetaTrader 4 PROGRAMMER EN MQL4 Apprenez à automatiser vos stratégies sur MetaTrader 4 3 2011 Henri Baltzer. Tous droits réservés. Veuillez excuser par avance les nombreuses erreurs qui subsistent probablement dans

Plus en détail

Seance 2: En respectant la méthode de programmation par contrat, implémentez les autres fonctions de jeu.

Seance 2: En respectant la méthode de programmation par contrat, implémentez les autres fonctions de jeu. Seance 2: Complétion du code de jeu. (durée max: 2h) Mot clé const et pointeurs: En respectant la méthode de programmation par contrat, implémentez les autres fonctions de jeu. Implémentez jeu_recupere_piece

Plus en détail

Sélection du contrôleur

Sélection du contrôleur Démo CoDeSys - 1 - 1. Configuration de l environnement de travail : Lancer le logiciel CoDeSys Fichier Nouveau Lors de la première utilisation, une boîte de dialogue apparaît permettant la sélection du

Plus en détail

Conférence sur les microcontroleurs.

Conférence sur les microcontroleurs. Conférence sur les microcontroleurs. Le microcontrôleur Les besoins et le développement. Vers 1970, pour des calculs (calculatrice). Le premier est le 4004 de Intel, 90K. La technologie. Les 2 principales

Plus en détail