TD 1 : Représentation de...

14
Architecture des SI [2015-2016] 1 TD 1 : Représentation de l’information Les données stockées dans l’ordinateur sont toujours codées en 0 et en 1. Les données (numériques, alphanumériques, sons, images sont placées dans la mémoire centrale et peuvent être stockées (sauvegardées) par exemple sur des périphériques extérieurs (clé USB, disque dur, DVD) sous un autre format. Ainsi le nombre 12 pourra être stocké sur votre disque comme deux caractères : le code de « 1 » et le code de « 2 », mais il sera converti en un code standard pour un usage rapide dans la mémoire de l’ordinateur. L’objectif de ce TD est de comprendre que chaque type de données a sa méthode de codage. Exercice 1 : Conversion de la base 10 aux bases 2 et 16 Un nombre en base 10 peut s’écrire par exemple sous la forme 345,112 . On distingue en base 10 la partie entière, (qui correspond aux puissances supérieures à zéro de 10) et la partie fractionnaire (qui correspond aux puissances négatives de 10). Ainsi, 345,112 3 ∗ 10 4 ∗ 10 5 ∗ 10 1 ∗ 10 1 ∗ 10 2 ∗ 10 . On constate que les « digits » correspondent aux poids de chaque puissance de 10. Pour transformer un nombre de la base 10 vers la base 2, on commence par coder la partie entière. Pour cela, on utilise le principe de la division entière. Ainsi, si A et B sont deux entiers, alors A/B donne un entier Q avec un reste entier R. On divise successivement le nombre par 2 jusqu’à ce qu’il n’y ait plus que 0 dans le quotient Q. Les restes sont les bits recherchés. Le premier reste est le bit de poids faible (le plus à droite) et le dernier reste est le bit de poids fort (le plus à gauche). Pour coder la partie fractionnaire en base 2, on multiplie par 2. Le nombre (0 ou 1) qui passe en partie entière est le bit de poids fort. On recommence avec ce qui reste. Par exemple, coder 0,625 en base 2 : 0,625 x 2 = 1,250 1 est le poids fort (le plus à gauche) 0,250 x 2 = 0,500 0 est le poids suivant 0,500 x 2 = 1,000 1 est le poids faible (le plus à droite) donc 0,625 se code 0,101 en base 2

Transcript of TD 1 : Représentation de...

Page 1: TD 1 : Représentation de l’informationcourses.hei.fr/architectureSI/architecture-2015-2016-TD.pdf · Architecture des SI [2015-2016] 2 a) Coder 327 et 15,1 en base 2. b) Coder

Architecture des SI [2015-2016]

1

TD 1 : Représentation de l’information

Les données stockées dans l’ordinateur sont toujours codées en 0 et en 1. Les données (numériques,

alphanumériques, sons, images sont placées dans la mémoire centrale et peuvent être stockées

(sauvegardées) par exemple sur des périphériques extérieurs (clé USB, disque dur, DVD) sous un

autre format. Ainsi le nombre 12 pourra être stocké sur votre disque comme deux caractères : le

code de « 1 » et le code de « 2 », mais il sera converti en un code standard pour un usage rapide

dans la mémoire de l’ordinateur. L’objectif de ce TD est de comprendre que chaque type de données

a sa méthode de codage.

Exercice 1 : Conversion de la base 10 aux bases 2 et 16

Un nombre en base 10 peut s’écrire par exemple sous la forme 345,112 . On distingue en base 10 la

partie entière, (qui correspond aux puissances supérieures à zéro de 10) et la partie fractionnaire

(qui correspond aux puissances négatives de 10). Ainsi, 345,112 � 3 ∗ 10� � 4 ∗ 10 � 5 ∗ 10� �

1 ∗ 10� � 1 ∗ 10�� � 2 ∗ 10��. On constate que les « digits » correspondent aux poids de chaque

puissance de 10. Pour transformer un nombre de la base 10 vers la base 2, on commence par coder

la partie entière. Pour cela, on utilise le principe de la division entière. Ainsi, si A et B sont deux

entiers, alors A/B donne un entier Q avec un reste entier R. On divise successivement le nombre par

2 jusqu’à ce qu’il n’y ait plus que 0 dans le quotient Q. Les restes sont les bits recherchés. Le premier

reste est le bit de poids faible (le plus à droite) et le dernier reste est le bit de poids fort (le plus à

gauche). Pour coder la partie fractionnaire en base 2, on multiplie par 2. Le nombre (0 ou 1) qui

passe en partie entière est le bit de poids fort. On recommence avec ce qui reste. Par exemple, coder

0,625 en base 2 :

0,625 x 2 = 1,250 1 est le poids fort (le plus à gauche)

0,250 x 2 = 0,500 0 est le poids suivant

0,500 x 2 = 1,000 1 est le poids faible (le plus à droite)

donc 0,625 se code 0,101 en base 2

Page 2: TD 1 : Représentation de l’informationcourses.hei.fr/architectureSI/architecture-2015-2016-TD.pdf · Architecture des SI [2015-2016] 2 a) Coder 327 et 15,1 en base 2. b) Coder

