Série n° 6 d’exercices corrigés - électronique numérique - t

Électronique numérique : Série n° 6 d’exercices corrigés

Télécharger PDF

Obtenir le pack complet des cours, TDs, examens sur Électronique numérique!

Vous souhaitez maîtriser Électronique numérique ? Ne cherchez plus, nous avons le pack bien choisi pour vous.

pack complet des cours, TDs, TPs et examens exercices sur Électronique numérique

Accédez à une collection complète des supports de cours, des travaux dirigés (TD) corrigés, examens...

Télécharger pack

-1- USTHB 2014 - 2015

Module STRM

Faculté d’électronique et d’Informatique

Département Informatique

MI – L1

Série N° 6 d’exercices corrigés Exercice 1 a) Soit l’instruction qui se trouve à l’adresse 300 : LOAD 200, IMM Expliquer les différentes phases d’exécution à l’aide d’un schéma. Donner les contenus des différents registres mis en jeu. Temps Micro opération F CO MAR MBR RI Acc T0 MAR:= CO 0 300 300 / / / T1 MBR:= Code Instruction 0 300 300 LOAD 200 Imm / / T2 RI=MBR, 0 300 300 LOAD 200 Imm LOAD 200 Imm / T3 Co =Co+1 Charger le mode exécution (F=1) 0 301 300 LOAD 200 Imm LOAD 200 Imm / T0 ACC= ACC +80 1 301 300 LOAD 200 Imm LOAD 200 Imm 200 b) Donner le contenu de l’Accumulateur après l’exécution de chacune des instructions suivantes : LOAD 200, IND : ACC ←((200)) ACC ← (100). ACC ← a

LOAD 200, XRI

(XRI registre d’index) ACC← (200+(XRI)) ACC

← (200+2)

ACC ← (202) ACC ← b Nous avons : Adresse Contenu100 a101 d200 100202 bXRI 2 -2- Exercice 2 a) Donner le contenu de l’Accumulateur après l’exécution de chacune de chaque instruction. b) Que fait ce programme ? c) Quelle est la valeur stockée dans F ? LOAD

101, D MUL

201, INDMUL 102, D STORE

Y, D LOAD

303, IND MUL

202, D SUB

Y, D STORE

F, D

a) LOAD

101, D

: ACC ← (101); ACC ← A MUL

201, IND : ACC ← (Acc)*((201)); ACC ←(ACC

)*(302); ACC ←A*CMUL 102, D

: ACC ← (ACC)*(102); ACC ←A*C*4 ; STORE

Y, D

: Y← (ACC); ACC =A*C*4; Y=A*C*4 ; LOAD

303, IND : ACC ← ((303)); ACC ←(202); ACC ←B ; MUL

202, D

: ACC ← (ACC)*(202); ACC ←B*B ; SUB

Y, D

: ACC ← (ACC) - (Y); ACC ←B*B - A*C*4 ; STORE

F, D

: F ← (ACC); ACC = B*B - A*C*4 ; F ← B*B - A*C*4 ; b) Ce programme calcul le déterminant. c) F = B*B- A*C*4 Exercice 3 Etant donnés les contenus des registres et des mémoires suivants : (XR1)=1 ; (XR2)=2 ; (1000)=0 ;(1001)=1 ; (2000)=2 ; (2001)=3 ; (3000)=4 ; (3001)=5 ; (0)=1000 XR1 et XR2 sont des registres d’index Les valeurs entre parenthèses représentent les adresses mémoire. a) Indiquer le contenu de l’Accumulateur après chacune des opérations suivantes : LOAD 3000, XR1, : ACC

←(3000+XRI) ; ACC← (3000+1) ; ACC← 5 ; LOAD 999, XR2

: ACC←(999+2) ; ACC←(1001); ACC ←1 LOAD 1000, IND : ACC←((1000)); ACC←(0); ACC←1000 LOAD 2, IMM

