Click here to load reader

Système d’exploitation : Assembleur

  • View
    94

  • Download
    1

Embed Size (px)

DESCRIPTION

Système d’exploitation : Assembleur. Semaine 02 Architecture. Système informatique. Système informatique. UCT = U nité C entrale de T raitement = C entral P rocessing U nit = CPU. Système informatique. Le microprocesseur est un circuit intégré complexe qui joue le rôle de CPU. - PowerPoint PPT Presentation

Text of Système d’exploitation : Assembleur

Systme dexploitation : Assembleur

Systme dexploitation : AssembleurSemaine 02Architecture1Systme informatique

2Systme informatique

UCT = Unit Centrale de Traitement = Central Processing Unit = CPU3Systme informatiqueLe microprocesseur est un circuit intgr complexe qui joue le rle de CPU.

Analogie homme machineOrganes dentre : odorat, vue, toucher, got, oue Organes de sortie : les musclesOrgane de traitement : le systme nerveux, le cerveau

Cerveau (2 units centrales) -CPUMCT -registresMLT -mmoires RAM-ROMLivres, Bibliothques,-disques externes : disque dur, cd rom, 4BIOS et DOSBIOS : programme permanent en ROMpermet de dmarrer le systme aprs mise sous tensionexemple dappel au BIOS : service date et heureservice vido : taille du curseurDOS : systme dexploitation en RAMgre les composants du systmeinterface homme-machineexemple dappel au DOS : affichage lcran, entre au clavier,5BIOS :le DOS sappuie sur un prog en mmoire morte (ROM) le BIOS est le programme permanent de la machine contient un grand nombre de procdures daccs aux priphriques

Quand tude des INT (+ tard), nombreux appels au DOS et au BIOS

Composants de lordinateurLa mmoire : Diffrentes formes : ROM - RAM Comprend instructions et donnesAdresse et contenu dune mmoire Lhorloge :Circuit lectronique qui cadence le pro Le processeur : caractristiquestaille bus de donnesjeu dinstructionsmodes dadressagenombre de registres internes architecture internetaille bus dadressestaille des registres du profamille des circuits programmables associsvitesse de fonctionnement6pro : reli des circuits mem : donnes et instructions !!Mmoire : une commode avec tiroirs superposs. Chaque tiroir a un n : adresseChaque tiroir contient une information !!! Adresse Donne !Contenu : 1 octet = 8 bits = 2 digit hexaAdresse : 8088 : 20 bits = 5 digits hexa

Horloge : +/- idem que mtronome pour musicienpermet un fonctionnement pas--pas de lUC. chaque impulsion, UC fait une partie dune instr. (1 instr.: Min 2 cycles)pro : BUS = circuiterie interne. Expl : maison : circuit chauffage (bus = tuyauterie)les info vont dun circuit intgr un autre en passant par le busbus : divis en 4 grdes parties : bus dadresse, de donnes, de contrle, les lignes dalimentation. Taille du bus : transfert en parallle. 8 - 16 - 20 - 32 bits ( chaque x des 1 et des 0). Horloge ! Bus dadresses : 8088 : 20 bits / 80286 : 24 bits / 80386 et suvants : 32 bits20 bits : 1024Ko = 1 Mo - 32 bits : 4GoBus de donnes : 8088 : 8 bits / 80286 : 16 bits / 80386 et suivants : 32 bits

MicroprocesseurUnit de mmoireRAM/ROM/HDDPort dentrePort de sortieStructure classique dun PBus de donnesBus dadressesBus de contrle7Le processeur : architecture externePRAMEntreSortieROMDECBus de donnesBus dadressesBus de contrle8Sur la carte mre on retrouve les diffrents lments mentionns.

Fonctionnement : grce au dcodeur

Quand le P veut accder une donne en mmoire, ladresse de la cellule mmoire est envoye sur le bus dadresse. RAM, ROM, IN, OUT : sont inactives. Le dcodeur va activer le circuit auquel est destin ladresse.

Le Processeur Etude du 8088 :Architecture simple, jeu dinstructions de baseNotion de multiplexageBus partag entre adresses et donnes=> Un dcodeur est ncessairevrai 16 bits :bus et registres en 16 bitsExemple : 8086faux 16 bits :registres en 16 bits mais bus de donnes en 8 bitsExemple : 8088

9Catgories de broches : 1) celles qui permettent transfert de donnes entre pro et mm.(= bus de donnes - bidirectionnel !!) 2) celles o le pro place une adresse de la mm ( cd n de la case mmoire) = bus des adresses. 3) les autres forment le bus de contrle : expl : - lecture/criture (le pro dit : je vais lire ou je vais crire)- lhorloge- des signaux permettant le dialogue avec la mem et les circuits dinterfaage (op. termine,)- des signaux dinterruption (qd un priphrique veut la main)

INTEL 8088

10Le Processeur : 8088Broche 1 : GNDBroches 2 8 : adresses bits 8 14Broches 9 16 : adresses - donnes bits 7 0Broche 17 : demande dinterruption (NMI)Broche 18 : demande dinterruption (INTR)Broche 19 : CLK : horloge systmeBroches 35 38 : adresses bits 16 19Broche 39 : adresse bit 15 Broches S0 S6 : Info sur ce que fait le processeur

