télécharger 200.23 Kb.
|
4.2.LA REPRESENTATION DES INFORMATIONS4.2.1.Les instructionsLes instructions exécutables par la machine sont celles contenues dans le jeu d’instructions du microprocesseur (voir support de cours sur la structure de la machine). Chacune de ces instructions possède un code opération qui permet de l’identifier. Pour chaque instruction, on indique également des opérandes. L’ensemble est codé sur un mot de 16 ou 32 bits suivant la machine.
Chaque instruction sait comment décoder la partie opérandes. 4.2.2.Les donnéesLes données non numériquesLes données non numériques correspondent aux caractères alphanumériques (A,B,C,...,1,2,3,...,a,b,c,...) et aux caractères spéciaux (ponctuation et autres). Le codage est fait en utilisant une table de conversion. Le code ASCIILe code ASCII (American Standard Code for Information Interchange) est celui le plus généralement utilisé dans les ordinateurs d’aujourd’hui. Voir table en annexe. Tout caractère est codé sur un octet, c’est à dire 8 bits. Une donnée numérique stockée dans une variable de type caractère ou chaîne de caractères sera codée en ASCII. Exemples : "an" ---> 2 octets (61)16 (6E)16 (01100001)2 (01101110)2 "12" ---> 2 octets (31)16 (32)16 (00110001)2 (00110010)2 Le code EBCDICLe code EBCDIC (Extended Binary Coded Decimal Interchange Code), essentiellement utilisé par IBM est également un code représentant les caractères sur un octet. L’octet est divisé en deux demi-octets de signification différente :
Exemples : "AN" ---> 2 octets (C1)16 (CE)16 (11000001)2 (11001110)2 "12" ---> 2 octets (F1)16 (F2)16 (11110001)2 (11110010)2 Les données numériquesPour coder les informations numériques, il existe différents systèmes de codage suivant la nature des données, l’utilisation que l’on veut en faire et la précision souhaitée. Les entiers positifs ou nulsPour coder un entier positif ou nul, on utilise le codage binaire pur. C’est à dire que l’on convertit la donnée comme indiqué au chapitre 2. La donnée est stockée dans un mot mémoire. Suivant la machine, un mot mémoire a une taille variable généralement 16 bits, mais ce peut être aussi sur certaines machines 8 bits (ex : PC-XT), 32 bits (ex : Pentium ou Motorola), voire 64 bits (machines scientifiques). Par conséquent les entiers que l’on peut coder avec ce système doivent être compris entre 0 et 2n-1 (n étant le nombre de bits du mot). Exemple : si n = 16 les entiers sont compris entre 0 et 65536 Les entiers signésPour coder les entiers signés, on procède de la même façon sauf que l’on n’utilise pas le premier (ou parfois le dernier) bit du mot. Celui-ci sert à coder le signe (1 négatif, 0 positif) Les entiers sont alors compris entre : - (2n-1 -1) et + (2n-1 -1) Exemple : si n = 16, les entiers sont compris entre - 32767 et + 32767 Les réels en virgule flottanteOn convient d’écrire les nombres réels sous la forme suivante : X = S * M * 10E S est le signe du nombre M est appelé la mantisse E est l’exposant encore appelé caractéristique On utilise alors 4 ou 8 octets suivant la précision souhaitée pour coder le nombre. La mantisse fait donc 24 bits en simple précision et 56 bits en double précision. En simple précision un réel doit donc être compris entre : - (224 - 1)*1063 à + (224 - 1)*1063 Pour ne pas avoir à se préoccuper du signe de la caractéristique on convient d’ajouter 64 à la caractéristique. De la sorte, une caractéristique codée 0 représente une caractéristique réelle de -64 et une caractéristique réelle codée 127 représente une caractéristique réelle de 63. Exemples : 0 ![]() caractéristique 0111011 (59) mantisse 000000000000000001111011 - ![]() caractéristique 0111110 mantisse .......... 1 ![]() caractéristique 1000110 mantisse 0000000000000000000000001 La mantisse fait donc 24 bits en simple précision et 56 bits en double précision. En simple précision un réel doit donc être compris entre : - (224 - 1)*1063 à + (224 - 1)*1063 Pour ne pas avoir à se préoccuper du signe de la caractéristique on convient d’ajouter 64 à la caractéristique. De la sorte, une caractéristique codée 0 représente une caractéristique réelle de -64 et une caractéristique réelle codée 127 représente une caractéristique réelle de 63. Exemples : 0 ![]() caractéristique 0111011 (59) mantisse 000000000000000001111011 - ![]() caractéristique 0111110 mantisse .......... 1 ![]() caractéristique 1000110 mantisse 0000000000000000000000001 5.Séquence d’amorçageLa séquence de démarrage c'est toutes les étapes qui vont être exécutées dès le moment ou vous allez démarrer votre ordinateur. Il y a plusieurs éléments qui entrent en jeu durant cette séquence. A quoi sert de connaître cette séquence ? Tout simplement en cas de problème, à mieux identifier celui-ci et à mieux le résoudre. Et aussi bien entendu à mieux connaître votre ordinateur. La séquence que je vais décrire ici est la séquence standard pour un système fonctionnant avec un système d'exploitation Windows. Pour commencer, dès le moment où vous allez appuyer sur le bouton de mise sous tension de votre PC, une impulsion électrique va être envoyée à l'alimentation depuis la carte mère. Laquelle va ensuite produire du courant, courant qui va allumer le Bios. 5.1.Le BIOS ou séquence POSTLe BIOS s'occupe de tester et d'initialiser tous les matériels. On appelle aussi cette partie la séquence POST (Power On Self Test) ou encore séquence préboot. C'est la séquence durant laquelle tous les composants vont être testés de même que leur compatibilité. Si la séquence POST ne passe pas, le système n'ira pas plus loin et votre OS ne sera pas lancé. Il va commencer par contrôler le bus système et va vérifier ensuite tous les connecteurs d'extension. Il va continuer en vérifiant la mémoire de la carte graphique et les signaux commandant l'affichage. Ensuite, il va interroger le BIOS de la carte vidéo et ajouter son code de reconnaissance. C'est à partir de ce moment-là que les premiers affichages arrivent à l'écran. Il va tester la RAM, pour cela, il tente une écriture sur chaque zone mémoire et tente de lire ensuite pour les comparer à ce qu'il a écrit. Il vérifie si le clavier et la souris sont bien connectés. Ensuite, il envoie des signaux à tous les périphériques de stockage (disquette, cd, HDD, USB, …) pour définir quels sont les différents lecteurs. Tous les résultats sont comparés sur le CMOS, ce qui permet au BIOS de savoir si la configuration matérielle a changé depuis le dernier démarrage ou pas. Ensuite, il intègre les identifiants de tous les composants ayant un BIOS. Ensuite, les tests matériels validés, il va tenter d'amorcer en mémoire le secteur d'amorce principal du disque dur aussi appelé MBR. Il y a pas mal d'erreurs qui peuvent se produire durant cette phase, elles sont le plus souvent d'ordre matériel, par exemple une barrette de RAM mal branchée ou un composant manquant ou encore une incompatibilité entre 2 matériels. Ces erreurs sont indépendantes du système d'exploitation. 5.2.Le MBRLe MBR (Master Boot Record) ou table de partition en français, permet de trouver la partition active du disque. Une fois que cette partition est identifiée, le MBR va charger le secteur de boot correspondant et transférer ensuite l'exécution à ce dernier. Les erreurs pouvant arriver à ce stade du démarrage sont souvent d'ordre de stockage. C'est-à-dire qu'il peut y avoir plusieurs partitions actives, ou aucun support de stockage valable. Ou alors, il peut arriver que la table de partition soit altérée. 5.3.Le secteur de bootUne fois que le MBR lui a donné la main, le secteur de boot va charger les 15 secteurs qui le suivent sur le disque et va ensuite transférer le contrôle à un programme présent sur ces secteurs. Ces 15 premiers secteurs sont appelés " Boostrap Code " et s'occupent de localiser puis de transférer l'exécution au fichier NTLDR. Les erreurs qui peuvent arriver à ce niveau sont encore une fois surtout des problèmes hardware. C'est-à-dire que par exemple un des secteurs qu'il doit charger est manquant. Ou alors que le disque sur lequel on démarre n'a pas de NTLDR, donc on ne peut pas booter dessus. Ou alors, il peut arriver qu'il y aie un problème avec le fichier NTLDR. 5.4.NTLDRC'est le chargeur d'amorçage de Windows. C'est lui qui va savoir quels windows sont installés et lequel il faut lancer. Il commence par charger les pilotes du système de fichier approprié. Ensuite, en fonction du fichier Boot.ini, il va définir quels sont les systèmes d'exploitations qu'il peut lancer et s'il y en a plusieurs, il va les afficher à l'écran et demander à l'utilisateur d'en choisir un. Il charge le programme NTDETECT qui va ensuite détecter le matériel du pc. Il charge plusieurs dll qui vont permettre d'effectuer la suite du travail. Il charge la majorité de la base de registre (le reste étant chargé plus tard par le système d'exploitation). Et enfin, il donne le contrôle à NTOSKRNL.exe. Les problèmes qui peuvent arriver ici sont surtout des problèmes liés aux fichiers qui doivent être lancés, par exemple un fichier qui manque ou alors un problème d'accès à un des fichiers. 5.5.NTOSKRNL.exeNous voilà à la fin de la séquence de démarrage du PC, cette fois, le noyau NT va se lancer définitivement et va charger le programme de logon et nous allons nous retrouver sur notre bon vieux Windows.
|
![]() | ![]() | ||
![]() | ![]() | ||
![]() | «istihqaq» délivrée par la Fondation Mohammed VI de promotion des œuvres sociales de l’éducation – formation | ![]() | «Sciences de l’Education», Spécialité Professionnelle (Promotion Septembre 2005) |
![]() | «Back office» contre «front office», quel rôle joue le travail dans le vote en France ? | ![]() | «de favoriser l’insertion ou la réinsertion professionnelle, le maintien dans l’emploi, le développement des compétences, l’accès... |
![]() | ![]() |