L'informatique est la science du traitement automatique de l'information.
L'ordinateur est une machine à traiter l'information.
La chose la plus importante à retenir est que l'ordinateur n'a rien d'une machine intelligente; il s'agit seulement d'un automate perfectionné capable d'exécuter des actions pour lesquelles il a été programmé.
L'information traitée par l'ordinateur peut se présenter sous forme numérique, de texte, de dessins, d'images ...
Qu'est ce qu'un ordinateur?
Le premier contact visuel (voir figure 2.1) avec ce type de machines fournit un certain nombre de renseignements sur son fonctionnement.
L'ordinateur consomme de l'information : Il accepte des commandes qu'il exécute et des données qu'il traite.
Le traitement de l'information aboutit souvent à des résultats que l'on matérialise.
Ceci implique que cette machine est capable de collecter des données, d'effectuer des traitements et de diffuser des résultats.
Nous obtenons alors une description minimale d'un ordinateur (au sens large): des périphériques d'entrée et de sortie capables de collecter des données et diffuser des résultats, reliés par une unité de traitement.
Nous pouvons ajouter ici que tout traitement suppose une mémorisation de l'information, il est donc nécessaire de munir la machine d'un dispositif de mémorisation de l'information.
Ainsi, traiter l'information implique quatre types d'opérations :
Les manipulations sont exécutés par l'unité centrale de l'ordinateur tandis que les autres opérations utilisent en général les périphériques (le clavier, le scanner...).
Depuis l'invention du IBM-PC, l'évolution la plus fulgurante a concerné le microprocesseur de l'ordinateur et donc sa capacité de calcul brute.
Le tableau ci-dessous montre l'évolution technologique des microprocesseurs Intel :
Modèle | Année | Nb transistors | Horloge | Taille du registre interne | Largeur du bus de données | MIPS |
8088 | 1979 | 29 000 | 4,77 MHz | 16 bits | 8bits | 0,75 |
80286 | 1982 | 134 000 | 8MHz | 16 bits | 16 bits | 1,5 |
i386 | 1986 | 275 000 | 16 MHz | 32 bits | 16 bits | 5 |
i486 | 1989 | 1,2 millions | 33 MHz | 32 bits | 32 bits | 27 |
Pentium | 1993 | 3,3 millions | 75 MHz | 32 bits | 32 bits | 100 |
Pentium II | 1997 | 7,5 millions | 300 MHz | 64 bits | 32 bits | 300 |
Pentium III | 1999 | 9,5 millions | 500 | 64 bits | 32 bits | 500 |
Pentium III | 2000 | 28,1 millions | 1 GHz | 64 | 32 bits | 1000 |
Pentium IV | 2000 | 800Mhz | 64 bits | 32 bits |
La loi de Moore (un des fondateurs d'Intel) : la multiplication par deux de la capacité de calcul tous les dix-huit mois.
Exemple de configuration d'un micro-ordinateur :
Ce qui est remarquable avec les ordinateurs c'est leur faculté à être utilisés dans des domaines très diverses (jeux, traitement de texte, gestion de stock, calcul scientifique, ).
Comment expliquer cet état de fait ?
La réponse est que les ordinateurs sont des machines programmables.
Remarquons tout d'abord que la machine n'est qu'un ensemble de circuits électroniques, de fils électriques...
Certaines fonctionnalités, instructions de base, sont réalisées par ces circuits: addition, mémoire de base...
Le principe consiste à transformer la machine selon les besoins en lui ajoutant différentes couches qui spécialisent et développent les potentialités initiales de la machine.
Selon les couches ajoutées, l'ordinateur deviendra console de jeu ou console d'interrogation de banque de données.
Pour obtenir une machine utilisable, il faut obligatoirement une première couche de logiciels, de programmes (un programme est une suite de commandes que la machine sait exécuter) appelée système d'exploitation.
Sans le système d'exploitation, l'ordinateur n'est qu'un radiateur.
Lire une donnée inscrite sur une disquette est une opération très dépendante du lecteur et de l'ordinateur utilisés.
Ces opérations prochesde la machine font partie de la première fonction du système d'exploitation.
Ce système est la première couche logicielle développée sur un ordinateur qui libère le programmeur de la complexité du matériel.
La deuxième fonction consiste en l'exploitation des ressources de la machine.
Imaginez deux programmes utilisant l'imprimante.
Pour résoudre les conflits d'accès ou éviter le désordre sur les pages imprimées, le système d'exploitation gère les conflits, priorités et autorisations.
Le système d'exploitation des machines PC le plus courant est MS-DOS (MicroSoft Disk Operating System). Windows 95 tend à le remplacer.
Le démarrage d'un ordinateur se déroule de la façon suivante:
Pour obtenir une machine dédiée à une utilisation particulière, il faut ajouter une nouvelle couche logicielle.
Par exemple, en ajoutant le logiciel Turbo Pascal, vous obtenez une machine dédiée à la programmation en langage Pascal; en ajoutant le logiciel Word , vous obtenez une machine dédiée au traitement de texte... Autres logiciels, autres utilisations possibles: bases de données, logiciels de jeux...
L'utilisation de logiciels dans un ordinateur doit être vu sous le principe de couches logicielles:
À l'état nu, au démarrage, un ordinateur n'est rien de plus qu'un radiateur; il faut d'abord lui ajouter quelque chose qui sache parlerà ses périphériques: c'est le système d'exploitation (figure 2.3).
C'est par lui que l'utilisateur ou d'autres logiciels devront passer pour communiquer avec le matériel.
L'utilisateur n'est pas obligé de parler directement au système d'exploitation.
On utilise en général un ordinateur non pour son système d'exploitation, mais pour les logiciels qu'il peut faire fonctionner.
On ajoute alors une couche: le logiciel applicatif (ou application ).
Ce peut être un jeu, un traitement de texte, un tableur,...
La machine effectuera ce qui lui est demandé, et enverra en retour des informations au système d'exploitation, qui enverra à son tour d'autres informations au programme (figure 2.4).
Cet empilement de couches ne se limite pas à cela.
On peut avoir beaucoup plus de couches, qui, chacune, ne communiquent qu'avec celle immédiatement supérieure ou immédiatement inférieure (figure 2.5).
Ainsi, au dessus de la couche logicielle de MS-DOS (système d'exploitation le plus courant des PC, mais dont l'utilisation est un peu cryptique) on ajoute souvent la couche interface de Windows 3.1.
Cette couche permet d'avoir accès aux informations du disque d'une manière un peu plus intuitive.
Windows 3.1 qui n'est pas un système d'exploitation, semble pourtant en remplir tous les rôles.
Windows 95 est un système d'exploitation multitâche (contrairement à MS-DOS qui est monotâche); cela signifie que plusieurs tâches peuvent avoir accès en même temps (en parallèle) au système d'exploitation.
Ainsi dans l'exemple de la figure 2.6 on a trois applications qui communiquent avec Windows 95:
On peut remarquer qu'on a ajouté une couche supplémentaire au-dessus de Netscape, un plug-in qui permet de jouer des fichiers sons ou video (figure 2.6).
Une base de donnée est une armoire de classement (boîte à fiches, dossiers suspendus...) mais électronique.
Elle est utilisée pour stocker des information comme n'importe quel système de classement mais elle possède des avantages indéniables sur les autres systèmes:
Les deux dernières caractéristiques des bases de données ont été mises à contribution depuis le développement de l'Internet pour fournir des services jadis impossibles.
La connexion d'une base de données de stocks, par exemple, permet à l'entreprise de créer un système de commerce électronique où le consommateur peut connaître en temps réel si un produit existe en stock avant de le commander.
En permettant un accès rapide et flexible à l'information, les bases de données ont décuplé l'utilité des informations dont on dispose.
C'est d'ailleurs le prochain défi des nouvelles technologies: trouver des outils efficaces (rapides et pertinents) pour accéder à l'information utile. C'est un des domaines où l'on attend beaucoup de l'Intelligence Artificielle (data mining).
Toute information est véhiculée par un support, par exemple écrite sur papier, enregistrée sur cassette audio, etc.
Le micro-ordinateur travaille sur une représentation binaire des informations.
Chaque élément électronique ou magnétique ne sait prendre que deux états physiques distincts (conducteur ou non conducteur, deux niveaux de tension) représentés par les chiffres 0 et 1 d'une numérotation binaire, c'est-à-dire de base 2.
Vous avez certainement déjà entendu parler de bits, d'octets ou de kilo-octets. Tous ces mots désignent en fait des unités pour mesurer des capacité de mémorisation d'information par l'ordinateur.
L'information minimale pour l'ordinateur est lebit.
Imaginez un fil dans l'ordinateur.
Deux états le caractérisent: le courant passe ou ne passe pas.
Avec un seul fil, on peut donc mémoriserune information binaire, c'est-à-dire, deux valeurs: le courant passe, représenté 1, le courant ne passe pas, représenté 0. Cette information 0 ou 1 est appelée bit.
Imaginez maintenant deux fils, nous obtenons alors 4 possibilités: le courant ne passe ni dans l'un, ni dans l'autre 00, dans le second et pas dans le premier 01, dans le premier pas dans le second 10 et dans les deux 11.
Prenez maintenant trois fils, c'est-à-dire trois bits vous avez 8 possibilités: 000, 001, 010, 011, 100, 101, 110, 111.
Maintenant, les préfixes classiques des unités de mesure s'appliquent:
kilo | mega | giga | tera | ||||
---|---|---|---|---|---|---|---|
peta | exa | zetta | yotta |
Pour vous donner une idée intuitive des capacités des matériels informatiques, vous pouvez considérer qu'un Koctet correspond à peu près, en quantité d'information, à une page imprimée.
Cela implique donc que:
Toute information devra donc être codée en langage binaire, c'est-à-dire transformée en une série de 0 et 1.
C'est le micro-ordinateur qui assure ce codage, l'utilisateur n'a pas à s'en occuper.
La plus petite unité d'information est appelée bit (binary digit). Un bit peut donc prendre soit la valeur 0 ou bien 1.
Un octet est une succession de 8 bits.
Il représente la taille standard pour coder un caractère quelconque donc 1 caractère 1 octet.
Raisonnons sur la représentation des nombres entiers : La représentation d'un nombre en base quelconque est donnée par la formule:
Cas particuliers :
avec
représente le chiffre des unités , celui des dizaines, celui des centaines, etc.
Les correspondent à un caractère décimal. Le système décimal est composé de dix chiffres qui sont .
avec .
Les correspondent à un caractère binaire. Le système binaire est composé de deux chiffres .
EXEMPLES :
Le nombre décimal 1789 est interprété comme
Soit un entier en base 2 sur un octet.
Les chiffres sont écrits de gauche à droite depuis le bit de poids le plus fort (position 7) jusqu'au bit de poids le plus faible (position 0).
Exemple :
Numéros de bits | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Contenu de l'octet | 0 | 0 | 0 | 1 | 1 | 0 | 1 | 1 |
Ceci va correspondre en système décimal (base 10) à :
Ainsi, un octet peut représenter des valeurs entières allant de 0 (le cas où les bits sont égaux à 0) à 255 (le cas où les 8 bits sont égaux à un). En effet,
On peut ajouter qu'avec deux octets (c'est-à-dire un mot), on pourra aller de 0 à 65635. D'une manière générale, avec bits, on peut aller de 0 à .
Dans la mesure où on calcule en base 2, on ne peut pas regrouper les valeurs en milliers, millions ou milliards, d'où la création de nouvelles unités dont voici la définition :
Inversement, pour passer d'un nombre entier naturel écrit dans le système décimal à son écriture dans un système en base 2, on procède à des divisions successives par 2 et on prend les restes "du bas vers le haut".
Exemple :
Comment écrit-on en base ?
19 : 2 = 9 | reste 1 |
9 : 2 = 4 | reste 1 |
4 : 2 = 2 | reste 0 |
2 : 2 = 1 | reste 0 |
1 : 2 = 0 | reste 1 |
On s'arrête lorsque le résultat de la division est égal à zéro. Ainsi, en système à base 2.
L'écriture sur un octet donnerait .
Pour utiliser un ordinateur, il faut pouvoir représenter l'ensemble des symboles utilisés dans le langage courant (lettres de l'alphabet, caractères de ponctuation, les chiffres en tant que caractères, les symboles mathématiques...) ainsi que des caractères spéciaux tels le retour à la ligne ou l'échappement.
Lorsque l'on tape sur une touche, l'utilisateur envoie en fait un code à l'ordinateur.
Exemple : si l'on appuie sur la touche 'C', l'ordinateur ne 'lit' pas un 'C' majuscule mais un code qu'il interprète comme devant correspondre à cette lettre et il va l'afficher à l'écran.
Supposez maintenant que vous voulez représenter des caractères à l'aide de bits.
Vous avez symboles (qui représentent possibilités) pour les lettres majuscules, autant pour les minuscules, symboles pour les chiffres, des symboles de ponctuation, accentués, des symboles spéciaux...
Il faut entre 128 et 256 possibilités et donc utiliser 8 bits pour disposer de suffisamment de possibilités pour les représenter en machine. Un groupe de bits est appelé un octet et vous pouvez associer à un octet un caractère.
Pour l'ordinateur, le code associé à un caractère (c'est-à-dire une lettre, un chiffre, un signe de ponctuation...) est contenu dans un seul octet, ce qui donne possibilités différentes numérotées de 0 à .
La table de correspondance standard entre les valeurs possibles d'un octet et nos caractères est la table (ou le code) ASCII (American Standard Code for Information Interchange).
Exemples :
Remarque : Il est à noter que l'ordinateur ne traite pas de la même manière le nombre 12 et la chaîne de caractères 12.
En effet, la codification binaire de l'entier 12 est obtenu en faisant les divisions successives par 2 ce qui donne 1100 en binaire.
Par contre, la chaîne 12est considérée comme étant composée de deux caractères '1' et '2' chacun codé sur un octet. le code correspondant au caractère '1' est obtenu non pas en opérant des disions par 2 mais en utilisant la table ASCII.
La chaîne 12est donc codée sur deux octets.