Architecture des SI [2015-2016]

2

a) Coder 327 et 15,1 en base 2.

b) Coder 45 de la base 10 vers la base 4

Deux bases jouent, en plus du binaire, des rôles importants chez les informaticiens : la base 8 (octal)

où les chiffres possibles sont 0, 1, 2, 3, 4, 5, 6, 7 et l’hexadécimal (base 16) où les symboles sont 0, 1,

2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F.

c) Que représente en base 10 le nombre 3A,7B ?

On constate que 2� = 8 et que 2�=16. Pour convertir rapidement un binaire en base 8, on fait des

paquets de 3 en commençant par la gauche de la virgule pour la partie entière et à droite de la

virgule pour la partie fractionnaire. On procède de même pour un la base 16 avec des paquets de 4.

Pour finir un paquet, on complète par des 0. Un paquet de trois bits correspond à un nombre entre 0

et 7 et un paquet de 4 bits correspond à un nombre entre 0 et 15

d) Transcrire 1001011,1101 en base 8 et 16

Exercice 2 : Addition et multiplications en binaire

Le mécanisme de l’addition en base 2 est absolument identique à l’addition en base 10. On

additionne chaque puissance de 2 identiques dans ce que l’on appelle un étage. Il est possible qu’il y

ait une retenue (qui vient de l’étage précédent c'est-à-dire de l’étage de droite). Pour un étage, le

total varie entre 00 (zéro) et 11 (trois). On pose le bit de poids faible et on retient le bit de poids fort

pour l’étage suivant.

a) Additionner 1001101 avec 11000100

b) Additionner en une seule opération 11111 + 110011 + 100011

La multiplication en binaire est très simple car la table de multiplication est très courte ! Le

mécanisme est le même qu’en décimal. Une multiplication est une suite d’additions.

c) Construire la table de multiplication

d) Multiplier 1100 par 101

Exercice 3 : Représentation des entiers

Dans tous les ordinateurs, tous les langages de programmation, les données de type entier (integer)

sont codées de la même façon. Par exemple avec 8 bits, on peut représenter 2� valeurs différentes,

soit 256 entiers.

a) Si on code un entier sur 2 octets (16 bits), quel est le nombre de possibilités ?

Les codages classiques se font sur 2, 4, 8 octets. Contrairement à un programme comme

Mathématica ou Maple, il n’y a pas d’adaptation dynamique de la taille à la valeur dans les langages

informatiques classiques (C, Visual Basic, java…).

Le signe (négatif ou positif) est porté par le bit de poids fort (bit de signe). Un nombre positif a 0

Page 3: TD 1 : Représentation de l’informationcourses.hei.fr/architectureSI/architecture-2015-2016-TD.pdf · Architecture des SI [2015-2016] 2 a) Coder 327 et 15,1 en base 2. b) Coder

Architecture des SI [2015-2016]

3

comme bit de signe et un nombre négatif a un bit de signe égal à 1. La valeur 0 est codée avec un 0

comme bit de signe.

b) Combien y a-t-il de nombres positifs et négatifs si on code l’entier sur N bits ?

Pour coder un nombre positif, on fait une conversion de la base 10 en base 2 et on recopie bêtement

sur 8, ou 16, ou 32 bits en complétant par des zéros les poids forts non utilisés.

c) Coder 312 sur 16 bits

Pour coder un nombre négatif, on commence par coder sa valeur absolue (positive !) sur N bits.

Ensuite, on détermine son complément à 1 en remplaçant les 1 par des 0 et des 0 par des 1. Enfin, on

ajoute arithmétiquement au résultat la valeur 1 : c’est le complément à 2. On obtient le codage du

nombre négatif.

Exemple : coder -28 sur 8 bits