11Broche 1 : GNDBroches 2 8 : adresses bits 8 14Broches 9 16 : adresses - donnes bits 7 0Broche 17 : demande dinterruption (NMI)Broche 18 : demande dinterruption (INTR)Broche 19 : CLK : horloge systme.Broches 35 38 : adresses bits 16 19Broche 39 : adresse bit 15

Broches S0 S6 : donnent info sur ce que fait le micropro. Expl : lecture mmoire

Architecture interne du processeur 8088 : Execution Unit et Bus Interface Unit

12EU et BIU fonctionnent en paralllemode pipeline : pendant que EU excute une instruction, BIU va chercher la suivanteLes instruction recherches sont mises en attente dans une file qui peut contenir 4 octets.Cette file dattente est de type FIFO. Quand place libre, BIU va chercher la suivante.BIU suspend sa recherche quand EU ordonne un accs en mmoire

EU : contient UAL : unit arithmtique et logique : excute les oprationsEU : pas en communication directe avec lextrieur. Donnes : 8 bits et Adresses : 20 bits do multiplexage.Registre : petite zone de rangement de 8 bits ou 16 bits

Architecture interne du processeur 8088 (1/3)L UE : excution des instructions(contient lALU, 8 registres de 16 bits et le registre dtat).LUIB : adaptation entre UE et monde extrieurgre la segmentation de la mmoire, elle contient les registres de segment + IP (Instruction Pointer)

13Architecture interne du processeur 8088 (2/3)Les registres du processeur :quest-ce quun registre ?notion de taille dun registreles registres de travail AX, BX, CX, DXse dcomposent : AH,AL,BL,BH,...les registres pointeurs et index SP, BP, SI, DIles registres de segment CS, DS, SS, ESle registre IPle registre FLAG

14Les registres de travail ou registres gnraux :AX accumulateur : utilis lors doprations arithmtiquesBX registre de base : utilis lors de ladressageCX compteur : utilis notamment pour instruction LOOPDX data : utilis pour instructions arithmtiques.Ces registres ont une longueur de 16 bits et peuvent tre dcomposs en 2 registres de 8 bits

Les oprations impliquant les registres sont beaucoup + rapides que celles impliquant des zones mmoire.

Les registres pointeurs et index: SI : source index utilis pour les traitements sur chanes de caractres - associ DS DI : destination index utilis lors doprations sur chanes de caractres - associ ES BP : base pointer associ au registre SS pour accder aux donnes de la pile SP : stack pointer associ au registre SS - pointe vers le dernier lment de la pile

Les registres de segment : CS : code segment : contient ladresse du segment mmoire o se trouvent les instructions du programme DS : data segment : contient ..donnes du programme SS : stack segment : contientla pile ES : extra segment : contientdonnes supplmentaires

Le registre IP : reg 16 bits : associ CS. CS:IP . Contient ladresse de la prochaine instruction excuter.Ce registre ne pourra jamais tre modifi directement.Il sera modifi indirectement par des sauts, appel des sous-routines,...

Registre FLAG : voir page suivante

Architecture interne du processeur 8088 (3/3)les registres de travail AX, BX, CX, DX (1x 16 bits ou 2x 8 bits)les registres pointeurs SP et BPles registres index SI et DIles registres de segment CS, DS, SS, ESle registre IPle registre FLAG

15

1) 0001h +0001h 0002h PF=0

2) 0001h +0002h 0003h PF=1 1) FFFF +0001 0000 CF=1

2) 00FF +0001 0100 CF=0 !!, mais AF=1

3) non sign sign FFFE 65534 -2- FFFF - 65535 -(-1) FFFF 65535 -1

4) 8000 +8000 0000 CF=11) 0001 - 0001 0000 ZF=1

2) 8000 +8000 0000 ZF=11) 4000 + 4000 8000 SF=1

2) 2000 +2000 4000 SF=01) OF sans CF 4000 +4000 8000 OF=1 car (nb+)+(nb+)=(nb-) en sign2) OF avec CF 8000 +8000 0000 OF=1 car (nb-)+(nb-)=(nb+) en sign

OF ACTIVE QD LE SIGNE CHANGE ET QUIL NE DEVRAIT PAS !!!!!!!Les FLAGS (1/2)Overflow Flag 1 si le dernier rsultat a dbord de la taille du registrePour laddition: si 0+0=1 ou si 1+1=0 pour le MSBPour la soustraction: si 0-1=1 ou si 1-0=0 pour le MSBSign Flag 1 si la dernire opration a gnr un rsultat ngatifidentique au MSB du rsultatZero Flag 1 si les deux oprandes utiliss sont gauxle rsultat vaut 0Auxiliary carry Flag 1 si la dernire opration a gnr une retenue du bit numro 3 vers le bit numro 4, 0 sinonParity Flag 1 si le nombre de bits 1 est pair dans les 8 bits de poids faible du rsultat de la dernire oprationCarry Flag 1 si la dernire opration a gnre une retenue16Les FLAGS (2/2)Direction Flag 1 si le transfert de donnes se fait en dcrmentant les offsetInterruption Flag 1 si les interruptions sont autorisesTrap Flag 1 pour excuter les instructions en mode pas pas. Avant chaque instruction, INT 1 est appele. Cette interruption est utilise par les dbogueurs.

17