CONTENU DU COURS. GPA770: Microélectronique appliquée Éric Granger B.1-1

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

Download "CONTENU DU COURS. GPA770: Microélectronique appliquée Éric Granger B.1-1"

Transcription

1 CONTENU DU COURS B.1-1

2 Partie B Concepts logiciels B.1 Langage assembleur et programmation structurée: modes d adressage et jeu d instructions boucles, pile et sous-routines programmation structurée B.2 Microcontrôleurs à logique floue: systèmes de contrôle à logique floue instructions spécialisées du 68HC12 B.3 Programmation à haut niveau: comparaisons assembleur vs C passages de paramètres bibliothèques et compilation mixte B.1-2

3 Sommaire de la Section B.1 B.1 Langage assembleur et programmation structurée: 1) Processus d assemblage 2) Directives de compilation 3) Modes d adressage 4) Jeu d instructions 5) Boucles 6) Piles 7) Sous-routines: appel et passage de paramètres 8) Sous-routines utilitaires du D-BUG12 9) Programmation structurée B.1-3

4 B.1(1) Processus d assemblage code source en langage assembleur compilation code assemblé en langage machine Le processus génère 1. un fichier en langage machine (*.s19): séquences binaires selon le format de Motorola 2. un fichier liste (*.lst) pour le déverminage: affiche le code machine pour chaque adresse mémoire indique l adresse d exécution et le mode d opération de chaque instruction B.1-4

5 B.1(1) Processus d assemblage PROGRAMME ASSEMBLEUR (fichier.asm) ASSEMBLEUR MODIFICATIONS AU PROGRAMME ASSEMBLEUR PROGRAMME EN LANGUAGE MACHINE (fichier.s19) EXÉCUTION SUR LE 68HC12 LISTING DU PROGRAMME (fichier.lst) B.1-5

6 B.1(1) Processus d assemblage Éléments d un programme en assembleur: 1. Directives de compilation instructions spéciales qui contrôlent l opération de l assembleur permettent d organiser un programme en mémoire 2. Instructions en langage assembleur la plus petite unité d action que peut reconnaître et exécuter le CPU parmi un jeu de 209 instructions (avec 6 modes d addressage) 3. Commentaires explique la fonction d une ou de plusieurs instructions B.1-6

7 B.1(1) Processus d assemblage Format d instructions en assembleur: étiquette op-code opérant(s) commentaires début: LDAA #FC ;charger l accu. A étiquette: identifie une ligne de code du programme permet de localiser une {instructions} à exécuter op-code/directive/macro: élément fonctionnel de l instruction/dirige le compilateur/enregistrement de texte opérant(s): information permettant d accéder aux données pour exécuter une instruction, via le mode d adressage Commentaires: ; indique le début d un commentaire utile aussi pour documentation au début d une ligne B.1-7

8 B.1(1) Processus d assemblage Structure globale d un programme: ; SECTION DÉFINTIONS NUM1: EQU $24 NUM2: EQU $05 ; SECTION DE DONNÉES ORG $0800 RESULT: RMB $02 ORG $4000 ; SOUS-ROUTINES ; SECTION DU PROGRAMME PRINCIPAL DEBUT: LDAA #NUM1 LDAB #NUM2 MUL STD RESULT END B.1-8

9 Sommaire de la Section B.1 B.1 Langage assembleur et programmation structurée: 1) Processus d assemblage 2) Directives de compilation 3) Modes d adressage 4) Jeu d instructions 5) Boucles 6) Piles 7) Sous-routines: appel et passage de paramètres 8) Sous-routines utilitaires du D-BUG12 9) Programmation structurée B.1-9

10 B.1(2) Directives de compilation déf.: Instructions spéciales qui contrôlent l opération de l assembleur, et permettent d organiser un programme en mémoire Rôle des directives de compilation: spécifier le début et la fin d un programme définir des symboles et des données réserver et initialiser des blocks en mémoire spécifier le format de sortie fixer les conditions pour l assemblage B.1-10

11 B.1(2) Directives de compilation Directives de base: ORG: fixe l adresse de départ pour le compilateur INCLUDE: inclure un fichier texte LIST: écrit le résultat de la compilation dans *.lst EQU: associe un symbole avec une valeur numérique END: commande la fin de la compilation (et non la fin du programme) étiquette op-code opérant(s) commentaire ORG $4000 LDAA #$10... END B.1-11

12 B.1(2) Directives de compilation Directives pour réserver et initialiser des blocks en mémoire RAM: RMB: réserve un bloc de mémoire d un nombre spécifié de octets sous une étiquette FCB (FDB): réserve un bloc de mémoire de 1 octet (2 octets) par nombre et initialise les valeurs FCC: permet d initialiser pour des caractères de texte étiquette op-code opérant(s) commentaire TEMP RMB $10 ; réserve 16 octets TEMP FDB $1112, $12 ; réserve et initialise 4 octets TEMP FCC ``JOE`` ; stocke JOE en ASCII B.1-12

13 Sommaire de la Section B.1 B.1 Langage assembleur et programmation structurée: 1) Processus d assemblage 2) Directives de compilation 3) Modes d adressage 4) Jeu d instructions 5) Boucles 6) Piles 7) Sous-routines: appel et passage de paramètres 8) Sous-routines utilitaires du D-BUG12 9) Programmation structurée B.1-13

14 B.1(3) Modes d adressage déf.: méthode utilisée par le CPU pour accéder aux données requises pour l exécution d une instruction Indicateurs du mode: syntaxe op-code + opérants Six modes d adressage: a. mode inhérent (INH) b. mode immédiat (IMM) c. mode direct (DIR) d. mode étendu (EXT) e. mode indexé (IDX) f. mode relative (REL) B.1-14

15 B.1(3) Modes d adressage a. Mode inhérent (INH) Les données requises pour exécuter l instruction est contenue dans son op-code les opérants sont dans les registres du CPU Exemples: étiquette op-code opérant(s) commentaires INCA ; incrémente A ABA ; A + B A INX ; IX + 1 IX EXG A,B ;? B.1-15