+28= 00011100

Complément à 1 : 11100011

addition : 11100011+00000001 = 11100100 c’est le complément à 2 et le résultat final

d) Coder -43 sur 16 bits

Exercice 4 : Représentation des réels (norme IEEE754.2)

Les nombres réels (real, float) ont eu dans l’histoire des ordinateurs plusieurs représentations

différentes, voire d’une marque à l’autre (IBM, BULL,..). Début des années 80, une norme a été fixée.

Un nombre réel est, en base 10, défini par trois éléments : le signe, la mantisse et l’exposant. Dans

notre utilisation habituelle, on peut écrire par exemple 245.5 ou 2.455 10� ou encore 245510� . Il y

a donc plusieurs représentations externes possibles. La représentation interne est unique.

Nous prenons comme exemple la représentation la plus simple sur 32 bits.

Codons le nombre décimal −118,625 en uOlisant le mécanisme IEEE 754.

1. Premièrement, nous avons besoin du signe, de l'exposant et de la partie fractionnaire. C'est

un nombre négatif, le signe est donc "1".

2. Puis nous écrivons le nombre (sans le signe) en binaire. Nous obtenons 1110110,101.

3. Ensuite, nous décalons la virgule vers la gauche, de façon à ne laisser qu'un 1 sur sa gauche :

1110110,101 = 1,110110101 × 26. C'est un nombre flottant normalisé : la mantisse est la

partie à droite de la virgule, remplie de 0 vers la droite pour obtenir 23 bits. Cela donne 110

1101 0100 0000 0000 0000 (on omet le 1 avant la virgule, qui est implicite).

4. L'exposant est égal à 6, et nous devons le convertir en binaire et le décaler. Pour le format

32-bit IEEE 754, le décalage de 127. Donc 6 + 127 = 133 (décimal) = 1000 0101 (binaire). Le

décalage est toujours de 127 sur 32 bits.

On a donc −118,625 (décimal) = 1100 0010 1110 1101 0100 0000 0000 0000 (binaire) .

a) Représenter le réel 32,1 en format IEEE754.2

b) Comment représenter le nombre réel 0 ?

Page 4: TD 1 : Représentation de l’informationcourses.hei.fr/architectureSI/architecture-2015-2016-TD.pdf · Architecture des SI [2015-2016] 2 a) Coder 327 et 15,1 en base 2. b) Coder

Architecture des SI [2015-2016]

4

Exercice 5 : Autres représentations de données

Les caractères ont été représentés de façon très simple en utilisant le code ASCII sur 7 puis sur 8 bits,

ce qui a permis d’avoir 128 caractères différent puis 255 en ajoutant le 8ème bit.

La table qui suit représente la table des codes sur 7 bits. Cette table présente les LSB (Least

significant bit ou bits de poids faibles) et MSB (Most significant bit ou bits de poids fort). Les codes

de 0 à 31 sont des codes spéciaux (dits « non imprimables») et correspondent à des caractères

utilisés en télétransmission (notre ancêtre du réseau).

a) Coder « TrUc » en code ASCII 7 bits

Il existe maintenant l’UNICODE qui permet de coder n’importe quel système d’écriture (chinois,

arabe, grec, indien,…) et n’importe quel symboles (mathématiques, musique…). Il s’agit d’un codage

dont la dernière mise à jour a été faite en janvier 2012. Cela vous permet d’envoyer en chinois et de

recevoir un courrier en chinois. Ce n’était pas le cas dans les années 90 !

b) Si vous avez du courage, faites un tour sur Wikipédia : ce n’est pas simple du tout !

Les images sont des tableaux de points colorés appelés « Pixels ». Très classiquement, un pixel est

représenté sur 24 bits : 8 bits pour le rouge, 8 bits pour le vert et 8 bits pour le bleu.

c) Donner le nombre d’octets d’une image de 1024 x1024 pixels

d) Transformer cette valeur en KO (1024 octets), en MO (1024 KO)

e) Comment coder le blanc et le noir ?

Page 5: TD 1 : Représentation de l’informationcourses.hei.fr/architectureSI/architecture-2015-2016-TD.pdf · Architecture des SI [2015-2016] 2 a) Coder 327 et 15,1 en base 2. b) Coder

Architecture des SI [2015-2016]

1

TD2 : L’ordinateur, une machine logique

L’objectif de ce TD est d’acquérir une bonne mécanique de calcul algébrique en logique Booléenne.

