Fiche de révision : Python et représentation des données

Plan du Cours

  1. Langages de programmation et machine
  2. Syntaxe et écriture du code Python
  3. Types, littéraux et variables Python
  4. Entrées et sorties Python
  5. Système informatique et composants
  6. Catégories de données informatiques
  7. Bases numériques et conversions
  8. Codage des nombres entiers
  9. Représentation des nombres réels
  10. Codage des caractères

1. Langages de programmation et machine

Notions clés & Définitions

  • Langage machine : Ensemble des instructions directement exécutables par un processeur donné.
  • Langage de programmation : Langage servant à donner des instructions à un ordinateur, avec un vocabulaire, une syntaxe et des mots-clés dont le sens est interprété après traduction en langage machine.

Astuce mémo

Machine → assembleur → langage de haut niveau

2. Syntaxe et écriture du code Python

Notions clés & Définitions

  • Mot-clé : Mot prédéfini et réservé par Python, doté d’une signification particulière pour l’interpréteur et inutilisable comme identificateur.
  • Identificateur : Nom unique donné à une entité telle qu’une variable, une fonction ou une classe.

★ À maîtriser

📌 Un identificateur Python ne contient que des lettres, des chiffres ou des traits de soulignement, commence par une lettre ou un trait de soulignement et ne peut pas être un mot-clé.

📌 En Python, l’indentation délimite les blocs de code ; un bloc se termine à la première ligne non indentée et l’indentation doit rester cohérente dans le bloc.

Compléments

  • Python 3.7 compte 35 mots-clés, nombre susceptible de varier légèrement selon les versions, et tous sont en minuscules sauf True, False et None.

  • Une instruction Python peut être continuée explicitement avec une barre oblique inverse, ou implicitement à l’intérieur de parenthèses, crochets ou accolades.

  • Quatre espaces sont généralement utilisés pour indenter le code Python et sont préférés aux tabulations.

