241 pages
Français

Vous pourrez modifier la taille du texte de cet ouvrage

Découvre YouScribe en t'inscrivant gratuitement

Je m'inscris

Leçons sur l'informatique , livre ebook

-

Découvre YouScribe en t'inscrivant gratuitement

Je m'inscris
Obtenez un accès à la bibliothèque pour le consulter en ligne
En savoir plus
241 pages
Français

Vous pourrez modifier la taille du texte de cet ouvrage

Obtenez un accès à la bibliothèque pour le consulter en ligne
En savoir plus

Description

Richard Feynman était un calculateur prodige. Dans le Projet Manhattan, il fut chargé du calcul à la main de l’énergie libérée par l’explosion d’une bombe atomique. Il connaissait mieux que personne les possibilités et les limites du calcul électronique. Dans ces leçons, il expose les bases de l’informatique : les machines de Türing, l’architecture des ordinateurs, la théorie du calcul informatique, la théorie du codage et de l’information. Il livre aussi ses réflexions sur les relations profondes entre physique et informatique : thermodynamique, ordinateurs quantiques et physique des semi-conducteurs. On retrouve ici avec délectation le style brillant et humoristique de Feynman. Richard Feynman, prix Nobel de physique en 1965, était professeur de physique théorique au California Institute of Technology. Les éditions Odile Jacob ont notamment publié ses célèbres Leçons sur la physique et ses Leçons sur la gravitation.

Sujets

Informations

Publié par
Date de parution 21 septembre 2006
Nombre de lectures 75
EAN13 9782738183040
Langue Français
Poids de l'ouvrage 2 Mo

Informations légales : prix de location à la page 0,1000€. Cette information est donnée uniquement à titre indicatif conformément à la législation en vigueur.

Extrait

OUVRAGE TRADUIT AVEC LE CONCOURS DU CENTRE NATIONAL DU LIVRE
Ouvrage original paru sous le titre Lectures on Computation chez Addison-Wesley publishing company, Inc.
Copyright © 1996 by Carl R. Feynman and Michelle Feynamn Foreword and Afterword : Copyright © 1996 by Athony J.G. Hey and Robin W. Allen
Pour la traduction française : © Odile Jacob, septembre 2006
15, rue Soufflot, 75005 Paris
www.odilejacob.fr
ISBN 978-2-7381-8304-0
Le code de la propriété intellectuelle n'autorisant, aux termes de l'article L. 122-5 et 3 a, d'une part, que les « copies ou reproductions strictement réservées à l'usage du copiste et non destinées à une utilisation collective » et, d'autre part, que les analyses et les courtes citations dans un but d'exemple et d'illustration, « toute représentation ou réproduction intégrale ou partielle faite sans le consentement de l'auteur ou de ses ayants droit ou ayants cause est illicite » (art. L. 122-4). Cette représentation ou reproduction donc une contrefaçon sanctionnée par les articles L. 335-2 et suivants du Code de la propriété intellectuelle.
Ce document numérique a été réalisé par Nord Compo
Sommaire
Couverture
Titre
Copyright
LEÇON 1 - Les ordinateurs : introduction
1.1 Le modèle du préposé au classement
1.2 Jeux d’instructions
1.3 Résumé
LEÇON 2 - De l’organisation des ordinateurs
2.1 Portes et logique combinatoire
2.2 Le décodeur binaire
2.3 D’autres portes : les portes réversibles
2.4 Ensembles complets d’opérateurs
2.5 Bascules bi-stables et mémoire informatique
2.6 Synchronisation et registres à décalage
LEÇON 3 - La théorie du calcul informatique
3.1 Procédures effectives et calculabilité
3.2 Les machines à états finis
3.3 Les limites des machines à états finis
3.4 Machines de Turing
3.5 Étude plus poussée des machines de Turing
3.6 Machines de Turing universelles et problème de l’arrêt
3.7 Calculabilité
LEÇON 4 - Codage et théorie de l’information
4.1 Informatique et théorie de la communication
4.2 Détection des erreurs et correction des codes
4.3 Théorème de Shannon
4.4 La géométrie de l’espace message
4.5 Information et compression des données
4.6 Théorie de l’information
4.7 D’autres techniques de codage
4.8 Transmission de signaux analogiques
LEÇON 5 - Réversibilité et thermodynamique du calcul informatique
5.1 La physique de l’information
5.2 Réversibilité et thermodynamique du calcul informatique
5.3 Calcul informatique : vitesse et coût énergétique
5.4 L’ordinateur réversible
5.5 L’ordinateur balistique, ou l’ordinateur à boules de billard
5.6 Calcul quantique
LEÇON 6 - Ordinateurs quantiques
6.1 Introduction
6.2 Calcul avec une machine réversible
6.3 Un ordinateur quantique
6.4 Imperfections et perte d’énergie libre irréversible
6.5 Comment simplifier la réalisation
6.6 Conclusions
Bibliographie
LEÇON 7 - Aspects physiques de l’informatique
7.1 La physique des semi-conducteurs
7.2 Énergie consommée et perte de chaleur dans les ordinateurs
7.3 Construction de circuits VLSI
7.4 Autres limitations à la conception des ordinateurs
Suggestions de lectures
Leçons 1, 2, 3
Leçon 4
Leçon 5
Leçon 6
Leçon 7
Index
LEÇON 1