L’utilisation de « + » pour le OU logique et de « . » pour le ET logique en France induit

malheureusement un « plaquage » de l’algèbre des nombres que vous connaissez. Il faut considérer

que cette algèbre est complètement différente. L’ordinateur est une machine Booléenne où seuls

deux états sont utilisés pour manipuler programmes et données.

Exercice 1 : Simplification de fonctions logiques

Quelques particularités de l’algèbre ne doivent pas être oubliées : A = A+A : Cela permet de

reprendre plusieurs fois un terme qui se simplifie avec d’autres termes.

A.(B+C)=A.B + A.C et A + B.C=(A+B).(A+C) : distributivité de « + » par rapport à « . » et de « . » par

rapport à « + »

A+ Ā.B=A+B : une propriété souvent oubliée.

Développer et simplifier les équations suivantes :

a) A�.B.C�A.B�.�C�D�D�.�A�B b) �A�B��C.�A�BC�D c) A.�B�C�A�.�B�A.C

d) A.B.C�A�.B�.C�A.B��C.A.B�

Exercice 2: Table de vérité

La table de vérité d’une fonction à plusieurs variables permet d’écrire explicitement (toutes les

combinaisons possibles des entrées) les valeurs des sorties de la fonction. On présente la table de

vérité en codant les entrées en binaire naturel.

a) Combien de lignes comporte la table de vérité d’une fonction de n variables ?

b) Ecrire cette table de vérité avec la fonction f�A,B,C,D A.B��B.C�D.A�

c) Soit la table de vérité ci-dessous, écrire F(A,B,C) et faites la simplification de F si cela est

possible.

Table

A B C F

0 0 0 0

0 0 1 1

0 1 0 0

0 1 1 1

1 0 0 0

1 0 1 1

1 1 0 0

1 1 1 1

Page 6: TD 1 : Représentation de l’informationcourses.hei.fr/architectureSI/architecture-2015-2016-TD.pdf · Architecture des SI [2015-2016] 2 a) Coder 327 et 15,1 en base 2. b) Coder

Architecture des SI [2015-2016]

2

Exercice 3 : Complémentations par les lois de De Morgan

La complémentation consiste à déterminer F connaissant F. On utilise pour cela les lois de

De Morgan vues en cours. Néanmoins, on peut le faire sans réfléchir et de façon complètement

mécanique :

- Remplacer « + » par « . »

- Remplacer « . » par « + »

- Remplacer A par Ā et de même pour les autres variables

- Remplacer Ā par A et de même pour les autres variables

- Attention aux parenthèses ! le complément de A.B donne �A��B� et celui de (A+B) donne A�.B�

Exemple : si F A.B��B.�C�D.A� alors F �A��B.�B��C.�D��A

a) Donner le complément de F A.B�.C�A.B.C�A�.B.�C�D�

b) Donner le complément de F �A��B�C.�D�A�C

c) A partir de la table de vérité précédente (exercice n°2 c), écrire F en produits de sommes et

en sommes de produits.

Exercice 4 : formes de représentation d’une fonction logique

Une fonction logique est sous forme canonique si chaque terme (monôme ou monal) contient toutes

les variables, complémentées ou non. C’est aussi une forme technologique.

Forme normale disjonctive (1ère forme canonique) :

Somme de produits (monômes) canoniques (intersection de base ou min terme).

Exemple : F�x,y,z x.y.z�x.y.z�x.y.z

Forme normale conjonctive (2ème forme canonique) :

Produit de sommes (monaux) canoniques (réunion de base ou max terme).

Exemple : F�x,y,z �x�y�z.�x�y�z.�x�y�z

a) Ecrire la forme normale conjonctive de f(A,B,C)

b) Ecrire la forme normale disjonctive de f(A,B,C)

Une dernière image d’un composant pneumatique de chez CROUZET :

Page 7: TD 1 : Représentation de l’informationcourses.hei.fr/architectureSI/architecture-2015-2016-TD.pdf · Architecture des SI [2015-2016] 2 a) Coder 327 et 15,1 en base 2. b) Coder

Architecture des SI [2015-2016]

1

TD 3 : L’ordinateur personnel – Le comprendre –

L’objectif de cette séance de TD est de comprendre les offres commerciales de deux types de

machines de traitement de l’information : un ordinateur portable de très bonne qualité et une

tablette tactile. Nous présentons tout d’abord les deux éléments issus simplement du site de la