16 B.1(3) Modes d adressage b. Mode immédiat (IMM) Les données requises pour exécuter l instruction sont stockées immédiatement après le op-code en mémoire les opérants sont inclus dans la séquence d instructions symbole # : indique à l assembleur que l opérant doit être traitée comme une donnée (non comme une adresse). Exemples: étiquette op-code opérant(s) commentaires LDAA #$5F ; $5F A ADDA #$12 ; A+$12 A LDD #$1234 ;??? B.1-16

17 B.1(3) Modes d adressage c. Mode direct (DIR) Les données requises sont stockées à l adresse mémoire indiqué par l octet bas LSB (suppose l octet haut MSB=$00) l étendue des adresses mémoire limitée au bloc de registres: $0000 $00FF (256 registres de configuration) mais, il consomme moins de mémoire et s exécute plus rapidement Exemples: étiquette op-code opérant(s) commentaires LDAA $5F ; [$005F] A ADDA $12 ;??? B.1-17

18 B.1(3) Modes d adressage d. Mode (direct) étendu (EXT) Les données requises sont stockées à l adresse mémoire qui est indiqué par deux octets (adresse de 16 bits) l étendue des adresses mémoire: $0100 $FFFF l adresse effective est une adresse explicite Exemples: étiquette op-code opérant(s) commentaires LDAA $5F43 ; charger [$5F43] A ADDA $1234 ; charger [$1234]+A A ADDD $1030 ;??? B.1-18

19 B.1(3) Modes d adressage e. Modes indexé (IDX) Les données requises sont accédées en additionnant le contenu des indexes IX, IY, SP ou PC avec un décalage le décalage (offset) est: nombre hex, dec ou bin de longueur 5, 9 ou 16 bits nombre signés en complément à 2: décalage + ou décalage avec accumulateurs A/B (8 bits) et D (16 bits) Exemples: étiquette op-code opérant(s) commentaires LDAA $53, X ; charger [$53+IX] A ADDA $12, X ;??? B.1-19

20 B.1(3) Modes d adressage e. Modes indexé (suite) Lors de l exécution, on peut effectuer une pré/post incr/décrémentation automatique de IX, IY et SP: le signe + (-): incrémente (décrémente) de 1 à 8 (-8 à -1) valeurs le signe vient avant (après) l index: indique la pré (post) incr/décrémentation Exemples: étiquette op-code opérant(s) commentaires STAA 2, -SP ; SP-2 SP et A [SP] LDX 2, SP+ ; [SP] X et SP+2 SP LDX 2, SP ;??? B.1-20

21 B.1(3) Modes d adressage e. Modes indexé (suite) Mode indexé de base (IDX): x b seul décalage signé constant exprimé sur 5 bits (entre -16 à 15) pré/post incr/décrémentation de 1 à 8 décalage avec accumulateurs A, B et D Mode indexé 1 (IDX1): x b + 1 octet d extension décalage signé constant exprimé sur 9 bits Mode indexé 2 (IDX2): x b + 2 octet d extension décalage signé constant exprimé sur 16 bits B.1-21

22 B.1(3) Modes d adressage e. Modes indexé (suite) Mode indexé indirect [IDX] trouve un pointeur (i.e., une adresse) aux données d intérêt: l adresse effective est indiquée par un décalage de 16 bits (soit D ou une valeur de 16 bits) et le registre IX, IY, SP ou PC Exemples: étiquette op-code opérant(s) commentaires SUBA $0, Y ; A - [$0+IY] A LDAA A, X ; A + [IX] A LDAA [D, X] ;??? B.1-22

23 B.1(3) Modes d adressage e. Modes indexé (suite) B.1-23

24 B.1(3) Modes d adressage f. Mode relatif (REL) Utilisé pour les instructions de branchement Bxx et LBxx Calcul l adresse effective de branchement en additionnant un décalage relatif signé au contenu du PC. Exemple: branchement conditionnel étiquette op-code opérant(s) commentaire BEQ $10 ; branchement si Z=1 STAA $ INX B.1-24

25 B.1(3) Modes d adressage f. Mode relatif (suite) mais, on utilise normalement une étiquette, plutôt qu une valeur numérique Exemple: étiquette op-code opérant(s) commentaire NEXT BEQ NEXT ; brancher si Z=1 STAA $ INX B.1-25

26 Sommaire de la Section B.1 B.1 Langage assembleur et programmation structurée: 1) Processus d assemblage 2) Directives de compilation 3) Modes d adressage 4) Jeu d instructions 5) Boucles 6) Piles 7) Sous-routines: appel et passage de paramètres 8) Sous-routines utilitaires du D-BUG12 9) Programmation structurée B.1-26

27 B.1(4) Jeu d instructions Catégories d instructions: a. transfert et manipulation de données b. arithmétique c. logique et manipulation de bits d. test de données e. branchement f. appel aux fonctions (à voir plus loin dans B.1) g. logique floue (à voir dans la section B.2) B.1-27

28 B.1(4) Jeu d instructions a. Transfert et manipulation de données Fonction: déplacer et manipuler des données Exemples communs: MOVB: déplacer un octet d une adresse mémoire à une autre LDAA: charger une valeur de mémoire dans A STAA: stocker la valeur dans A en mémoire PULX: accéder les 2 premiers octets de la pile, et charger dans IX PSHA: stocker le contenue de l accumulateur A dans la pile ROL: rotation des données vers la gauche ASR: décaler les données vers la droite B.1-28

29 B.1(4) Jeu d instructions a. Transfert et manipulation de données (suite) LDx Instructions de chargement: copient le contenu de l adresse mémoire indiquée vers un accumulateur (A, B ou D), ou vers un indexe (IX, IY ou SP) Affecte les bits d état N, Z et V du CCR Exemples: étiquette op-code opérant(s) commentaires LDAA #$12 ; charger $12 A LDAB $4000 ; charger [$4000] B LDS #$DFFF ;???? B.1-29

