Architecture des ordinateurs Fiche 1
Transcription
Architecture des ordinateurs Fiche 1
Architecture des ordinateurs L3 Informatique 2010-2011 Fiche 1 - Représentation des nombres et des caractères Points abordés – – – – – 1 Représentation des nombres entiers en différentes bases. Codage BCD. Représentations des nombres signés. Représentations des nombres à virgules. Représentations des caractères, encodage ASCII. Entiers non signés Exercice 1. (Changement de bases et nombres entiers) 1. Exprimer les entiers (41)dix , (63)dix , (128)dix , (3945)dix en binaire et en hexadécimal. 2. Exprimer les entiers (11000001)deux , (1111)deux , (11101)deux en décimal et en hexadécimal. 3. Exprimer les entiers (2BA)hex , (1CC)hex , (F0)hex en décimal et en binaire. 4. Exprimer l’entier (2911)dix en base sept et l’entier (1036)sept en décimal. Exercice 2. (Opérations sur les nombres entiers) Dans cet exercice, les entiers sont représentés sur huit bits. 1. Exprimer (17)dix et (12)dix en binaire puis les additionner et multiplier. 2. Exprimer (25)dix et (7)dix en binaire puis les additionner et multiplier. 3. Donner une méthode pour multiplier un nombre binaire par 2. Généraliser pour la multiplication par 2k , k ≥ 0. 4. Donner une méthode pour calculer la partie entière de la division d’un nombre binaire par 2. Généraliser pour la division par 2k , k ≥ 0. 5. Donner une méthode pour calculer le reste de la division d’un nombre binaire par 2. Généraliser pour le reste pour la division par 2k , k ≥ 0. Exercice 3. (Dépassement de capacité) Dans cet exercice, les entiers sont représentés sur neuf bits. 1. Quel est l’intervalle représentable ? 2. Que se passe-t-il lors de l’addition des entiers (400)dix et (200)dix ? 3. Comment peut-on détecter un dépassement de capacité ? 1 Exercice 4. (Codage Binary Coded Decimal (BCD)) 1. Donner le codage BCD des entiers (0)dix , (1)dix , (10)dix , (34355)dix . 2. Exprimer en décimal les entiers (1000 1001 0011)BCD et (0001 0100)BCD codés en BCD. 3. Donner une estimation de la place mémoire supplémentaire (en nombre de bits) nécessaire au codage BCD par rapport au codage binaire. 2 Entiers signés Exercice 5. (Représentations des entiers signés) On considère les entiers (0)dix , (1)dix , (32)dix , (131)dix , (255)dix . Pour chacun d’eux, donner leur représentation positive et négative sur neuf bits 1. en magnitude signée ; 2. en complément à un ; 3. en complément à deux ; 4. biaisée avec un biais de 255. Exercice 6. (Comparaison de représentations des entiers signés) On suppose que l’on dispose de n bits pour représenter des entiers signés. Pour chacun des encodages suivants des entiers signés, donner l’intervalle des valeurs encodables. Donner également leur inconvénients et avantages respectifs. 1. Encodage en magnitude signée. 2. Encodage en complément à un. 3. Encodage en complément à deux. 4. Encodage avec un biais de k (où k est un entier positif). Exercice 7. (Dépassement de capacité) On considère les nombres entiers signés (par complément à deux) sur neuf bits. 1. Que se passe-t-il lors de l’addition des entiers (200)dix et (100)dix ? 2. Que se passe-t-il lors de l’addition des entiers −(200)dix et −(100)dix ? 3. Comment peut-on détecter un dépassement de capacité ? 4. Peut-il y avoir dépassement de capacité si l’on ajoute deux nombres de même signe ? 5. Peut-il y avoir dépassement de capacité si l’on ajoute deux nombres de signes différents ? 3 Nombres à virgule Exercice 8. (Représentation à virgule fixe) 1. Rappeler ce qu’est la représentation à virgule fixe en base deux d’un nombre à virgule. 2. Donner la représentation à virgule fixe en base deux des nombres décimaux suivants : 0.625, 9.625, 1.1, 12.375, 0.6953125, 31 , 2−71 . Exercice 9. (Représentation en virgule flottante) 1. Rappeler l’encodage des nombres à virgule selon la norme IEEE754. 2. Rappeler les valeurs spéciales. 2 3. Calculer les plus petit et plus grand nombres représentables. 4. Calculer le plus petit nombre en valeur absolue non nul représentable. 5. Donner l’encodage de (1)dix , (−30.375)dix et (2980.625)dix selon la norme IEEE754. 6. Donner la valeur décimale de (01000010111011010100000000000000)IEEE754 encodé selon la norme IEEE754. 4 Caractères Exercice 10. (Code ASCII) Le code ASCII permet de représenter chaque caractère par une séquence de sept bits. 1. Combien de chiffres hexadécimaux nécessite le codage ASCII d’un caractère ? Quel est le plus petit nombre hexadécimal correspondant à un code ASCII ? Le plus grand ? 2. Quels sont les avantages et inconvénients de cet encodage ? 3. Qu’appelle-t-on les caractères de contrôle ? 4. Quelle opération binaire permet de transformer le codage d’un caractère majuscule en un caractère minuscule ? 5. Retrouver la chaı̂ne de caractères encodée par (2268656C6C6F20776F726D7322)hex . 6. Qu’appelle-t-on le code ASCII étendu ? x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF 0x NUL SOH STX ETX EOT ENQ ACK BEL BS HT LF VT FF CR SO SI 1x DLE DC1 DC2 DC3 DC4 NAK SYN ETB CAN EM SUB ESC FS GS RS US 2x espace ! ” # $ % & ’ ( ) * + , . / 3x 0 1 2 3 4 5 6 7 8 9 : ; < = > ? 4x @ A B C D E F G H I J K L M N O 5x P Q R S T U V W X Y Z [ \ ] ∧ Table 1 – Le code ASCII. 3 6x ‘ a b c d e f g h i j k l m n o 7x p q r s t u v w x y z { | } ∼ DEL