FNAC. Il s’agira à partir des informations collectées sur Internet ou dans votre cours de répondre très

simplement aux questions posées. A chaque question, quelques lignes sont attendues : il est inutile

de « copier-coller » des choses que vous ne comprenez pas car elles sont trop techniques!

Première machine : un ordinateur portable

Toshiba Satellite P875-301 17.3" LED Blu-Ray - Cham pagne Type de boîtier Portable - Notebook

Poids en kg 3 Kg

Ecran 17,3 "

Processeur Intel Core i7-3610QM*

Fréquence du processeur / Fréquence de Bus 2.30 GHz, jusqu'à 3.33 GHz en Turbo

Chipset Intel HM76

RAM installée 12 Go

Type de mémoire vive installée DDR3

Disque dur 1,5 To

Type de disque dur SATA

Vitesse de rotation du disque dur 5400 tours/min

Lecteur / Graveur Lecteur Blu-Ray DVD double couche biformat

Lecteur de cartes mémoire 2 en 1 : SD/SC-HC/SDXC/MMC

Carte graphique Nvidia GeForce GT 630M

Mémoire vidéo dédiée 2048 Mo

Résolution écran HD LED Backlight

Résolution maxi avec mémoire installée 1600 x 900

Webcam intégrée Oui

Résolution de la webcam 1 Mpixel

Bluetooth oui

Carte son Contrôleur son Intel HD Sound, SRS Premium Sound 3D

Nombre de haut-parleurs intégrés 4

Microphone intégré Oui

Carte réseau Ethernet 10/100/1000 Mbps

Communication sans fil 802.11 b/g/n Intel WIDI 3.0 + Bluetooth 4.0

Connecteurs 4 USB 3.0 (dont 2 Sleep 'N Charge), 1 HDMI-CEC, 1 VGA, entrée et sortie aud io

Dispositif de pointage TouchPad Multi-touch

Pavé numérique Oui

Type de batterie / autonomie 6 cellules

Système d'exploitation et Logiciels fournis Windows 7 Edition Premium 64 bit**

Caractéristiques complémentaires Haut-parleurs Harman Kardon, clavier chiclet noir, protection disqu e dur 3D Sensor,

technologie Sleep 'N Music et Resolution +

Dimensions (l x p x h) en mm 418 x 272 x 34

Page 8: TD 1 : Représentation de l’informationcourses.hei.fr/architectureSI/architecture-2015-2016-TD.pdf · Architecture des SI [2015-2016] 2 a) Coder 327 et 15,1 en base 2. b) Coder

Architecture des SI [2015-2016]

2

Deuxième machine : Une tablette Tactile

Acer Iconia tab A700 10,1" 32 Go - Argent Type de boîtier Tablette Tactile

Poids en kg 0,68 Kg

Ecran 10,1 "

Processeur NVIDIA Tegra 3 Quad-Core

Fréquence du processeur / Fréquence de Bus 1.3 GHz

RAM installée 1 Go

Type de mémoire vive installée DDR2

Disque dur 32 Go

Type de disque dur Mémoire Flash

Lecteur de cartes mémoire SD jusqu'à 32 Go

Résolution écran Ecran tactile

Résolution maxi avec mémoire installée 1920 x 1200

Webcam intégrée Oui

Résolution de la webcam 5 Mpixel à l'arrière, HD à l'avant

Bluetooth oui

Carte son Dolby Mobile 3+

Nombre de haut-parleurs intégrés 2

Microphone intégré Oui

Communication sans fil 802.11 b/g/n + Bluetooth 2.1 + EDR

Connecteurs 1 micro-USB 2.0, 1 HDMI

Type de batterie / autonomie Lithium-Polymère 36.26 W 9800 mAh, jusqu'à 10h30 d'autonomie en le cture vidéo

Système d'exploitation et Logiciels fournis Android 4.0 Ice Cream Sandwich **

Caractéristiques complémentaires Accéléromètre, gyroscope, capteur de luminosité, boussole, GPS

Dimensions (l x p x h) en mm 260 x 175 x 11

Page 9: TD 1 : Représentation de l’informationcourses.hei.fr/architectureSI/architecture-2015-2016-TD.pdf · Architecture des SI [2015-2016] 2 a) Coder 327 et 15,1 en base 2. b) Coder

Architecture des SI [2015-2016]

3

Nous allons reprendre les éléments en considérant les principales fonctions d’un ordinateur.