: ACC←2 LOAD 1000, D

: ACC←(1000); ACC← 0 b) Quelle est la valeur de F après l’exécution du programme ci-dessous : LOAD

3000, D

: ACC← (3000); ACC←4 ADD

2000, XRI : ACC←4+ (2000+1); ACC←4 + 3; ACC←7 SUB

5, IMM

: ACC←7 -5: ACC

←2 MUL

3001, D

: ACC

←2*(3001); ACC←2*5=10 DIV

2000, D

: ACC←10 / (2000); ACC←10/2=5 ADD

1000, D

: ACC

←5 + (1000); ACC←5+ 0=5 SUB

0, IMM

: ACC← 5-0=5 STORE F, D

: ACC=5 ; F← 5 Adresse Contenu

101 A

102 4

201 302

202 B

302 C

303 202 -3- Exercice 4 Etant donné une machine dont l’architecture est donnée par la figure suivante : 1) Réaliser les instructions suivantes à l’aide seulement des opérations étudiées en cours. Utiliser l’adressage direct. a) 1/ lire A ;b) 1/lire A ;

2/lire B ;

2/lire B ; 3/C := A-B ;

3/A := A

2 + A*B + B

2 ;

4/R := (A+B)- C ;

4/Ecrire A.

5/écrire R . READ STORE A, D READ STORE B, D LOAD A, D SUB B, D STORE C, D LOAD A, D ADD B , D SUB C, D STORE R , D WRITE READ STORE A ,D READ STORE B ,D MULT

B, D

ACC=B*B STORE Y, D

Y= B*B LOAD

A, D MULT B, D ADD

Y, D

ACC=B*B+A*B STORE Y, D LOAD

A, D MULT A, D

ACC= A*A+A*B+B*B STORE A, D WRITE 2) Sachant que A = 10 et B = 5 et qu’un Compteur Ordinal (CO) a été ajouté à l’unité de traitement décrit précédemment 2-1) Quelle adresse contient le Compteur Ordinal à la fin de l’exécution de l’instruction (a) ? Co = CO +11 Entrée Unité de traitement Acc Mémoire Sortie -4- 2-2) Lors du déroulement de l’instruction (b) quelles sont les différentes valeurs prises par l’Accumulateur ? A = 10 et B = 5 READACC=A STORE A ,D

ACC=A READ

ACC=B STORE B ,D

ACC=B MULT

B, D

ACC=B*B STORE Y, D

Y= B*B LOAD

A, D

ACC=A MULT B, D

ACC=A*B ADD

Y, D

ACC= A*B + B*B STORE Y, D

ACC= A*B + B*BLOAD A, D

ACC=A MULT A, D

ACC= A*AADD Y, D

ACC= A*B+B*B +A*A STORE A, D

ACC= A*B+B*B +A*A WRITE

ACC= A*B+B*B +A*A Acc = 10 Acc = 10 Acc =5 Acc = 5 Acc =5*5 =25 Acc =25 Acc =10 Acc =10*5=50 Acc =50+25=75 Acc =75 Acc =10 Acc =10*10=100 Acc = 100+ 75=175 Acc = 175 Acc= 175 Exercice n°5

(Rattrapage juin 2015)

La figure ci –après représente un carré de côté C

surmonté d’un demi-cercle:

Donner la formule qui calcule la surface de cette figure.

Ecrire le Programme Assembleur correspondant

La valeur de PI (3.14) se trouve en mémoire centrale,C La valeur de C se trouve dans le périphérique d’entrée.

N’utiliser aucune variable autre que PI et C. 1) Surface = C*C +((C/2)2 *PI)/2 =C*C +(C*C/4)PI/2 Surface = C*C(1+PI/8) Surface = C*C(1+PI/8) 2) Le programme ;  READ

 STORE C, D  LOAD

PI, D  DIV

8 , IMM  ADD1, IMM  MULT

C, D  MULT

C, D  WRITE