Fiche de cours

Comprendre qu'un programme peut être une donnée

Lycée   >   Terminale   >   NSI   >   Comprendre qu'un programme peut être une donnée

  • Fiche de cours
  • Quiz et exercices
  • Vidéos et podcasts
Objectif

Comprendre qu’un programme peut être considéré comme une donnée d’un autre programme.

Points clés
  • Un programme est un ensemble d’instructions écrites dans un langage de programmation ou directement exécutables par le microprocesseur d’un ordinateur.
  • Une donnée est la représentation d’une information dans un programme.
  • Dans un ordinateur, un programme est un fichier mis en mémoire. C’est une donnée d’autres programmes qui permettent son exécution, comme le système d’exploitation par exemple.
Pour bien comprendre
  • Connaitre les notions de langage interprété et langage compilé.
  • Connaitre le fonctionnement d’un système d’exploitation.
1. Donnée et programme
a. Donnée et information

Les termes de donnée et d’information sont souvent utilisés en informatique ou dans la vie courante. Ils sont toutefois rarement clairement définis.

Une information est un élément de connaissance susceptible d’être représenté par des signes tels que les lettres d’un alphabet, des nombres ou d’autres signes porteurs de sens.
En informatique, une donnée est la représentation d’une information dans un programme. On la retrouve soit dans le code source du programme, soit en mémoire lors de l’exécution du programme.
Exemple
La phrase « Mon chat a 8 ans » est une information.
En Python, cela pourrait être interprété par la création de la variable age_de_mon_chat qui pourrait être créée par l’affectation age_de_mon_chat = 8.
La variable age_de_mon_chat est donc une donnée qui représente l’information « Mon chat a 8 ans ».
b. Programme et logiciel
Un programme informatique est un ensemble d’instructions et d’opérations dont le but est d’être exécuté par un ordinateur.

On peut en distinguer de deux sortes :

  • Un programme source (ou code source) est un texte écrit par un programmeur dans un langage de programmation.
    Il peut être interprété directement, ou être compilé vers une forme binaire.
  • Un programme binaire est un ensemble d’instructions destiné à être directement exécuté par un microprocesseur.
    On dit que ces instructions sont écrites en langage machine.
Remarque
Le premier programme informatique est attribué à la comtesse Ada Lovelace en 1842. En effet, elle a créé des diagrammes d’instructions pour la machine analytique de Charles Babbage, machine à calculer programmable qu’il a imaginée en 1834.
Un logiciel informatique est un ensemble constitué de programmes informatiques exécutables par une machine et de données qui permettent l’exécution de ces programmes.
2. Un programme comme donnée d'un autre programme - Exemples

En 1948, les premiers ordinateurs ont été créés à partir de l’architecture de von Neumann. Celle-ci propose de stocker et de manipuler les programmes comme des données. D’ailleurs, elle les stocke dans la même mémoire que les données.

Les ordinateurs actuels sont conçus sur ce même modèle. Beaucoup d’exemples permettent de comprendre la raison pour laquelle un programme informatique peut être considéré comme une donnée.

a. Langage interprété et langage compilé

Python est un langage interprété, c’est-à-dire que tout programme en Python a besoin d’un programme auxiliaire, un interpréteur, pour traduire au fur et à mesure ses instructions.

Un programme en Python est ainsi une donnée de l’interpréteur utilisé.
Exemple
Le programme suivant définit deux fonctions maxi(a, b) et maxi2(a, b, c) et affiche maxi2(3, 5, 1).
Python Explication

def maxi(a, b):
    if a > b:
        return a
    else:
        return b

On définit la fonction maxi(a, b) qui prend en paramètres deux nombres a et b, et renvoie le plus grand des deux.

def maxi2(a, b, c)
    return maxi(a, maxi(b, c))

On définit la fonction maxi2(a, b, c) qui prend en paramètres trois nombres a, b et c, et renvoie le plus grand des trois.
print(maxi2(3, 5, 1)) On affiche le résultat de maxi2(3, 5, 1).
Le site Python Tutor propose un interpréteur en ligne pour le langage Python.

Voici l’exécution du programme précédent sur Python Tutor.

On observe bien que l’entrée est le programme précédemment défini. C’est la donnée d’entrée. Python Tutor le traduit et propose une visualisation de son exécution.
Sur le même principe, un programme écrit dans un langage compilé est une donnée du compilateur qui le traduira en langage machine.
b. Téléchargement de logiciel

Lorsque l’on télécharge un logiciel, on télécharge un fichier exécutable qui en contient tous les programmes et toutes les données.

Un fichier est une collection de données archivées ensemble, un programme du logiciel est donc une donnée du fichier téléchargé.
Exemple
Pour installer Python sur son ordinateur, on peut se rendre sur le site python.org.

L’onglet « Downloads » propose différentes options de téléchargement.

En choisissant « Windows », puis en choisissant la version de Python que l’on veut installer, on peut télécharger un fichier exécutable.