Les ordinateurs : introduction

Les ordinateurs peuvent faire tout un tas de choses. Ils sont capables d’additionner des millions de nombres en un clin d’œil. Ils peuvent vaincre les plus grands maîtres d’échecs. Certains guident des missiles jusqu’à leur cible, d’autres nous permettent de réserver dans l’avion une place non-fumeur, entre une religieuse férue de guitare et un professeur de physique. Certains peuvent même jouer du bongo... autant dire que c’est plutôt varié ! Donc, si nous devons étudier les ordinateurs, mieux vaut sélectionner tout de suite ceux d’entre eux qui nous intéresseront, et en quoi.
En fait, nous ne nous attarderons pas longtemps sur les machines elles-mêmes. En effet, l’inspection des entrailles d’un ordinateur révèle qu’à l’instar des êtres humains, ces engins se ressemblent tous plus ou moins. Ils pourront se distinguer par leur fonction, par la nature de leurs données d’entrée ou de sortie — l’un fera de la musique et l’autre du dessin, certains pourront être commandés par un clavier, d’autres par le couple moteur des roues d’une voiture — mais dans le fond, tous sont très semblables. Nous ne nous intéresserons donc qu’à leurs entrailles. En outre, nous ne ferons aucune hypothèse sur leurs structures d’entrée et de sortie, ni sur la manière dont l’information entre et sort de la machine. Tout ce qui nous intéressera, quelle que soit la ma nière dont la donnée d’entrée est fournie à la machine, c’est qu’elle le soit sous forme numérique ; de même, quel que soit le signal de sortie quittant les entrailles de l’ordinateur, nous demanderons uniquement qu’il s’agisse d’un signal numérique. J’entends par là un nombre binaire : une série de 0 et de 1.
À quoi ressemblent les entrailles d’un ordinateur ? Grosso modo, disons que la machine est construite à partir d’un ensemble d’éléments simples. Ces derniers n’ont rien de particulier (ils pourraient être des valves de contrôle, par exemple, ou des perles sur les fils d’un boulier) et il existe un large choix de possibilités pour l’ensemble élémentaire. Tout ce qui compte, c’est que nous puissions les utiliser pour tout construire. Comment s’agencent-ils ? Ici encore, les choix sont nombreux ; la meilleure structure sera sélectionnée en fonction, par exemple, de la vitesse, de la dissipation d’énergie, de l’esthétique ou de ce qui nous passera par la tête. À cet égard, la diversité des ordinateurs s’apparente un peu à la diversité des habitations : à première vue, nous dirions d’un immeuble hausmannien qu’il n’a rien de commun avec un hangar à bateaux. Et pourtant, tous deux sont construits à partir des mêmes éléments (briques, mortier, bois, huile de coude) ; certes, il en faudra plus pour édifier un immeuble hausmannien, et il faudra les agencer différemment suivant les besoins de ses occupants. Mais au fond, ces deux édifices ont beaucoup de points communs.
Restons dans l’abstrait pour le moment et posons-nous la question de savoir comment câbler un ensemble de tels ou tels éléments afin qu’il accomplisse le plus de choses possible. Voilà une question qui peut sembler fondamentale. Et pourtant, ici encore, j’y répondrai en disant que, dans une certaine mesure, cela importe peu. Un ordinateur sachant faire un certain nombre de choses (ou, plus rigoureusement, une machine possédant un certain « ensemble suffisant » de procédures élémentaires), effectuera à peu près les mêmes tâches que n’importe quel autre. Voilà en gros l’essence du grand « principe d’universalité ». « Holà ! pas si vite, vous écriez-vous, ma calculette de poche est incapable de faire des simulations concernant Jupiter comme une armée de super-calculateurs Cray ! » Eh bien, si : il faudrait la réorganiser un peu, gonfler sa mémoire... certes, elle serait terriblement lente, mais avec suffisamment de temps, votre calculette pourrait reproduire n’importe quel calcul mené par un Cray. Plus généralement, imaginons deux ordinateurs A et B, et supposons que nous connaissions A sur le bout des doigts (nous savons comment il fonctionne, nous connaissons ses « règles de changement d’état », et ainsi de suite). Supposons que la machine B soit capable de décrire plus ou moins l’état de A. Nous pouvons alors utiliser B pour simuler le fonctionnement de A en décrivant ses changements d’état successifs. Autrement dit, B imiterait la machine A. Cela prendrait une éternité dans le cas de figure d’une machine B rudimentaire et d’un ordinateur A très sophistiqué, mais au bout du compte, B pourra reproduire tout ce que fait A. Nous en ferons la preuve un peu plus loin dans le cours, lorsque nous nous intéresserons à la conception d’ordinateurs tels que B, connus sous le nom de « machines de Turing ».
Abordons la question de l’universalité sous un autre angle. Le langage fournit une bonne analogie. Posons-nous la question de savoir comment désigner au mieux un objet donné ? Disons... un véhicule à essence, muni de quatre roues. Bien sûr, dans la plupart des langues, ou tout du moins dans les langues occidentales, il existe un mot pour désigner cet engin : nous dirions voiture , les Anglo-Saxons disent car , les Italiens machina et ainsi de suite. Toutefois certaines langues, dans leur évolution, n’ont pas eu besoin d’un mot pour dire voiture , et les natifs de ces langues-ci auront à inventer une description, sûrement longue et compliquée, à partir de leurs éléments linguistiques de base. Et pourtant, aucune de toutes ces descriptions n’est intrinsèquement « meilleure » qu’une autre : toutes font leur boulot, et seule l’efficacité les distingue. Inutile d’introduire une démocratie des mots. Poursuivons jusqu’aux alphabets. Quel serait, par exemple, le meilleur alphabet pour la langue française ? J’entends par là : pourquoi nous cantonner à nos vingt-six lettres habituelles ? Tout ce que nous pouvons faire avec ces vingt-six lettres, nous le faisons tout aussi bien à l’aide de trois symboles seulement (je pense à l’alphabet morse : point, tiret, espace), voire même deux (par exemple dans le code télégraphique Bacon, où les lettres A à Z sont représentées par des nombres binaires à cinq chiffres). Nous avons donc beaucoup de liberté dans le choix de notre ensemble fondamental d’éléments, et ce choix n’affecte que l’efficacité de notre langage, le poids de nos livres : il n’existe pas d’alphabet ou de langage « meilleur » que les autres ; chacun est universel dans sa logique et chacun peut imiter tous les autres. Pour revenir aux ordinateurs, le principe d’universalité énonce en fait que l’ensemble des besognes compliquées que peut effectuer un « ensemble suffisant » de procédures élémentaires est indépendant du détail de la structure de cet ensemble de base.
Afin que les ordinateurs d’aujourd’hui puisse

  • Univers Univers
  • Ebooks Ebooks
  • Livres audio Livres audio
  • Presse Presse
  • Podcasts Podcasts
  • BD BD
  • Documents Documents
Alternate Text