30 B.1(4) Jeu d instructions a. Transfert et manipulation de données (suite) STx Instructions de stockage: copient le contenu d un accumulateur ou d un index vers l adresse mémoire qui est indiquée Affecte les bits d état N, Z et V du CCR Exemples: étiquette op-code opérant(s) commentaires STAB $1237 ; stocker B [$1237] STD $0800 ; stocker D [$0800:$0801] STAA $FF ;???? B.1-30

31 B.1(4) Jeu d instructions a. Transfert et manipulation de données (suite) MOV et TFR Instructions de transfert: copient le contenu entre registres du CPU, ou entre adresses de mémoire MOV n affecte pas les bits d état N, Z et V du CCR Exemples: étiquette op-code opérant(s) commentaires (source destination) MOVB $1234, $CF0D ; 8 bits mém mém MOVW $1234, $CF0D ; 16 bits mém mém TFR A, B ; transfert A B TBA ;???? B.1-31

32 B.1(4) Jeu d instructions a. Transfert et manipulation de données (suite) Instructions de décalage et de rotation: 21 différentes opérations classifiées en 3 types. 1. LSL/R instructions de décalage logique, pour: examiner chaque bit, en regardant le bit d état C du CCR écarter des bits, et de les remplacer par des 0 décaler dans la direction spécifiée 2. ASL/R instructions de décalage arithmétique, pour: la multiplication et la division par multiple de 2 (car on conserve le bit MSb de signe) 3. ROL/R instructions de rotation, pour: la rotation des positions de bits dans un octet (conserve l ordre) B.1-32

33 B.1(4) Jeu d instructions a. Transfert et manipulation de données (suite) Instructions de décalage et de rotation: (suite) B.1-33

34 B.1(4) Jeu d instructions a. Transfert et manipulation de données (suite) Instructions de décalage et de rotation: (suite) Exemples: étiquette op-code opérant(s) commentaires ROL RORA LSLD ASL $1234 ; rotation gauche ASRB ;??? ; rotation droite ; décalage logique gauche $2345 ; décalage arithm. gauche B.1-34

35 B.1(4) Jeu d instructions b. Arithmétique Fonction: effectuer des opérations arithmétiques Exemples communs: ADDA: additionner le contenu de A avec celle d un adresse mémoire, et stocker dans A SUBA: soustraire une valeur en mémoire de A, et stocker dans A MUL: multiplier deux nombres à 8 bits EMUL: multiplier deux nombres à 16 bits IDIV: division de nombres entiers FDIV: division de nombres fractionnaires B.1-35

36 B.1(4) Jeu d instructions b. Arithmétique (suite) ADD/SUB Addition et soustraction: plusieurs différentes instructions addition à 8 bits: ABA, ABX/ABY, ADCA/ADCB, ADDA/ADDB addition à 16 bits: ADDD Exemples: étiquette op-code opérant(s) commentaires ABA ; A + B A ADDB $1234 ; B + [$1234] B SBA ; A - B A SUBB $1234 ;??? B.1-36

37 B.1(4) Jeu d instructions b. Arithmétique (suite) MUL Multiplication: 4 différentes instructions, nombres entiers MUL: multiplier 2 nombres à 8 bits qui sont dans A et B, et stocker le résultat à 16 bits dans D EMUL (étendue): multiplier 2 nombres à 16 bits dans D et IY, et stocker le résultat à 32 bits dans D et IY EMULS (signé): même chose que EMUL, mais avec nombres signés EMACS: multiplier 2 nombres signés à 16 bits à partir de la mémoire étiquette op-code opérant(s) commentaires LDAA #$10 ; charger $10 A LDAB #$20 ; charger $20 B MUL ; A x B D (écrase A et B) B.1-37

38 B.1(4) Jeu d instructions b. Arithmétique (suite) DIV Division: 5 différentes instructions, opérants de 16/32 bits IDIV (IDIVS): division d entiers non-signés (signés) à 16 bits. Le dividende et le diviseur sont dans D et IX, tandis que le quotient et le reste sont dans IX et D. FDIV: division à 16 bits de nombres fractionnaires non-signés EDIV (EDIVS): division d entiers non-signés (signés), avec un dividende à 32 bits (dans IY et D), et un diviseur à 16 bits étiquette op-code opérant(s) commentaires LDD #$0020 ; charger D LDX #$0010 ; charger IX IDIV ; D / IX (IX, D) B.1-38

39 B.1(4) Jeu d instructions c. Logique et manipulation de bits Fonction: effectuer des opérations logiques Exemples communs: ANDA: effectuer un ET, bit par bit, avec le contenu de A et une valeur de 8 bits EORB: effectuer un OU-exclusif, bit par bit, avec le contenu de B et une valeur de 8 bits ORCC: effectuer un OU, bit par bit, avec le contenu du CCR et une valeur de 8 bits BSET: fixer à 1 les bits indiqués dans un masque à 8 bits BCLR: fixer à 0 les bits indiqués dans un masque à 8 bits B.1-39

40 B.1(4) Jeu d instructions c. Logique et manipulation de bits (suite) Logique: fonctions ET, OU, OU-exclusif et complément AND produit 1 si les deux bits sont 1 ANDA (ANDB): effectuer un ET, bit par bit, entre les contenus de A (B) et une adresse mémoire, et stocker dans A (B) ANDCC: [effacer des bits] effectuer un ET, bit par bit, entre le contenu du CCR et un masque à 8 bits, et stocker dans CCR BITA (BITB): même que ANDA (ANDB), sauf qu il affecte seulement les bits N, Z et (V=0) du CCR étiquette op-code opérant(s) commentaires ANDA $1234 ; A and [$1234] A BITA $1234 ; A and [$1234] (changer le CCR) B.1-40

41 B.1(4) Jeu d instructions c. Logique et manipulation de bits (suite) OR produit 1 si au moins un des bits est 1 ORA (ORB): effectuer un OU, bit par bit, entre les contenus de A (B) et une adresse mémoire, et stocker dans A (B) ORCC: [fixer des bits] effectuer un OU, bit par bit, entre le contenu du CCR et un masque à 8 bits, et stocker dans CCR BITA (BITB): pas d équivalent au ET EOR produit 1 si les deux bits sont différents EORA (EORB): effectuer un OU-exclusif, bit par bit, entre les contenus de A (B) et une adresse mémoire, et stocker dans A (B) ANDCC et BITA (BITB): pas d équivalent au ET B.1-41