Ici, le fichier « python-3.8.2-amd64.exe » contient comme données les programmes qui permettent de coder en Python dans sa version 3.8.2.

c. Fonctionnement d'un système d'exploitation

Un système d’exploitation est un ensemble de programmes qui pilotent et coordonnent les différents éléments d’un ordinateur.

Il est toutefois nécessaire d’installer le système d’exploitation dans un espace mémoire de l’ordinateur pour qu’il fonctionne. Le système d’exploitation est une donnée de l’ordinateur.

Les programmes du système d’exploitation sont également des données de l’ordinateur utilisé.
Exemple
Chaque ordinateur dont le système d’exploitation est Windows contient un fichier exécutable sfc.exe (system file checker). C’est un programme qui permet de vérifier l’intégrité des fichiers systèmes et de les corriger si possible. Par exemple, l’option /scannow est utilisée pour scanner, puis réparer l’installation de Windows.

Ici, le programme « sfc.exe » est une donnée installée en mémoire de l’ordinateur en même temps que Windows pour réparer son installation.

Évalue ce cours !

 

Des quiz et exercices pour mieux assimiler sa leçon

La plateforme de soutien scolaire en ligne myMaxicours propose des quiz et exercices en accompagnement de chaque fiche de cours. Les exercices permettent de vérifier si la leçon est bien comprise ou s’il reste encore des notions à revoir.

S’abonner

 

Des exercices variés pour ne pas s’ennuyer

Les exercices se déclinent sous toutes leurs formes sur myMaxicours ! Selon la matière et la classe étudiées, retrouvez des dictées, des mots à relier ou encore des phrases à compléter, mais aussi des textes à trous et bien d’autres formats !

Dans les classes de primaire, l’accent est mis sur des exercices illustrés très ludiques pour motiver les plus jeunes.

S’abonner

 

Des quiz pour une évaluation en direct

Les quiz et exercices permettent d’avoir un retour immédiat sur la bonne compréhension du cours. Une fois toutes les réponses communiquées, le résultat s’affiche à l’écran et permet à l’élève de se situer immédiatement.

myMaxicours offre des solutions efficaces de révision grâce aux fiches de cours et aux exercices associés. L’élève se rassure pour le prochain examen en testant ses connaissances au préalable.

S’abonner

Des vidéos et des podcasts pour apprendre différemment

Certains élèves ont une mémoire visuelle quand d’autres ont plutôt une mémoire auditive. myMaxicours s’adapte à tous les enfants et adolescents pour leur proposer un apprentissage serein et efficace.

Découvrez de nombreuses vidéos et podcasts en complément des fiches de cours et des exercices pour une année scolaire au top !

S’abonner

 

Des podcasts pour les révisions

La plateforme de soutien scolaire en ligne myMaxicours propose des podcasts de révision pour toutes les classes à examen : troisième, première et terminale.

Les ados peuvent écouter les différents cours afin de mieux les mémoriser en préparation de leurs examens. Des fiches de cours de différentes matières sont disponibles en podcasts ainsi qu’une préparation au grand oral avec de nombreux conseils pratiques.

S’abonner

 

Des vidéos de cours pour comprendre en image

Des vidéos de cours illustrent les notions principales à retenir et complètent les fiches de cours. De quoi réviser sa prochaine évaluation ou son prochain examen en toute confiance !

S’abonner

Découvrez le soutien scolaire en ligne avec myMaxicours

Plongez dans l'univers de myMaxicours et découvrez une approche innovante du soutien scolaire en ligne, conçue pour captiver et éduquer les élèves de CP à la terminale. Notre plateforme se distingue par une riche sélection de contenus interactifs et ludiques, élaborés pour stimuler la concentration et la motivation à travers des parcours d'apprentissage adaptés à chaque tranche d'âge. Chez myMaxicours, nous croyons en une éducation où chaque élève trouve sa place, progresse à son rythme et développe sa confiance en soi dans un environnement bienveillant.

Profitez d'un accès direct à nos Profs en ligne pour une assistance personnalisée, ou explorez nos exercices et corrigés pour renforcer vos connaissances. Notre assistance scolaire en ligne est conçue pour vous accompagner à chaque étape de votre parcours éducatif, tandis que nos vidéos et fiches de cours offrent des explications claires et concises sur une multitude de sujets. Avec myMaxicours, avancez sereinement sur le chemin de la réussite scolaire, armé des meilleurs outils et du soutien de professionnels dédiés à votre épanouissement académique.

Fiches de cours les plus recherchées

NSI

Introduire les notions de calculabilité et de décidabilité

NSI

Utiliser la récursivité en Python

NSI

Utiliser une API et des bibliothèques

NSI

Utiliser les paradigmes impératifs et fonctionnels

NSI

Utiliser le paradigme objet

NSI

Repérer les bugs : typages, effets de bords, débordements

NSI

Repérer les bugs : structures

NSI

Anticiper les erreurs classiques

NSI

Utiliser Python pour déterminer les mesures des arbres binaires

NSI

Utiliser Python dans les arbres binaires de recherche