Hexadécimal/ASCII

djak -  
 djak -
Bonjour, sur cette page : http://msdn.microsoft.com/en-us/library/cc223103(v=prot.10).aspx

Le code à gauche, c'est bien l'hexadécimal ?
Et à droite l'ASCII ?

ça correspond à quoi ?

merci
A voir également:

5 réponses

KX Messages postés 19031 Statut Modérateur 3 020
 
Dans la colonne de gauche du tableau tu as un numéro de ligne en hexadécimal.
En haut des colonnes tu as le numéro de colonne en hexadécimal (entre 0 et F)
À l'intersection d'une ligne et d'une colonne tu as un octet, représenté en hexadécimal.
Pour connaitre l'indice d'un octet, il faut faire la somme des numéros de ligne et colonne.
La colonne de droite associe les 16 octets de la ligne avec leurs caractères ASCII.

Exemple : en faisant coïncider la ligne 00000050, et la colonne 8, tu te retrouves avec l'octet 00000058 de valeur 69. En regardant dans la colonne de droite tu peux tout de suite repérer qu'il s'agit du caractère ASCII 'M' qui commence le mot "Microsoft".

Remarque : visiblement ce tableau est incomplet, normalement il devrait commencer à la ligne 00000000 et la colonne 0, or ici il n'y a aucun octet représenté avant 0000003E.
La confiance n'exclut pas le contrôle
4
djak
 
Merci de vos réponses, j'ai bien compris, cependant la ligne 00000050 peut elle faire référence à l'offset ? En ayant parlé dans un autre topic avec nicocorico que je remercie part ailleurs.

@nicocorico je suis tout simplement curieux :p
2
KX Messages postés 19031 Statut Modérateur 3 020
 
L'éditeur binaire de Visual Studio, vu que c'est de ça qu'il s'agit, ne fait que manipuler les octets du fichier que tu as ouvert. Il se comporte comme un bloc notes, excepté que tu peux lire et éditer les valeurs hexadécimales qui sont représentées en lignes et colonnes. Il ne s'agit rien de plus.
Il ne faut pas chercher à le comprendre en ligne, car les lignes et les colonnes ne sont là que pour visualiser les octets en aucun cas on ne peut dire qu'une ligne ou une autre fait ceci.

En l'occurrence dans ton lien, la deuxième ligne du fichier commence en 0000004F, se termine en 00000069 et correspond au texte Server: Microsoft-IIS/5.1
La ligne 00000050 n'a donc aucun sens en soit, et ça n'a rien à voir avec l'offset, car ce n'est pas de l'assembleur, juste une représentation hexadécimale d'un fichier quelconque...
0
nicocorico Messages postés 846 Statut Membre 138
 
Oui absolument; quant à la recherche frénétique de compréhension de l'offset, il faut comprendre que ce n'est qu'une position relative à une autre, rien de plus.
Djak : tu es curieux, n'y change rien !
0
djak
 
d'accord, mais ya t-il un rapport avec le shellcode ?
0
djak
 
Merci beaucoup
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
 
c'est du chiffrage :
héxadécimal = base 12
ASCII c'est d'autres caractères (jusque F) base 16 si je me souviens bien
-3
KX Messages postés 19031 Statut Modérateur 3 020
 
Hexadécimal = base 16 (de 0 à F)
ASCII = base 256 (de 00 à FF en représentation hexadécimale)
0
nicocorico Messages postés 846 Statut Membre 138
 
J'ajoute que le code ascii est un code caractères normalisé pour uniformiser l'affichage sur n'importe quelle machine.
Part ailleurs, les colonnes de ton lien représentent en fait un relevé de la pile du processeur, avec la position à gauche et en haut, au centre c'est le contenu en hexa et à droite le même contenu en format texte (ascii...).
En fait la page montre l'état de la pile lors d'un process en lien avec RdsExecuteResponse, les paramètres d'entrées de la fonction je pense...
Et tout en bas c'est l'enregistrement des variables qu'on retrouve dans la pile au-dessus...
Tu as tout de même de drôle de lecture lol !

Le chêne aussi était un gland, avant d'être un chêne
0