📌 Un commentaire Python commence par le caractère dièse (#), et un commentaire sur plusieurs lignes peut aussi être écrit sous forme de chaîne multilignes non affectée.

3. Types, littéraux et variables Python

Notions clés & Définitions

  • Type de données : Ensemble de valeurs et opérations pouvant être effectuées sur ces valeurs.
  • Variable : Nom qui référence une valeur en mémoire.
  • Typage dynamique : Comportement par lequel Python détecte automatiquement le type d’une variable à partir de la valeur référencée, et permet à une même variable de référencer ensuite une valeur d’un autre type.
  • Littéral : Valeur écrite directement dans le code.
  • Opérateur : Signe ou symbole qui permet de réaliser une opération.

Points essentiels

  • La fonction type() permet de connaître le type d’une donnée ou de la valeur d’une variable.

  • Python permet l’affectation multiple, par exemple a, b, c = 10, 20, 30, ainsi que l’affectation d’une même valeur à plusieurs variables, par exemple x = y = z = 100.

4. Entrées et sorties Python

Notions clés & Définitions

  • print() : Fonction qui affiche du texte ou des valeurs et convertit automatiquement les valeurs en chaînes de caractères pour les afficher.

★ À maîtriser

  • La fonction input() affiche une invite, attend la saisie de l’utilisateur suivie de la touche Entrée, puis renvoie la donnée saisie sous forme de chaîne de caractères.

📌 Pour effectuer des opérations numériques sur une saisie obtenue avec input(), il faut la convertir avec int() ou float().

Compléments

  • La fonction eval() évalue une expression Python fournie sous forme de texte, mais elle est dangereuse avec une entrée non fiable car elle exécute du code Python.

  • Dans print(), sep définit le séparateur entre les valeurs affichées et vaut par défaut un espace, tandis que end définit le texte final et vaut par défaut un retour à la ligne.

Astuce mémo

input() reçoit ; print() affiche

5. Système informatique et composants

Notions clés & Définitions

  • Système informatique : Ensemble de composants matériels et logiciels capables de traiter automatiquement l’information.
  • Processeur : Composant chargé de l’exécution des instructions.

★ À maîtriser

📌 La mémoire vive (RAM) est rapide et temporaire, stocke les données et programmes en cours d’exécution et perd son contenu à l’arrêt de l’ordinateur, tandis que la mémoire de masse (disque dur ou SSD) stocke durablement les programmes et données et conserve son contenu hors tension.

Compléments

  • Le processeur comprend une unité arithmétique et logique qui réalise les calculs arithmétiques et logiques, et une unité de contrôle qui lit, décode et coordonne l’exécution des instructions.

  • Les périphériques se répartissent selon leur rôle :

    • Entrée : clavier, souris, scanner et capteurs
    • Sortie : écran, imprimante et haut-parleurs
    • Entrée/sortie : clé USB, disque externe et carte réseau

6. Catégories de données informatiques

Notions clés & Définitions

  • Informatique : Science du traitement automatique de l’information.
  • Traitement de l’information : Ensemble des opérations permettant de collecter, stocker, transformer et communiquer l’information.

★ À maîtriser

📌 Une donnée est un élément brut, tandis qu’une information est un ensemble de données ayant un sens, comme 25 °C qui indique une température.

  • Dans un ordinateur, les informations sont représentées sous forme binaire, c’est-à-dire comme une suite de 0 et de 1 appelée bits.

  • Les données informatiques peuvent être numériques, alphanumériques ou logiques (booléennes).

Compléments

📌 Les données booléennes représentent deux états, Vrai (True) et Faux (False), et servent notamment aux conditions et aux tests.

7. Bases numériques et conversions

Notions clés & Définitions

  • Transcodage : Opération qui consiste à passer de la représentation d’un nombre dans une base à sa représentation dans une autre base.

★ À maîtriser

📐 Formule - Dans une base b, l’écriture (apap−1…a0)b(a_p a_{p-1}\ldots a_0)_b représente la valeur ∑k=0pakbk\sum_{k=0}^{p} a_k b^k, avec 0≤ak≤b−10\leq a_k\leq b-1 et ap≠0a_p\neq 0 pour une écriture normalisée.

  • Les bases usuelles sont :
    • Base décimale : chiffres de 0 à 9
    • Base binaire : chiffres 0 et 1
    • Base octale : huit symboles
    • Base hexadécimale : seize symboles, dont A à F pour les valeurs supérieures à 9
  • Pour convertir un entier décimal vers une base b, on divise successivement le nombre puis les quotients par b jusqu’à obtenir un quotient nul, et on lit les restes du dernier au premier.

Compléments

  • Un symbole octal représente 3 bits et un symbole hexadécimal représente 4 bits.

  • Pour convertir un nombre binaire en octal ou en hexadécimal, on regroupe les bits depuis la droite par paquets de 3 ou de 4 respectivement, puis on remplace chaque paquet par le symbole correspondant.

8. Codage des nombres entiers

★ À maîtriser

📌 Un entier naturel est codé en binaire pur en base 2, et les bits peuvent être complétés à gauche par des zéros.

  • Sur n bits, le binaire pur représente les entiers de 00 à 2n−12^n-1 inclus.

  • En complément à 1, un nombre négatif est codé en inversant chaque bit de sa valeur absolue représentée en binaire, tandis que les nombres positifs gardent leur codage binaire pur.

  • En complément à 2, un nombre négatif s’obtient en ajoutant 1 au complément à 1 de sa valeur absolue, tandis que les nombres positifs gardent leur codage binaire pur.

Compléments

📌 En code binaire signé par signe et valeur absolue, le bit de poids fort indique le signe : 1 pour un nombre négatif et 0 pour un nombre positif.

  • Sur n bits, le complément à 1 représente les entiers de −(2n−1−1)-(2^{n-1}-1) à 2n−1−12^{n-1}-1 inclus.

Astuce mémo

Complément à 1 inverse les bits ; complément à 2 ajoute 1

9. Représentation des nombres réels

★ À maîtriser

📌 Le codage en virgule fixe réserve un nombre fixe de chiffres après la virgule, tandis que le codage en virgule flottante détermine la position de la virgule à l’aide d’une mantisse et d’un exposant.

📐 Formule - Une représentation en virgule flottante exprime un réel sous la forme x=(signe)×(mantisse)×bexposantx=(signe)\times(mantisse)\times b^{exposant}.

  • La norme IEEE-754 définit notamment la simple précision sur 32 bits avec 1 bit de signe, 8 bits d’exposant et 23 bits de mantisse, et la double précision sur 64 bits avec 1 bit de signe, 11 bits d’exposant et 52 bits de mantisse.

📐 Formule - En simple précision IEEE 754, la valeur représentée s’écrit x=(−1)S×1.mantisse×2E−127x=(-1)^S\times 1.mantisse\times 2^{E-127}, où S est le bit de signe et E l’exposant stocké.

Compléments

  • En simple précision IEEE 754, l’exposant stocké E occupe 8 bits et varie de 0 à 255 ; E = 0 est réservé aux nombres dénormalisés ou au zéro, et E = 255 à l’infini ou à NaN.

  • En simple précision IEEE 754, le biais vaut 127 et l’exposant réel varie de −126 à +127.

📌 L’overflow dépasse la capacité maximale représentable et produit +∞ ou −∞, tandis que l’underflow concerne des valeurs trop proches de zéro et les arrondit à +0 ou −0.

  • Certaines fractions, comme 0,1 en base 10, ne sont pas représentables exactement en binaire, ce qui produit des erreurs d’arrondi susceptibles de s’accumuler.

10. Codage des caractères

Notions clés & Définitions

  • Unicode : Norme internationale qui attribue un code unique à chaque caractère et permet plus d’un million de caractères possibles.

★ À maîtriser

  • Les ordinateurs associent un code numérique aux caractères pour les représenter en binaire ; en ASCII, le caractère A correspond au nombre 65.

Compléments

  • ASCII ne représente que 128 caractères et ne suffit pas à coder tous les alphabets, notamment les caractères accentués, l’arabe et le chinois.

  • UTF-8 est un encodage très utilisé, compatible avec ASCII et capable de représenter tous les alphabets, y compris le latin, l’arabe, le chinois et les emojis.

Astuce mémo

ASCII limité ; Unicode attribue un code à chaque caractère

Tableaux de synthèse

Codages des entiers relatifs

CodageRègle négativeÉtendue sur n bits
Signe et valeur absolueBit fort : 1 négatif, 0 positif−(2^(n−1)−1) à 2^(n−1)−1
Complément à 1Inverser les bits de la valeur absolue−(2^(n−1)−1) à 2^(n−1)−1
Complément à 2Complément à 1 puis ajouter 1−2^(n−1) à 2^(n−1)−1

Teste tes connaissances

Teste tes connaissances sur Python et représentation des données avec 32 questions à choix multiples et corrections détaillées.

1. Dans un système informatique, quel type d’instructions le processeur peut-il exécuter directement ?

2. Un programmeur écrit des instructions avec un vocabulaire et des règles de syntaxe que l’ordinateur doit interpréter après traduction : de quoi s’agit-il ?

Faire le QCM →

Révisez avec les flashcards

Mémorisez les concepts clés de Python et représentation des données avec 75 flashcards interactives.

Qu’est-ce que le langage machine ?

L’ensemble des instructions directement exécutables par un processeur donné.

À quoi sert un langage de programmation ?

À donner des instructions à un ordinateur.

Quelles composantes possède un langage de programmation ?

Un vocabulaire, une syntaxe et des mots-clés.

Voir les flashcards →

Cours similaires

Crée tes propres fiches de révision

Importe ton cours et l'IA génère fiches, QCM et flashcards en 30 secondes.

Générateur de fiches