Académique Documents
Professionnel Documents
Culture Documents
Voici l'énoncé :
Nous disposons d'un ordinateur disposant de 512 Mo de mémoire vive dont la taille
du mot mémoire est de 32 bits.
A.
1. Déterminer l'adresse la plus haute (la plus grande) de cette mémoire.
2. Convertir l'adresse trouvée en octal.
B. Un tableau de réels, selon la norme IEEE-754 double précision, est stocké dans
la mémoire de cette machine à partir de l'adresse 0AE.
3. Calculer l'adresse en décimal du huitième élement de ce tableau.
4. Combien d'octets précédent l'adresse de début de ce tableau.
C. Nous désirons effectuer une addition sur deux élements du tableau de réels.
6. Donner l'instruction en utilisant le mode d'adressage immédiat qui permet de
modifier le contenu du registre ESI. ESI contiendra l'indice du cinquième élement
du tableau.
7. Donner l'instruction en utilisant le mode d'adressage indexé pour accéder au
cinquième élement du tableau, sachant que le registre de base contenant l'adresse
de début du tableau est EBX.
ChatGPT
A.
Ainsi, la mémoire de l'ordinateur est de 512 * 1 048 576 = 536 870 912 octets.
B. Un tableau de réels, selon la norme IEEE-754 double précision, est stocké dans
la mémoire de cette machine à partir de l'adresse 0AE.
3. Calculer l'adresse en décimal du huitième élement de ce tableau.
La norme IEEE-754 pour les nombres en double précision stipule qu'un nombre occupe
64 bits, soit 8 octets. Par conséquent, chaque élément du tableau occupe 8 adresses
mémoire consécutives.
C. Nous désirons effectuer une addition sur deux élements du tableau de réels.
6. Donner l'instruction en utilisant le mode d'adressage immédiat qui permet de
modifier le contenu du registre ESI. ESI contiendra l'indice du cinquième élement
du tableau.
En assemblage x86, une instruction qui charge une valeur immédiate dans un registre
serait de la forme mov registre, valeur. Si nous voulons stocker l'indice du
cinquième élément du tableau dans ESI, nous pourrions utiliser l'instruction:
Copy code
mov esi, 4
Ceci est basé sur l'hypothèse que les indices du tableau commencent à 0. Par
conséquent, l'indice du cinquième élément serait 4.
css
Copy code
mov eax, [ebx + esi*8]
Cela suppose que l'instruction est en mode 32 bits, et que les éléments du tableau
sont de taille 8 octets (64 bits). EAX est utilisé pour stocker le cinquième
élément du tableau.
User
La question A. 2. doit être faisable lors d'une évaluation, donc uniquement feuille
et calculatrice
ChatGPT
Bien sûr, pour convertir une valeur décimale en octal manuellement, il vous suffit
de suivre ces étapes :
User
Je suis un étudiant en 1ere année d'ingénieur informatique. J'ai un exercice à
réaliser lors d'une évaluation, sur l'architecture des ordinateurs, chapitre sur
les mémoires. Répond a chaque question en DETAIL, avec chaque étapes et des
explications du cours si besoin. S'il y a des schémas à faire, fait les à l'écrit.
Voici l'énoncé :
État actuel (Q2 Q1 Q0) Entrée D2 Entrée D1 Entrée D0 Prochain état (Q2' Q1'
Q0')
000 0 0 1 001
001 0 1 0 010
010 0 1 1 011
011 1 0 0 100
100 1 0 1 101
101 1 1 0 110
110 1 1 1 111
111 0 0 0 000
Remplir les tableaux de Karnaugh correspondant à ces fonctions Di, puis donner
l'équation réduite de chaque fonction.
La fonction D pour chaque bascule peut être trouvée à l'aide de la table de vérité
et de la méthode de Karnaugh. Voici les équations réduites pour chaque fonction Di:
Pour D0:
Q1/Q0 00 01 11 10
0 1 0 0 1
1 1 1 1 1
D'après le tableau de Karnaugh, l'équation de D0 est:
D0 = Q1 + Q0'
Pour D1:
Q2/Q0 00 01 11 10
0 0 1 0 1
1 0 1 1 1
D'après le tableau de Karnaugh, l'équation de D1 est:
D1 = Q0 + Q2'Q1
Pour D2:
Q2/Q1 00 01 11 10
0 0 0 1 1
1 0 0 0 1
D'après le tableau de Karnaugh, l'équation de D2 est:
D2 = Q1Q0'
Les sorties de ces portes logiques vont ensuite aux entrées D des bascules
correspondantes.
css
Copy code
CLOCK ----> |D Q| ----> |D Q| ----> |D Q|
|0 0| |1 0| |2 0|
Où :
rust
Copy code
Q1 -| Q0 -|
| OR gate ----> D0 | AND gate ----> D1
Q0' -| Q2'Q1 -|
Q1Q0' ----> D2
Où :
Les lignes verticales avec des tirets ("-|") représentent les entrées d'une porte
logique.
"---->" représente les fils.
"OR gate" et "AND gate" sont des portes logiques.
"D0", "D1" et "D2" sont les entrées des bascules D respectives.
Compléter le logigramme correspondant.
Le logigramme serait similaire au schéma de câblage. Il illustrerait la combinaison
des portes logiques qui alimentent les entrées D de chaque bascule.
rust
Copy code
Q1 -| Q0 -|
| OR gate ---->|D Q| | AND gate ---->|D Q|
Q0' -| |0 0| Q2'Q1 -| |1 0|
Q1Q0' ---->|D Q|
|2 0|
Où :
Les "|D Q|" sont les bascules D, avec leurs indices respectifs à côté d'elles.
Les portes "OR gate" et "AND gate" sont connectées aux entrées de chaque bascule.
Les flèches ("---->") représentent des fils, qui relient les portes logiques aux
bascules.
"CLOCK" est l'entrée d'horloge, qui est connectée à chaque bascule (non représentée
dans le logigramme pour simplifier).
Veuillez noter que ces illustrations sont une simplification de la réalité. En
réalité, vous devriez inclure plus de détails, tels que les portes NOT pour les
inversions, et peut-être des détails supplémentaires en fonction des exigences de
votre cours.
User
Je suis un étudiant en 1ere année d'ingénieur informatique. J'ai un exercice à
réaliser lors d'une évaluation, sur l'architecture des ordinateurs, chapitre sur
les mémoires. Répond a chaque question en DETAIL, avec chaque étapes et des
explications du cours si besoin.
Voici l'énoncé :
Ecrire un programme assembleur bien commenté qui calcule la somme des carrés des
entiers de 1 à 10 et affiche le résultat. Commente chaque ligne de sorte a bien
comprendre le programme.
ChatGPT
L'assembleur est une classe de langages de bas niveau qui permettent de manipuler
directement la mémoire et les registres d'un ordinateur. Voici un exemple de
programme en assembleur x86 qui calcule la somme des carrés des entiers de 1 à 10.
Le programme utilise la syntaxe de l'assembleur NASM, l'un des assembleurs les plus
couramment utilisés pour l'architecture x86.
assembly
Copy code
section .data ; Cette section contient des données initialisées
result dd 0 ; Nous définissons une variable "result" pour stocker notre
résultat final.
_start:
mov ecx, 10 ; Nous initialisons le compteur (registre ECX) à 10.
sum_loop:
imul eax, ecx, ecx ; Nous calculons le carré du compteur et le stockons dans
EAX.
add [result], eax ; Nous ajoutons le carré à notre résultat.
dec ecx ; Nous décrémentons notre compteur.
jnz sum_loop ; Nous retournons en arrière si le compteur n'est pas encore
à 0.
User
Je suis un étudiant en 1ere année d'ingénieur informatique. J'ai un exercice à
réaliser lors d'une évaluation, sur l'architecture des ordinateurs, chapitre sur
les mémoires. Répond a chaque question en DETAIL, avec chaque étapes et des
explications du cours si besoin.
QCM, choisi La bonne réponse (une seule) et justifie la bonne et corrige les
mauvaises réponses.
1. Bus :
a. Il y a 4 types de bus : données, adresse, commande et contrôle.
b. un bus est un groupe de lignes électriques qui relie le CPU aux autres
composantes.
c. chaque ligne électrique d'un bus peut transférer deux bits d'informations à la
fois.
d. Le bus de données permet le transfert des données dans un seul sens.
2. Adressage :
a. Adressage registre un adressage entre adresse mémoire et valeur implicite.
b. Adressage direct est un adressage entre deux registres.
c. Adressage immédiat est un adressage entre deux adresses mémoires.
d. Adressage indirect est un adressage entre un registre et une adresse mémoire.
Adressage :
Réponse correcte : d. L'adressage indirect est un mode d'adressage où l'adresse
d'un opérande est donnée dans un registre.
a. L'adressage par registre est un mode d'adressage où l'opérande est dans un
registre du processeur.
Soit le nombre -27 en base décimale. Comment écrire ce nombre en binaire complément
à 2 sur 8 bits ?
Réponse correcte : a. Le nombre -27 est représenté comme 1110 0101 en complément à
deux sur 8 bits.
b, c, d. Ces réponses sont incorrectes. Pour obtenir la représentation en
complément à deux de -27, nous prenons la représentation en binaire de 27 (0001
1011), nous inversons les bits (1110 0100) et ajoutons 1 (1110 0101).