1) Les processeurs

a) Le processeur de l’ordinateur portable est-il un monoprocesseur ? multiprocesseurs ?

b) Quelle est l’importance de la vitesse de l’horloge ? Qu’est ce que le « Turbo » ? Quels

sont les inconvénients d’une horloge extrêmement rapide ?

c) Les processeurs possèdent-ils une mémoire intégrée ? Quel est le nom de cette mémoire

et quelle en sont les fonctions ?

d) Quelle est la particularité du processeur de la tablette ?

e) Pourquoi la batterie a une telle importance dans la description ?

2) La fonction mémoire

a) Notez la grande différence entre les deux machines. Recherchez sur Wikipedia les

technologies DDR. Quel est l’importance d’une mémoire à accès très rapide ? Quelles

sont les contraintes techniques associées ?

b) Après le Kilooctet, le Mégaoctet, le Gigaoctet, le Teraoctet, le Gio symbole d'unité du

Gibioctet vaut 1 073 741 824 (2 puissance 30) octets. La bande passante théorique du

DDR2 étant de 1,6 Gio/s, quel est donc le temps (minimum) en nanosecondes de

transfert d’un octet de la mémoire vers le processeur ?

3) Le stockage des données et programmes

a) L’ordinateur portable possède un « disque dur » de 1,5 TéraOctets (en 1984 :

10MégaOctets pour le PC XT). Quels sont les qualités importantes pour le choix d’un

disque dur ? N’hésitez pas à lire chez vous l’excellente et accessible présentation des

disques durs sur Wikipédia : http://fr.wikipedia.org/wiki/Disque_dur

b) L’écran tactile ne possède pas de disque dur. Quel type de mémoire utilise-t-il ? dans

quels dispositifs retrouve-t-on ce type de mémoire ? Ce type de support est-il amené à

remplacer les disques magnétiques ?

4) La gestion des périphériques

a) L’ordinateur portable possède un « chipset » : A quoi sert ce composant ?

b) Quelle est le mode de connexion le plus fréquent pour connecter des périphériques

locaux (hors écran)?

c) Quels sont les modes de connexion avec le réseau internet ? Quel est logiquement le plus

rapide ? Quels sont les différences entre les deux machines ?

d) Que signifie un écran 17,3 " ou 10,1 " ?

e) Que signifie Bluetooth ? Que fait-on avec cela ?

Page 10: TD 1 : Représentation de l’informationcourses.hei.fr/architectureSI/architecture-2015-2016-TD.pdf · Architecture des SI [2015-2016] 2 a) Coder 327 et 15,1 en base 2. b) Coder

Architecture des SI [2015-2016]

4

5) Dernières questions

a) La tablette tactile possède un certain nombre de capteurs. A quoi servent-ils ?

b) Les systèmes d’exploitation sont différents. Pourquoi cette différence ?

Page 11: TD 1 : Représentation de l’informationcourses.hei.fr/architectureSI/architecture-2015-2016-TD.pdf · Architecture des SI [2015-2016] 2 a) Coder 327 et 15,1 en base 2. b) Coder

Architecture des SI [2015-2016]

1

TD4 : Configuration réseau

A/ Etude préalable Un administrateur réseau a, à sa disposition, le réseau IP 195.220.74.0/23 et il a décidé de le

découper en 8 morceaux de même taille.

• Vérifiez que 195.220.74.0 est bien l’adresse d’un réseau de préfixe 23.

• Expliquez pourquoi c’est faisable de découper un préfixe 23 en 8 morceaux ?

• Quel est le nouveau préfixe pour chaque morceau ainsi obtenu ?

• Combien d’adresses utilisables y aurait-il dans chaque morceau ?

• Quelles sont les netmask de chaque morceau ?

• Quelles sont les adresses de réseau de chacun des 5 premiers morceaux ?

• Quelles sont les adresses broadcast de chacun des 5 premiers morceaux ?

• Pour chaque morceau déterminez la première adresse utilisable, la seconde, l’avant dernière

et la dernière.

B/ Mise en place dans un exemple La figure ci-dessous montre les 5 réseaux locaux (LAN) auxquels l’administrateur a décidé de

dispatcher les 5 premiers morceaux.

L’infrastructure de commutation de chaque réseau local est constitué d’un commutateur « 2960-

24TT » de chez CISCO reliant les différents équipements terminaux (Serveur, PC ou portable). Une

