Bac NSI key terms
Bac NSI · Get comfortable with the vocabulary.
- machine de Turing
- Related: calculabilité, architecture de von Neumann
Modèle abstrait de calcul imaginé par Alan Turing en 1936 : un ruban infini divisé en cases, une tête de lecture/écriture et une table de transitions. Il définit formellement ce qu'est un calcul et fonde la notion de calculabilité.
- architecture de von Neumann
- Related: machine de Turing, processeur, mémoire
Organisation d'ordinateur où programmes et données sont stockés dans la même mémoire, lue par un processeur qui exécute les instructions séquentiellement. Elle sépare unité de traitement, mémoire et entrées-sorties, et structure encore la plupart des machines actuelles.
- loi de Moore
- Related: processeur, transistor
Observation formulée en 1965 par Gordon Moore : le nombre de transistors sur une puce double environ tous les deux ans à coût constant. Elle a décrit l'évolution rapide du matériel pendant des décennies, sans être une loi physique.
- logiciel libre
- Related: logiciel propriétaire
Logiciel dont la licence accorde à l'utilisateur quatre libertés : exécuter, étudier, modifier et redistribuer le programme et ses versions modifiées. Il s'oppose au logiciel propriétaire et a joué un rôle majeur dans l'histoire de l'informatique.
- logiciel propriétaire
- Related: logiciel libre
Logiciel distribué sous une licence restrictive qui interdit ou limite l'étude, la modification et la redistribution du code source. L'utilisateur achète un droit d'usage, non le programme lui-même.
- transistor
- Related: loi de Moore, processeur
Composant électronique élémentaire qui se comporte comme un interrupteur commandé par une tension. Son invention en 1947 a remplacé les tubes à vide et permis la miniaturisation des ordinateurs.
- type de donnée
- Related: entier, flottant, chaîne de caractères
Ensemble de valeurs partageant une même nature et les opérations autorisées sur elles. En Python, int, float, str et bool sont des types de base ; le type d'une valeur détermine ce qu'on peut en faire.
- entier
- Related: type de donnée, complément à deux
Type de donnée représentant un nombre sans partie décimale, positif, négatif ou nul. Le type int de Python n'a pas de taille fixe ; en machine, les entiers sont codés sur un nombre fini de bits.
- flottant
- Related: type de donnée, débordement
Type de donnée représentant un nombre à virgule en mémoire selon la norme IEEE 754 : signe, exposant et mantisse. Sa précision est limitée, ce qui explique des résultats surprenants comme 0.1 + 0.2 != 0.3.
- chaîne de caractères
- Related: type de donnée, Unicode
Type de donnée constitué d'une suite ordonnée de caractères, notée entre guillemets en Python. On peut la parcourir, la découper, la concaténer, mais elle est immuable.
- booléen
- Related: type de donnée
Type de donnée à deux valeurs, True et False, qui résulte d'une comparaison ou alimente un test. En Python, il sert aux conditions et aux boucles, et s'obtient avec les opérateurs ==, <, and, or, not.
- complément à deux
- Related: entier, octet, débordement
Méthode de codage binaire des entiers relatifs sur n bits : les positifs sont écrits normalement, les négatifs comme 2^n moins leur valeur absolue. Elle rend l'addition identique pour les deux signes et évite un zéro double.
- octet
- Related: bit, complément à deux, Unicode
Groupe de huit bits, unité usuelle de mesure des données. Un octet code 256 valeurs distinctes, ce qui suffit pour un caractère en ASCII, et les capacités mémoire s'expriment en multiples d'octets.
- bit
- Related: octet, codage
Plus petite unité d'information, valant 0 ou 1. Toute donnée numérique, texte, image ou son est finalement représentée par une suite de bits, dont le sens dépend de la convention de codage choisie.
- codage
- Related: bit, Unicode, représentation binaire
Convention qui associe à une information (nombre, caractère, couleur, son) une représentation binaire. Un même motif de bits peut désigner des choses différentes selon le codage appliqué.
- Unicode
- Related: chaîne de caractères, octet, codage
Standard international attribuant un point de code unique à chaque caractère de toutes les écritures du monde. Ses encodages, notamment UTF-8, coexistent avec l'ASCII, dont ils reprennent les premiers codes.
- représentation binaire
- Related: bit, codage, complément à deux
Écriture d'un nombre en base 2, avec seulement les chiffres 0 et 1, où chaque position vaut une puissance de deux. C'est la représentation naturelle des données dans une machine.
- débordement
- Related: flottant, complément à deux
Situation où un résultat ne tient pas dans le format prévu : un entier codé sur n bits dépasse sa capacité, ou un flottant devient trop grand ou trop petit. Le résultat est alors faux ou remplacé par une valeur spéciale.
- liste
- Related: tuple, dictionnaire, index
Type construit de Python contenant une suite ordonnée et modifiable d'éléments, indexés à partir de 0. On y accède par crochets, on la parcourt par itération, et ses éléments peuvent être de types différents.
- tuple
- Related: liste, immuabilité
Type construit de Python semblable à une liste mais non modifiable après création. On l'écrit entre parenthèses et on l'utilise pour regrouper des valeurs liées ou retourner plusieurs résultats.
- dictionnaire
- Related: liste, table de données
Type construit de Python associant des clés uniques à des valeurs, sans ordre garanti par l'index. On accède à une valeur par sa clé, ce qui en fait la structure naturelle pour les tables d'association.
- index
- Related: liste, chaîne de caractères
Position entière d'un élément dans une séquence, numérotée à partir de 0 en Python. Un index négatif compte depuis la fin, et un index hors bornes provoque une erreur.
- immuabilité
- Related: tuple, chaîne de caractères
Propriété d'un objet dont la valeur ne peut pas être modifiée après sa création, comme un tuple, une chaîne ou un entier. Toute opération qui semble le changer crée en réalité un nouvel objet.
- table de données
- Related: dictionnaire, CSV, requête
Ensemble de données organisé en lignes (enregistrements) et colonnes (descripteurs), souvent représenté en Python par une liste de dictionnaires partageant les mêmes clés. C'est le format courant des fichiers CSV.
- CSV
- Related: table de données
Format texte de fichier tabulaire où chaque ligne est un enregistrement et où les champs sont séparés par un délimiteur, souvent la virgule. Simple et universel, il ne précise ni les types ni l'encodage des données.
- requête
- Related: table de données, agrégation
Opération qui sélectionne, filtre, trie ou agrège les lignes d'une table de données selon un critère. En Python, on l'implémente par des boucles, des compréhensions ou des fonctions comme sorted et sum.
- agrégation
- Related: requête, table de données
Calcul qui résume un ensemble de valeurs en un résultat unique : somme, moyenne, minimum, maximum, comptage. Sur une table, elle s'applique souvent à une colonne ou à des groupes de lignes.
- URL
- Related: HTTP, client-serveur
Adresse d'une ressource sur le Web, composée d'un schéma, d'un nom d'hôte, d'un chemin et éventuellement de paramètres et d'un fragment. Elle permet au navigateur de localiser le serveur et la ressource demandée.
- HTTP
- Related: URL, client-serveur, cookie
Protocole de communication du Web : le client envoie une requête (méthode, chemin, en-têtes) et le serveur renvoie une réponse avec un code de statut et un contenu. Il fonctionne sans mémoire entre deux requêtes.
- client-serveur
- Related: HTTP, URL
Modèle d'échange où un programme client formule une demande et un programme serveur y répond, généralement à distance. Le navigateur est client, le serveur Web héberge les pages et traite les requêtes.
- cookie
- Related: HTTP
Petit ensemble de données qu'un serveur demande au navigateur de stocker et de renvoyer à chaque requête vers ce site. Il sert à maintenir une session ou des préférences malgré le caractère sans état de HTTP.
- formulaire
- Related: HTTP, JavaScript
Élément HTML regroupant des champs de saisie et un bouton de soumission, qui envoie les données au serveur par une requête GET ou POST. C'est l'un des principaux moyens d'interaction entre l'utilisateur et un site.
- JavaScript
- Related: formulaire, DOM
Langage de programmation exécuté par le navigateur, qui permet de modifier la page après son chargement et de réagir aux actions de l'utilisateur. Il s'ajoute au HTML et au CSS pour rendre les pages interactives.
- DOM
- Related: JavaScript, formulaire
Représentation de la page HTML sous forme d'arbre d'objets manipulable par un programme JavaScript. Chaque balise devient un nœud que l'on peut lire ou modifier pour changer dynamiquement l'affichage.
- processeur
- Related: architecture de von Neumann, mémoire, système d'exploitation
Circuit qui exécute les instructions d'un programme : il lit une instruction en mémoire, la décode, effectue l'opération puis passe à la suivante. Sa fréquence et son nombre de cœurs influencent les performances.
- mémoire
- Related: processeur, système d'exploitation
Espace de stockage des programmes et des données, organisé en cases repérées par une adresse. La mémoire vive est rapide mais volatile, alors que le disque conserve les données durablement.
- système d'exploitation
- Related: processus, mémoire, droits d'accès
Logiciel qui gère les ressources d'une machine (processeur, mémoire, fichiers, périphériques) et offre des services aux programmes. Il assure l'ordonnancement des tâches et l'isolation entre utilisateurs.
- processus
- Related: système d'exploitation, processeur
Programme en cours d'exécution, disposant de son propre espace mémoire et d'un état suivi par le système d'exploitation. Plusieurs processus peuvent coexister et se partager le processeur.
- droits d'accès
- Related: système d'exploitation, répertoire
Permissions attachées à un fichier ou à un répertoire, par exemple lecture, écriture et exécution pour le propriétaire, le groupe ou les autres. Ils protègent les données et limitent ce qu'un programme peut modifier.
- répertoire
- Related: droits d'accès, système d'exploitation
Conteneur du système de fichiers regroupant des fichiers et d'autres répertoires, formant une arborescence depuis la racine. Un chemin absolu part de la racine, un chemin relatif part du répertoire courant.
- fonction
- Related: paramètre, portée des variables, spécification
Bloc de code nommé, éventuellement paramétré, qui effectue une tâche et peut renvoyer une valeur. En Python, on la définit avec def ; elle favorise la réutilisation et la lisibilité du programme.
- paramètre
- Related: fonction, portée des variables
Variable déclarée dans la définition d'une fonction pour recevoir une valeur à chaque appel. L'argument est la valeur effectivement transmise lors de l'appel.
- portée des variables
- Related: fonction, paramètre
Règle qui détermine où une variable est visible : locale à une fonction, ou globale au module. En Python, une variable affectée dans une fonction est locale sauf déclaration global.
- spécification
- Related: test, fonction
Description précise de ce qu'une fonction doit faire : paramètres attendus, résultat renvoyé, conditions et effets. Elle guide l'écriture des tests et permet de vérifier le programme sans lire son code.
- test
- Related: spécification, débogage
Exécution contrôlée d'un programme sur des entrées choisies pour comparer le résultat obtenu au résultat attendu. Les jeux de tests doivent couvrir cas normaux, cas limites et cas erronés.
- débogage
- Related: test, exception
Activité qui consiste à localiser et corriger une erreur dans un programme, à l'aide de messages, d'affichages intermédiaires ou d'un outil pas à pas. Elle suppose d'abord de reproduire le dysfonctionnement.
- exception
- Related: débogage
Erreur détectée pendant l'exécution d'un programme, comme une division par zéro ou un index hors bornes. En Python, elle interrompt le cours normal sauf si elle est interceptée par try et except.
- algorithme
- Related: complexité, recherche dichotomique, tri
Suite finie et non ambiguë d'instructions permettant de résoudre un problème à partir de données d'entrée. Un algorithme doit se terminer et produire le résultat attendu pour toutes les entrées valides.
- complexité
- Related: algorithme, recherche dichotomique, tri
Mesure de l'évolution du temps ou de la mémoire consommés par un algorithme quand la taille des données augmente, exprimée en notation grand O. Elle compare les algorithmes indépendamment de la machine.
- recherche dichotomique
- Related: complexité, tri, algorithme
Algorithme qui cherche une valeur dans un tableau trié en comparant avec l'élément du milieu et en éliminant la moitié restante à chaque étape. Sa complexité est logarithmique, bien meilleure qu'un parcours linéaire.
- tri
- Related: complexité, recherche dichotomique
Réorganisation d'une collection selon un ordre défini, par exemple croissant. Les algorithmes de tri par insertion, par sélection ou par fusion illustrent des complexités et des stratégies différentes.
- récursivité
- Related: algorithme, complexité
Propriété d'une fonction qui s'appelle elle-même sur un cas plus petit, jusqu'à un cas de base qui arrête les appels. Elle permet d'écrire simplement des algorithmes sur des structures récursives.