42 B.1(4) Jeu d instructions c. Logique et manipulation de bits (suite) NEG/COM Instructions pour gérer des nombres signés en complément à 2: NEGA (NEGB): effectuer un codage en complément à 2 sur le contenu de A (B) COMA (COMB): effectuer un codage en complément à 1 sur le contenu de A (B) B.1-42

43 B.1(4) Jeu d instructions c. Logique et manipulation de bits (suite) Manipulation de bits: 4 différentes instructions BCLR (BSET): fixer les bits contenus dans l adresse mémoire M à 0 ( 1 ) s ils correspondent aux bits = 1 dans le masque Format: op-code adr_mémoire, masque BRCLR (BRSET): branchement si les bits contenus dans l adresse mémoire M, qui sont spécifiés par le masque, sont 0 ( 1 ). Format: op-code adr_mémoire, masque, adr_branchement étiquette op-code opérant(s) commentaires BSET $D000, % ;[$D000]x masque [$D000] NEXT BRCLR $D000, % , NEXT ;branch. étiquette B.1-43

44 B.1(4) Jeu d instructions d. Test de données Fonction: comparer et tester le contenu d un accumulateur ou d une adresse mémoire fixe les drapeau du CCR sans modifier les opérants (contenus dans les registres ou la mémoire) Exemples communs: CMPA: comparer les contenus de A et d une adresses mémoire CPY: comparer les contenus de IY et de 2 adresses mémoire consécutives. TSTB: tester le contenu de B pour un 0 B.1-44

45 B.1(4) Jeu d instructions d. Test de données (suite) Il existe 10 instructions de 2 types, souvent suivies d un branchement: 1. CMP Comparaison: soustraire une valeur du registre indiqué, et ensuite fixer les bits N, Z, V et C du CCR. CMPA, CMPB, CBA, CPD, CPS, CPX, CPY 2. TST Test: soustraire 0 du registre indiqué, et ensuite fixer les bits N et Z du CCR (C et V sont fixés à 0) TST, TSTA, TSTB B.1-45

46 B.1(4) Jeu d instructions e. Branchement Fonction: réaliser des structures de contrôle et des boucles en langage assembleur peuvent modifier l ordre d exécution des instructions Exemples communs: BEQ: branchement si le résultat de l instruction précédente est 0 (si Z = 1 au CCR) BMI: branchement si le résultat de l instruction précédente est un nombre négatif (si N = 1 au CCR) BRA: branchement non-conditionnel B.1-46

47 B.1(4) Jeu d instructions e. Branchement (suite) Types d instructions de branchement: 1. non-conditionnel: s exécute toujours 2. conditionnel: s exécute selon les bits d état du CCR signé (non-signé): si un test de valeurs signées (nonsignées) donne un combinaison de bits au CCR. Longueur des branchements: court Bxx: décalage représenté sur 8 bits signés (couvre entre -128 à 127 adresses mémoire) long LBxx: décalage représenté sur 16 bits signés (couvre toute la mémoire, entre $0000 et $FFFF) B.1-47

48 B.1(4) Jeu d instructions e. Branchement (suite) Branchement non-conditionnel: 3 instructions BRA: mode REL brancher vers une adresse indiquée par un décalage plus rapide, consomme peu de mémoire LBRA: mode REL brancher vers une adresse quelconque de mémoire mais plus lent, consomme plus de mémoire JMP: comme LBRA, mais permet un mode EXT, IDX, etc. (plutôt que le mode REL) B.1-48

49 B.1(4) Jeu d instructions e. Branchement (suite) Branchement conditionnel: 34 instructions évalue des bits du CCR pour décider d un branchement format: Bxx adresse_relative où xx indique les bits d état du CCR à tester convention de xx selon les nombres: non-signés: format HT (higher than), LT (lower than) et S (same) signés: format GT (greater than), LT (less than), et E (equal) une bonne habitude: faire précéder le branchement par un instruction de TST/CMP pour actualiser les bits du CCR... B.1-49

50 B.1(4) Jeu d instructions e. Branchement (suite) B.1-50

51 B.1(4) Jeu d instructions e. Branchement (suite) étiquette op-code opérant(s) commentaires LDAA #$00 ; initialise un compteur de boucles VER: CMPA #$0A ; vérifie que [A] = $OA? BEQ STOP ; si oui, sortir de la boucle INCA ; incrémenter le compteur BRA VER ; prochaine itération de boucle STOP: STAA $0800 ; stocker le compteur B.1-51

52 B.1(4) Jeu d instructions f. Appel aux fonctions Fonction: initier ou terminer une sous-routine Exemples communs: JSR: appel vers une sous-routine BRS: appel vers une sous-routine près RTS: retourner d une sous-routine RTI: retourner d une routine de service CALL: appel une sous-routine en mode étendu A voir dans la suite de cette section, les sous-routines... B.1-52

53 B.1(2) Jeu d instructions d. Logique floue Fonction: réaliser un contrôleur à logique floue Exemples communs: MEM: fuzzification REV: méthode d inférence MIN-MAX pour l évaluation des règles WAV: dé-fuzzification A voir dans la section B.2... B.1-53

54 B.1Exercice de compilation B.1-54

55 B.1Exercice de compilation B.1-55

56 Sommaire de la Section B.1 B.1 Langage assembleur et programmation structurée: 1) Processus d assemblage 2) Directives de compilation 3) Modes d adressage 4) Jeu d instructions 5) Boucles 6) Piles 7) Sous-routines: appel et passage de paramètres 8) Sous-routines utilitaires du D-BUG12 9) Programmation structurée B.1-56

57 B.1(5) Boucles déf.: structure logicielle qui permet de réaliser le contrôle de flots (i.e., itérations) dans un programme équivalence en langage C: for(expression){calculs répétitifs} while(expression){calculs répétitifs} do{calculs répétitifs} while(expression) Utilité de la boucle: remplace une série de calculs répétitifs par un programme (code machine) compact mais, des calculs supplémentaires sont nécessaires (e.g., compteur, tests d arrêt) B.1-57

