[PDF] Archi Système cours 4 registre. Accumulateur et logique (UAL).





Previous PDF Next PDF



CPU et mémoire

Registres CPU LMC. Accumulateur ( A or Acc ). Registre d'instruction ( IR ). Registre d'adresses ( MAR ). Registre de données ( MDR ). Compteur de programme ( 



Electronique TD3 18/19

e- Le registre d'instruction stocke le résultat de l'instruction en cours exécution Vrai ou Faux ? f- Le registre Accumulateur se trouve dans UCC (Unité de 



Chapitre 1: Architecture du Microprocesseur 6809

Le microprocesseur 6809 dispose de neuf registres internes accessibles à l'utilisateur. (figure n°2). Accumulateur B. Accumulateur A. Compteur-Programme PC.



7. Instructions et micro-instructions.key

Le jeu d'instruction supporte les quatre instructions suivantes où Rd est le registre destination et. Rs le registre source : Mnémonique. Opcode Description.



Rapport annuel du Registre Piles et accumulateurs : Données 2018

européenne 2006/66/CE relative aux piles et accumulateurs le Registre national des producteurs de piles et ▫ PA industriel : est considéré comme pile ou ...



Eau chaude avec pompes à chaleur / Une bonne planification pour

٢٢‏/٠٣‏/٢٠٢٣ inconvénients par rapport à l'accumulateur à registre. -. La différence de température entre le côté primaire et le côté secondaire de la ...



Registre des Piles et Accumulateurs - Rapport Annuel - Données

Registre PA un accumulateur au plomb pèse environ 17 kg22. Néanmoins



PLAN PLAN

Le registre Accumulateur. ▫ Certaines opérations portent implicitement sur Les registre d'instruction. ▫ Le registre d'instructions noté RI



Diapositive 1

Le résultat est mis dans le registre accumulateur. Code opération Opérande2. Exemple : ADD A ( ACC←(ACC) + A ). Ce type de machine 



4. Architecture générale dun ordinateur

registre spécial = registre accumulateur : • Le 2ème opérande se trouve déjà dans le registre accumulateur chargé par l'instruction précédente. • L 



CPU et mémoire

Exécute les instructions machines en utilisant les registres et l'UAL IR (le registre d'instruction) ... Un seul registre : Acc (accumulateur) ...



Diapositive 1

L'UAL comporte un registre accumulateur. ( ACC ):. • c'est un registre de travail qui sert a stocker un opérande (données ).



Le Microcontrôleur 8051/8052

Octet haut du registre DPTR (adressage mémoire externe) processeur l'Accumulateur est C. Les bits de certains registres sont ainsi accessibles par.



Rapport annuel du Registre Piles et accumulateurs : Données 2018

Registre des Piles et Accumulateurs - Rapport Annuel - Données 2018



16 bits DH DL CH CL BH BL Accumulateur Base Compteur

Accumulateur. Base. Compteur. Données. Registres généraux. Code. Extra. Pile (Stack). Données. Registres de segment. 16 bits. Pile (Stack).



Jeu dinstruction et pipeline

Un opérande est l'accumulateur. ? Architecture à registres généraux. ? Opérandes explicites: ? Registre-mémoire. ? Accès mémoire comme partie d'une 



Etapes dexécution des instructions

chemin de données (la mémoire ou les registres) Charger le 1er mot d'instruction de la mémoire principale vers le registre d'instruction.



Chapitre 2

Compteur ordinal (Program Counter (PC) ). • Registre d'état (Processor Status (PS) ). • Registres d'adresse etc. • Un registre d'instruction (RI)



Archi Système cours 4

registre. Accumulateur et logique (UAL). Registre d'états. Pointeur Stockage dans la mémoire dans les registres



Les registres interne du µP :

1- Accumulateur Ac ( registre de travail) :registre à 8bits très utilisés dans 6- Registre d'instruction :toutes les instructions d'un programme sont en ...



[PDF] CPU et mémoire

Registre (ou l'ensemble de registres) utilisé pour la manipulation des données D'habitude contient les résultats des opérations arithmétiques ou logiques Page 



[PDF] Etapes dexécution des instructions

Etapes d'exécution des instructions ? Lecture d'instruction • Charger le 1er mot d'instruction de la mémoire principale vers le registre d'instruction



[PDF] Architecture des ordinateurs

Architecture de von Neumann • Processeur contient deux registres spéciaux • Registre d'instruction (RI) • Compteur ordinal (PC ? Program Counter)



[PDF] Electronique TD3 18/19

f- Le registre Accumulateur se trouve dans UCC (Unité de Commande et de Contrôle) Vrai ou Faux ? g- L'accumulateur est un registre de l'unité arithmétique et 



[PDF] Le Microcontrôleur 8051/8052

Le 8051 possède un processeur de bits qui travaille sur des bits individuels Pour ce processeur l'Accumulateur est C Les bits de certains registres sont ainsi 



[PDF] Cours de Microcontrôleurs

microcontrôleur HCS12 (registres programmation séquentielle ruptures de séquence) L'accumulateur D est le registre de 16 bits constitué par la 



[PDF] Registres généraux - Irif

DH DL CH CL BH BL Accumulateur Base Compteur Données Registres généraux Code Extra Pile (Stack) Données Registres de segment 16 bits



[PDF] But de ce sujet Les registres du processeur - CoursTechInfo

Introduction à l'assembleur http://www courstechinfo be/Programmation/IntroASM pdf AX "accumulator" l'accumulateur est privilégié pour y faire certaines



[PDF] Chapitre 1: Architecture du Microprocesseur 6809

Le microprocesseur 6809 dispose de neuf registres internes accessibles à l'utilisateur (figure n°2) Accumulateur B Accumulateur A Compteur-Programme PC



[PDF] Architecture des ordinateurs

L'UAL comporte un registre accumulateur ( ACC ): • c'est un registre de travail qui sert a stocker un opérande (données )

:

1Architecture des ordinateurs

et système d'exploitation

Chapitre 4

Microprocesseurs

Sylvain Cherrier

2Architecture de l'ordinateur

Organisation de la mémoire Interactions directes avec le microprocesseur Stockage des instructions du programme Création, modification, et suppression des données Harvard Mémoires séparées : 1 pour les données, 1 pour les instructions Problèmes : taille optimale ?  Von Neuman Une seule mémoire, contenu mélangé Problèmes : 17 est il la donnée 17, ou l'instruction 17 ?

3Architecture interne du microprocesseur

Mémoire

donnéesadresses

Décodeur

instuctionsregistreregistreregistre registreregistreregistre

Accumulateur

et logique (UAL)

Registre d'étatsPointeur

pile

Compteur

ordinal

Horloge

4Les registres

Permettent de stocker des valeurs Ont une taille définie (32 bits, 64 bits) Utiles pour la manipulation des données (un compteur, une valeur à modifier) Remplissent en gros le rôle des variables Certains registres contiennent des adresses mémoires (pointeur, de type pile, ordinal, base, etc) Certains registres peuvent avoir un rôle particulier pour certaines commandes du processeurs

5Unité Arithmétique et logique

(Accumulateur) Contiendra le résultat d'une opération mathématique Souvent, une opération est appelée sur son contenu, et un registre (ajoute le registre 3, soustrait le registre 2) Les opérations déclenchent des réaction dans le registre des états (résultat zéro, négatif, virgule, retenue, division par zéro, etc) Capable de faire des opérations logiques (si tel registre est supérieur à tel valeur, égal, différent de, etc) Parfois, certains registres sont capables eux aussi d'exécuter des opérations (INC et DEC sur leurs contenus)

6Registre d'états

Le registre d'états correspond à des " juges de touches » Il contient des " flags » représentant l'état courant de l'accumulateu Parmi ces flags : Nul (l'opération a donné un résultat 0), NEG (négatif), virgule (l'opération n'a pas donné un résultat entier), retenue (un débordement a eu lieu), division par zéro C'est à la charge du programmeur d'aller consulter ce registre d'état Comme un juge de touche, si l'arbitre (le programmeur) ne s'intéresse pas à son indication, alors, le programme continue

7Compteur ordinal

Contient l'adresse de la prochaine exécution à lire Permet de suivre la logique du programme Chaque lecture incrémente le compteur ordinal Celui-ci connaît alors l'adresse de la prochaine instruction Une boucle se réalise en manipulant l'adresse du compteur ordinal Si la valeur borne n'est pas atteinte (UAL), alors retourne de 4 instructions en arrière (CO = CO - 4 ) L'appel à une fonction se fait en altérant l'adresse de la prochaine instruction Comment faire alors pour revenir à l'endroit de départ ? Comment passer des paramêtres ? Comment renvoyer une valeur de retour ?

8Décodeur d'instructions

Séléction d'une case mémoire (Compteur Ordinal) Transfert du contenu de la case vers le décodeur d'instruction Décodage et incrément du compteur ordinal (pour instruction suivante) Exécution de l'instruction transfert vers un registre, altération d'un registre (inc, CO, pile, etc) ou transfert depuis un registre utilisation de l'ALU (opération mathématique, logique...),  interrogation des registres d'états, etc

9Architecture interne du microprocesseur

Mémoire

donnéesadresses

Décodeur

instuctionsregistreregistreregistre registreregistreregistre

Accumulateur

et logique (UAL)

Registre d'étatsPointeur

pile

Compteur

ordinal

Horloge

1/ Cadence2/ prochaine

instruction3/ décodage4/ utilisation des ressources

5/ MAJ du registre d'états

(si nécessaire)

10Langage machine

Liste d'instructions comprises par le microprocesseur Définie par le fabricant Propre à chaque architecture Décrit une opération atomique une addtion,  un test,  un transfert en mémoire Un programme = liste d'instructions Exécution séquentielle des instructions

11Format des instructions

Code binaire Avec ou sans arguments Chaque instruction : un opcode Par exemple en intel x86 :  Les opcodes 06 et 07 correspondent respectivement à PUSH et POP Les opcodes 00, 01 et 02 = ADD avec différents types de registres (8, 16,

32 bits)

Codification difficile Utilisation de Mnémonique pour simplifier le codage

12Guide assembleur Intel

Source : http://ref.x86asm.net

OpCodeMnémonique

Description

13Exemple de programme assembleur

.486 .MODEL FLAT .CODE

PUBLIC _myFunc

_myFunc PROC ; Subroutine Prologue push ebp ; Save the old base pointer value. mov ebp, esp ; Set the new base pointer value. sub esp, 4 ; Make room for one 4-byte local variable. push edi ; Save the values of registers that the function push esi ; will modify. This function uses EDI and ESI. ; (no need to save EBX, EBP, or ESP) ; Subroutine Body mov eax, [ebp+8] ; Move value of parameter 1 into EAX mov esi, [ebp+12] ; Move value of parameter 2 into ESI mov edi, [ebp+16] ; Move value of parameter 3 into EDI mov [ebp-4], edi ; Move EDI into the local variable add [ebp-4], esi ; Add ESI into the local variable add eax, [ebp-4] ; Add the contents of the local variable ; into EAX (final result) ; Subroutine Epilogue pop esi ; Recover register values pop edi mov esp, ebp ; Deallocate local variables pop ebp ; Restore the caller's base ; pointer value ret _myFunc ENDP END Source : http://www.cs.virginia.edu/~evans/cs216/guides/x86.html

14Langages

Traduction vers le binaire (les opcodes) : compilation L'Assembleur est compilé Le codage est fait au plus proche de la machine On dit ; langage bas niveau Le résultat est très efficace Langages plus évolués : haut niveau Codage beaucoup plus facile, plus proche du langage humain Chaque instruction est transformée en une suite équivalente de plusieurs opcodes L'écriture directe en opcode (assembleur) serait certainement plus optimale Les compilateurs sont capables d'optimiser le code, à un point qui rivalise un bon codeur assembleur

15Un petit bonjour

En assembleur (Source wikipedia.org)

16Un petit bonjour

En python En C

17Résultats

Compilation de l'assembleur

nasm -f elf test.asm ld -o test test.o -melf_i386 Le binaire fait 672 octets

Compilation du C

Gcc -o test test.c Le binaire fait 6704 octets (10 fois plus) Interprétation du python python3 testpython.py Lancement de l'interpréteur, qui exécute ensuite pas à pas le script python

18Résultats en terme d'exploitation

Surveillance du processus avec strace

Programme en assembleur : 1 seul appel au système strace testasm (3 appels système) Programme en C De nombreux appels au système strace test (env. 40 d'appels système) Programme python Interpréteur, qui exécute le programme strace python3 testpython.py (plus de 650 appels système) Durée : 0.024s (les deux autres donnent 0 ,000 s)

19Structure d'un programme

Un programme est constitué de 4 zones :

Le segment de code (Les instructions) Le segment de pile (les variables locales et gestion des fonctions) Le segment de données (variables globales) Le tas (zone dynamique, qui varie en cours de la vie du programme) Ces contenus sont définis lors de la création du binaire, selon les besoins détectés. Parfois, certains zones sont protégées, afin d'assurer la sécurité (par exemple, le segment de code est en lecture seule)

20Simulation d'un micro processeur

Pseudo processeur, avec pseudo langage assembleur (hérité du 6502) A but pédagogique uniquement Objectif : visualiser les échanges, comprendre les mécanismes

21Little Thinker

Saisie du

programme :

Case zéro et

suivantesLancement du programme :

Pas à pas ou

completVue en temps réel des modifs des différents registres

22Éléments, et notation

Les éléments manipulables sont :

Les cases mémoire Il y a 50 cases mémoires Numérotées de 0 à 49 Il n'y a pas de nom de variables, vous devez vous souvenir où vous rangez les données L'adresse s'exprime avec un $ ($12 veut dire case mémoire 12) Les 5 registres Numérotés de 0 à 4 Accès avec un # (#1 est le deuxième registre) On peut y déposer une valeur, ou la consulter L'accumulateur Il s'appelle a On y dépose le premier opérande On indique ensuite l'opérateur et le second opérande

23Syntaxe des commandes

Commande espace argument1 espace.... argumentN

En général, les commandes prennent un ou deux arguments. La casse n'a pas d'importance. Attention : ici, chaque instruction (opcode) tient dans une case. Dans la réalité, les opcodes et leurs arguments occupent n cases mémoire Les instructions permettent  d'échanger des données entre la mémoire et le processeur Faire des calculs Faire des tests Faire des sauts

24Transferts

Stockage dans la mémoire, dans les registres, ou dans l'accumulateur Les données proviennent de la mémoire, des registres, de l'accumulateur, ou sont écrites " en dur » Pour VENIR DANS le processeur, la commande est :  LD cible origine (load) Pour SORTIR DU processeur (vers la mémoire), la commande est ST origine cible (store) Pour des copier coller à l'INTÉRIEUR du processeur, la commande est MV origine cible (move) Quelques exemples d'instructions ld a 15 st #0 $10 ld #1 12 d #1 $12 mv a #2

25Operations mathématiques

inc cible pour l'Incrémentation dec cible décrementation Faisable directement sur un registre Exemple de programme ld #1 12 ld #0 3 dec #1 dec #1 inc #0

26Operations mathématiques

Les opérations sont en général faites sur l'accumulateur On met le premier opérande dans l'accumulateur On déclenche l'opération (opérateur 2ième opérande) Le résultat est dans l'accumulateur (l'ancien contenu est écrasé) Le registre d'état peut être affecté par cette opération (nul, négatif, retenu) Il faut ensuite recopier ce résultat pour l'exploiter ld a 5 add 12 mv a #1

27Opérations mathématiques et logiques

Add valeur Peut affecter les états Nul, Négatif Sub valeur Peut affecter les états Nul, négatif Mul valeur Peut affecter nul, négatif Div valeur Peut affecter nul, négatif, décimal Mod valeur Peut affecter nul et négatif Cmp valeur Peut affecter nul et négatif Permet donc de faire des comparaisons

28Ruptures de séquence

Exécution séquentielle des instructions La rupture permet de mettre en place des boucles, et des traitements différenciésquotesdbs_dbs42.pdfusesText_42
[PDF] sphère armillaire construction

[PDF] sphère armillaire portugal

[PDF] registre de processeur pdf

[PDF] sphère armillaire achat

[PDF] difference entre registre et memoire

[PDF] sphere armillaire

[PDF] registre d'adresse

[PDF] sphère armillaire ancienne

[PDF] registre dinstruction processeur

[PDF] astrolabe

[PDF] circulaire douane maroc 2017

[PDF] dedouanement jet ski maroc prix

[PDF] admission temporaire définition

[PDF] relativité générale cours et exercices corrigés pdf

[PDF] dotation touristique maroc 2016