Interprétation du contenu d ’une zone mémoire

14
Interprétation du contenu d ’une zone mémoire (1) chaîne de caractères 42 6F 6E 6A 6F 75 72 Cette suite de bytes peut-elle représenter une chaîne de caractères? Oui si chaque byte contient le code ASCII d ’un caractère! Ici : 42 B 6F O 6E N 6A J 75 U 72 R Cette suite de bytes peut représenter la chaîne "BONJOUR "

description

42 B. 6E N. 75 U. 6F O. 6A J. 72 R. Interprétation du contenu d ’une zone mémoire. (1) chaîne de caractères. 42 6F 6E 6A 6F 75 72. Cette suite de bytes peut-elle représenter une chaîne de caractères?. - PowerPoint PPT Presentation

Transcript of Interprétation du contenu d ’une zone mémoire

Page 1: Interprétation du contenu d ’une zone mémoire

Interprétation du contenu d ’une zone mémoire

(1) chaîne de caractères

42 6F 6E 6A 6F 75 72

Cette suite de bytes peut-elle représenter une chaîne de caractères?

Oui si chaque byte contient le code ASCII d ’un caractère!

Ici : 42 B6F O

6E N6A J

75 U72 R

Cette suite de bytes peut représenter la chaîne "BONJOUR "

Page 2: Interprétation du contenu d ’une zone mémoire

42 6F 6E 9D

Cette suite de bytes peut-elle représenter une chaîne de caractères?

NON, car 9D ne correspond à aucun caractère du code ASCII standard!

Page 3: Interprétation du contenu d ’une zone mémoire

(2) format binaire fixe non signé

Une suite de bytes peut toujours être interprétée comme la représentation d ’un nombre non signé en format binaire fixe.

Comment trouver le nombre décimal représenté?

En convertissant le contenu de la zone mémoire (nombre en hexadécimal) en décimal.

Exemple:

0015 représente le nombre décimal 21

8002 représente le nombre décimal 32770

Page 4: Interprétation du contenu d ’une zone mémoire

(3) format binaire fixe signé

Une suite de bytes peut toujours être interprétée comme la représentation d ’un nombre signé en format binaire fixe.

Comment trouver le nombre décimal signé représenté?

a) le nombre est-il positif ou négatif?Voir le bit de signe (0 positif, 1 négatif)

b) si le nombre est 0: convertir d ’hexadécimal en décimal

si le nombre est < 0: prendre le complément à 2 avant de convertir d ’hexadécimal en décimal.

Page 5: Interprétation du contenu d ’une zone mémoire

Exemple:

00 32 positif ou négatif?

0000

positif

convertir 3216 = 5010

0032 peut s ’interpréter comme la représentation en format binaire fixe de +50.

Page 6: Interprétation du contenu d ’une zone mémoire

EF 90 positif ou négatif?

1110

négatif

prendre le complément à 2

F F F F- E F 9 0

1 0 6 F+ 1

1 0 7 0

convertir 107016 = 420810

EF90 peut s ’interpréter comme la représentation en format binaire fixe de -4208.

Page 7: Interprétation du contenu d ’une zone mémoire

(4) décimal codé binaire étendu non-signé38 30 31 37

Cette suite de bytes peut-elle représenter un nombre en décimal codé binaire étendu non-signé?

Oui si la partie basse de chaque byte est un chiffre décimal

et si la partie haute est un chiffre hexadécimal (qui dépend du langage et du processeur) qui est le même dans chaque byte!

Le nombre décimal représenté se trouve en juxtaposant les chiffres des parties basses des bytes.

8017

Page 8: Interprétation du contenu d ’une zone mémoire

Exemples:

34 30 35 21 ne représente pas un nombre en d.c.b.é. non signé car 2 3

F2 F3 F0 FC ne représente pas un nombre en d.c.b.é. non signé car C n ’est pas un chiffre décimal

04 00 05 03 représente le nombre décimal 4053 en d.c.b.étendu non signé

Page 9: Interprétation du contenu d ’une zone mémoire

(5) décimal codé binaire étendu signé38 30 31 C7

Cette suite de bytes peut-elle représenter un nombre en décimal codé binaire étendu signé?

Oui si la partie basse de chaque byte est un chiffre décimal

et si la partie haute est un chiffre hexadécimal (qui dépend du langage et du processeur) qui est le même dans chaque byte

et si la partie haute du byte du dernier chiffre contient le signe C (pour +) ou D (pour -).

Le nombre décimal représenté se trouve en juxtaposant les chiffres des parties basses des bytes.

+ 8017

Page 10: Interprétation du contenu d ’une zone mémoire

Exemples:

34 30 35 A1 ne représente pas un nombre en d.c.b.é. signé car A C et A D.

F1 F4 F9 CA ne représente pas un nombre en d.c.b.é. signé car A n ’est pas un chiffre décimal

04 00 05 D3 représente le nombre décimal -4053 en d.c.b.étendu signé

Page 11: Interprétation du contenu d ’une zone mémoire

(6) décimal codé binaire condensé non-signé39 21 04

Cette suite de bytes peut-elle représenter un nombre en décimal codé binaire condensé non-signé?

Oui si chaque demi-byte contient un chiffre décimal.

Le nombre décimal représenté se trouve en juxtaposant les chiffres décimaux.

392 104

Page 12: Interprétation du contenu d ’une zone mémoire

Exemples:

32 5C 63

12 09 87 représente le nombre décimal 120 987 en d.c.b.condensé non-signé

ne représente pas un nombre en d.c.b.condensé non-signé car C n ’est pas un chiffre décimal.

Page 13: Interprétation du contenu d ’une zone mémoire

(7) décimal codé binaire condensé signé12 34 5C

Cette suite de bytes peut-elle représenter un nombre en décimal codé binaire condensé signé?

Oui si chaque demi-byte contient un chiffre décimal sauf le dernier qui doit contenir C (pour +) ou D (pour -).

Le nombre décimal représenté se trouve en décodant le signe (dernier demi-byte) avant de juxtaposer les chiffres décimaux trouvés dans les autres demi-bytes.

+ 12 345

Page 14: Interprétation du contenu d ’une zone mémoire

Exemples:

32 90 C5 ne représente pas un nombre en d.c.b.condensé signé car 5 C et D , et C n ’est pas un chiffre décimal.

A3 42 5C ne représente pas un nombre en d.c.b. condensé signé car A n ’est pas un chiffre décimal

12 00 9D représente le nombre décimal -12 009 en d.c.b. condensé signé.