58 B.1(5) Boucles Étapes pour réaliser une boucle while et for: 1. initialiser les conditions liées à l expression de la boucle (e.g., un compteur) 2. évaluer l expression de la boucle (e.g., comparer la valeur du compteur avec une limite) 3. sortir de la boucle si l expression est fausse 4. sinon, effectuer les calculs répétitifs spécifiés 5. réviser les conditions reliées à l expression de la boucle (e.g., incrémenter le compteur) 6. retourner à l étape 2 B.1-58

59 B.1(5) Boucles Étapes pour réaliser une boucle do-while: 1. initialiser les conditions liées à l expression de la boucle (e.g., un compteur) 2. effectuer les calculs répétitifs spécifiés 3. réviser les conditions liées à l expression de la boucle (e.g., incrémenter le compteur) 4. évaluer l expression de la boucle (e.g., comparer la valeur du compteur avec une limite) 5. sortir de la boucle si l expression est fausse 6. sinon, retourner à l étape 2 B.1-59

60 B.1(5) Boucles Exemple: calculer la somme des résultats pour un examen étiquette op-code opérant(s) commentaires LDAB #$00 ; remise à 0 de B LDX #$1000 ; initialise l index IX LDAA #$00 ; initialise compteur de boucles CHECK: CMPA #$0A ; condition: [A] = $OA? BEQ STOP ; si oui, sortir de la boucle ADDB 0,X ; effectuer une somme: B+[IX] INX ; incrémenter l index IX INCA ; incrémenter le compteur BRA CHECK ; prochaine itération de boucle STOP: STAB SUM ; stocker B dans variable SUM B.1-60

61 Sommaire de la Section B.1 B.1 Langage assembleur et programmation structurée: 1) Processus d assemblage 2) Directives de compilation 3) Modes d adressage 4) Jeu d instructions 5) Boucles 6) Piles 7) Sous-routines: appel et passage de paramètres 8) Sous-routines utilitaires du D-BUG12 9) Programmation structurée B.1-61

62 B.1(6) Piles déf.: structure FILO qui est réservée pour stocker des variables temporaires en RAM Utilité: 1. programmeur: permet le stockage temporaire de registres CPU lors de l exécution d un programme 2. CPU: permet de gérer l exécution de sous-routines et RSI Gestion: SP pointeur de pile à 16-bits mécanisme qui contrôle l accès à la pile contient l adresse mémoire du sommet de la pile adresse mémoire correspondant au dernier élément placé/repéré sur la pile B.1-62

63 B.1(6) Piles Structure de données First-In, Last-Out (FILO): B.1-63

64 B.1(6) Piles Opérations pour la gestion d une pile: PUSH des données sont placées au sommet: avant qu un octet de données soit placé au sommet, l adresse SP est décrémenté de 1: SP = SP 1 PULL des données sont pris du sommet: après qu un octet soit repéré du sommet, l adresse SP est incrémenté de 1: SP = SP + 1 B.1-64

65 B.1(6) Piles Initialisation d une pile: 1. le programmeur déclare l emplacement initial du SP 2. on déclare comme (adresse max + 1) dans la plus grande plage de RAM: MC9S12C32 en labo prendre l adresse $1000 (car on a 2 koctets de RAM: $0800:$0FFF) Exemple: étiquette op-code opérant(s) commentaires STACKTOP EQU $1000 ; directive LDS #STACKTOP ; initialise le SP B.1-65

66 B.1(6) Piles PUSH placer le contenu de registres CPU au sommet de la pile PSHA, PSHB et PSHC: instructions pour placer le contenue de A, B, et CCR dans 1 octet au sommet de la pile 1. SP 1 SP 2. A, B et CCR mém(sp) PSHD, PSHY et PSHX: instructions pour placer le contenue de D, IX, et IY dans 2 octets au sommet de la pile 1. SP 2 SP 2. (A:B), (IX H :IX L ) et (IY H :IY L ) (mém(sp): mém(sp+1)) les instructions PSHx ne modifient pas le CCR B.1-66

67 B.1(6) Piles PULL repérer le contenu au sommet de la pile dans des registres CPU PULA, PULB et PULC: instructions pour prendre 1 octet du sommet de la pile, et le charger dans A, B et CCR 1. mém(sp) A, B et CCR 2. SP + 1 SP PULD, PULY et PULX: instructions pour prendre 2 octets du sommet de la pile, et les charger dans D, IX et IY 1. (mém(sp): mém(sp+1)) (A:B), (IX H :IX L ) et (IY H :IY L ) 2. SP + 2 SP seulement l instruction PULC modifie le CCR B.1-67

68 B.1(6) Piles Exemple: décrire la fonction de ce code? étiquette op-code opérant(s) commentaires LDS #$1000 ; initialise SP LDAA #$12 ; valeur 8 bits A LDAB #$A1 ; valeur 8 bits B PSHA ; A octet de pile PSHB ; B octet de pile PULA ; octet de pile A PULB ; octet de pile B B.1-68

69 Sommaire de la Section B.1 B.1 Langage assembleur et programmation structurée: 1) Processus d assemblage 2) Directives de compilation 3) Modes d adressage 4) Jeu d instructions 5) Boucles 6) Piles 7) Sous-routines: appel et passage de paramètres 8) Sous-routines utilitaires du D-BUG12 9) Programmation structurée B.1-69

70 B.1(7) Sous-routines déf.: un module indépendant et séparé du programme principal, qui est conçu pour effectuer une tâche spécifique équivalent à une fonction en langage C Utilité de la sous-routine: réutilisation: on conçoit un programme générique une fois, et on peut l appeler dans un programme quelconque lisibilité: permet de remplacer une tâche répétitive par un appel de sous-routine ressources: donne un code plus compacte, mais nécessite des calculs supplémentaires B.1-70

