Page 1
CHAPITRE1
Introductionàl’informatique
Introduction:
L'informatique est la science du traitement des informations avec des moyens
électroniques, elle est conçue pour servir les humains. Elle s'occupe d'enregistrer, stocker,
traiter,organiser,transféreretprésenterlesinformationssousuneformeutilisable.
Unordinateurestunemachinedetraitementdel'information.Ilestcapabled'acquérirde
l'information,delastocker,delatransformereneffectuantdestraitementsquelconques,puis
delarestituersousuneautreforme.
Lemotinformatiquevientdelacontractiondesmotsinformationetautomatique.
Ilsignifieletraitementetl’analyseautomatiquedel’information
Unetrèsbrèvehistoiredel'informatique:
Avant1900:
Les machines à calculer sont utilisées depuis des milliers d'années : on trouvait
probablementdesabaquesàBabyloneen3000avantnotreère.LesGrecsont fabriquédes
calculateurs analogiques très perfectionnés. En 1901, au large de l'île d'Antikythera, on a
découvertuneépavedanslaquellesetrouvait,encroûtédesel,unassemblaged'engrenages
rouillés (le mécanisme d'Antikythera), daté d'environ 80 avant notre ère, que l'on a
reconstruit:ilservaitàprédirelesmouvementsdesastres.
L'Ecossais JohnNapier (1550‐1617), l'inventeur des logarithmes, fabriqua vers 1610 les
règlesdeNapierpoursimplifierlamultiplication.
En 1641, Blaise Pascal (1623‐1662) construisit une machine à additionner. Un travail
analoguefutréaliséparGottfriedWilhelmLeibniz(1646‐1716),quipréconisal'utilisationdu
systèmebinairepour les calculs.Ona récemmentdécouvertqueWilhelmSchickard (1592‐
1635), professeur à l'UniversitédeTübingen, avait construit unemachinede ce genre vers
1623ou1624(avantPascaletLeibniz),qu'ildécrivitbrièvementdansdeuxlettresàJohannes
Kepler.Malheureusement,lamachinebrûladansunincendie,etSchickardlui‐mêmemourut
delapestebuboniqueen1635,durantlaGuerredeTrenteAns.
Page 2
Joseph‐Marie Jacquard (1752‐1834) inventa un métier à tisser dont les motifs était
indiquéspardescartonsperforés.CharlesBabbage(1792‐1871)construisitdeuxmachines:
lamachinedifférentielle(exposéeauScienceMuseumdeLondres)etlamachineanalytique,
beaucoupplusambitieuse(unprécurseurdel'ordinateur),maisaucunedesdeuxnemarchait
correctement.(Babbage,quel'undesesbiographestraitede«génieirascible»,étaitunpeu
bizarre.Onignoregénéralementqu'ilestl'inventeurdeladendrochronologie,oudatationdes
arbres; il nepoursuivitpas ses recherches à ce sujet.Devenuvieux, il consacraunegrande
partiedesontempsàpersécuterlesjoueursd'orguedeBarbarie.)
Une amie de Babbage, Ada Byron, comtesse de Lovelace (1815‐1852), est parfois
considérée comme lepremierprogrammeur de l'Histoire, en raison d'un rapport qu'elle
écrivit sur lamachinedeBabbage. (Le langagedeprogrammationAdaaéténomméenson
honneur.)
L'économiste et logicien anglais William Jevons (1835‐1882) construisit en 1869 une
machineàrésoudredesproblèmesdelogique:«lapremièremachinesuffisammentpuissante
pourrésoudreunproblèmecompliquéplusrapidementqu'à lamain»(MartinGardner).La
machinesetrouveactuellementauMuseumoftheHistoryofScienced'Oxford.
LestatisticienaméricainHermanHollerith(1860‐1929)inventalacarteperforéemoderne
pourl'utiliserdansunemachinedestinéeàanalyserlesrésultatsdurecensementde1890.
1900‐1939:l'avancéemathématique:
L'étudedesmachinesàcalculersepoursuivait.Onconstruisitdesmachinesdestinéesàune
utilisation particulière: ainsi, en 1919, le lieutenant d'infanterie E. Carissan (1880‐1925)
conçut et réalisa une merveilleuse machine à factoriser les entiers. L'Espagnol Leonardo
TorresyQuevedo(1852‐1936)construisitplusieursmachinesélectromécaniques,dontl'une
quijouaitdesfinsdepartiesd'échecs.
En 1928, le mathématicien David Hilbert (1862‐1943) posa trois questions au Congrès
International des Mathématiciens : (1) Les mathématiques sont‐elles complètes ? (tout
énoncémathématiquepeut‐ilêtresoitprouvé,soitréfuté?)(2)Lesmathématiquessont‐elles
cohérentes ? (peut‐on être sûr que des raisonnements valides ne conduiront pas à des
absurdités ?) (3) Les mathématiques sont‐elles décidables ? (existe‐t‐il un algorithme
pouvantdireden'importequelénoncémathématiques'il estvraiou faux?)Cettedernière
questionestconnuesouslenomdeEntscheidungsproblem.
Page 3
En1931,KurtGödel(1906‐1978)réponditàdeuxdecesquestions.Ildémontraquetout
système formel suffisamment puissant est soit incohérent, soit incomplet. De plus, si un
systèmed'axiomesestcohérent,cettecohérencenepeutêtreprouvéeenn'utilisantque les
axiomes. La troisième question restait ouverte, en remplaçant « vrai » par « prouvable »
(existe‐t‐ilunalgorithmepourdiresiuneassertionpeutêtreprouvée?)
En 1936, Alan Turing (1912‐1954) résolut l'Entscheidungsproblem en construisant un
modèleformeldecalculateur‐lamachinedeTuring‐etenprouvantqu'unetellemachinene
pouvaitpasrésoudrecertainsproblèmes,enparticulierleproblèmed'arrêt:étantdonnéun
programme,peut‐ondires'ilterminepourn'importequellevaleurdesdonnées?
Lesannées1940:laguerrefaitnaîtrel'ordinateurélectronique:
Lacomplicationdescalculsbalistiques,durant lasecondeguerremondiale,aiguillonnale
développementdel'ordinateurélectronique.En1944,àHarvard,HowardAiken(1900‐1973)
construisitlecalculateurélectromécaniqueMarkI,avecl'aided'IBM.
Le décryptage militaire conduisit aussi à des projets d'ordinateur. Alan Turing, en
Angleterre,travaillaitàdécoder lamachineallemandeEnigma; lesAnglaisconstruisirentun
calculateur,leColossus,pouraideraudécryptage.
En1939,àl'Universitéd'Iowa, JohnAtanasoff(1904‐1995)etCliffordBerryconçurentet
réalisèrent l'ABC, un calculateur électronique pour résoudre des systèmes d'équations
linéaires,maisilnefonctionnajamaiscorrectement.
Atanasoff discuta de son invention avec JohnMauchly (1907‐1980), qui, plus tard, avec
John Eckert (1919‐1995), conçut et réalisa l'ENIAC, un calculateur électronique destiné à
l'origine aux calculs balistiques.On ne sait pas très bien quelles idéesAtanasoff transmit à
Mauchly;lemérited'avoirinventélepremierordinateurrevient‐ilàAtanasoffouàMauchlyet
Eckert?Cefutlesujetdebataillesjuridiques,c'estencoreceluid'undébathistorique.L'ENIAC
futconstruitàl'UniversitédePennsylvanie,etterminéen1946.
En1944,Mauchly,Eckert,etJohnvonNeumann(1903‐1957)travaillaientàlaconception
d'unordinateurélectronique,l'EDVAC.LepremierrapportdeVonNeumannsurl'EDVACeut
beaucoupd'influence;onytrouvedenombreusesidéesencoreutiliséesdanslesordinateurs
lesplusmodernes,dontuneroutinedetripar fusion.EckertetMauchlyreprirentces idées
pourconstruirel'UNIVAC.
Pendant ce temps, en Allemagne, Konrad Zuse (1910‐1995) construisait le premier
calculateurprogrammableuniversel(nonspécialisé),leZ3(1941).
Page 4
En1945,VannevarBushpubliaAsWeMayThink,unarticleétonnammentprophétiquesur
letraitementdel'information,etseseffetssurlasociétédanslestempsàvenir.
EnAngleterre,MauriceWilkes (néen1913)construisit l'EDSAC(àpartirde l'EDVAC).F.
Williams(néen1911)etsonéquipeconstruisirentleManchesterMarkI,dontuneversionfut
opérationnelle dès juin 1948. Certains considèrent cette machine comme le premier
ordinateuràprogrammeenmémoire(architectureditedeVonNeumann).
L'inventiondutransistoren1947par JohnBardeen,WalterBrattainetWilliamShockley
transforma l'ordinateur, etpermit la révolutiondumicroprocesseur.Pourcettedécouverte,
ilsreçurentlePrixNobeldePhysiqueen1956.(Parlasuite,Shockleyserenditcélèbrepour
sespointsdevueracistes.)
JayForrester(néen1918)inventavers1949lamémoireànoyaumagnétique.
Lesannées50:
Grace Hopper (1906‐1992) inventa la notion de compilateur (1951). (Quelques années
plus tôt, elleavait trouvé lepremierbugde l'histoirede l'informatique,unephalèneentrée
dansleMarkIIdeHarvard.)
JohnBackusetsonéquipeécrivirentlepremiercompilateurFORTRANenavril1957.LISP
(ListProcessing),unlangagedetraitementdelistespourl'intelligenceartificielle,futinventé
par John McCarthy vers 1958. Alan Perlis, John Backus, Peter Naur et leurs associés
développèrent Algol (Algorithmic Language) en 1959. Jack Kilby (Texas Instruments) et
RobertNoyce(FairchildSemiconductor)inventèrentlescircuitsintégrésen1959.
EdsgerDijkstra(1930‐2002)trouvaunalgorithmeefficacepourrésoudreleproblèmedes
pluscourtscheminsdansungraphe,àtitrededémonstrationpourl'ARMACen1956.Iltrouva
aussi un algorithme efficace de recherche d'un arbre recouvrant de poidsminimal, afin de
minimiser le câblage du X1. (Dijkstra est célèbre pour ses déclarations caustiques et
péremptoires;voirparexemplesonavissurquelqueslangagesdeprogrammation).
Dansuncélèbrearticlede larevueMind,en1950,AlanTuringdécrivit letestdeTuring,
l'une des premières avancées en intelligence artificielle. Il proposait une définition de la «
pensée»oude la « conscience» relativeàun jeu :unexaminateurposedesquestionspar
écritàuninterlocuteursituédanslapiècevoisine,etdoitdécider,auvudesréponses,sison
interlocuteurestunemachineouunêtrehumain.
Page 5
S'ilestincapablederépondre,onpeutraisonnablementdirequel'ordinateur«pense».En
1952, Alan Turing fut arrêté pour outrage aux bonnes mœurs après qu'une plainte pour
cambriolageeutrévélésaliaisonavecArnoldMurray.
Lesannées1960:
Dans les années 1960, l'informatique devint une discipline à part entière. Le premier
département d'informatique fut créé en 1962 à l'Université de Purdue; le premier Ph.D.
d'informatiquefutdélivréàRichardWexelblatparl'UniversitédePennsylvanie,endécembre
1965.
Ilyeutunepercéedanslessystèmesd'exploitation.FredBrooks(IBM)conçutSystem/360,
une série d'ordinateurs de tailles variées, avec lamême architecture et lemême ensemble
d'instructions.EdsgerDijkstra,àEindhoven,conçutlesystèmemultiprogrammeTHE.
De nombreux langages de programmation virent le jour, tels queBASIC, développé vers
1964parJohnKemeny(1926‐1992)etThomasKurtz(néen1928).
Lesannées1960virentémergerlathéoriedesautomatesetdeslangagesformels:onpeut
notammentciterNoamChomsky(quisefitplustardremarquerparlathéoriesuivantlaquelle
lelangageest«câblé»danslecerveau,etpoursacritiquedelapolitiqueétrangèredesEtats‐
Unis)etMichaelRabin.
On commença aussi à utiliser des méthodes formelles pour prouver la correction des
programmes. Les travaux de Tony Hoare (l'inventeur de Quicksort) jouèrent un rôle
important.
Vers la finde la décennie, on commença à construireARPAnet, le précurseur d'Internet.
TedHoff (né en 1937) et Federico Faggin (Intel) conçurent le premiermicroprocesseur en
1969‐1971.
DonaldKnuth(néen1938),auteurdutraitéTheArtofComputerProgramming,posades
fondementsmathématiquesrigoureuxpourl'analysedesalgorithmes.
Lesannées1970:
Lestravauxd'EdgarCodd(1924‐2003)surlesbasesdedonnéesrelationnellespermirent
uneavancéemajeuredans la théoriedesbasesdedonnées.Coddreçut leTuringAwarden
1961.Lesystèmed'exploitationUnixfutdéveloppéauxBellLaboratoriesparKenThompson
(néen1943)etDennisRitchie(néen1941).BrianKernighanetRitchiedéveloppèrentC,un
importantlangagedeprogrammation.
Page 6
Onvitapparaîtredenouveauxlangages,telsquePascal(inventéparNiklausWirth)etAda
(réalisé par une équipe dirigée par Jean Ichbiah). La première architecture RISC fut
commencée par John Cocke en 1975, chez IBM. Vers cette époque, des projets analogues
démarrèrent à Berkeley et Stanford. Les années 1970 virent aussi naître les super‐
ordinateurs. Seymour Cray (né en 1925) conçut le CRAY‐1, qui apparut en mars 1976; il
pouvait exécuter 160millions d'opérations par seconde. Le Cray XMP sortit en 1982. Cray
Research(àprésentreprisparSiliconGraphics)continueàconstruiredesordinateursgéants.
Ilyeutaussidesprogrès importantsenalgorithmiqueeten théoriede lacomplexité.En
1971,SteveCookpubliasonarticlefondamentalsurlaNP‐complétude,et,peuaprès,Richard
KarpmontraquedenombreuxproblèmescombinatoiresnaturelsétaientNP‐complets.
WhitDiffieetMartinHellmanpublièrentunarticle fondant la théoriedecryptographieà
clef publique; le système de cryptage RSA fut inventé par Ronald Rivest, Adi Shamir, et
LeonardAdleman.
En 1979, trois étudiants de Caroline du Nord développèrent un serveur de nouvelles
distribuéquifinalementdevintUsenet.
Lesannées1980:
Cette décennie vit apparaître le micro‐ordinateur personnel, grâce à Steve Wozniak et
Steve Jobs, fondateursdeAppleComputer.Lespremiersvirus informatiquesapparurenten
1981(leurnomestdûàLeonardAdleman).
En1981, l'Osborne I, lepremierordinateurvraimentportable, futmis sur lemarché.En
1984,ApplecommercialisaleMacintosh.En1987,l'USNationalScienceFoundationdémarra
NSFnet,quidevaitdevenirunepartiedel'Internetactuel.
Lesannées1990etau‐delà:
On continue à développer des ordinateurs parallèles. L'informatique biologique, avec les
récents travaux de Leonard Adleman sur l'utilisation de l'ADN comme calculateur non
déterministe,ouvredegrandesperspectives.LeprojetGénomeHumainchercheàséquencer
tout l'ADN d'un individu. Peter Shor découvre que l'on peut efficacement factoriser des
entiers sur un ordinateur quantique (théorique), ce qui ouvre la voie à la programmation
quantique.Lesautoroutesdel'informationrelientdeplusenpluslesordinateursdumonde
entier.
Lesordinateurssontdeplusenpluspetits;naissancedelanano‐technologie.
Page 7
Élémentsd’unordinateur:
Si vous utilisez un ordinateur de bureau, vous savez sans doute déjà que le terme
«ordinateur»neserapportepasàunélémentunique.Unordinateurestenfaitunsystème
constitué de nombreux éléments qui fonctionnent ensemble. Les éléments physiques, que
vouspouvezvoiret touchersontcollectivementappelés lematériel. (Le terme logiciel, en
revanche,désignelesinstructionsouprogrammesquidemandentaumatérieldefairetelleou
tellechose.).L’illustration suivante montre le matériel le plus souvent présent dans un système
d’ordinateurdebureau. Ilestpossiblequevotresystèmesoitquelquepeudifférent,mais il
comporte probablement la plupart de ces éléments. Un ordinateur portable comprend des
élémentssimilaires,maisilssontcombinésdansunboîtierdelatailled’unbloc‐notes.
Systèmed’ordinateurdebureau
Unitésystème:
L’unité système est le noyau d’un système informatique. Elle se présente généralement
sous la formed’unboîtier rectangulaire placé sur ou sous votre bureau.À l’intérieur de ce
boîtier se trouventdenombreuxcomposantsélectroniquesqui traitent les informations.Le
composantleplusimportantestl’unitécentrale(CPU)oumicroprocesseur,quiagitcommele
«cerveau» de l’ordinateur. Un autre composant est la mémoire vive (RAM), qui stocke
temporairement les informations utilisées par l’unité centrale lors du fonctionnement de
l’ordinateur.LesinformationsstockéesdanslaRAMsontsuppriméeslorsquel’ordinateurest
éteint.
Page 8
Pratiquementtouslesautresélémentsdel’ordinateursontconnectésàl’unitésystèmeau
moyendecâbles.Cescâblessebranchentsurdesportsspécifiques (desouvertures), situés
généralement à l’arrière de l’unité système. Le matériel qui ne fait pas partie de l’unité
systèmeestparfoisappelépériphériqueoumatérielpériphérique.
UnitésystèmeStockage
L’ordinateurcomporteunouplusieurslecteursdedisque,périphériquesquistockentdes
informations sur un disque métallique ou plastique. Le disque conserve les informations,
mêmelorsquel’ordinateurestéteint.
Lecteurdedisquedur
Lelecteurdedisquedurdel’ordinateurstockedesinformationssurundisquedur,plateau
oupiledeplateauxrigidesdotésd’unesurfacemagnétique.Étantdonnéquelesdisquesdurs
peuvent contenir d’énormes quantités d’informations, ils constituent souvent le moyen de
stockageprincipaldel’ordinateur,hébergeantpratiquementtouslesprogrammesetfichiers.
Lelecteurdedisquedurestnormalementsituédansl’unitésystème.
LecteurdedisquedurLecteursdeCDetdeDVD
Pratiquementtouslesordinateurssontaujourd’huiéquipésd’unlecteurdeCDoudeDVD,
quisetrouvesouventàl’avantdel’unitésystème.LeslecteursdeCDutilisentdeslaserspour
Page 9
lire (récupérer) des données d’un CD, et de nombreux lecteurs de CD peuvent également
écrire (enregistrer) des données sur des CD. Si vous disposez d’un lecteur de disque
enregistrable,vouspouvezstockerdescopiesdevosfichierssurdesCDvierges.Vouspouvez
égalementutiliserunlecteurdeCDpourliredesCDaudiosurl’ordinateur.
CD
LeslecteursdeDVDexécutentlesmêmesfonctionsqueleslecteursdeCDmaisilspeuvent
enoutreliredesDVD.Ainsi,sivousdisposezd’unlecteurdeDVD,vouspouvezvisionnerdes
filmssurl’ordinateur.DenombreuxlecteursdeDVDpeuventenregistrerdesdonnéessurdes
DVDvierges.
Conseil
Si votre ordinateur est équipé d’un lecteur de CD ou deDVD enregistrable, sauvegardez
(copiez)régulièrementvosfichiersimportantssurdesCDoudesDVD.Ainsi,siledisquedur
tombeenpanne,vousneperdrezpasvosdonnées.
Lecteurdedisquettes
Leslecteursdedisquettesstockentlesinformationssurdesdisquettes,égalementappelées
disquettessouples.ComparéesauxCDetauxDVD,lesdisquettesnepeuventstockerquedes
petitesquantitésdedonnées.Ellesrécupèrentégalementles informationspluslentementet
sontdavantagesusceptiblesdes’endommager.C’estpourquoi,leslecteursdedisquettessont
moinsrépandusqu’auparavant,mêmesicertainsordinateursendisposentencore.
Disquette
Pourquoi une disquette est‐elle souple («floppy disk» en anglais, «floppy» signifiant
souple)?Mêmesisapartieextérieureestconstituéedeplastiquedur,ils’agitsimplementde
l’enveloppe.L’intérieurestfabriquéàpartird’unmatériauenvinylefinetsouple.
Page 10
Souris
Unesourisestunpériphériquedepetitetailleutilisépourpointersurdesélémentsaffichés
surl’écrandel’ordinateuretlessélectionner.Bienqu’ellepuisseprendredifférentesformes,
lasourisclassiqueressembleunpeuàunevraiesouris.Elleestpetite,oblongetconnectéeà
l’unité système par un fil long qui ressemble à une queue de souris. Les souris les plus
récentessontsansfil.
Souris
Unesouriscomportegénéralementdeuxboutons:unboutonprincipal(enrèglegénérale,
le bouton gauche) et un bouton secondaire. Sur de nombreuses souris vous trouverez
également une roulette située entre les deux boutons, qui vous permet de parcourir des
écransd’informations.
Lorsque vous déplacez la souris avec la main, un pointeur se déplace dans la même
directionsurl’écran.(Sonaspectpeutchangerselonsapositionsurl’écran.)Sivoussouhaitez
sélectionner un élément, pointez sur celui‐ci, puis cliquez (pressez puis relâchez) sur le
bouton principal. Les actions qui consistent à pointer et à cliquer avec la souris sont les
principalesméthodesd’interactionavecl’ordinateur.
Clavier
Unclavierestutiliséprincipalementpourtaperdutextesurl’ordinateur.Commeleclavier
d’unemachineàécrire, ilcomportedestouchespourleslettreset leschiffres,ainsiquedes
touchesspéciales:
Les touches de fonction, situées sur la rangée supérieure, permettent d’effectuer
différentesfonctionsselonl’endroitoùellessontutilisées.
Lepavénumérique,situésurlecôtédroitdelaplupartdesclaviers,permetd’entrer
rapidementdesnombres.
Les touches de navigation, telles que les touches de direction, permettent de
changervotrepositiondansundocumentouunepageWeb.
Page 11
Clavier
Vous pouvez également utiliser le clavier pour exécuter la plupart des tâches effectuées
grâceàlasouris.
Moniteur
Un moniteur affiche des informations sous forme visuelle, au moyen de texte et de
graphiques. La portion du moniteur qui affiche les informations est appelée écran. Tout
comme un écran de télévision, un écran d’ordinateur peut afficher des images fixes ou
animées.
Ilexistedeuxtypesprincipauxdemoniteurs:lesmoniteursCRT(àtubecathodique)etles
moniteursLCD(àaffichageàcristauxliquides).Lesdeuxtypesproduisentdesimagesnettes,
mais lesmoniteurs LCD sont beaucoup plus fins et légers. Lesmoniteurs CRT en revanche
sontgénéralementmoinschers.
MoniteurLCD(àgauche),moniteurCRT(àdroite)
Imprimante
Uneimprimantetransfèredesdonnéesàpartird’unordinateursurdupapier.Vousn’avez
pasbesoind’uneimprimantepourutiliserl’ordinateur,maisenavoirunepermetd’imprimer
du courrier électronique, des lettres, des invitations, des annonces, etc. De nombreuses
personnesapprécientdepouvoirimprimerleurspropresphotoschezeux.
Les deux types principaux d’imprimantes sont les imprimantes à jet d’encre et les
imprimanteslaser.Lesimprimantesàjetd’encresontlesimprimantespersonnelleslesplus
Page 12
répandues.Ellespermettentd’imprimerennoiretblancouencouleur,etpeuventproduire
desphotographiesdehautequalité,àconditiond’utiliserdupapierspécial.Lesimprimantes
lasersontplusrapidesetrésistentgénéralementmieuxàuneutilisationintensive.
Imprimanteàjetd’encre(àgauche),imprimantelaser(àdroite)
Haut‐parleurs
Leshaut‐parleurssontutiliséspourlireduson.Ilspeuventêtreintégrésàl’unitésystème
ou connectés à l’aide de câbles. Les haut‐parleurs permettent d’écouter de la musique et
d’entendredeseffetssonoresprovenantdel’ordinateur.
Haut‐parleursd’ordinateurModem
Pour connecter l’ordinateurà Internet, vousavezbesoind’unmodem.Unmodemestun
périphériquequienvoieetreçoitdesdonnéesinformatiquesviaunelignetéléphoniqueouun
câble à haut débit. Lesmodems sont parfois intégrés à l’unité système,mais lesmodems à
hautdébitsontgénéralementdescomposantsséparés.
Modemcâble
Page 13
Structured’unordinateur‐ArchitecturedeVonNeumann:
L’architecture,ditearchitecturedeVonNeumann,estunmodèlepourunordinateurqui
utilise une structure de stockage unique pour conserver à la fois les instructions et les
données requises ou générées par le calcul. De tellesmachines sont aussi connues sous le
nomd’ordinateursàprogrammestockéenmémoire.Laséparationentrelestockageetle
processeurestimplicitedanscemodèle.
Origine:
Cettearchitectureestnomméed’aprèslemathématicienJohnVonNeumannquiasoumis
lapremièredescriptiond’unordinateurdontleprogrammeeststockédanssamémoire.
Architecture:
L’architecturedeVonNeumanndécomposel’ordinateuren4partiesdistinctes:
1. L’unitéarithmétiqueetlogique(UALouALUenanglais)ouunitédetraitement:
sonrôleestd’effectuerlesopérationsdebase;
2. L’unitédecontrôle,chargéeduséquençagedesopérations;
3. Lamémoirequicontientàlafoislesdonnéesetleprogrammequidiraàl’unitéde
contrôlequelscalculs fairesurcesdonnées.Lamémoiresediviseentremémoire
volatile (programmes et données en cours de fonctionnement) et mémoire
permanente(programmesetdonnéesdebasedelamachine).
4. Les dispositifs d’entrée‐sortie, qui permettent de communiquer avec le monde
extérieur.
ArchitecturedeVonNeumann.
Page 14
Voiciunschémad’unearchitecturemodernedesmicroprocesseurs:
Architecturemodernedesmicroprocesseurs.
Unitéarithmétiqueetlogique:
L'unité arithmétique et logique, abrégéeUAL (ou bien ALU, Arithmetic Logic Unit en
anglais),estl'organedel'ordinateurchargéd'effectuerlescalculs.Leplussouvent,l'UALest
inclusedansl'unitécentraleoulemicroprocesseur.
Différentstypesd'UAL:
LesUALpeuventêtrespécialiséesoupas.LesUALélémentairescalculentsurdesnombres
entiers, et peuvent effectuer les opérations communes, que l'on peut séparer en quatre
groupes:
Lesopérationsarithmétiques:addition,soustraction,changementdesigneetc.,
Les opérations logiques: compléments à un, à deux, ET, OU, OU‐exclusif, NON,
NON‐ETetc.,
Les comparaisons: test d'égalité, supérieur, inférieur, et leur équivalents «ou
égal»,
Eventuellement des décalages et rotations (mais parfois ces opérations sont
externalisées).
CertainesUALsont spécialiséesdans lamanipulationdesnombresàvirgule flottante,en
simpleoudoubleprécision (onparled'unitéde calcul envirgule flottanteou floatingpoint
Page 15
unit (FPU)) ou dans les calculs vectoriels. Typiquement, ces unités savent accomplir les
opérationssuivantes:
Additions,soustractions,changementdesigne,
Multiplications,divisions,
Comparaisons,
Modulos
Certaines UAL, le plus souvent de la classe des FPUs, notamment celles des
superordinateurs,sontsusceptiblesd'offrirdesfonctionsavancées:
Inverse(1/x),
Racinecarrée,
Logarithmes,
Fonctionstranscendantales(sinx,cosx,etc.),
Opérationvectorielle(produitscalaire,vectoriel,etc.),
etc.
Un processeur fait appel à plusieursUAL, aumoins deux: une située dans le chemin de
contrôle pour incrémenter le registre de programme (de 1, 2, 4 ou 8 typiquement), et une
autredanslechemindedonnéespourtraiterl'information.
Notation
Lafigureci‐dessousreprésenteunschémaclassiqued'UAL.Celle‐cipossèdedeuxentréesA
etBsurlesquellesonprésentelesdonnéesàtraiter.L'entréeFdésignel'opérationàeffectuer.
Enfin, l'UALpossèdedeuxsorties,Rquiest le résultatde l'opération,etD lesdrapeauxqui
indiquentsoitqu'ilyaeuerreur(divisionparzéro,dépassementdecapacité,etc.), soitdes
codesconditions(supérieur,inférieur,égalàzéro,etc.).
Schémaclassiqued'UAL.
Page 16
Voiciunautreschémareprésentatifdel’UAL:
Chemindedonnéesdel'ordinateurdeVonNeumann.
Unitédecontrôle:
Dans un système logique, en particulier dans un processeur, l’unité de contrôle (de
commande)ouséquenceurcommandeetcontrôlelefonctionnementdusystème,notamment
duchemindedonnées.
Principe:
Lebutdel'unitédecontrôleestdechercherlesinstructionsduprogrammeenmémoire,de
lesdécoderetdecommanderleurexécutiondemanièreséquentielle.
Danslecasd'unemachinedeBabbage,lesinstructionssontluessurundispositifexterne.
Danslecasd'unemachinedeVonNeumann,lesinstructionssontluesenmémoire.
Elle s'inscrit dans le chemin de données de l'ordinateur de Von Neumann. L'unité de
contrôlesert(enpartie)àconserverlesrésultatsintermédiairesdescalculsdel'UALetàlire
etàécriredesdonnéesenmémoire.
Page 17
L'unitédecontrôleapourmissiondeplacerenentréedel'UALlesopérandesnécessairesà
l'exécution de ses instructions. Elle va les lire dans une mémoire de petite taille nommée
registres.
Les registres de données de l'unité de contrôle sont composés de cases mémoires,
repéréesparuneadresse(lesnuméroter),etquipossèdentchacuneunefonctionnalitébien
précise.Conceptuellement,ilssontidentiquesauxcasesmémoires,maissituésdifféremment
dans l'architecture du processeur, et avec des fonctions différents. Plus l'ordinateur est
complexe,pluslenombreetlatailledesregistressontimportants.
Selonl’architecturedeVonNeumann,l'unitédecontrôlealesinteractionssuivantesavec
lesautresunitésfonctionnellesdecettearchitecture:
Ellevachercherdes instructionsenmémoireenutilisant lesbusd'adressesetde
données;
Elle décode cette instruction et transmet une action à l'UAL si nécessaire (bus de
commande),plusdesdonnées/opérandes(busdedonnées);
Ellerécupèrelerésultatdel'exécutiondel'opérationetlestockedansunregistre.
Mémoire:
En informatique la mémoire est un dispositif électrotechnique qui sert à stocker des
informations.Lamémoireestuncomposantessentiel,présentdanstouslesordinateurs.
Rôledelamémoire:
Onappelle«mémoire»toutcomposantélectroniquecapabledestockertemporairement
desdonnées.Ondistingueainsideuxgrandescatégoriesdemémoires:
La mémoire centrale (appelée également mémoire interne) permettant de
mémoriser temporairement les données lors de l'exécution des programmes. La
mémoirecentraleestréaliséeàl'aidedemicro‐conducteurs,c'est‐à‐diredescircuits
électroniques spécialisés rapides. Lamémoire centrale correspond à lamémoire
vive.
Lamémoiredemasse(appeléeégalementmémoirephysiqueoumémoireexterne)
permettantde stockerdes informationsà long terme,y compris lorsde l'arrêtde
l'ordinateur. La mémoire de masse correspond aux dispositifs de stockage
magnétiques, tels que le disque dur, aux dispositifs de stockage optique,
correspondantparexempleauxCD‐ROMouauxDVD‐ROM,ainsiqu'auxmémoires
mortes.
Page 18
Circulationdesinformationsdansl'unitécentrale:
L'unité de commande et de contrôle effectue les opérations suivantes : extraction de
l'instruction à exécuter, analyse de cette instruction et liaison avec l'U.A.L., recherche des
données à traiter dans la mémoire centrale, déclenchement du traitement dans l'U.A.L.,
rangementdesrésultatsdanslamémoirecentraleouenmémoireauxiliaire.
Entrées‐sorties:
Dans un système à base d'un processeur ou d'un microprocesseur, on appelle Entrées‐
Sorties les échanges d'informations entre le processeur et les périphériques qui lui sont
associés.Delasorte,lesystèmepeutréagiràdesmodificationsdesonenvironnement.Elles
sontparfoisdésignéesparl'acronymeI/O,issudel'anglaisInput/Output.
Dansunsystèmed'exploitation,
Les entrées sont les données envoyées par un périphérique (disque, réseau,
clavier…)àdestinationdel'unitécentrale;
Les sorties sont les données émises par l'unité centrale à destination d'un
périphérique(disque,réseau,écran...).
Exemplesimplifié:
tapersur les touchesduclavierenvoieunesériedecodesvers leprocesseur;ces
codessontconsidéréscommedesdonnéesd'entrée;
leprocesseuraffichelesrésultatsdutraitementdesdonnéessurunécran;cesont
des données de sortie. Habituellement, l'écran est géré par un programme de
gestiond'affichage.
Page 19
Unsystèmeàmicroprocesseurcomportenécessairementlesélémentssuivants:
un processeur, qui est le cerveau du système; il est capable d'effectuer des
opérationsarithmétiquesetlogiquesetd'organiserdestransfertsdedonnéesentre
lesdifférentsélémentsdusystème;
une zone de mémoire morte (ROM, EPROM, EPROM Flash) qui stocke le
programme;
une zonedemémoirevive (RAM)qui stocke lesdonnéespendant l'exécutiondu
programme;lecontenudecettemémoireestperdulorsqu'oncoupel'alimentation
dusystème;
despériphériques;leurnombreetgenredépendentdel'application.
Lesdifférentsélémentsdusystèmesontreliéspar3bus:
lebusdedonnées permet, commesonnom l'indique, la circulationdesdonnées,
maisaussidesinstructions,entreles4grandsblocs;
le bus d'adresse permet au processeur de désigner à chaque instant la case
mémoireoulepériphériqueauquelilveutfaireappel;
lebusdecontrôleestégalementgéréparleprocesseuretindique,parexemple,s'il
veutfaireuneécritureouunelecturedansunecasemémoire,ouuneentrée/sortie
deouversunpériphérique;ontrouveégalement,dans lebusdecontrôle,uneou
plusieurslignesquipermettentauxcircuitspériphériquesd'effectuerdesdemandes
auprocesseur;ceslignessontappeléeslignesd'interruptionsmatérielles(IRQ).
Page 20
Représentationdel’information
Introduction:
Lanotiond’informationdiffèreselonqu’onseplaceducôtedelamachineoudel’individu.
Qu’estqu’unedonnée?
Unedonnéeestunélémentfondamental(unfait,unenotion,unchiffre,uneinstruction,unindice…)prélevéàpartird’uneexpérience.
Elleesttransformée/traitéeparl’êtrehumainoupardesmoyensautomatiques
Pour:
o serviràunraisonnementouàunerecherche,o créerdel’information.
Qu’est‐cequel’information?
L’informationestunedonnée,transforméeetstructuréesousuneformeconventionnelleet intelligiblepourêtre inséréedansunedynamiquedediffusionet/oud’échange(pourêtrecommuniquée).
L’informationseulen’estpasunsavoir.Pourqu’elleledevienne,illuifautdesstructuresconceptuellesquilasupportentetluidonnentdusens.
Qu’est‐cequelacommunication?
La communication est l’ensembledesprocessuspar lesquels l’information est cherchée,rendueaccessible,échangée,transférée,discutée,négociée.
Lacommunicationsertà:
o informer,o construire,modifier,entretenir,faireévolueruneconnaissance/unsavoir,o créer,dynamiser,entretenir,faireévoluerdesrelationshumaines,o créer,dynamiser,entretenir,faireévoluerunsystèmed’organisation.
Laconceptionanalytiquedel’information:
Laconceptionsystématiquedel’information:
Page 21
Objectifsdelathéoriedel’information:
Priorités du système informatique: Importance du signe prépondérante dans letraitement,lestockageetlatransmission.
Prioritésdusystèmed’information:aspectssémantiqueetpragmatiqueprivilégiés.
Lathéoried’informations’intéresseausigne.
Modèledecommunication:
Voicilesmodèlesdecommunication:
1. ParadigmedeShannon:
ParadigmedeShannon
Source:générateurdemessage. Message:suitedesymbolesd’unalphabetdonné. Canal:vecteurdel’informationentresourceetdestinataire. Perturbations:stochastiqueparnature.
2. Schémagénérald’unsystème:
Page 22
Schémagénérald’unsystème
Généralités:
Lesinformationstransmisespeuventêtrediviséen2grandescatégories:
1. Les données discrètes: l'information correspond à un assemblage d'une suited'élément indépendant lesunsdes autres (c'estune suitediscontinuedevaleurs) etdénombrable(c'estunensemblefini).
Parexemple :un texte,quiestunensemblede lettres (oudesymbole)qui formentdesmots.
2. Les données continues ou analogiques : résultent de la variation continue d'unphénomènephysique.
Exemples le son : le son se propage dans l'air sous forme d'une onde de pression,transmiseparlemouvementdesmolécules.Engrosc'estunedéformationdel'airdûàun phénomène physique, nos oreilles, entre autres, vont capter cette vibration, latransmettreànotrecerveauquiluivatraduireçaenson.Cesignalvariedansletemps,de manière continue (c'est à dire que son intensité, sa fréquence peuvent prendren'importequellevaleur):onditqu'ilestanalogique
Maintenantpourpouvoirtraitercesinformationspardeséquipementsinformatiques,chaqueélémentd'information vadevoirêtresubstituée parunevaleurbinaire. Cetteopérationportelenomde:
1. Codagedel'informationpourlesinformationsdiscrètes.2. Numérisationdel'informationpourlesinformationsanalogiques.
Lecodagedel'information:
Pourquoicoder?
Page 23
La communication nécessite la compréhension entre les deux entités communicantes.L'émetteur envoie de l'information au récepteur qui doit savoir l'interpréter pour lacomprendre.Ainsi,lecodagedel'informationestlapremièreétapedetoutecommunication.
Commentcoder?
L'être humain mit en place des langages et créa l'écrit. Au début, l'écrit consistaitessentiellement dans des dessins puis vint un alphabet plus simple à utiliser qui offrait demultiples combinaisons pour une plus grande richesse de l'expression. En réalité, lescaractèresdel'écritnesontquedessymbolesinterprétables.
L'inventiondu télégrapheélectrique (1832)parP. Shillingva révolutionner lemondede lacommunicationquiallait s'effectuerpar lavoiedesondes.Le "filqui chante"etquivaplusviteque lemessagerétait si importantque leministèrede l'intérieurenFranceallait créerl'AdministrationduTélégrapheen1837.Mais, ilétaitnécessairedecodifier lescaractèresàtransmettre.Cefutl'œuvredeS.Morsequi,en1837,développal'alphabettélégraphique.Le"Morse"codaitchaquecaractèreenunesuitedesignauxélectriquesdecourte(point)oudelongue(trait)durée.
En 1917, E. Baudotmit au point un code qui allait être utilisé sur le réseau télégraphiquecommuté(Télex).Desmachinesspécialesmuniesd'unclavierpermettaitdegénérerlesignalcorrespondantautextetapé.Ainsi,sidans le"Morse", il fallaitque lapersonneconnaisse lecodage pour le générer, ceci n'était pas nécessaire avec le télex. Les premiers terminaux"numériques"apparaissaient.
Lorsque l'Informatique sedéveloppa, il était nécessairede constituerun codage adapté. Eneffet,lamachinenecomprendquedesélémentsbinaires(bits):0et1.Lecodageconsisteraàcombinerplusieursbits.Ainsi,unedissociationallaitse faireentre l'informationet lesignalgénéré.
Lecodagedel'informations'effectueendeuxétapes:
1. codagesousformebinaire(ASCII,DCB...);2. codagedel'élémentbinaireparunétatphysique(tension,fréquence...);
EnquoiconsistelecodeMorse?
Le code Morse est un des premiers codes développés. Chaque caractère est codé par unecombinaison de points et de traits. Le code est un code statistique: les caractères les plusfréquemment utilisés sont codés avec peu d'éléments tandis que les caractères les moinsfréquemmentutiliséaurontunelongueurplusimportante.
A.‐B‐...C‐.‐.D‐..E.
L'inconvénient technique de ce code est que DE peut être confondu avec B (‐...). C'estpourquoi,unsilence(pause)entredeuxcaractèresétaitnécessaire.
SOS...‐‐‐...
EnquoiconsistelecodeBaudot?
Page 24
Le codeBaudot est undes premiers codes utilisés avec unemachine. Chaque caractère estcodéparunecombinaisonde0etde1.Lecodeestuncodeà5bits.IlestaussiappelécodetélégraphiqueouAlphabetInternational(AI)n°2oucodeCCITTn°2.
Avec5bits,nousnepouvonsavoirque32combinaisons.Orsiondésirecoderleslettresetleschiffres, nous ne disposons pas d'assez de combinaisons. C'est pourquoi le code Baudotcontient deux jeux de caractères appelés "Lettres" ("Lower Case") et "Chiffres" ("UpperCase"). En fait, l'ensemble "Chiffres" contient aussi d'autres symboles (ponctuation, &,#...).Deux caractères "Inversion Lettres" (code 29) et "Inversion Chiffres" (code 30) permet decommuter entre les deux ensembles. Evidemment, l'inconvénient réside dans descommutationsfréquentes.D'autrepart,cecodebienqu'ilsoitplusrichequelecodeMorsenetraitepaslesminusculesetcertainssymboles.
EnquoiconsistelecodeASCII?
L'apparition de l'informatique et la nécessité de disposer de codes plus riches et plusfonctionnels va mettre en évidence les limitations des codes précédents et va donnernaissanceàdescodescontenantplusdebits.En1963,uncodeà7bitsvaêtredéveloppéauxEtats‐Unis par l'ANSI. Ce code est connu sous le nomd'ASCII (American StandardCode forInformationInterchange)ouAlphabetInternationaln°5ouCodeCCITTn°5ouISO646.
Avec7bits,lecodeASCIIpermetlareprésentationdeslettres(majusculesetminuscules),deschiffres,dedifférentssymboles(nationaux,...)etdescaractèresdecommandes(determinaletdecommunication).C'estuncoderéellementconçupour l'échangededonnéeset lagestiondelacommunication.
Lecodagedeslettresetdeschiffresfaciliteletrietlepassagedemajusculeauxminuscules(etviceversa).
Descaractèresontétéprévuspour:
lescommandesdemiseenpage(RetourChariot,NouvelleLigne...); lescommandesdepériphériques(DeviceControl1à4); lescommandesdecommunicationetdegestiondelaliaison(ACK,NAK...);
Enfin,pourmunircecodedemécanismededétectiond'erreur,unbitaétérajoutépermettantcecontrôle.Cebitestappelébitdeparitéenraisondumécanismemisenœuvre.C'estdoncuncodesur8bits(7+1).
Le jeu de caractères ASCII a trouvé ses limites lorsqu'on a voulu coder des symbolesgraphiquessupplémentaires.C'estpourquoi,ilfutétenduaveclanormeISO4873.
LesSystèmedenumération:
Lessystèmesdenumérationsbinaireethexadécimalsonttrèsutilisésdanslesdomainesdel'électronique et de l'informatique. Tout programmeur se doit de les connaître en plus dessystèmesdécimaletoctal.
Principed'unebase:
Page 25
La base est le nombre qui sert à définir un système de numération.Labasedusystèmedécimalestdixalorsquecelledusystèmeoctalesthuit.
Quelquesoitlabasenumériqueemployée,ellesuitlarelationsuivante:
Ou:
ai:chiffredelabasederangi bi:puissancedelabasebd'exposantderangi
Exemple:base10
1986=(1x103)+(9x102)+(8x101)+(6x100)
Lesystèmedécimal:
Le système décimal est celui dans lequel nous avons le plus l'habitude d'écrire.Chaquechiffrepeutavoir10valeursdifférentes:0,1,2,3,4,5,6,7,8,9,decefait,lesystèmedécimalapourbase10.
Toutnombreécritdanslesystèmedécimalvérifielarelationsuivante:
745=7x100+4x10+5x1 745=7x10x10+4x10+5x1 745=7x102+4x101+5x100
Chaquechiffredunombreestàmultiplierparunepuissancede10:c'estcequel'onnommelepoidsduchiffre.
L'exposantdecettepuissanceestnulpour le chiffre situé leplusàdroiteet s'accroîtd'uneunitépourchaquepassageàunchiffreverslagauche.
12435=1x104+2x103+4x102+3x101+5x100
Cettefaçond'écrirelesnombresestappeléesystèmedenumérationdeposition.
Dans notre système conventionnel, nous utilisons les puissances de 10 pour pondérer lavaleurdeschiffresselonleurposition,cependantilestpossibled'imaginerd'autressystèmesdenombresayantcommebaseunnombreentierdifférent.
Lesystèmeoctal:
Lesystèmeoctalutiliseunsystèmedenumérationayantcommebase8(octal latinocto=
huit).
Page 26
Ilfautnoterquedanscesystèmenousn'auronsplus10symbolesmais8seulement:0,1,2,3,4,5,6,7,Ainsi,unnombreexpriméenbase8pourraseprésenterde lamanièresuivante :(745)8
Lorsquel'onécritunnombre,ilfaudrabienpréciserlabasedanslaquelleonl'exprimepourleverleséventuellesindéterminations(745existeaussienbase10).Ainsilenombreseramisentreparenthèses(745dansnotreexemple)et indicéd'unnombrereprésentantsabase(8estmisenindice).
Cette base obéira aux mêmes règles que la base 10, vue précédemment, ainsi on peutdécomposer(745)8delafaçonsuivante:
(745)8=7x82+4x81+5x80 (745)8=7x64+4x8+5x1 (745)8=448+32+5
Lesystèmebinaire:
Dans le systèmebinaire, chaque chiffrepeut avoir2 valeursdifférentes : 0, 1.De ce fait, lesystèmeapourbase2.
Toutnombreécritdanscesystèmevérifielarelationsuivante:
(10110)2=1x24+0x23+1x22+1x21+0x20 (10110)2=1x16+0x8+1x4+1x2+0x1
Donc:(10110)2=(22)10Lesystèmehexadécimal:
Lesystèmehexadécimalutiliseles16symbolessuivant:0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F.Decefait,lesystèmeapourbase16.Unnombreexpriméenbase16pourraseprésenterdelamanièresuivante:(5AF)16
Lacorrespondanceentrebase2,base10etbase16estindiquéedansletableauci‐après:
Page 27
Tableaurécapitulatif:
Lenombre(5AF)16peutsedécomposercommesuit:
(5AF)16=5x162+Ax161+Fx160
Page 28
EnremplaçantAetFparleuréquivalentenbase10,onobtient:
(5AF)16=5x162+10x161+15x160 (5AF)16=5x256+10x16+15x1
Donc=(5AF)16=(1455)10
Conversionentrelesbases:
Conversiond'unnombredebasequelconqueennombredécimal:
En exposant les principes des systèmes de numération de position, nous avons déjà vucommentconvertirlesnombresdebase8,base2etbase16ennombresdécimaux.
Conversiond'unnombredécimalennombrebinaire
Pour expliquer ce type de conversion, on peut revenir sur le système décimal.Si nousdivisons lenombre (543)10 par10, nousobtenons commequotient54 et 3 commereste.Celasignifiequecenombreéquivautà:
(54x10)+3
Lereste3estlechiffreindiquantlenombred'unités.
Endivisantcequotient(54)par10,nousobtenons5commedeuxièmequotientet4commereste.Cerestedonneledeuxièmechiffredunombre,doncceluidesdizaines.
Enfin, si l'on divise ce deuxième quotient par 10, nous obtenons O et il restera 5 quireprésenteralechiffredescentaines.
Conversionbinaire:
Maintenantsinousdivisonsunnombredécimalpar2,lequotientindiquelenombredefoisque2estcontenudanscenombreetleresteindiquelechiffredesunitésdansl'expressiondunombrebinaire.
SoitNlenombre,Q1lequotientetR1lereste,nousavons:
N=(Q1x2)+(R1x1) N=(Q1x21)+(R1x20)
Exemple :
Page 29
Soit :
N = (22 x 2) + (0 x 1) = 44
Pour obtenir l'expression binaire d'un nombre exprimé en décimal, il suffit de divisersuccessivementcenombrepar2jusqu'àcequelequotientobtenusoitégalàO.
Commepourlaconversiondanslesystèmedécimallesrestesdecesdivisionslusdebasenhautreprésententlenombrebinaire.
(44)10=(101100)2
Relationentrelesnombresbinairesetlesnombresoctaux:
Exprimons(47)10danslesystèmeoctaletlesystèmebinaire.Nousobtenons:
Nous pouvons remarquer qu'après 3 divisions en binaire nous avons le même quotientqu'aprèsuneseuleenoctal.Depluslepremierresteenoctalobtenupeutêtremisenrelationdirecteaveclestroispremiersrestesenbinaire:
(111)2=1x22+1x21+1x20 (111)2=1x4+1x2+1x1
Page 30
(111)2=(7)8
Etilenestdemêmepourlecaractèreoctalsuivant:
(101)2=1x22+0x21+1x20 (101)2=1x4+0x2+1x1 (101)2=(5)8
Cette propriété d'équivalence entre chaque chiffre octal et chaque groupe de 3 chiffresbinaires permet de passer facilement d'un système à base 8 à un système à base 2 et viceversa.
Exempledeconversionbinaireoctaletoctalbinaire:
Relationentrelesnombresbinairesetlesnombreshexadécimaux
Lapropriétéd'équivalencequenousvenonsdevoirentrelebinaireetl'octalexisteentrel'hexadécimaletlebinaire.
Laseuledifférenceestqu'ilfautexprimerchaquecaractèrehexadécimalàl'aidede4informationsbinaires.
Représentationdel’informationdanslamachine:
Page 31
Représentationd'unentiernaturel:
Unentiernaturelestunentierpositifounul.Lechoixàfaire(c'est‐à‐direlenombredebitsàutiliser)dépenddelafourchettedesnombresquel'ondésireutiliser.Pourcoderdesnombresentiersnaturelscomprisentre0et255,ilnoussuffirade8bits(unoctet)car28=256.D'unemanièregénéraleuncodagesurnbitspourrapermettredereprésenterdesnombresentiersnaturelscomprisentre0et2n‐1.
Pourreprésenterunnombreentiernaturelaprèsavoirdéfinilenombredebitssurlequelonlecode,ilsuffitderangerchaquebitdanslacellulebinairecorrespondantàsonpoidsbinairedeladroiteverslagauche,puison«remplit»lesbitsnonutiliséspardeszéros.
Représentationd'unentierrelatif:
Unentierrelatifestunentierpouvantêtrenégatif.Ilfautdonccoderlenombredetellefaçonquel'onpuissesavoirs'ils'agitd'unnombrepositifoud'unnombrenégatif,etilfautdeplusque les règles d'addition soient conservées. L'astuce consiste à utiliser un codage que l'onappellecomplémentàdeux.
Unentierrelatifpositifounulserareprésentéenbinaire(base2)commeunentiernaturel,à la seule différence que le bit de poids fort (le bit situé à l'extrême gauche) représente lesigne.Il fautdoncs'assurerpourunentierpositifounulqu'ilestàzéro(0correspondàunsignepositif,1àunsignenégatif).Ainsisioncodeunentiernaturelsur4bits,lenombreleplusgrandsera0111(c'est‐à‐dire7enbasedécimale).D'unemanièregénéraleleplusgrandentierrelatifpositifcodésurnbitssera2n‐1‐1.
Représentationdesnombressignés:
1. Valeurabsolueetleursigne:
C'est naturellement la première représentationqui vient à l'esprit. Il suffit d'affecterunbitpourlesigneetd'attribuerparconventionlavaleur0ausigne+etlavaleur1ausigne‐.
Page 32
Ainsilenombre+32s'écriradanslesystèmebinaire:
Etlenombre‐32:
Autresexemples:
Lenombre+9,750s'écrit:
Et‐9,750:
2. Complémentrestreint(complémentà1):
Nousallonsd'aborddéfinircequ'est lecomplémentrestreint.Pourcela il fauttenircompteduformatdeladonnéeetdelabasedanslaquelleelleestexprimée.
Exemples:
Soitl'information(453)10;sonformatestde3caractèresetlabaseutiliséest10.
Lavaleurmaximalequel'onpeutexprimerdansceformatest:999
Ladifférencequiexisteentrecettevaleurmaximaleet453s'appellelecomplémentrestreint.
Onlenommeaussicomplémentà9carlabaseutiliséeest10.
Cettenotiondecomplémentrestreintseretrouveavecn'importequellebaseutiliséeetplusparticulièrementenbinaire:
Complémentrestreintde(1001)2
Page 33
Complémentrestreintde(F0A8)16
Sinousreprenonsl'exempledubinaire,iln'estmêmepasnécessaired'exécuteruneopérationdesoustractionpourobtenircecomplémentrestreintons'aperçoitqu'ilsuffitdetransformertousles1en0etviceversapourl'obtenir.
(100110)2àpourcomplémentrestreint:011001
Certainesmachinesutilisentcecodepour lareprésentationdesnombressignés. Ilestalorsappelécodeducomplémentà1.
Ainsilenombre+25serareprésentédelamanièresuivante:
et‐25:
CR=ComplémentRestreint
3. Complémentvrai(complémentà2):
Commepour lecomplémentrestreint,nousallonsdéfinircequ'est lecomplémentvraid'unnombre.
Lecomplémentvraid'unnombreestlavaleurqu'ilfautajouteràcenombrepourobtenirlavaleur maximale + 1 que l'on peut exprimer (en tenant compte du format et de la baseutilisés).
Exemples:
Calculducomplémentvraide(453)10
Valeurmaximale 999
Valeurmaximale+1 1000
Complémentvrai:
Page 34
Calculducomplémentvraide(8AF)16
Valeurmaximale FFF
Valeurmaximale+1 1000
Complémentvrai:
Onpeutaussiobtenirlecomplémentvraid'unnombreencalculantd'abordsoncomplémentrestreintetenajoutantensuite1.
Exemples:
Unexempleenbinaire:
Codecomplémentà2:
Restons en binaire (base 2) et appliquons une autreméthode pour traduire un nombre encomplémentà2.
Onpartdubitdepoidsleplusfaible(bitdedroite):
sic'estunzéro,onrecopie0jusqu'aupremier1rencontré, sic'estun1,ongardecepremier1.
Ensuiteoninversetouslesbitsaprèslepremier1rencontréàpartirdeladroite.
Attentionsilebitleplusàdroiteestun1,c'estaussilepremier1rencontré!
Exemple:
(42)10=(101010)2 lebitleplusàdroiteestun0
0 0onconservelezéro
Page 35
1 1premier1rencontréestconservé
0 1inversiondesbitsaprèslepremier1rencontré
1 0
0 1
1 0
Lenombre(42)10=(101010)2s'écritencomplémentvrai:010110
Enutilisantlaméthodeducomplémentrestreint+1:
Unautreexemple:
(59)10=(111011)2 lebitleplusàdroiteestun1
1 1premier1rencontréestconservé
1 0inversiondesbitsaprèslepremier1rencontré
0 1
1 0
1 0
1 0
Lenombre(59)10=(111011)2s'écritencomplémentvrai:000101
Enutilisantlaméthodeducomplémentrestreint+1:
Complémentvrai=complémentrestreint+1=codecomplémentà2
Enrésumerpourl'arithmétiquebinaire:
Page 36
Lorsque l'onveut représenterunnombreavec son signe (nombresigné) la solution laplussimple consiste à rajouter un bit sur la gauche de la valeur absolue de ce nombre. Parconvention ce bit sera à 0 pour représenter un nombre positifetà1pourreprésenterunnombrenégatif.
0110signifie+110 (+6)10
1110signifie‐110 (‐6)10
Cesystèmeintéressantparsasimplicitéapourinconvénientdeprésenterdeuxzéros.
0000 +0
1000 ‐0
Pour faciliter le travail des machines informatiques et pour des circuits électroniquessimplifiésonreprésenteunnombresignéencomplémentà1(complémentrestreint)ouencomplémentà2(complémentvrai=complémentrestreint+1).
Lareprésentationencomplémentà2(laplusrépandu)àpouravantagedeneprésenterqu'unseulzéro.
Lebitleplusàgaucheserareprésentatifdusigne:
0pourunnombrepositif 1pourunnombrenégatif.
Letableausuivantdonneunaperçudesdifférentesreprésentationspourunnombrecomprisentre‐128et+127.
Représentationdesnombressignés:Exemplesurunoctet
Page 37
Représentationdesnombresréels:
Représentationdesnombresàvirguleflottante:
Noussavonsqu'ilestnécessairedestockerdesdonnéesdanslesmachines.Ainsi lenombre9,750setrouveramémorisésouslaformesuivante:
1001,11
Toutefoiscetteexpressionbinairenesuffitpasàdéfinirtotalementnotredonnéecariln'yaaucuneindicationsurlavaleurdupoidsbinaireaffectéauxdifférentsbits,d'oùlanotiondevirgule.
Enutilisantcettenotiondevirgule,notrenombrepeuts'écriredelamanièresuivante:
N=1001,11x20 N=100,111x21 N=10,0111x22 N=1,00111x23 N=0,100111x24
Cette dernière expression présente l'avantage de représenter la grandeur par un nombreinférieurà1multipliéparunepuissancede2.L'exposant4estbienentendureprésentatifdelapositiondelavirgule.
Donc pour définir totalement notre information (9,750) il faudra dans ce système dereprésenterdeuxtermes:
Leterme100111appeléMANTISSE Leterme100appeléCARACTERISTIQUE
Si dans une machine les informations sont représentées en virgule flottante, elles seprésenterontdelamanièresuivante:
Etelleseraégaleà:
N=0,100111x24 N=1001,11
Représentationdesnombresàvirgulefixe:
Lareprésentationdenombreenvirguleflottanten'estpaslaseuleimaginable.
Expliquonslareprésentationdenombreenvirgulefixeparunexemple.
Soit(25,75)10=(11001,110)2
Page 38
Lapositiondelavirguleestfixearbitrairementàla4èmecaseverslagauche.Lapositiondelavirgulen'estpasvisualisée.
La case la plus à droite représente le poids 20 : ce qui est évidemment faux.Cette représentation suppose la multiplication implicite de ce nombre par 2‐3Le terme ‐3 est représentatif dupositionnement fixede la virgule. Il devra impérativementêtremémorisé.
Comparaisondesdeuxreprésentations(virgulefixeetflottante):
Nousconsidéronsavoirmémoriséletermed'élévationàlapuissance‐3.
Siontravaillesur10positions,lenombreleplusélevéquel'onpourraécrireseraégalà:
1. Envirgulefixe:
2. Envirguleflottante:
Parailleurs,sinousvoulonsécrireunnombre inférieurà1,parexemple47/64(0,734375)nousaurons:
7chiffressignificatifsenvirguleflottante,
3chiffressignificatifsenvirgulefixe.
1. Envirgulefixe:
0000000101
2. Envirguleflottante:
1011110000
Page 39
Sil'oncherchel'équivalentdécimal:
1. Envirgulefixe:
101x2‐3=1/2+1/8=40/64
2. Envirguleflottante:
0,1011110x20=(1/2+1/8+1/16+1/32+1/64)x20=47/64
Ons'aperçoitquelareprésentationenvirgulefixeapporteuneerreurquipeut,danscertainscas,nepasêtrenégligeable.
LecodeBCD:
Toutnombredécimalsedécomposeenpuissancede10.EnBCD,oncodechaquechiffredunombredécimalsur4bits.
LecodeBCDde(175)10
Opérationssurlesystèmebinaire:
L’additionbinaire:
Elles'effectuedelamêmemanièrequel'additiondécimale.
Lanumérationétantàbase2, tout résultat supérieurà1génèreun reportdans la colonnesuivante.
Exemple:Soitàadditionner(13)10et(5)10
Effectuonslatransformationdechaquenombreenbinaire.
(13)10=(1101)2 (5)10=(101)2
Lafiguresuivantemontreleprocessusd'additiondecesdeuxnombresbinaires.
Page 40
Onobtientainsi:(10010)2=(18)10
Lesmêmesrèglesdesigness'appliquentaussidanslecasdesopérationsbinaires.L’additiondenombresignéestutiliséedanslaplupartdescircuitsnumériques.
Troiscaspeuventseprésenter:
L’additiondedeuxnombrespositifs, L’additiondedeuxnombresdesignescontraires, L’additiondedeuxnombresnégatifs.
La méthode consiste à écrire les nombres positifs en notation exacte et à remplacer lesnombrenégatifsparleurcomplémentà2avantd’additionner.Silerésultatestpositif,ilestennotationexacte,s’ilestnégatif,ilestennotationcomplémentà2.
L’additionbinaireclassiqueestanalogueàl’additiondécimale.Ilfautcommencerparlebitdepoidsfaibleenutilisantlesrelationssuivantes:
0+0=0 0+1=1 1+0=1 1+1=0avecunreportde1
Exemple:
Report 1 1 1 1 1 1 1 1 1 1 1 1
+ 1 0 1 1 0 1‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
1 1 0 1 1 0 0
Lescircuitsnumériquesnepermettentpasd’additionnerplusdedeuxnombresbinairesàlafois.Lesadditionssont,en fait,unesuccessiond’additionsdedeuxnombres : le résultatdel’addition du premier et de deuxième est ajouté au troisième et ainsi de suite. L’additionbinaireest l’opération laplus importantedescircuits numériquescar lesautresopérationscommelasoustraction,ladivisionetlamultiplicationendécoulent.
1. Additiondedeuxnombrespositifs:
Effectuonsl’addition(+17)10et(+12)10
Page 41
L’écrituredel’additionestlasuivante:
1ernombre (+17)10 0 1 0 0 0 12èmenombre (+12)10 + 0 0 1 1 0 0 ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐Résultat 0 1 1 1 0 1
2. Additiondedeuxnombresdesignescontraires:
Deuxcasseprésentent:
Lagrandeurdunombrepositifestsupérieureàcelledunombrenégatif:
Effectuonsl’additiondesnombressuivants:
(+17)10=010001et(‐12)10=101100
(‐12)10étantnégatif,ilfautleremplacerparsoncomplémentà2.Pourcela,écrivonsd’abordlecomplémentà1de(‐12)10:(‐12)10=110011
Puisécrivonslecomplémentà2de(‐12)10enluiajoutant1:(‐12)10=110100
Effectuonsl’addition:
1 1 1ernombre (+17)10 0 1 0 0 0 12èmenombre (‐12)10 + 1 1 0 1 0 0 ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐Résultat 1 0 0 0 1 0 1
Remarque:
Nousavonsadditionnélesbitsdesigneetlaretenue;celapeutentraîner,commedanslecasprésent,undébordementquiesttoujoursarejeté.Lasommeétantpositive,lerésultatestennotationexacte:
000101=(+5)10
Lagrandeurdunombrepositifestinférieureàcelledunombrenégatif:
Effectuonsl’additiondesnombres(‐17)10=110001et(+12)10=001100
Lecomplémentà2de(‐17)10est:101111
L’écrituredel’additionestalors:
1 1 1ernombre (‐17)10 1 0 1 1 1 12èmenombre (+12)10 + 0 0 1 1 0 0 ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐Résultat 1 1 1 0 1 1
Page 42
Cette somme est négative, le résultat est le complément à 2 du total cherché qui s’écrit ennotationexacte: 100101=(‐5)10
3. Additiondedeuxnombresnégatifs:
Effectuonsl’additionde(‐17)10et(‐12)10
Lescomplémentsà2sont:(‐17)10=101111et(‐12)10=110100
L’écrituredel’additionestalors:
1 1 1 1 1ernombre (‐17)10 1 0 1 1 1 12èmenombre (‐12)10 + 1 1 0 1 0 0 ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐Résultat 1 1 0 0 0 1 1
Cettesommeestnégative,lerésultatestlecomplémentà2durésultatcherchéquis’écritennotationexacte:111101=(‐29)10
Remarque:Soustrairedeuxnombrespeutserameneràfaireuneaddition.Eneffet,soustraireBdeArevientàadditionneraunombreAécritsoussaformeexacte,lecomplémentà2deB,bit de signe compris (ainsi unnombrepositif devient négatif et unnombrenégatif devientpositif).
Lasoustractionbinaire:
D’unefaçongénérale,lesopérationsdécimalesoubinairesobéissentauxmêmesrègles.
On retranche, dans la colonne de poids le plus faible, le chiffre soustracteur du chiffresoustrait, autrement dit on prend le complément du chiffre soustracteur par rapport auchiffresoustrait.
Silechiffresoustraitaunevaleurnumériqueplusfaiblequecelleduchiffresoustracteur,ilyaempruntautermesoustraitdelacolonnedepoidsimmédiatementsupérieur.
Onprocèdeainsidecolonneencolonnejusqu'àladernièrereprésentantlepoidsleplusélevé.
Demêmequepourlasoustractiondécimale,siletermesoustraitaunevaleurnumériqueplusfaiblequeletermesoustracteur,oninverselesopérateursetonaffecteaurésultatlesigne(‐).
Exemple:Soitàsoustraire(5)10de(11)10
Effectuonslatransformationenbinaire:
(11)10=(1011)2 (5)10=(101)2
Lafiguresuivantemontreledéroulementdelasoustractionbinaire.
Page 43
Lerésultatestdonc:1011‐101=110
Soitendécimal:(110)2=(6)10
L'emprunt généré par l'opération de la colonne 22 est reporté sous forme de retenue aunombredelacolonnedepoidsimmédiatementsupérieure(soit23).
Multiplicationbinaire:
Pourobtenirlerésultatdelamultiplicationd’unnombredécimalpar10,enbase10,ilsuffitdeluiajouterun0.Demême,onobtientlerésultatdelamultiplicationd’unnombrebinairepar(10)2enajoutantun0àcenombre.
Exemple: enbase2:10x10=100;1001x10=10010
Additionnerdeuxnombreégauxrevientàmultiplierpar(10)2enbase2,doncàluiajouterun0.
Exemple:
1+1=0;1001+1001=10010
0x0=0 0x1=0 1x0=0 1x1=1
Lamultiplicationdedeuxnombresbinairessefaitdelamanièresuivante:
1ernombre (‐17)10 1 0 1 1 0 12èmenombre (‐12)10 * 1 0 0 1 1 ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ 1 0 1 1 0 1 1 0 1 1 0 1 . + 0 0 0 0 0 0 . . 0 0 0 0 0 0 . . .
Page 44
1 0 1 1 0 1 . . . . ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐Résultat 1 1 0 1 0 1 0 1 1 1
Remarque:
Silesnombressonttouslesdeuxnégatifs,cesontleurscomplémentsà2quisontprisencompteavantlamultiplicationetleproduitestennotationexacte.
Sil’undesnombresestnégatif,onprendsoncomplémentà2avantlamultiplication,lerésultatestlecomplémentà2duproduitcherché.
Divisionbinaire:
Laméthodeestidentiqueàcelled’unedivisiondedeuxnombresdécimaux.
1ernombre(54)10 2èmenombre(10)10
1 1 0 1 1 0 |
||||||||||
1 0 1 0 ‐ 1 0 1 0 ‐‐‐‐‐‐‐‐‐‐‐‐‐‐ ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ 1 0 1 0 0 1 1 1 ‐ 0 0 0 0 0 ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ 1 1 1 0 ‐ 1 0 1 0 ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ 0 1 0 0
Soit:
(110110)2=(1010)2x(101)2+(100)2
Ouencoreenbase10:54=10x5+4
Silesnombressontnégatifs,onprendleurcomplémentà2avantladivision,lequotientestennotationexacte;
Sil’undesnombresestnégatif,onprendsoncomplémentà2avantladivision,lerésultatestlecomplémentà2duquotientcherché.
CodeASCII:
Danslesannées60,lecodeASCII(AmericanStandardCodeforInformationInterchange)estadopté comme standard. Il permet le codage de caractères sur 8 bits, soit 256 caractèrespossibles.
Qu'est‐cequelecodeASCII?
Page 45
Lamémoiredel'ordinateurconservetouteslesdonnéessousformenumérique.Iln'existepasde méthode pour stocker directement les caractères. Chaque caractère possède donc sonéquivalentencodenumérique:c'estlecodeASCII(AmericanStandardCodeforInformationInterchange ‐ traduisez «Code Américaine Standard pour l'Echange d'Informations»). LecodeASCIIdebasereprésentaitlescaractèressur7bits(c'est‐à‐dire128caractèrespossibles,de0à127).
Lescodes0à31nesontpasdescaractères.Onlesappellecaractèresdecontrôlecarilspermettentdefairedesactionstellesque:
o retouràlaligne(CR)o Bipsonore(BEL)
Lescodes65à90représententlesmajuscules Lescodes97à122représententlesminuscules(Ilsuffitdemodifierle6èmebitpour
passer de majuscules à minuscules, c'est‐à‐dire ajouter 32 au code ASCII en basedécimale.)
TabledescaractèresASCII
Décimal Octal Hex Binaire Caractère ------- ----- --- -------- ------ 000 000 00 00000000 NUL (Null char.) 001 001 01 00000001 SOH (Start of Header) 002 002 02 00000010 STX (Start of Text) 003 003 03 00000011 ETX (End of Text) 004 004 04 00000100 EOT (End of Transmission) 005 005 05 00000101 ENQ (Enquiry) 006 006 06 00000110 ACK (Acknowledgment) 007 007 07 00000111 BEL (Bell) 008 010 08 00001000 BS (Backspace) 009 011 09 00001001 HT (Horizontal Tab) 010 012 0A 00001010 LF (Line Feed) 011 013 0B 00001011 VT (Vertical Tab) 012 014 0C 00001100 FF (Form Feed) 013 015 0D 00001101 CR (Carriage Return) 014 016 0E 00001110 SO (Shift Out) 015 017 0F 00001111 SI (Shift In) 016 020 10 00010000 DLE (Data Link Escape) 017 021 11 00010001 DC1 (XON)(Device Control 1) 018 022 12 00010010 DC2 (Device Control 2) 019 023 13 00010011 DC3 (XOFF)(Device Control 3) 020 024 14 00010100 DC4 (Device Control 4) 021 025 15 00010101 NAK (Negative Acknowledgement) 022 026 16 00010110 SYN (Synchronous Idle) 023 027 17 00010111 ETB (End of Trans. Block) 024 030 18 00011000 CAN (Cancel) 025 031 19 00011001 EM (End of Medium) 026 032 1A 00011010 SUB (Substitute) 027 033 1B 00011011 ESC (Escape) 028 034 1C 00011100 FS (File Separator) 029 035 1D 00011101 GS (Group Separator) 030 036 1E 00011110 RS (Request to Send)(Record Separator) 031 037 1F 00011111 US (Unit Separator) 032 040 20 00100000 SP (Space) 033 041 21 00100001 ! (exclamation mark) 034 042 22 00100010 " (double quote) 035 043 23 00100011 # (number sign) 036 044 24 00100100 $ (dollar sign) 037 045 25 00100101 % (percent) 038 046 26 00100110 & (ampersand) 039 047 27 00100111 ' (single quote) 040 050 28 00101000 ( (left opening parenthesis)
Page 46
041 051 29 00101001 ) (right closing parenthesis) 042 052 2A 00101010 * (asterisk) 043 053 2B 00101011 + (plus) 044 054 2C 00101100 , (comma) 045 055 2D 00101101 - (minus or dash) 046 056 2E 00101110 . (dot) 047 057 2F 00101111 / (forward slash) 048 060 30 00110000 0 049 061 31 00110001 1 050 062 32 00110010 2 051 063 33 00110011 3 052 064 34 00110100 4 053 065 35 00110101 5 054 066 36 00110110 6 055 067 37 00110111 7 056 070 38 00111000 8 057 071 39 00111001 9 058 072 3A 00111010 : (colon) 059 073 3B 00111011 ; (semi-colon) 060 074 3C 00111100 < (less than sign) 061 075 3D 00111101 = (equal sign) 062 076 3E 00111110 > (greater than sign) 063 077 3F 00111111 ? (question mark) 064 100 40 01000000 @ (AT symbol) 065 101 41 01000001 A 066 102 42 01000010 B 067 103 43 01000011 C 068 104 44 01000100 D 069 105 45 01000101 E 070 106 46 01000110 F 071 107 47 01000111 G 072 110 48 01001000 H 073 111 49 01001001 I 074 112 4A 01001010 J 075 113 4B 01001011 K 076 114 4C 01001100 L 077 115 4D 01001101 M 078 116 4E 01001110 N 079 117 4F 01001111 O 080 120 50 01010000 P 081 121 51 01010001 Q 082 122 52 01010010 R 083 123 53 01010011 S 084 124 54 01010100 T 085 125 55 01010101 U 086 126 56 01010110 V 087 127 57 01010111 W 088 130 58 01011000 X 089 131 59 01011001 Y 090 132 5A 01011010 Z 091 133 5B 01011011 [ (left opening bracket) 092 134 5C 01011100 \ (back slash) 093 135 5D 01011101 ] (right closing bracket) 094 136 5E 01011110 ^ (caret cirumflex) 095 137 5F 01011111 _ (underscore) 096 140 60 01100000 ` 097 141 61 01100001 a 098 142 62 01100010 b 099 143 63 01100011 c 100 144 64 01100100 d 101 145 65 01100101 e 102 146 66 01100110 f 103 147 67 01100111 g 104 150 68 01101000 h 105 151 69 01101001 i 106 152 6A 01101010 j 107 153 6B 01101011 k 108 154 6C 01101100 l 109 155 6D 01101101 m 110 156 6E 01101110 n 111 157 6F 01101111 o
Page 47
112 160 70 01110000 p 113 161 71 01110001 q 114 162 72 01110010 r 115 163 73 01110011 s 116 164 74 01110100 t 117 165 75 01110101 u 118 166 76 01110110 v 119 167 77 01110111 w 120 170 78 01111000 x 121 171 79 01111001 y 122 172 7A 01111010 z 123 173 7B 01111011 { (left opening brace) 124 174 7C 01111100 | (vertical bar) 125 175 7D 01111101 } (right closing brace) 126 176 7E 01111110 ~ (tilde) 127 177 7F 01111111 DEL (delete)
Lecontrôled'erreurs:
Lecontrôledeparité:
Le contrôle de parité (appelé parfois VRC, pour Vertical Redundancy Check ou VerticalRedundancyChecking)estundessystèmesdecontrôlelesplussimples.Ilconsisteàajouterunbitsupplémentaire(appelébitdeparité)àuncertainnombredebitsdedonnéesappelémotdecode(généralement7bits,pourformerunoctetaveclebitdeparité)dontlavaleur(0ou1)est telleque lenombretotaldebitsà1soitpair.Pourêtreplusexplicite ilconsisteàajouterun1silenombredebitsdumotdecodeestimpair,0danslecascontraire.
Prenonsl'exemplesuivant:
Dans cet exemple, le nombre de bits de données à 1 est pair, le bit de parité est doncpositionné à 0. Dans l'exemple suivant, par contre, les bits de données étant en nombreimpair,lebitdeparitéestà1:
Imaginons désormais qu'après transmission le bit de poids faible (le bit situé à droite) del'octetprécédentsoitvictimed'uneinterférence:
Lebitdepariténecorrespondalorsplusàlaparitédel'octet:uneerreurestdétectée.
Page 48
Toutefois,sideuxbits(ouunnombrepairdebits)venaientàsemodifiersimultanémentlorsdutransportdedonnées,aucuneerreurneseraitalorsdétectée...
Lesystèmedecontrôledepariténedétectantqueleserreursennombreimpair,ilnepermetdoncdedétecterque50%deserreurs.Cesystèmededétectiond'erreurspossèdeégalementl'inconvénientmajeurdenepaspermettredecorrigerleserreursdétectées(leseulmoyenestd'exigerlaretransmissiondel'octeterroné...).
Page 49
Calculd’expressionslogiques
Définitions:
AlgèbredeBoole:GeorgeBooleestlepèrefondateurdelalogiquemoderne.L'algèbrede
Boole est une algèbre permettant de traduire des signaux (tout ou rien) en expressions
mathématiques en remplaçant chaque signal élémentaire par des variables logiques et leur
traitementpardesfonctionslogiques.
Variable Booléenne: La variable logique «booléenne» est une grandeur qui peut
prendre 2 valeurs qui sont repérées habituellement 0 «faux» ou1«vrais». Cette variable
binairesenoteparunelettrecommeenalgèbre.
Exemple:a,b,x.
Opérateurslogiques«booléen»:
Ondéfinitcinqopérateurslogiquesdebase:
1. OUI,
2. NON,
3. OUInclusif,(etsoncomplément),
4. ET,(etsoncomplément),
5. OUExclusif,(etsoncomplément).
Expression logique «booléenne» (fonction booléenne): Une expression
booléenne est le résultat de la combinaison d'une ou plusieurs variables logiques reliées
entreellespardesopérateursBOOLEENSbiendéfinies.
Lavaleurrésultantedecettefonctiondépenddelavaleurdesvariableslogiques,maisde
toutefaçoncetterésultantenepeutêtrequeOou1.
Unefonctionlogiquepossèdedoncuneoudesvariableslogiquesd'entréeetunevariable
logiquedesortie.
Lesexpressionsbooléennesserventàexprimerdesconditions.Ellespeuventêtre
Uneconstantebooléenne:(vrai/faux)
Unevariablebooléenne:a,x
Desexpressionsarithmétiquescombinéespardesopérateursrelationnels:a*2<12
Page 50
Lesopérateursrelationnels:
<,>,=,>=,<=.
Desexpressionsbooléennescombinéespardesopérateursbooléens:(a>b)ou(a<=c).
Tablede vérité : Table permettant de visualiser les valeurs de vérité des expressions
composéesenfonctiondecellesdesexpressionsdedépart.
FonctionNON:(NO)
Définitions:LafonctionNON(ounégation)effectuelecomplémentlogique(oul'inverse)
d'unevariable.Onlenoteenajoutantunebarresurlavariablexestlecomplémentdexetse
litxbarre).Cettedéfinitionconduitauxrelationssuivantes:
1=0;
0=1;
OnendéduitquelecomplémentdeAestégaleàAbarre;etlecomplémentdeAbarreest
égale à A. Il est possible de complémenter plusieurs fois une variable ou un groupe de
variables.
Exemple:
Tabledevérité:
Formecanonique:X=abarre
&FonctionET:(AND)
Définitions : Cette opération, aussi appelée intersection, appliquée à deux variables,
conduitauproduit,oufonctionETdecesdeuxvariables.Onlanoteparlesigne ‘.’entreles
deux variables x et y, mais plus simplement xy ou x.y. Le résultat est égal à 1 si les deux
variablesvalent1.
Tabledevérité
Page 51
Forme canonique : x= ( ) ou (a et b)
Propriétés:
FonctionOU(Inclusif):(OR)
Définitions : Cette opération, aussi appelée réunion, appliquée à deux variables, on la
noterasouslaformex+y.Lerésultatestégalà1sil'uneoul'autredesvariablesoulesdeux
valent1.
Tabledevérité
Formecanonique:X=a+b
Propriétésparticulières:
FonctionOUExclusif:(XOR)(OUdisjonctifouDilemme)
Page 52
Définition :La fonctionOUExclusifestencoreappelée fonctiond'anti‐coïncidencecarsa
sortien'estàl'état1quelorsqueles2entréessontdansdesétatsdifférents.
Tabledevérité:
Nousl'écrivons: .
Différentesrelations:
Relations de bases : Les opérations fondamentales sont : la somme, le produit, le
complément.
ToutevariableBauninverseappelécomplément,etnotéBtelque:
,
Lesopérationssontcommutatives:
,
Lesopérationssontdistributives:
DistributivitéduETparrapportauOU
Unetabledevéritépermetdevérifierque:
Cettepropriétéautoriseàdévelopperou,inversement,àmettreenfacteurscommeenalgèbre
classique.
Page 53
Exemple:
DistributivitéduOUparrapportauET
Demême,onpeutvérifierque:
Cetterelationestintéressantepourmettreuneexpressionsousformedeproduitlogique(ET)
deOUlogique.
Exemple:
Autresrelations:
ThéorèmedeDEMORGAN:
1erthéorème:Le complément d'un produit de variables, est égal à la somme des compléments
de variables.
2ème Théorème : Le complément d'une somme de variables, est égal au produit des
compléments de variables.
Représentation d'une fonction: Il existe plusieurs formes de représentation d'une
fonctionlogique;envoicideux:
Tabledevérité.
Page 54
Formecanonique:Pourécrirel'équationdeXenfonctiondes3variablesilfautdire:
Autantdetermesquedefoisquelafonctionestégaleà1.
Cequidonneuneécriture"algébrique"ennotant:
Lavariableparsalettresiellevaut1(ex:siavaut1nousécrironsa).
Lavariableparsalettresurlignéesiellevaut0.(ex:siavaut0nousécrirons etnous
lironsabarre).
Pourlatabledevéritéci‐dessus,cela
Prioritésdesopérateurs:
Priorité Typesd'opérateurs Significations Symbole
haute Crochets,
parenthèses
[]()
Arithmétique
unaire
Logiqueunaire
Changementde
signe
Inversionlogique
‐
!
Arithmétique
binaire
Arithmétique
binaire
Incrémentation
Décrémentation
++
‐‐
Arithmétique
binaire
Arithmétique
binaire
Multiplicatifs
Additifs
/*%
+‐
Relationnel
Relationnel
Comparaisons
Egal,différent
>>=<<=
==!=
Logique
Logique
Et
Ou
&&,
||
basse