"Informatique fondamentale" : système binaire...
Répondre à la discussion
Affichage des résultats 1 à 24 sur 24

"Informatique fondamentale" : système binaire...



  1. #1
    babaz

    "Informatique fondamentale" : système binaire...


    ------

    Bonjour,

    Pouvez-vous m'expliquer comment un ordinateur "traduit" des données binaires en informations intelligibles pour chacun (un chiffre ou une lettre, par exemple) ?

    Quel composant indique au processeur que, "1000001" désigne, avec la norme ASCII, la lettre A ? Comment cette pièce parvient-elle à faire l'association ?
    Par ailleurs, j'ignore totalement comment la "forme" sommaire d'un caractère est stockée.

    Bien qu'il s'agisse du "b.a-ba" de l'informatique, je ne parviens pas à trouver d'informations sur ces mécanismes fondamentaux. Si vous pouviez m'aider, j'en serais ravi!

    Je vous remercie !

    -----

  2. #2
    polo974

    Re : "Informatique fondamentale" : système binaire...

    L'ordinateur ne sait pas, il fait ce que le programmeur lui a demandé.
    Dans un document texte, la "forme sommaire" (je suppose la représentation graphique à l'écran) n'a aucune importance, ce n'est qu'au moment de l'affichage que ceci entre en jeu.

    Donc pour afficher ou imprimer la lettre A, le programme d'affichage a voir dans un fichier qu'on appelle police de caractère (ou fonte ou font en anglais). Dans ce fichier, il y a d'une manière ou d'une autre une description du "dessin" de la lettre A.

    La manière de décrire ce dessin pet aller en gros d'un petit dessin à une suite de courbes mathématiques décrivant le(s) contours) de la lettre à dessiner. Le premier principe ne va bien que pour une taille de caractère, le second permet d'agrandir la taille du caractère quasiment sans limite out en gardant un joli dessin.

    Pour voir la différence, avec firefox, on peut zoomer une page <ctrl+> (possible plusieurs fois de suite et <ctrl0> (zéro) pour revenir à la taille d'origine): les lettres du texte sont agrandies proprement, mais les dessins deviennent crénelés.
    Jusqu'ici tout va bien...

  3. #3
    babaz

    Re : "Informatique fondamentale" : système binaire...

    Merci pour ta réponse!

    Je ne parviens toujours pas à comprendre :

    - Comment on "impose" à un ordinateur une norme telle que l'ASCII, quel composant est chargé de la conversion de notations binaires en notations intelligibles ;
    - Sous quelle forme la forme originelle des caractères (que l'on diversifie ensuite en polices) sont stockées jusqu'à être affichées sur nos écrans. Si l'on scrute la partie du disque dur concernée au microscope, je suppose que l'on discernera aucun caractère particulier... toutefois, il a bien fallu faire "intégrer" à nos machines ces formes, ensuite largement enrichies.
    De la même façon, je pourrais vous demander comment "on faire prendre conscience à un ordinateur" de ce qu'est une couleur, jusqu'à ce qu'une instruction "binaire" soit convertie en couleur...

    J'espère ne pas avoir été trop confus...

    Je vous remercie

  4. #4
    yoda1234

    Re : "Informatique fondamentale" : système binaire...

    Connais tu la structure et le fonctionnement d'un µ-processeur?
    http://fr.wikipedia.org/wiki/Micropr...icroprocesseur
    Là où l'ignorance est un bienfait, c'est de la folie d'être sage (Thomas Gray).

  5. A voir en vidéo sur Futura
  6. #5
    invite765732342432
    Invité

    Re : "Informatique fondamentale" : système binaire...

    Je vais tenter de réexpliquer le post de polo974
    Citation Envoyé par babaz Voir le message
    Comment on "impose" à un ordinateur une norme telle que l'ASCII
    L'ASCII n'existe pas pour le coeur de l'ordinateur. L'ASCII n'existe que quand un humain veut pouvoir lire quelque chose.

    Sous quelle forme la forme originelle des caractères (que l'on diversifie ensuite en polices) sont stockées jusqu'à être affichées sur nos écrans.
    Stocké en binaire, comme tout le reste sur un ordinateur. Ca circule également en binaire dans les "tubes" de l'ordi. Et quand ça accède à l'écran, c'est l'OS (ou un module de l'OS) qui convertit ce binaire sous forme d'un petit dessin (et la table de conversion entre le binaire et le dessin, c'est l'ASCII)

    Si l'on scrute la partie du disque dur concernée au microscope, je suppose que l'on discernera aucun caractère particulier...
    Tu "verras" des 0 et des 1. Point.
    ("verras" étant totalement faux, vu que ce n'est pas stocké de manière visible par un microscope, mais bon...)

    De la même façon, je pourrais vous demander comment "on faire prendre conscience à un ordinateur" de ce qu'est une couleur, jusqu'à ce qu'une instruction "binaire" soit convertie en couleur...
    Idem. Le concept de couleur n'existe pas dans un ordi. C'est juste à l'affichage, qu'un module convertit un code binaire en un point d'une certaine couleur à l'écran.

    Citation Envoyé par yoda1234 Voir le message
    Connais tu la structure et le fonctionnement d'un µ-processeur?
    http://fr.wikipedia.org/wiki/Micropr...icroprocesseur
    Euh... j'ai peur que tu ailles en peu loin dans le détail, là

  7. #6
    babaz

    Re : "Informatique fondamentale" : système binaire...

    Merci pour ta réponse.

    À l'évidence, non... et le lien vers lequel tu me diriges me semble bien trop avancé pour m'être accessible.
    "le décodeur décode cette instruction"
    mais comment ???

    Est-ce donc le µ-processeur qui effectuerait sans cesse ces conversions ?

  8. #7
    f6bes

    Re : "Informatique fondamentale" : système binaire...

    Citation Envoyé par babaz Voir le message

    Est-ce donc le µ-processeur qui effectuerait sans cesse ces conversions ?
    Bjr à toi,
    Pourquoi crois tu qu'on le paye, pas pour rien foutre !!
    Il passe son temps à "traduire" entre autre.
    A+

  9. #8
    babaz

    Re : "Informatique fondamentale" : système binaire...

    Merci beaucoup!

    "Et quand ça accède à l'écran, c'est l'OS (ou un module de l'OS) qui convertit ce binaire sous forme d'un petit dessin"
    "C'est juste à l'affichage, qu'un module convertit un code binaire en un point d'une certaine couleur à l'écran."
    Comment l'OS, ou le module dont tu parles, retient-il cette association ? Comment, sous quelle forme, mémorise-t-il ces normes de codage, associant à des données binaires des informations compréhensibles ?

    Je me dis qu'à un moment ou à un autre, une mémoire autre que binaire ("conséquence de l'association = caractère!") doit bel et bien être investie... mais comment ?

    Pour l'histoire du microscope (ou du faisceau laser...), ça me semble également risible et pourtant... "Informer" de ces infos "sommaires" est requis!

  10. #9
    babaz

    Re : "Informatique fondamentale" : système binaire...

    Citation Envoyé par f6bes Voir le message
    Bjr à toi,
    Pourquoi crois tu qu'on le paye, pas pour rien foutre !!
    Il passe son temps à "traduire" entre autre.
    A+
    Comment fait-il, l'inculte !?

  11. #10
    invite765732342432
    Invité

    Re : "Informatique fondamentale" : système binaire...

    Citation Envoyé par babaz Voir le message
    Comment l'OS, ou le module dont tu parles, retient-il cette association ? Comment, sous quelle forme, mémorise-t-il ces normes de codage, associant à des données binaires des informations compréhensibles ?
    C'est un programme comme un autre, il est donc stocké... en binaire...
    Binaire qui décrit une liste d'opérations en assembleur, liste elle même issue de la compilation d'un programme en C/Pascal/Basic/etc...

    Je me dis qu'à un moment ou à un autre, une mémoire autre que binaire ("conséquence de l'association = caractère!") doit bel et bien être investie... mais comment ?
    Ben, on te l'a dit, c'est stocké sur le disque, par le biais d'un module de l'OS.

  12. #11
    babaz

    Re : "Informatique fondamentale" : système binaire...

    Citation Envoyé par Faith Voir le message
    C'est un programme comme un autre, il est donc stocké... en binaire...
    Binaire qui décrit une liste d'opérations en assembleur, liste elle même issue de la compilation d'un programme en C/Pascal/Basic/etc...
    Où la forme de la lettre "A" est-elle stockée ?
    Est-ce que cela signifie que cette mémoire informatique "primitive" n'est pas binaire ?

    Par ailleurs, comment s'appelle le module de l'OS (Windows par exemple) dont tu me parles ? je pourrais peut-être essayer d'en comprendre le fonctionnement après en avoir obtenu le nom générique.

  13. #12
    invite765732342432
    Invité

    Re : "Informatique fondamentale" : système binaire...

    Citation Envoyé par babaz Voir le message
    Où la forme de la lettre "A" est-elle stockée ?
    Sur le disque, soit à l'intérieur d'un programme, soit dans un fichier utilisé par un programme.

    Est-ce que cela signifie que cette mémoire informatique "primitive" n'est pas binaire ?
    TOUT est binaire sur un ordinateur. Point.
    Qu'une chaine binaire affiche A ou Z ne change rien pour un ordinateur puisque A et Z n'ont aucun sens pour lui.

  14. #13
    babaz

    Re : "Informatique fondamentale" : système binaire...

    Ces caractères ont aucun sens pour lui, pourtant c'est eux que nous saisissons.

    Je ne comprends pas comment une forme aussi inédite qu'un "A" peut-être stockée dans un langage intégralement binaire. Aucun texte où ne serait inscrite qu'une succession de 0 et de 1 pourrait nous faire "prendre conscience" de la forme d'un A!

  15. #14
    invite765732342432
    Invité

    Re : "Informatique fondamentale" : système binaire...

    Citation Envoyé par babaz Voir le message
    Par ailleurs, comment s'appelle le module de l'OS (Windows par exemple) dont tu me parles ? je pourrais peut-être essayer d'en comprendre le fonctionnement après en avoir obtenu le nom générique.
    Aucune idée, et ça n'a pas d'intérêt.
    Les questions que tu poses dévoilent une grosse méconnaissance de base.
    Peut-être que ça pourrait t'aider: http://fr.wikipedia.org/wiki/Assembleur
    Une dernière chose: ce qui est affiché à l'écran, c'est uniquement une liste de points colorés (il n'existe pas de lettres à l'écran, juste des points affichés d'une certaine façon)
    Et chaque point coloré est (grosso-modo) une liste de 24 "0 ou 1". Rien d'autre.

    Aucun texte où ne seraient inscrits qu'une succession de 0 et de 1 pourraient nous faire découvrir la forme d'un A!
    Ben si... Cf ci dessus.

    Exemple simple en noir et blanc, sur un papier à carreaux, tu dessines une case noire s'il y a un 1 et tu laisse blanc si c'est un 0:
    Code:
    00000000
    00011000
    00100100
    00100100
    01111110
    01000010
    10000001
    10000001
    Maintenant, tu mets tout bout à bout et tu obtiens une représentation de A: 000000000001100000100100001001 000111111001000010100000011000 0001

  16. #15
    yoda1234

    Re : "Informatique fondamentale" : système binaire...

    Citation Envoyé par babaz Voir le message
    Je ne comprends pas comment une forme aussi inédite qu'un "A" peut-être stockée dans un langage intégralement binaire. Aucun texte où ne serait inscrite qu'une succession de 0 et de 1 pourrait nous faire "prendre conscience" de la forme d'un A!
    http://fr.wikipedia.org/wiki/Ascii
    Là où l'ignorance est un bienfait, c'est de la folie d'être sage (Thomas Gray).

  17. #16
    babaz

    Re : "Informatique fondamentale" : système binaire...

    Ce n'est pas une initiation au langage "R" qui répondra à ces questions...

    Citation Envoyé par Faith Voir le message
    Maintenant, tu mets tout bout à bout et tu obtiens une représentation de A
    Est-ce vraiment comment ainsi que le binaire est traduit en caractères ?
    Que dire, dès lors, des couleurs ?

    Merci beaucoup
    navré pour mon ignorance...

  18. #17
    babaz

    Re : "Informatique fondamentale" : système binaire...

    Citation Envoyé par yoda1234 Voir le message
    J'ai vu cette chose! Rien ne m'y expliquait ce qui sous-tend cette table d'association binaire/forme intelligible.
    Dernière modification par babaz ; 21/02/2010 à 12h29.

  19. #18
    invite765732342432
    Invité

    Re : "Informatique fondamentale" : système binaire...

    Citation Envoyé par babaz Voir le message
    Est-ce vraiment comment ainsi que le binaire est traduit en caractères ?
    Oui, et c'est comme ça que j'ai "découvert" à 8 ans, en triturant un programme de Pacman sur MO5 que les caractères étant affichés étaient en fait une liste de nombres.

    De nos jours, c'est beaucoup plus compliqué, mais le principe est le même.

    Que dire, dès lors, des couleurs ?
    Même principe: on garde la liste binaire précédente, et on remplace chaque 0 par la couleur noir:
    000000000000000000000000
    ou blanc:
    111111111111111111111111
    Et chaque 1 par la couleur qui te plait
    rouge vif:
    111111110000000000000000
    rouge moins vif:
    011111110000000000000000
    vert vif:
    000000001111111100000000
    vert moins vif:
    000000000111111100000000
    bleu vif:
    000000000000000011111111
    bleu moins vif:
    000000000000000001111111

    Et n'importe quel croisement de ces possibilités.

  20. #19
    babaz

    Re : "Informatique fondamentale" : système binaire...

    La façon dont tu as écrit le "A" montrait clairement où l'association graphique pouvait résider entre les et le 1.
    00000000
    00011000
    00100100
    00100100
    01111110
    01000010
    10000001
    10000001
    Mais pour ce qui est du noir transcrit en "000000000000000000000000" et toute la palette intermédiaire...

  21. #20
    invite765732342432
    Invité

    Re : "Informatique fondamentale" : système binaire...

    Citation Envoyé par babaz Voir le message
    Mais pour ce qui est du noir transcrit en "000000000000000000000000" et toute la palette intermédiaire...
    Dernière intervention pour ma part, car je finis par avoir l'impression d'entendre mon neveu de 3 ans répéter les "pourquoi"...

    L'ordinateur envoie sa liste de 0 et de 1 à l'écran. L'écran "lit" cette liste et actionne son canon à électron et fonction de ce qu'il lit (grosso-modo, plus il a de 1 dans un groupe de 8, plus il envoie d'électrons).
    Tous les 8 chiffres, il se décale d'un tiers de pixel (pour toucher la cellule colorée correspondante), donc tous les 24 chiffres, il passe au pixel suivant
    Arrivé à la fin d'une ligne, il repart au début de la suivante et continue ainsi en permanence.

    pour rigoler, un A en couleur turquoise:
     Cliquez pour afficher

  22. #21
    polo974

    Re : "Informatique fondamentale" : système binaire...

    Citation Envoyé par babaz Voir le message
    Merci pour ta réponse!

    Je ne parviens toujours pas à comprendre :

    - Comment on "impose" à un ordinateur une norme telle que l'ASCII, quel composant est chargé de la conversion de notations binaires en notations intelligibles ;
    Encore une fois, le processeur est juste bon pour faire des calculs, des tests (si 0, si positif, si négatif, et quelques rares autres), et des lectures, et rangements en mémoire. (Bien sûr, il pourra faire une suite d'opération différente suivant le résultat d'un test)
    La notion d' intelligible s'applique à l'homme. Et donc c'est entre le processeur et l'écran (ou l'imprimante) qu'il se passe des choses...
    Le programme a comme directive d'afficher un caractère, la valeur à afficher est 01000001 (le programme ne sait pas que pour nous, c'est un A). Le programme va lire dans un fichier de police de caractère le dessin n° 65 (valeur en décimal) pour l'écrire au bon endroit dans la mémoire qui est affichée à l'écran (voir un peu plus bas pour les couleurs).
    Dans tout ça, il n'y a que le(s) programmeur(s) qui savent faire le lien entre 01000001 et la lettre A.
    - Sous quelle forme la forme originelle des caractères (que l'on diversifie ensuite en polices) sont stockées jusqu'à être affichées sur nos écrans. Si l'on scrute la partie du disque dur concernée au microscope, je suppose que l'on discernera aucun caractère particulier... toutefois, il a bien fallu faire "intégrer" à nos machines ces formes, ensuite largement enrichies.
    Le programmeur a décidé (en fait, c'est son chef ou le chef du chef ) d'utiliser le codage UTF-8 (juste pour moderniser, car ASCII, c'est un peu limité...), donc tous les programmes d'affichage (enfin normalement) utilisent la même table de correspondance entre les nombres binaires et les dessins à faire. Le dessin est stocké dans la mémoire de la carte graphique au "bon endroit".
    C'est en fait un tout petit peu plus compliqué, mais c'est l'idée.
    De la même façon, je pourrais vous demander comment "on faire prendre conscience à un ordinateur" de ce qu'est une couleur, jusqu'à ce qu'une instruction "binaire" soit convertie en couleur...

    J'espère ne pas avoir été trop confus...

    Je vous remercie
    Pour les couleurs, c'est plus simple (ah bon...).
    On va parler des couleurs à l'écran car manque de pot sur l'imprimante, c'est un peu tout à l'envers, mais c'est carrement un autre gros sujet.
    Une couleur à l'écran est créée à partir de 3 couleurs fondamentales: rouge, vert et bleu (en regardant un fond blanc sur l'écran à la loupe, on le voit bien, c'est les 3 couleurs allumées à fond).

    On a décidé comme ça un jour, que (R, V, B) (0, 0, 0) c'est noir, et (255, 255, 255) (le max pour chaque octet), c'est blanc.
    C'est comme ça et pas autrement (sauf chez certains autres et quelques exceptions, mais ce n'est pas le sujet).

    Donc, on a un DAC (Digital to Analogic Converter) pour chaque couleur (R V et B), donc 3 en tout qui vont transformer le 0 numérique en 0V, et le 255 numérique en 1V (et toutes les valeurs intermédiaires en proportion). (Ces valeurs sont indicatives et font l'impasse sur d'autres détails scabreux...)

    Ces tensions sont ensuite envoyée à l'écran. L'écran les reçoit et pour 0V n'allume rien, pour 1V allume à fond.

    Oui, c'est bien beau, mais ça ne fait qu'un niveau sur tout l'écran...

    Et bien, tout comme on écrit ligne par ligne de gauche à droite et de haut en bas (sauf les chinois, les japonais, les arabes, les ... (plein de monde, en fait)), la carte graphique balaie l'écran ligne par ligne, en lisant la mémoire mémoire graphique dans la quelle est stockée pour chaque point une couleur.

    Et comme la carte graphique lit la mémoire assez vite, que l'écran suit le rythme, l'œil à l'impression d'une image stable.
    Jusqu'ici tout va bien...

  23. #22
    babaz

    Re : "Informatique fondamentale" : système binaire...

    Citation Envoyé par Faith Voir le message
    Dernière intervention pour ma part, car je finis par avoir l'impression d'entendre mon neveu de 3 ans répéter les "pourquoi"...

    L'ordinateur envoie sa liste de 0 et de 1 à l'écran. L'écran "lit" cette liste et actionne son canon à électron et fonction de ce qu'il lit (grosso-modo, plus il a de 1 dans un groupe de 8, plus il envoie d'électrons).
    Tous les 8 chiffres, il se décale d'un tiers de pixel (pour toucher la cellule colorée correspondante), donc tous les 24 chiffres, il passe au pixel suivant
    Arrivé à la fin d'une ligne, il repart au début de la suivante et continue ainsi en permanence.

    pour rigoler, un A en couleur turquoise:
     Cliquez pour afficher
    Ben merci...

  24. #23
    Towl

    Re : "Informatique fondamentale" : système binaire...

    Un ordinateur ne sait manipuler que des 0 et des 1. Et il n'y a quasiment aucun décodage, seul le code assembleur (langage machine représenté de manière humaine) permet de "parler" à un processeur.

    Prenons un exemple bidon (car extremement simplifié ) :
    tu dispose d'une carte graphique et tu souhaite allumer le pixel en 0:0 en rouge. La documentation de la programmation de la carte graphique va te dire :
    - mettre la couleur R, codée sur 8bits dans le registre 1
    - mettre la couleur G, codée sur 8bits dans le registre 2
    - mettre la couleur B, codée sur 8bits dans le registre 3
    - mettre l'axe X, codé sur 8bits, dans le registre 4
    - mettre l'axe Y, codé sur 8bits, dans le registre 5
    - executer l'interruption 0x44

    Ici on va dire que ta couleur rouge est stockée, par convention, dans le registre 1, sur 8bits (soit une valeur entre 0 et 256). Plus la valeur est élevée, plus le rouge sera "rouge" , 0 équivalent à éteind. De meme pour le Vert et bleu.

    Maintenant, prenons le cas : je veux dessiner une droite.
    La documentation va te dire :
    - mettre les coordonées de départ en regsitre 1 et registre 2
    - mettre les coordonées d'arrivée en regsitre 3 et registre 4
    - mettre l'epaisseur en registre 5
    - mettre la couleur en registre 6, 7 et 8
    - executer l'interruption 0x54

    Tu vois bien que ce que tu mets dans tes registres est extremement contextuel, tant que tu n'as pas vu l'intterruption executée, tu ne sais pas ce que va faire ton code.

    Apres comment dire cela à ton processeur : en assembleur, qui va etre converti en 0 et 1.
    Par exemple, l'instruction int 3, correspondant à l'interruption 3 (appel à un debugger sur une architecture x86), va se traduire par le code 0xCC ( soit 11001100)
    Ton processeur va voir cette suite et sera ce que cela signifie (cette instruction est cablée en dur dedans)
    De meme que pour afficher les couleurs dans l'exemple précédent, c'est codé en dur : la couleur R correspond par exemple à l'intensité à appliquer au faisceau rouge sur le pixel 0:0.

    Mais tout est convention, ton 0xCC peut tres bien représenter autre chose suivant le contexte.


    Pour l'exemple de l'ASCII, tu as une fonction qui va dire : si on me donne un octet, alors je regarde dans la table ascii à quel caractére cela correspond, puis je décide de détecter les pixel à allumer, puis j'appelle les registre de ma carte graphique pour les allumer en conséquence, pixel par pixel (bon maintenant on passe par des vecteur et autre mais l'idée est la )
    The only limiting factor of the Linux operating system, is his user. - Linus Torvalds

  25. #24
    polo974

    Re : "Informatique fondamentale" : système binaire...

    Citation Envoyé par Towl Voir le message
    ...
    Prenons un exemple bidon (car extremement simplifié ) :
    ...
    - executer l'interruption 0x44
    ...

    Là, c'est pas cool,
    en une ligne, la notion d'interruption (et en plus détournée de sa fonction primitive) et de l'héxa-décimal

    Très fort pour un exemple extrêmement simplifié !

    Pour revenir au processeur:
    Un processeur ne manipule que des nombres et des numéros (la plupart du temps représenté en binaire).
    Ces commandes ne sont repérées par lui que par un numéro.
    opération n°1 A+B
    opération n°2 A-B
    opération n°3 AouB
    et ainsi de suite.

    Tout comme je ne suis repéré par un numéro au niveau de la sécurité sociale, un autre numéro sur mon passeport et ainsi de suite.

    (un numéro est encore moins qu'un nombre, car on peut additionner des nombres, mais ça n'a aucun sens d'additionner des numéro de sécurité sociale).
    Le caractère A dans la table ASCII est repéré par le numéro 65, le B par le 66, etc...

    Le même processeur, le même ordinateur pourrait très bien faire fonctionner un programme prévu pour utiliser une table de caractère EBCDIC (un concurrent de l'ASCII). Ce ne serai que le programme qui changerait.
    Jusqu'ici tout va bien...

Discussions similaires

  1. "fondamentales", "dures", "molles" ... : comment classer les sciences ?
    Par Arvirik dans le forum Epistémologie et Logique (archives)
    Réponses: 13
    Dernier message: 22/04/2017, 22h41
  2. Modulation BPSK , rapport entre "debit de symbole" et "debit binaire" ?
    Par invite060b200d dans le forum Électronique
    Réponses: 3
    Dernier message: 06/11/2009, 14h36
Découvrez nos comparatifs produits sur l'informatique et les technologies.