71 B.1(7) Sous-routines Caractéristiques d une bonne sous-routine: conservation de l état du CPU: il devrait conserver (restaurer) les registres CPU pertinents du lors de l appel (le retour) portabilité et indépendance des données et du programme: il devrait être générique et indépendant du programme principal (et d autres routines) il devrait éviter les adresses mémoire spécifiques, et les modes DIR et EXT (utilisation de variables locales) B.1-71

72 Étapes d un appel: B.1(7) Sous-routines B.1-72

73 B.1(7) Sous-routines Instructions pour appeler une sous-routine: BSR: stocker le PC et brancher vers une sous-routine brancher vers l adresse indiquée par une valeur relative décalage entre -128 et 127 adresses (nombre signé de 8 bits) utilise normalement une étiquette, plutôt qu une valeur numérique JSR: stocker le PC et aller vers une sous-routine permet d aller vers une adresse quelconque de la mémoire (nombre signé de 16 bits) avec tous les modes d adressage mais plus lent, consomme plus de mémoire Instruction pour retourner d une sous-routine RTS: retourner d une sous-routine et restaurer le PC récupérer l adresse de retour de la sous-routine de la pile B.1-73

74 B.1(7) Sous-routines Passage de paramètres: Programme principal, passe des paramètres Sous-routine A Programme principal peut recevoir un paramètre Sous routine A reçoit des paramètres... Action 1 Action 2 Action 3... peut retourner des paramètres RTS N.B. les bits d état du CCR sont modifiés. B.1-74

75 B.1(7) Sous-routines Techniques pour passage de paramètres: Technique 1 passage par valeur: utilise les accumulateurs (A et B) et les indexes (IX et IY) pour transmettre la valeurs des paramètres appel la sous-routine accède une copie des valeurs originales dans A, B, IX ou IY retour la sous-routine peut retourner des valeurs au programme principal dans les mêmes registres CPU Avantages et inconvénients: sécuritaire et simple mais, petit nombre et dimensions de valeurs qu on peut passer (6 octets max.) nécessite une coordination entre programme principal et sous-routine pour éviter l écrasement aux registres B.1-75

76 B.1(7) Sous-routines Exemple: passage par valeur étiquette op-code opérant(s) commentaires ROMStart: EQU $4000 ; déclarations RAMStart: EQU $0800 ORG RAMStart ; début données NUM_ONE: FCB $23 NUM_TWO: FCB $3F ORG ROMStart ; début programme LDS #$1000 ; initialise le SP LDX #RAMStart LDAA $0,X LDAB $1,X BSR SWAP ; brancher vers SR STAA NUM_ONE STAB NUM_TWO FIN: BRA FIN B.1-76

77 B.1(7) Sous-routines Sous-routine SWAP: étiquette op-code opérant(s) commentaires SWAP: PSHA ; stocke A octet de pile PSHB ; stocke B octet de pile PULA ; restaure octet de pile A PULB ; restaure octet de pile B RTS ; retour de sous-routine B.1-77

78 B.1(7) Sous-routines Techniques pour passage de paramètres: Technique 2 passage par référence: utilise des indexes pour adresser la mémoire contenant les valeurs de paramètres appel la sous-routine accède directement aux valeurs à partir de leur adresse mémoire retour la sous-routine peut retourner des valeurs dans des adresses référencées pendant l exécution de la SR Avantages et inconvénients: peut passer un grand nombre de valeurs (bon pour des listes) pratique si on veut modifier les valeurs originaux pendant l exécution peut corrompre la mémoire B.1-78

79 B.1(7) Sous-routines Exemple: passage par référence étiquette op-code opérant(s) commentaires ORG $800 ; début données FIRST: RMB 10 ; source SECOND: RMB 10 ; destination NUM_DATA: FCB $0A ; nombre d octets à copier ORG $1000 ; début programme LDS #$1000 ; initialise le SP LDAA NUM_DATA ; $0A A LDX #FIRST ; source: $0800 IX LDY #SECOND ; destination: $0810 IY JSR COPY ; saute vers la sous-routine FIN: BRA FIN B.1-79

80 Sous-routine COPY: B.1(7) Sous-routines étiquette op-code opérant(s) commentaires ;PASSAGE PAR VALEUR COPY: CMPA #$00 ; vérifie la condition d arrêt BEQ DONE ; si A = $00, DONE ;PASSAGE PAR RÉFÉRENCE LDAB 1,X+ ; charger de source, poste incré. STAB 1,Y+ ; stocker en destin., poste incré. DECA BRA COPY DONE: RTS ; retour de sous-routine B.1-80

81 Sommaire de la Section B.1 B.1 Langage assembleur et programmation structurée: 1) Processus d assemblage 2) Directives de compilation 3) Modes d adressage 4) Jeu d instructions 5) Boucles 6) Piles 7) Sous-routines: appel et passage de paramètres 8) Sous-routines utilitaires du D-BUG12 9) Programmation structurée B.1-81

82 B.1(8) Sous-routines D-BUG12 D-BUG12: programme analyse/déverminage du 68HC12 réside dans la mémoire ROM en permanence consiste d un {commandes} et d un {sous-routines} Commandes: manipuler et visualiser la mémoire et registres CPU exécuter et déverminer le programme Sous-routines: afficher un message ou le contenu mémoire à l écran écrire des données en mémoire initialiser l adresse d une RSI B.1-82

83 B.1(8) Sous-routines D-BUG12 B.1-83

84 B.1(8) Sous-routines D-BUG12 Sous-routines utilitaires communes: getchar: retourne un caractère tapé sur le clavier dans le registre B. putchar: transmet le caractère contenu dans le registre B vers le terminal. out2hex: traduit le octet hexadécimal de l argument en code ASCII et les transmet au terminal. out4hex: traduit les deux octets hexadécimale en code ASCII et les transmet au terminal. printf: transmet la phrase débutant à l adresse de l argument jusqu à la rencontre du caractère terminateur de phrase hexadécimal $00. B.1-84

