Algorithmique & programmation en langage C - vol.2 - Archive
14 juil. 2015 Java est à la fois un langage de programmation et un ... concerné (par exemple INF202 pour le cours d'algorithmique et ... les examens.
Python au lycée - tome 2
découvrir de nouveaux algorithmes pour trier pour calculer en parallèle
Mathématiques
Le programme n'est pas un plan de cours et ne contient pas de 13 créer « à la main » l'algorithme du max est un bon exercice ... tionne sous Java .
Algorithmique et programmation au cycle 4
1 oct. 2017 un langage composé de 4 symboles : ? ?
Architectures Logicielles et Matérielles
L'exercice E13.5 du chapitre 12 propose de programmer cet algorithme en langage d'assemblage sparc. 2.3.1 Traceur de segments : algorithme de Bresenham.
Informatique Fondamentale
telles que les algorithmes sur les graphes la modularité
Document ressource pour lAlgorithmique
L'enseignement de l'algorithmique ne relève pas à ce niveau
Réviser son bac
Plusieurs exercices tirés des sujets récemment tombés au bac accompagnent chaque thème. A l'approche du baccalauréat 2020 et durant l'examen Le Monde.
Détection localisation et suivi des obstacles et objets mobiles à
17 nov. 2014 court ainsi le risque dans cet exercice d'arriver trop tard alors que les ... 3.3.2 Choix d'un algorithme de suivi de points .
Détection de formes compactes en imagerie: développement de
Les remerciements j'ai toujours pensé que c'était un exercice de style un peu délicat. J'en ai lu des dizaines en cherchant l'inspiration et puis
Architectures
Logicielles
etMat´erielles
P. Amblard, J.-C. Fernandez,
F. Lagnier, F. Maraninchi,
P. Sicard, Ph. Waille
2 IV IVTable des mati`eres
Introduction1
1 Qu"est-ce qu"un ordinateur? 5
1. Notion d"information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5
2. L"ordinateur : une machine qui ex´ecute . . . . . . . . . . . . . . . . . . . . . .9
3. O`u sont le mat´eriel et le logiciel? . . . . . . . . . . . . . . . . . . . . . . . . .14
4. Fonctionnalit´es des ordinateurs . . . . . . . . . . . . . . . . . . . . . . . . . .17
5. Plan du livre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20
I Outils de base de l"algorithmique logicielle
et mat´erielle 232 Alg`ebre de Boole et fonctions bool´eennes 25
1. Alg`ebre de Boole . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26
2. Fonctions bool´eennes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28
3. Repr´esentation des fonctions bool´eennes . . . . . . . . . . . . . . . . . . . . .31
4. Manipulation de repr´esentations de fonctions bool´eennes . . . . . . . . . . . .38
5. Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .46
3 Repr´esentation des grandeurs 49
1. Notion de codage d"informations . . . . . . . . . . . . . . . . . . . . . . . . .49
2. Les naturels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .51
3. Les relatifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .58
4. Lien entre l"arithm´etique et les bool´eens . . . . . . . . . . . . . . . . . . . . .64
5. Les caract`eres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .65
6. Les nombres r´eels, la virgule flottante . . . . . . . . . . . . . . . . . . . . . .66
7. Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .67
4 Repr´esentation des traitements et des donn´ees : langage d"actions 75
1. Un langage d"actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .76
2. Repr´esentation des donn´ees en m´emoire . . . . . . . . . . . . . . . . . . . . .82
3. Traduction des affectations g´en´erales en acc`es au tableauMEM. . . . . . . .90
4. Utilisation des pointeurs et gestion dynamique de la m´emoire . . . . . . . . .91
5. Piles, files et traitements associ´es . . . . . . . . . . . . . . . . . . . . . . . . .95
6. Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .96
5 Repr´esentation des traitements et des donn´ees :
machines s´equentielles 1011. Machines s´equentielles simples . . . . . . . . . . . . . . . . . . . . . . . . . . .101
2. Machines s´equentielles avec actions . . . . . . . . . . . . . . . . . . . . . . . .109
VITable des mati`eres6 Temps, donn´ees temporelles et synchronisation 1211. Interface entre un dispositif informatique et un environnement physique . . .122
2. Signaux logiques et repr´esentation par des chronogrammes . . . . . . . . . . .126
3. Probl`emes de synchronisation . . . . . . . . . . . . . . . . . . . . . . . . . . .127
4. Un exemple : la machine `a caf´e . . . . . . . . . . . . . . . . . . . . . . . . . .133
II Techniques de l"algorithmique mat´erielle 1357 De l"´electron aux dispositifs logiques 137
1. Ph´enom`enes `a l"´echelle atomique . . . . . . . . . . . . . . . . . . . . . . . . .137
2. Ph´enom`enes `a l"´echelle ´electrique . . . . . . . . . . . . . . . . . . . . . . . . .140
3. Ph´enom`enes `a l"´echelle logique . . . . . . . . . . . . . . . . . . . . . . . . . .143
4. Circuits logiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .148
5. Fabrication des dispositifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . .156
6. Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .162
8 Circuits combinatoires 165
1. Notion de circuit combinatoire . . . . . . . . . . . . . . . . . . . . . . . . . .166
2. Assemblage de blocs de base... . . . . . . . . . . . . . . . . . . . . . . . . . .173
3. Algorithmique cˆabl´ee : conception logique . . . . . . . . . . . . . . . . . . . .178
4. Etude de cas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .186
5. Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .188
9 El´ements de m´emorisation 191
1. Points de m´emorisation de bits : bascules et registres . . . . . . . . . . . . . .192
2. La m´emoire : organisation matricielle des points de m´emorisation . . . . . . .203
3. R´ealisation des m´emoires statiques . . . . . . . . . . . . . . . . . . . . . . . .207
4. Optimisations et techniques particuli`eres . . . . . . . . . . . . . . . . . . . . .210
10 Circuits s´equentiels 215
1. Notion de circuit s´equentiel . . . . . . . . . . . . . . . . . . . . . . . . . . . .216
2. Synth`ese des automates d´ecrits par leur graphe . . . . . . . . . . . . . . . . .222
3. Synth`ese des circuits s´equentiels par flots de donn´ees . . . . . . . . . . . . .233
4. Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .240
11 Conception de circuits s´equentiels par s´eparation du
contrˆole et des op´erations 2431. Principe g´en´eral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .244
2. Notion de partie op´erative type . . . . . . . . . . . . . . . . . . . . . . . . . .245
3. Partie contrˆole . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .249
4. Etudes de cas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .253
5. Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .263
III Techniques de l"algorithmique logicielle 267
12 Le langage machine et le langage d"assemblage 269
1. Le langage machine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .270
2. Le langage d"assemblage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .296
3. Traduction du langage d"assemblage en langage machine . . . . . . . . . . . .302
4. Un exemple de programme . . . . . . . . . . . . . . . . . . . . . . . . . . . .302
5. Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .308
Table des mati`eresVII13 Traduction des langages `a structure de blocs en langage d"assemblage 3131. Cas des programmes `a un seul bloc . . . . . . . . . . . . . . . . . . . . . . . .314
2. Cas des programmes `a plusieurs blocs . . . . . . . . . . . . . . . . . . . . . .319
3. Traduction en langage d"assemblage : solutions globales . . . . . . . . . . . .334
4. Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .343
IV A la charni`ere du logiciel et du mat´eriel... 34914 Le processeur : l"interpr`ete cˆabl´e du langage machine 351
1. Les principes de r´ealisation . . . . . . . . . . . . . . . . . . . . . . . . . . . .352
2. Exemple : une machine `a 5 instructions . . . . . . . . . . . . . . . . . . . . .355
3. Une r´ealisation du processeur . . . . . . . . . . . . . . . . . . . . . . . . . . .356
4. Critique et am´elioration de la solution . . . . . . . . . . . . . . . . . . . . . .360
5. Extensions du processeur . . . . . . . . . . . . . . . . . . . . . . . . . . . . .364
6. Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .367
V Architecture d"un syst`eme mat´eriel
et logiciel simple 375Un syst`eme mat´eriel et logiciel simple 377
15 Relations entre un processeur et de la m´emoire 381
1. Le bus m´emoire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .381
2. Utilisation de plusieurs circuits de m´emoire . . . . . . . . . . . . . . . . . . .385
3. Acc`es `a des donn´ees de tailles diff´erentes . . . . . . . . . . . . . . . . . . . . .389
4. Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .395
16 Circuits d"entr´ees/sorties 397
1. Notion d"entr´ees/sorties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .397
2. Synchronisation entre le processeur et un p´eriph´erique . . . . . . . . . . . . .399
3. Connexion d"organes p´eriph´eriques . . . . . . . . . . . . . . . . . . . . . . . .400
4. Programmation d"une sortie . . . . . . . . . . . . . . . . . . . . . . . . . . . .402
5. Programmation d"une entr´ee . . . . . . . . . . . . . . . . . . . . . . . . . . .408
6. Optimisation des entr´ees/sorties group´ees . . . . . . . . . . . . . . . . . . . .409
7. Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .415
17 Pilotes de p´eriph´eriques 417
1. Structure d"un pilote de p´eriph´erique . . . . . . . . . . . . . . . . . . . . . . .418
2. Pilote pour un clavier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .419
3. Pilote pour un disque . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .423
4. Pour aller plus loin... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .432
18 Vie des programmes 435
1. Interpr´etation et compilation . . . . . . . . . . . . . . . . . . . . . . . . . . .436
2. Compilation s´epar´ee et code translatable . . . . . . . . . . . . . . . . . . . . .442
3. Format des fichiers objets translatables et ´edition de liens . . . . . . . . . . .454
19 Syst`eme de gestion de fichiers 463
1. Situation du syst`eme de gestion de fichiers . . . . . . . . . . . . . . . . . . . .465
2. Structure des donn´ees et influence sur l"implantation . . . . . . . . . . . . . .466
3. Implantation dispers´ee sur un disque . . . . . . . . . . . . . . . . . . . . . . .470
4. Noms externes et autres informations attach´ees aux fichiers . . . . . . . . . .476
VIIITable des mati`eres5. Etude de quelques fonctions du syst`eme de gestion de fichiers . . . . . . . . .477
20 D´emarrage du syst`eme, langage de commandes et interpr`ete 483
1. D´emarrage du syst`eme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .484
2. M´ecanisme de base : le chargeur/lanceur . . . . . . . . . . . . . . . . . . . . .485
3. Programmation de l"interpr`ete de commandes . . . . . . . . . . . . . . . . . .495
4. Fonctions ´evolu´ees des interpr`etes de commandes . . . . . . . . . . . . . . . .501
VI Architecture des syst`emes mat´eriels
et logiciels complexes 50321 Motivations pour une plus grande complexit´e 505
1. Qu"appelle-t-on syst`eme complexe? . . . . . . . . . . . . . . . . . . . . . . . .505
2. Scrutation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .507
3. M´ecanisme d"interruption : d´efinition et types d"utilisations . . . . . . . . . .508
4. Plan de la suite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .510
22 Le m´ecanisme d"interruption 511
1. Architecture d"un processeur pour la multiprogrammation . . . . . . . . . . .511
2. Introduction d"un m´ecanisme de scrutation ´el´ementaire . . . . . . . . . . . . .515
3. Un exemple d´etaill´e d"utilisation : mise `a jour de la pendule . . . . . . . . . .521
4. Notion de concurrence et d"atomicit´e des op´erations . . . . . . . . . . . . . .528
5. Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .530
23 Partage de temps et processus 531
1. Principe et d´efinitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .531
2. Structures de donn´ees associ´ees aux processus . . . . . . . . . . . . . . . . . .536
3. Organisation du traitant de commutation . . . . . . . . . . . . . . . . . . . .539
4. Cr´eation et destruction de processus . . . . . . . . . . . . . . . . . . . . . . .546
5. Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .550
24 G´en´eralisation du m´ecanisme d"interruption et applications 551
1. Classification des diff´erentes sources d"interruption . . . . . . . . . . . . . . .552
2. Protection entre processus, notion de superviseur . . . . . . . . . . . . . . . .559
3. Entr´ees/sorties g´er´ees par interruption . . . . . . . . . . . . . . . . . . . . . .565
4. Pour aller plus loin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .570
Index571
Bibliographie 577
Introduction
Ce qu"on trouvera dans ce livre
Ce livre suit d"assez pr`es l"enseignement dispens´e en Licence d"informatique `a l"Universit´e Joseph Fourier de Grenoble. L"enseignement a le mˆeme titre : Architectures Logicielles et Mat´erielles. Il est dispens´e en environ 150 heures de cours, Travaux Dirig´es et Travaux Pratiques. L"objectif est d"expliquer `a de futurs sp´ecialistes d"informatique le fonction- nement de l"ordinateur. Pour cela nous faisons un certain nombre de choix, nous prenons parti. Pourcomprendrele fonctionnement, il faut se placer du point de vue du concepteurd"ordinateur. Le lecteur trouvera donc dans ce livre une d´emarche de conception de machines. Il ne s"agit pourtant pas de lui faire croire au r´ealisme de cette conception. En effet la v´eritable conception d"une machine, c"est-`a-dire de son mat´eriel - du microprocesseur `a la m´emoire, en passant par la carte gra- phique - et de son logiciel - du syst`eme d"exploitation aux compilateurs - repr´esente des centaines de milliers d"heures de travail de sp´ecialistes. Nous ne d´ecrivons qu"une partie du travail, en choisissant les points qui nous semblent les plus significatifs dans cette conception. D"autre part nous insistons sur les liaisons entre diff´erents aspects de la conception. En particulier, l"une des id´ees fortes de ce livre est l"´etroite compl´ementarit´e des aspects logiciels et mat´eriels des ordinateurs. L"id´ee centrale, et le chapitre central de ce livre, montrent donc comment du mat´eriel ex´ecute du logiciel. Le contenu de ce livre ne devrait pas se p´erimer, sauf si des principes vraiment nouveaux apparaissent en informatique et se g´en´eralisent.Ce qu"on ne trouvera pas dans ce livre
En revanche ce livre ne d´ecrit pas les aspects les plus avanc´es utilis´es dans les machines actuelles. Ces aspects font l"objet d"enseignements sp´ecifiques de syst`emes d"exploitation, de compilation ou d"architectures des machines, dans lesquels, en g´en´eral, on ne se pr´eoccupe que d"un aspect. Ce livre constitue un pr´erequis pour de tels enseignements car il montre les relations entre les 3 domaines.2IntroductionParmi les th`emes tr`es int´eressants que nous avons d´elib´erement ´ecart´es (et
r´eserv´es pour le tome 2!) figurent :-L"´etude fine des fonctionnalit´es d"un syst`eme d"exploitation particulier.
Beaucoup de nos r´ef´erences sont inspir´ees d"unix1.-L"´etude de la hi´erarchie m´emoire (cache et m´emoire virtuelle), que nous
passons totalement sous silence.-L"´etude d´etaill´ee d"un langage d"assemblage d"un processeur donn´e. Beau-
coup de nos r´ef´erences sont inspir´ees dusparc2ou du Motorola 680003.-L"´etude des techniques de conception de circuits micro-´electroniques. Par
exemple nous ne parlons ni de consommation, ni de circuits asynchrones.-L"´etude des techniques d"optimisation des performances des proces-
seurs. Nous ne d´eveloppons pas les techniques de pipeline, ni celles der´eordonnancement dynamique du flot d"ex´ecution des instructions.-Les entr´ees/sorties tr`es particuli`eres que constituent les acc`es d"un ordina-
teur `a un r´eseau, ce qui demanderait un d´eveloppement sp´ecifique.Comment lire ce livre?
M´ethode de travail
On peut lire ce livre comme un roman, de la premi`ere `a la derni`ere page. On peut ´egalement le lire avec une salle de Travaux Pratiques `a port´ee de la main, pour essayer toutes les techniques ´evoqu´ees, les comparer, les analyser en d´etail, etc. On peut essayer de r´esoudre tous les exercices et envoyer les solutions aux auteurs, qui se feront un plaisir de les corriger : Paul.Amblard@imag.fr Jean-Claude.Fernandez@imag.fr Fabienne.Lagnier@imag.fr Florence.Maraninchi@imag.frPascal.Sicard@imag.fr Philippe.Waille@imag.fr
On peut enfin essayer de trouver des erreurs, de fond et de forme, et on y parviendra certainement.Th`emes
On peut privil´egier une approche centr´ee sur les langages de programma- tion, leur traduction et la fa¸con dont ils sont ex´ecut´es. Sur la figure 0.1 cela correspond aux fl`eches en traits gras.1 marque d´epos´ee, et dans la suite de l"ouvrage nous ne pr´eciserons plus que les noms de syst`emes et de machines sont, ´evidemment, d´epos´es.2marque d´epos´ee
3marque d´epos´ee
Introduction320 : Interpr`ete
de commandes18 : Vie des programmesdonn´ees4 5 : Repr´esentation
des traitements et15 : Liaisons m´emoire
processeur7 : Electronique8 : Circuits
combinatoires9 : El´ements de m´emorisation2 : Alg`ebre de Boole6 : Aspects temporels
14 : LE PROCESSEUR1 : L"ORDINATEUR
10 11 : Circuits
s´equentielsdes grandeurs3 : Repr´esentation
19 : Gestion de fichiers
16 17 : Mat´eriel et
logiciel d"entr´ees / sorties21 `a 24 :Syst`eme complexe
ProcessusInterruptionsmachine et
d"assemblage12 13 : Langages Fig.0.1 - Relations de d´ependance des principales id´ees utilis´ees dans les 24 chapitres. La zone gris´ee correspond plutˆot au monde du logiciel, la zone blanche au mat´eriel.4IntroductionOn peut privil´egier une approche de conception des circuits digitaux et
d"architecture de machine. Sur la figure 0.1 cela correspond aux fl`eches en traits larges et hachur´es. On peut privil´egier une approche centr´ee sur l"architecture de haut niveau et les syst`emes d"exploitation. Sur la figure 0.1 cela correspond aux fl`eches en traits pointill´es. Il n"en reste pas moins que les auteurs ont cherch´e `a mettre l"accent sur la globalit´e et la compl´ementarit´e des 3 approches. Index Les mots en italique apparaissent souvent en index. Dans l"index, les num´eros de page en gras indiquent les occurrences de d´efinition des mots. Les autres num´eros indiquent des occurrences d"utilisation des mots, parfois ant´erieures `a leur d´efinition, parfois post´erieures.Remerciements
Les id´ees, principes, techniques, outils, m´ethodes, pr´esent´es dans ce livre ne sont pas les r´esultat de nos d´ecouvertes. Nous avons re¸cu des enseigne- ments, puis nous avons lu, essay´e, enseign´e. Sans ceux qui nous ont pr´ec´ed´es ce livre n"existerait pas. Sans celles et ceux qui ont enseign´e avec nous le mo- duleArchitectures Logicielles et Mat´eriellesau fil des ann´ees il serait sans doute plus pauvre. En particulier Catherine, Danielle, Jo¨elle, Jean-Louis et Jean-Paul reconnaˆıtront certaines de leurs bonnes influences. Les mauvaises viennent d"ailleurs!Chapitre 1
Qu"est-ce qu"un ordinateur?
Unordinateurest une machine, presque toujours ´electronique, qui ex´ecute des programmes. Ces programmes traitent des donn´ees. Une machine ´electronique est un objet. Par opposition, les programmes et les donn´ees sont des informations. Cette opposition est celle qui existe entremat´erieletlogi- ciel. L"ensemble du livre est consacr´e `a montrer de fa¸con d´etaill´ee comment ces deux univers se rencontrent pour former l"architecturede l"ordinateur. Dans ce premier chapitre, nous faisons un tr`es rapide survol permettant de situer lesnotions avant de les d´ecrire de fa¸con d´etaill´ee.Le paragraphe 1. d´ecrit ce qu"est une information et sa repr´esentation.
Cela nous permet de parler de programmes. Puis nous d´ecrivons une machine `a ex´ecuter les programmes et nous insistons sur la notion d"ex´ecution dans le paragraphe 2. Cela nous permet au paragraphe 3. de montrer les diff´erents mat´eriels et logiciels pr´esents dans l"ordinateur. Nous ´evoquons enfin les usages de l"ordinateur au paragraphe 4.1. Notion d"information
Uneinformationest une entit´e abstraite, li´ee `a la notion de connaissance. Nous nous int´eressons naturellement aux informations d"un point de vue tech- nique en informatique, non d"un point de vue journalistique. Nous donnons diff´erentes facettes de l"information et s´eparons l"´etude des informations de celle des objets.1.1 Quelques aspects d"une information
Nous avons besoin pour cerner la notion d"information de donner l"origine possible d"une information et de montrer la n´ecessit´e de ses repr´esentations pour pouvoir envisager les manipulations d"informations dans les ordinateurs.6Qu"est-ce qu"un ordinateur?1.1.1 Origine d"une information
Une information peut ˆetre en relation avec une grandeur physique, l"ori- gine ´etant par exemple m´ecanique (forme, dimensions, emplacements d"objets, intensit´e d"une force), ´electromagn´etique (amplitude, fr´equence ou phase d"un signal ´electrique, d"une onde ´electromagn´etique), ´electrochimique (PH d"un liquide, potentiel ´electrochimique d"une cellule nerveuse).1.1.2 Nom, valeur et combinaison d"informations
Une information a unnom: "la temp´erature mesur´ee au sommet de la Tour Eiffel", "le caract`ere tap´e au clavier", "le montant de mon compte en banque". Une information a unevaleur`a un certain moment : 37 degr´es, "A", 5 000 F. La pluspetiteinformation possible est une r´eponse par oui ou par non (on parle de r´eponsebool´eenne) : le nombre est pair ou impair, le caract`ere est une lettre ou pas une lettre, le point de l"´ecran est allum´e ou ´eteint, la lettre est une majuscule ou non, la touche de la souris est enfonc´ee ou non. Une telle petite information constitue unbit. L"ensemble des valeurs possibles peut ˆetre fini (comme pour les caract`eres), ou potentiellement infini (comme pour mon compte en banque!). Un en- semble infini de valeurs peut pr´esenter des variationscontinues, c"est-`a-dire qu"entre deux valeurs possibles il y a une valeur possible. C"est le cas pour la temp´erature. Les variations sontdiscr`etesdans le cas contraire. Le solde de mon compte en banque peut ˆetre de 123,45 F ou de 123,46 F, mais pas d"une valeur entre les deux, car la banque arrondit les sommes au centime le plus proche. Diff´erentes informations peuvent se combiner soit dans l"espace (les mon- tants des comptes en banque de diff´erents clients) soit dans le temps (l"histo- rique des variations de mon compte). Les combinaisons dans l"espace contiennent un nombre fini d"´el´ements. En revanche un syst`eme informatique traite des informations qui peuvent varier un nombre non born´e de fois au fil du temps. Il suffit de maintenir le syst`eme en ´etat de marche.1.1.3 Repr´esentation et codage
Une information a unerepr´esentationsous forme de grandeur(s) phy- sique(s) associ´ee `a une convention, oucode, d"interpr´etation. Si une information est repr´esent´ee dans un code inconnu, elle n"est pas compr´ehensible. La grandeur physique peut ˆetre la position d"une aiguille sur un appareil de mesure. On passe parfois par une repr´esentation interm´ediaire sous forme de suite de lettres et de chiffres, repr´esent´es `a leur tour par une grandeur physique (traces sur un papier par exemple). Pour l"aiguille sur un cadran on parle de repr´esentationanalogique; si l"interm´ediaire des chiffres est mis en jeu on parle de repr´esentationnum´eriqueoudigitale. Cette diff´erence se retrouve1. Notion d"information7entre les disques anciens et les disques compacts. Il est parfois n´ecessaire de
r´ealiser par un dispositif ´electronique uneconversionentre ces deux types de repr´esentation. Un chiffrebinaire, 0 ou 1, suffit `a repr´esenter un bit. Unvecteur de bits constitue unmot. Les mots de 8 bits sont desoctets. Une mˆeme information peut ˆetre repr´esent´ee dans l"ordinateur de fa¸cons diverses : le caract`ere frapp´e au clavier est d"abord connu comme un couple de coordonn´ees d"une touche au clavier (la touche en deuxi`eme colonne de la troisi`eme ligne), puis par une s´equence de variations de potentiel sur une ligne ´electrique liant le clavier et l"ordinateur (combinaison temporelle), puis par un vecteur de chiffres binaires dont les composantes sont les unes `a cˆot´e des autres en m´emoire (combinaison spatiale), puis par une repr´esentation sous forme de matrice de points allum´es/´eteints sur l"´ecran. Pour les informations structur´ees complexes (en raison des combinaisons) le codage constitue unlangage. Les programmes sont ´ecrits dans des langages de programmation, les figures sont d´ecrites dans des langages de description de figures, etc. Dans le langage courant on assimile souvent l"information, sa valeur, sa repr´esentation.1.2 Utilisation des informations dans l"ordinateur
Dans les ordinateurs les informations sont m´emoris´ees, transmises et trait´ees. Nous retrouvons cette triple fonction dans le paragraphe 3.1.3 En informatique l"association du nom d"une information et de la repr´esentation de la valeur constitue unevariable.1.2.1 Stockage (ou m´emorisation) des informations
On peut copier, c"est-`a-dire cr´eer un nouvel exemplaire de l"information en lui associant un nouveau repr´esentant physique. Mais c"est toujours la mˆeme information : elle est simplement mat´erialis´ee plusieurs fois. On peut aussi d´etruire un exemplaire de l"information : elle disparaˆıtra avec son dernier repr´esentant. Une information est stock´ee dans unem´emoiresi on ne veut pas qu"elle disparaisse.1.2.2 Transmission des informations
Les informations trait´ees dans l"ordinateur peuvent provenir de disposi- tifs mat´eriels (capteur de temp´erature par exemple). Elles peuvent provenir d"un utilisateur via un clavier, une souris, ...Une information sortante, sous la forme d"une tension sur un fil ´electrique, peut influencer un mat´eriel par l"interm´ediaire d"un actionneur, comme un d´eclencheur d"alarme. Diff´erents syst`emes d"interfacepermettent `a l"ordinateur de communiquer avec le monde ext´erieur.8Qu"est-ce qu"un ordinateur?Les informations peuvent ˆetre transmises d"un point `a un autre. Des liai-
quotesdbs_dbs45.pdfusesText_45[PDF] algorithme de calcul, écrire lalgorithme dun calcul correspondant 3ème Mathématiques
[PDF] algorithme de chiffrement des PDF Cours,Exercices ,Examens
[PDF] algorithme de deux point aet b du milieu i (urgent,avant le lundi 5 decembre svp ) 2nde Mathématiques
[PDF] algorithme de dichotomie algobox PDF Cours,Exercices ,Examens
[PDF] algorithme de dichotomie en seconde PDF Cours,Exercices ,Examens
[PDF] algorithme de dichotomie premiere s PDF Cours,Exercices ,Examens
[PDF] algorithme de dichotomie scilab PDF Cours,Exercices ,Examens
[PDF] algorithme de dichotomie seconde PDF Cours,Exercices ,Examens
[PDF] algorithme de dichotomie terminale s PDF Cours,Exercices ,Examens
[PDF] Algorithme de dichotomie, encadrement damplitude
[PDF] algorithme de dijkstra PDF Cours,Exercices ,Examens
[PDF] algorithme de dijkstra exercice corrigé PDF Cours,Exercices ,Examens
[PDF] algorithme de ford plus long chemin PDF Cours,Exercices ,Examens
[PDF] Algorithme de héron Terminale Mathématiques