infrastructure de routage constituée de 5 routeurs « 2911 » de chez CISCO assure l’interconnexion

des réseaux locaux.

Page 12: TD 1 : Représentation de l’informationcourses.hei.fr/architectureSI/architecture-2015-2016-TD.pdf · Architecture des SI [2015-2016] 2 a) Coder 327 et 15,1 en base 2. b) Coder

Architecture des SI [2015-2016]

2

Au niveau du plan d’adressage, le LAN n°1 a obtenu le premier des 8 morceaux du réseau IP

195.220.74.0/23 ; le LAN n°2 a obtenu le second ; le LAN n°3, le troisième et ainsi de suite.

La dernière adresse disponible de chaque morceau a été affectée à sa passerelle par défaut.

Sur le LAN n°1 et le LAN n°3, la configuration de tous les équipements se fait via des adresses IP fixes.

Sur le LAN n°2 et le LAN n°4, un serveur DHCP, utilisant l’avant dernière adresse disponible, a été

installé afin de fournir dynamiquement la configuration IP aux autres équipements terminaux.

C/ Configuration sous packet-tracer 1. Relevez l’adresse IP de PC-L1-P1. (Remarque : un seul serveur DNS est présent sur le LAN n°5

et son adresse IP sera utilisée dans la configuration de tous les équipements.)

2. Passez en DHCP l’adresse IP de PC-L2-P1 et PC-L2-P2 puis relevez la configuration IP que ces

machines obtiennent.

3. Configurez en IP fixe PC-L3-P1. (Pour cet équipement, il a été décidé de lui affecter la

première adresse disponible du LAN n°3.)

4. Configurez en IP fixe SRV-L4 sachant que l’avant dernière adresse du LAN n°4 lui a été

réservée. Configurez le logiciel serveur DHCP sur SRV-L4 afin de donner dynamiquement des

configurations IP aux autres équipements terminaux du LAN n°4.

5. Passez en DHCP l’adresse IP de PC-L4-P1 puis relevez la configuration IP obtenue. Si

nécessaire corrigez l’étape 4.

D/ Simuler sous packet-tracer 1. Depuis PC-L1-P1, grâce au "Command Prompt", et à la commande "ping", vérifiez que la

communication, entre le PC et sa passerelle par défaut, se passe bien.

2. Depuis PC-L2-P2, grâce à la commande "tracert", vérifiez que la communication se fait

directement, sans intermédiaire de niveau 3, avec l’autre machine du LAN : PC-L2-P1.

3. Depuis PC-L2-P2, vérifiez que la passerelle par défaut est bien le premier intermédiaire de

niveau 3 quand on communique avec SRV-DNS.

4. Depuis PC-L3-P1, vérifiez, grâce à la commande "ping", que vous pouvez communiquer avec

le serveur DNS. Le nom DNS de "SRV-DNS" étant "srv-dns.td4.hei.fr", vérifiez que la

résolution de nom se déroule correctement.

5. Depuis PC-L4-P1, utilisez la commande "ftp" pour déposer le fichier local "sampleFile.txt" sur

"srv-dns.td4.hei.fr". (Login "cisco" et mot de passe "cisco") La commande "dir" de ftp

permettra de vérifier que "sampleFile.txt" a bien été ajouté à la liste des fichiers du serveur.

6. Depuis PC-L4-P1, vérifiez avec le navigateur web que l’on peut accéder aux pages web

stockées sur "srv-dns.td4.hei.fr".

E/ Exercice Complémentaire pour Adresse IPv6 Depuis votre machine réelle, via un navigateur connectez-vous à l’URL :

http://netacad/ccna_RS/ccna1_fr/course/module8/8.2.2.5/8.2.2.5.html

Et pour chacune des 10 adresses IPv6 proposée sous forme privilégié, procédez à l’écriture sous le

format compressé.

Page 13: TD 1 : Représentation de l’informationcourses.hei.fr/architectureSI/architecture-2015-2016-TD.pdf · Architecture des SI [2015-2016] 2 a) Coder 327 et 15,1 en base 2. b) Coder

Architecture des SI [2015-2016]

1

TD 5 : Un langage d’assemblage – Un peu de programmation –

L’objectif de ce TD est de vous initier à la programmation en langage Assembleur. Chaque

microprocesseur a son jeu d’instructions, ses propres registres et donc sa propre syntaxe