85 B.1(8) Sous-routines D-BUG12 Passage de paramètres aux routines utilitaires de D-BUG12 : sous-routine(1, 2, 3,..., n) on traite les paramètres comme des valeurs à 16 bits le 68HC12 utilise la pile pour transférer la valeur des paramètres Étapes principales: 1. les paramètres doivent être placés sur la pile, en commencent par le paramètre n à l adresse de vecteur de la sous-routine doit être chargé dans IX. 3. invoquer la sous-routine avec l instruction JSR 4. ajuster le SP avec les instructions PULX ou LEAS B.1-85

86 B.1(8) Sous-routines D-BUG12 Exemple: Utilisez l utilitaire sous-routine out2hex() pour afficher $45 sur l écran d ordinateur doit stocker $0045 (conversion de 8 à 16 bits) sur la pile avant d exécuter la sous-routine étiquette op-code opérant(s) commentaires LDD #$0045 ;valeur à afficher PSHD ; placer sur la pile LDX #$FE16 ; adresse de sous-routine JSR 0,X ; appel la sous-routine PULX ; nettoyer la pile B.1-86

87 Sommaire de la Section B.1 B.1 Langage assembleur et programmation structurée: 1) Processus d assemblage 2) Directives de compilation 3) Modes d adressage 4) Jeu d instructions 5) Boucles 6) Piles 7) Sous-routines: appel et passage de paramètres 8) Sous-routines utilitaires du D-BUG12 9) Programmation structurée B.1-87

88 B.1(9) Programmation structurée Objectifs d un programmeur: contraintes de performance pour obtenir un code efficace: écrire le programme le plus compact minimiser la l espace mémoire consommé écrire le programme le plus rapide minimiser le nombre le cycle machines ou temps d exécution questions style de programmation: écrire un programme qui est facile à comprendre, avec commentaires, etc. écrire un programme qui est flexible et facile à modifier. rencontrer l échéancier du projet B.1-88

89 B.1(9) Programmation structurée Conception structurée: objectif: outils pour transformer les besoins d un système en plan pour réaliser le système mais, on doit bien comprendre les besoins... Conseils pour la conception de programmes: 1. concevoir selon la technique diviser pour régner diviser un programme en petites parties combiner le parties pour résoudre problème original 2. réfléchir à l organisation des données en mémoire outil: carte de mémoire 3. réfléchir à la façon de traiter les données outil: diagramme de flots de données B.1-89

90 B.1(9) Programmation structurée Technique diviser pour régner : diviser une tâche complexe en petites sous-tâches, résoudre les sous-tâches, et combiner pour résoudre la tâche originale conception de haut-à-bas, mise en oeuvre bas-à-haut avantages de cette technique: permet de se concentrer sur chaque sous-tâche séparément, plutôt que d aborder une tâche complexe d un coup plus facile de tester et évaluer chaque sous-tâche de façon individuelle B.1-90

91 B.1(9) Programmation structurée Exemple écrire un bon rapport technique: 1. préparer un sommaire pour donner une bonne vue d ensemble (dès le début) 2. écrire le rapport un paragraphe/section à la fois Conception structurée: on peut diviser un programme en parties (i.e., sousroutines) simples et les combiner, pour ensuite concevoir un programme complexe pseudo-code: décrit la fonction de haut-niveau de chaque partie simple diagramme de flots de données: pour définir la relation fonctionnelle entre les parties simples B.1-91

92 B.1(9) Programmation structurée Diagramme de flots de données: outil graphique pour: visualiser le traitement les données, la relation entre parties fonctionnelles, etc. documenter l opération du programme construit en connectant des symboles primaires avec des arcs dirigés (flèches) symboles primaires: représentent les actions prises sur les données arcs dirigés: indique la progression dans le programme B.1-92

93 B.1(9) Programmation structurée Symboles primaires d un diagramme de flots de données: B.1-93

94 B.1(9) Programmation structurée Exemple: B.1-94

95 B.1(9) Programmation structurée Structures fondamentales dans un programme: 1. séquence: effectue une tâche après l autre en séquence groupe d instructions qui s exécutent un après l autre. 2. if-then-else : effectue un décision entre deux ou plusieurs options permet de tester une condition, pour décider du groupe d instructions à effectuer 3. do-while : répète son traitement aussi longtemps qu une condition ne soit satisfaite B.1-95

96 B.1(9) Programmation structurée Exemple: structure de flot de données if-then B.1-96

97 B.1(9) Programmation structurée Exemple: structure de flot de données if-then-else B.1-97

98 B.1(9) Programmation structurée Exemple: structure de flot de données do-while B.1-98

99 B.1(9) Programmation structurée Exemple: structure de flot de données while B.1-99

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Ordinateurs, Structure et Applications

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

Plus en détail

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

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

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

Présentation du PL/SQL

Présentation du PL/SQL I Présentation du PL/ Copyright Oracle Corporation, 1998. All rights reserved. Objectifs du Cours A la fin de ce chapitre, vous saurez : Décrire l intéret du PL/ Décrire l utilisation du PL/ pour le développeur

Plus en détail

Jeu d instructions NIOS II

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

Plus en détail

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

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

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

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

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

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

É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

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

Les opérations binaires

Les opérations binaires Les opérations binaires Compétences associées A2 : Analyser et interpréter une information numérique Objectifs Etre capable: - De coder les nombres entiers en code complément à 2. - De résoudre les opérations

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

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

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

Plus en détail

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

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

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

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

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

Plan du cours 2014-2015. Cours théoriques. 29 septembre 2014

Plan du cours 2014-2015. Cours théoriques. 29 septembre 2014 numériques et Institut d Astrophysique et de Géophysique (Bât. B5c) Bureau 0/13 email:.@ulg.ac.be Tél.: 04-3669771 29 septembre 2014 Plan du cours 2014-2015 Cours théoriques 16-09-2014 numériques pour

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

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

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

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

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

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

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

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

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

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

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

Introduction à MATLAB R

Introduction à MATLAB R Introduction à MATLAB R Romain Tavenard 10 septembre 2009 MATLAB R est un environnement de calcul numérique propriétaire orienté vers le calcul matriciel. Il se compose d un langage de programmation, d

Plus en détail

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile Dans ce TP, vous apprendrez à définir le type abstrait Pile, à le programmer en Java à l aide d une interface

Plus en détail

