Cours 8 5. Appels de fonctions Le matériel Concepts de pile

Slides:



Advertisements
Présentations similaires
Cours 8 5. Appels de fonctions Le matériel Concepts de pile
Advertisements

Le débogage Semaine 12 Version A15. Plan de leçon - Débogage  Commentaire javadoc  Définition  Fonctionnement  Point d’arrêt  Exécution  Contrôler.
Outils logiciel pour la programmation en C. 2 Automatiser la compilation : make make est un utilitaire présent dans toute les distribution de linux >
C++ Les fonctions. Présentation Utilité : Dès qu'un programme dépasse la centaine de lignes de code, il est pratique de pouvoir le décomposer en plusieurs.
Modèle participatif pour les analyses coûts-bénéfices des interventions d'existence.
1 Chapitre 2 La numération binaire. 2 Chapitre 2 : La numération binaire Introduction 1 - Le système binaire 2 - La conversion des nombres entiers 2.1.
Tableaux et Pointeurs Chaînes de Caractères Programmation Impérative II.
1- Introduction 1ère partie Le langage SQL 2- Connexion 3- Structure & Contenu 4- Requêtes.
CINI – Li115 1 Semaine 6 Les fonctions ● Pourquoi écrire des fonctions ? ● Définition de fonctions ● Fonction main ● Appels de fonctions ● Portée des variables.
CINI – Li115 1 Semaine 10 Les pointeurs ● Notion d'adresse ● Déclaration et utilisation de pointeurs ● "Types pointeur" et initialisation des pointeurs.
1 Programmation en C++ C++ de base ● Programme C++ ● Variables, objets, types ● Fonctions ● Namespace ● Tests ● Boucles ● Pointeurs, références.
1 Programmation en C++ C++ de base ● Programme C++ ● Variables, objets, types ● Types et opérations fondamentales ● Tests ● Boucles ● Pointeurs, références.
Comment utiliser le débogueur de Visual Studio /8/2015 INF145 1 Créé par Julien Galarneau Allaire, révisé par Eric Thé S.E.G.
SYSTEM PROGRAM.
Mode noyau Appels Systèmes Interruptions Grégory Seront Institut Paul Lambin
Semaine 8 Retour sur les tableaux : fonctions et récursivité
Ce videoclip produit par l’Ecole Polytechnique Fédérale de Lausanne
Pas de variable globale
Eléments d’Informatique Cours11 – Allocation dynamique, listes chaînées Catherine Recanati.
Allocation dynamique de mémoire
Introduction à l’algorithmique. Introduction Algorithme: Procédure décrivant, étape par étape, une méthode permettant de résoudre un problème. Mot provenant.
Implémentation de PayPal
Qu'est-ce que POSIX? Une librairie en langage C
Ce videoclip produit par l’Ecole Polytechnique Fédérale de Lausanne
Javadoc et débogueur Semaine 03 Version A17.
AO (Architecture des ordinateurs)
Principes de programmation (suite)
Algorithmique Langage C
11ième Classe (Mardi, 18 novembre) CSI2572
Semaine 11 Les pointeurs (suite)
Les fonctions.
Les fonctions.
Programmation en C++ Fonctions
Buffer Overflow Anatomy of an exploit.
SIF-1053 Architecture de ordinateurs
Tableaux à plusieurs dimensions en langage C
Configuration NAT Utilisation de la commande outside source list
Fonctions logiques et algèbre booléenne
Introduction à l’algorithmique. Introduction Algorithme: Procédure décrivant, étape par étape, une méthode permettant de résoudre un problème. Mot provenant.
Semaine #4 INF130 par Frédérick Henri.
Avec 30 blocs polyéthylènes donnés par le professeur, construire un mur de 5 rangées de haut et de 8 blocs pour la base.
Introduction à l’algorithmique. Introduction Algorithme: Procédure décrivant, étape par étape, une méthode permettant de résoudre un problème. Mot provenant.
Concepts de base de la programmation
Cours 8 5. Appels de fonctions Le matériel Concepts de pile
Programmation en C++ C++ de base
1 RECURSIVITE PRESENTATION Ch. PAUL ALGORITHMIQUE Présentation de la récursivité.
Interruptions GIF-1001 Ordinateurs: Structure et Applications, Hiver 2015 Jean-François Lalonde.
Assembleur ARM: Séquence d’exécution et branchements
Plus de 4000 langages....
Architecture de machines Le microprocesseur Cours
Serge Gariépy, Bibliothécaire de référence Travail social Local AR-150
Bus et adressage GIF-1001: Ordinateurs: Structure et Applications
Eléments de base du langage C
Cours 10 : Les Web Services et WSDL Février Version 1.0 -
Le DOS GIF-1001 Ordinateurs: Structure et Applications, Hiver 2015
Assembleur, Compilateur et Éditeur de Liens
Semaine #3 INF130 par Frédérick Henri.
Informatique de base Pr. Namar Ydriss Cours 1: Introduction
Structures d’ordinateurs (matériel)
Les exceptions Le mécanisme des exceptions est destiné à permettre aux fonctions profondes d'une bibliothèque de notifier la survenue d'une erreur aux.
Dépiler et mettre valeur dans RT (récup. paramètre)
Principes de programmation (suite)
Programmation Scratch
Tableaux Cours 06.
Retour sur les interfaces
Introduction à L’Informatique
Pourquoi MIPS Assembler ?
Structure de données Les listes.
Eléments de base du langage C
DONNÉE DE BASE QM Manuel de formation. Agenda 2  Introduction  Objectif de la formation  Données de base QM: Caractéristique de contrôle Catalogue.
Transcription de la présentation:

Cours 8 5. Appels de fonctions Le matériel Concepts de pile 08/04/2019 5. Appels de fonctions Concepts de pile Concepts de passage de paramètres Concepts de variable locale Le matériel Chapitre 8 CSA Synthèse du professeur sif-1053

Appel de fonctions Lors de l’appel à une fonction, comment fait-on pour retourner à la suite de l’exécution de la fonction appelante après que la fonction appelée soit terminée ? Quel est le mécanisme qui permet ce retour ? sif-1053

Appel de fonctions Dans un environnement multitâche, plusieurs programmes peuvent faire appel à des fonctions dans une librairie dynamique Comment les variables locales peuvent-elles rester intègre ? sif-1053

La pile et l’adresse de retour EIP: extended instruction pointer sif-1053

La pile et pointeur de pile sif-1053

Fonction en langage C sif-1053

Éléments fondamentaux de la programmation en langage C Fonctions et passage de paramètres En langage C, nous pouvons passer des informations aux fonctions via son interface et ce de deux façons distinctes: Passage par valeur: valeurs actuelles sont passées Passage par référence (adresse): pointeurs sont passés sif-1053

Prototype de la fonction Éléments fondamentaux de la programmation en langage C Fonctions, passage de paramètres (par valeur) et valeur retournée Prototype de la fonction sif-1053

Éléments fondamentaux de la programmation en langage C Fonctions et passage de paramètres (par adresse) sif-1053

Accès à la pile sif-1053

Appel de fonction et assembleur Dans le DEBUGGER taper ALT+8 pour obtenir le code assembleur sif-1053

Appel de fonctions et la pile EBP: extended base pointer ESP: extended stack pointer sif-1053

Appels: average() et printf() Appel de fonctions et assembleur (VS 2015) Appels: average() et printf() sif-1053

Appels: retour de average() Appel de fonctions et assembleur (VS 2015) Appels: retour de average() sif-1053

Erreur typique de pointeur en langage C sif-1053