d’assembleur. Nous allons travailler sur l’assembleur des séries Intel 8088 et 8086 qui équipèrent les

premiers IBM PC en 1982. Compte tenu de l’extraordinaire complexité des multiprocesseurs actuels

(une centaine d’heure d’étude serait insuffisant), cela vous permettra de saisir le mécanisme de

programmation très simplement.

Exercice 1 : La mémoire centrale

Le processeur travaille sur une mémoire centrale dont chaque octet est adressable. Le bus d’adresse

est un bus de 16 bits, soit 2 octets. On notera en hexadécimal les adresses des octets. Ne pas

confondre l’adresse et le contenu !

a) Quelle est la taille maximale de la mémoire centrale ?

b) Combien y-a-t-il d’octets entre les adresses FE1A et DA01 ?

Exercice 2 : les registres de base AX, BX et IP

Nous allons utiliser seulement ces registres qui, on le rappelle, sont des mémoires internes au

microprocesseur. Le registre AX est un registre 16 bits et constitue notre accumulateur. Le registre

BX est un registre auxiliaire de 2 octets également. Le registre IP est le pointeur de programme ou

compteur ordinal : il contient l’adresse de l’instruction à exécuter. Par exemple si IP contient 1A2B,

alors l’instruction qu’il exécutera sera l’instruction présente à partir de l’adresse 1A2B. Une

instruction peut tenir sur plusieurs octets.

L'instruction MOV permet d'effectuer les transferts de données dans les deux sens. Ainsi, en

notation symbolique on note la destination en premier puis la source, ce qui donne :

MOV destination, source

Mon premier programme :

MOV BX,12F8 va mettre dans le registre BX la valeur 12F8 (adressage immédiat)

MOV AX, [1A2B] va copier le contenu de l'adresse 1A2B dans le registre AX (adressage direct)

MOV [1A2D], BX va copier le contenu du registre BX à l'adresse 1A2D (adressage direct)

a) Sachant que dans la mémoire aux adresses 1A2B et 1A2C, il y a 3E et 00, que contiendront les

registres et les quatre emplacements mémoire après l’exécution du programme précédent ?

b) Ecrire un programme simple qui permute les contenus des deux mots de 16 bits qui

commencent à 1A2B et 1A2D.

Page 14: TD 1 : Représentation de l’informationcourses.hei.fr/architectureSI/architecture-2015-2016-TD.pdf · Architecture des SI [2015-2016] 2 a) Coder 327 et 15,1 en base 2. b) Coder

Architecture des SI [2015-2016]

2

Exercice 3 : les instructions arithmétiques

L’unité arithmétique et logique (UAL) est la partie du processeur chargée de faire les opérations

arithmétiques (+,-,*,/),logiques (ET,OU,NON) et de comparaison (>,<,=…). L’UAL retourne un

résultat qui peut être exploité par le programme. L’UAL manipule un registre particulier qui est le

registre d’état.

L’addition est ADD destination, source qui additionne la destination avec la source et met le

résultat dans la destination.

La soustraction est SUB destination, source. Le résultat est toujours mis dans la destination.

La seule restriction pour ces deux instructions est qu’il doit y avoir un registre dans la source ou

dans la destination. Ainsi ADD [1A00], [2BA3] est interdit mais ADD AX, BX est autorisé.

La multiplication est MUL source qui multiplie le registre AX par la source et met le résultat dans

AX (je simplifie un peu !).

On considère le programme suivant :

MOV AX,[2A3C]

MUL [2A3E]

ADD AX,[2A40]

MOV [2A42],AX

a) Que fait ce programme ?

b) Voici le contenu des mémoires avant l’exécution, à partir de la mémoire d’adresse 2A3C

(en Hexa) :

0002000A0005A984

Donner le contenu de la mémoire après l’exécution du programme.

c) Sur le même modèle construire un programme qui calcule � � ��� � �� � à partir

des données a ,b ,c mises en mémoire à partir de l’adresse 2A3C

Pour conclure sur ce TD, il y aurait encore beaucoup d’instructions à examiner permettant de réaliser

les structures de programmation qui seront présentées dans les cours suivants : la structure

alternative qui permet d’exécuter telle ou telle série d’instructions en fonction du résultat d’un test

et les structures itératives qui permettent de faire des boucles. Dès que le programme a atteint une

certaine complexité, il est préférable d’utiliser des langages évolués qui ont l’intérêt d’être

relativement indépendants du processeur.