GUIDE Excel (version débutante) Version 2013

GUIDE Excel (version débutante) Version 2013 Table des matières GUIDE Excel (version débutante) Version 2013 1. Créer un nouveau document Excel... 3 2. Modifier un document Excel... 3 3. La fenêtre Excel... 4 4. Les rubans... 4 5. Saisir du texte

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

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

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

Qualité du logiciel: Méthodes de test

Qualité du logiciel: Méthodes de test Qualité du logiciel: Méthodes de test Matthieu Amiguet 2004 2005 Analyse statique de code Analyse statique de code Étudier le programme source sans exécution Généralement réalisée avant les tests d exécution

Plus en détail

Cours 1 : La compilation

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

Plus en détail

Initiation à l algorithmique

Initiation à l algorithmique Informatique S1 Initiation à l algorithmique procédures et fonctions 2. Appel d une fonction Jacques TISSEAU Ecole Nationale d Ingénieurs de Brest Technopôle Brest-Iroise CS 73862-29238 Brest cedex 3 -

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

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

Expression des contraintes. OCL : Object C o n t r a i n t L a n g u a g e

Expression des contraintes. OCL : Object C o n t r a i n t L a n g u a g e P r o b l é m a t i q u e OCL : O b j e c t C o n s t r a i n t L a n g u a g e Le langage de contraintes d UML Les différents diagrammes d UML permettent d exprimer certaines contraintes graphiquement

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

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

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

Conversion d un entier. Méthode par soustraction

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

Plus en détail

Structure fonctionnelle d un SGBD

Structure fonctionnelle d un SGBD Fichiers et Disques Structure fonctionnelle d un SGBD Requetes Optimiseur de requetes Operateurs relationnels Methodes d acces Gestion de tampon Gestion de disque BD 1 Fichiers et Disques Lecture : Transfert

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

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

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

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

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

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

Représentation des Nombres

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

Plus en détail

Chapitre 10 Arithmétique réelle

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

Plus en détail

3. SPÉCIFICATIONS DU LOGICIEL. de l'expression des besoins à la conception. Spécifications fonctionnelles Analyse fonctionnelle et méthodes

3. SPÉCIFICATIONS DU LOGICIEL. de l'expression des besoins à la conception. Spécifications fonctionnelles Analyse fonctionnelle et méthodes PLAN CYCLE DE VIE D'UN LOGICIEL EXPRESSION DES BESOINS SPÉCIFICATIONS DU LOGICIEL CONCEPTION DU LOGICIEL LA PROGRAMMATION TESTS ET MISE AU POINT DOCUMENTATION CONCLUSION C.Crochepeyre Génie Logiciel Diapason

Plus en détail

1. Structure d'un programme FORTRAN 95

1. Structure d'un programme FORTRAN 95 FORTRAN se caractérise par la nécessité de compiler les scripts, c'est à dire transformer du texte en binaire.(transforme un fichier de texte en.f95 en un executable (non lisible par un éditeur) en.exe.)

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

Documentation Technique du programme HYDRONDE_LN

Documentation Technique du programme HYDRONDE_LN Documentation Technique du programme HYDRONDE_LN Réalisation du programme H.GUYARD Réalisation du matériel électronique C.COULAUD & B.MERCIER Le programme HYDRONDE_LN est un programme qui permet de visualiser

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 Architecture du cœur ARM Cortex M3. Le cœur ARM Cortex M3 sera présenté en classe à partir des éléments suivants :

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

Plus en détail

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

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

TABLEAU CROISE DYNAMIQUE

TABLEAU CROISE DYNAMIQUE EXCEL NIVEAU III Mireille DUCELLIER MARS 2003 BASE DE DONNEES RAPPEL Une base de données est une plage de cellules contiguës située sur une la feuille 1. Elle commence en A1. On parle alors de champs,

Plus en détail

2012 - Copyright Arsys Internet E.U.R.L. Arsys Backup Online. Guide de l utilisateur

2012 - Copyright Arsys Internet E.U.R.L. Arsys Backup Online. Guide de l utilisateur Arsys Backup Online Guide de l utilisateur 1 Index 1. Instalation du Logiciel Client...3 Prérequis...3 Installation...3 Configuration de l accès...6 Emplacement du serveur de sécurité...6 Données utilisateur...6

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

Initiation à LabView : Les exemples d applications :

Initiation à LabView : Les exemples d applications : Initiation à LabView : Les exemples d applications : c) Type de variables : Créer un programme : Exemple 1 : Calcul de c= 2(a+b)(a-3b) ou a, b et c seront des réels. «Exemple1» nom du programme : «Exemple

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

http://cermics.enpc.fr/scilab

http://cermics.enpc.fr/scilab scilab à l École des Ponts ParisTech http://cermics.enpc.fr/scilab Introduction à Scilab Graphiques, fonctions Scilab, programmation, saisie de données Jean-Philippe Chancelier & Michel De Lara cermics,

Plus en détail

CONFIGURATION DE L AUTOMATE SIEMENS

CONFIGURATION DE L AUTOMATE SIEMENS CONFIGURATION DE L AUTOMATE SIEMENS Créer un projet Dans le bureau de Windows, double-cliquer sur l icône «SIMATIC Manager» : Cliquer ensuite sur l icône «nouveau» : Choisir un nom de projet et valider

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

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

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

Plus en détail

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

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

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

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

Etude de FP3 commande moteur et électroaimant. Déplacement carte et connexion

Etude de FP3 commande moteur et électroaimant. Déplacement carte et connexion Etude de FP3 commande moteur et électroaimant Déplacement carte et connexion Décomposition fonctionnelle. - Définir le rôle et caractériser les entrées-sorties de FP3 permettant la commande du moteur et

Plus en détail

Quatrième partie IV. Test. Test 15 février 2008 1 / 71

Quatrième partie IV. Test. Test 15 février 2008 1 / 71 Quatrième partie IV Test Test 15 février 2008 1 / 71 Outline Introduction 1 Introduction 2 Analyse statique 3 Test dynamique Test fonctionnel et structurel Test structurel Test fonctionnel 4 Conclusion

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