Comparaison de données hexadécimales

Un diff hexadécimal compare les fichiers binaires comme des octets. ABDiff garde toujours la vue hexadécimale brute disponible et peut aussi afficher une vue Structure analysée pour les formats binaires reconnus.

Démarrer une comparaison hexadécimale

Glisser-déposer

Menu Fichier

Terminal

Mise en page du visualiseur hexadécimal

Visualiseur hexadécimal autonome affichant des octets bruts et une arborescence de structure analysée

Le contenu est, de gauche à droite :

Comparaison diff hexadécimale

Comparaison hexadécimale avec alignement par décalage et 8 octets par ligne

La comparaison hexadécimale propose deux mises en page d’alignement :

Resynchroniser est utile lorsqu’une seule région décalée ferait sinon apparaître le reste du fichier comme modifié. Dans ce mode, une même ligne horizontale ne signifie pas toujours le même décalage absolu des deux côtés. Lorsque les régions alignées proviennent de positions brutes différentes, ABDiff affiche volontairement des décalages gauche et droit différents.

Hex et Structure

Le mode Hex brut affiche les décalages, les octets hexadécimaux et un aperçu texte décodé. Le contrôle d’encodage ne concerne que cet aperçu texte ; les octets bruts restent la source de vérité.

Lorsque ABDiff reconnaît un format binaire, il ajoute un contrôle Hex / Structure. Le mode Structure affiche les éléments de format sous forme d’arborescence avec noms d’éléments, décalages, longueurs, valeurs décodées et diagnostics de parser. La sélection d’une ligne de structure sélectionne la plage d’octets correspondante. Un double-clic sur une ligne de structure repasse en mode Hex et révèle cette plage.

Dans le visualiseur hexadécimal à un seul fichier, un fichier pris en charge peut afficher l’arborescence de structure à côté des octets hexadécimaux. Les fichiers non pris en charge utilisent toute la largeur pour l’hexadécimal brut. Dans un diff hexadécimal à deux fichiers, le mode Structure est disponible lorsqu’au moins un côté est reconnu, et Afficher uniquement les différences s’applique aux lignes de structure comme aux lignes hexadécimales brutes.

Les champs propres au format peuvent déterminer des détails comme l’ordre des octets ou le décodage du texte pour ce champ. Par exemple, les champs de structure ZIP sont analysés selon les règles ZIP, tandis que l’aperçu texte hexadécimal peut toujours être modifié avec le contrôle d’encodage.

Les formats de structure pris en charge incluent :

Certains formats qui s’ouvrent normalement dans un autre visualiseur peuvent quand même être inspectés comme structure en forçant Hex. Par exemple, GIF, TIFF et WebP s’ouvrent normalement comme comparaisons d’images, et PEM s’ouvre normalement comme texte.

Options d’affichage

Dans la vue hexadécimale, utilisez le menu Présentation ou les contrôles de la barre d’outils pour ajuster l’affichage :

Changer Octets par ligne ne modifie pas le résultat de diff sous-jacent.

Inspecter les octets

Cliquez sur un octet pour le sélectionner. Maj-clic, ou utilisez Maj avec les flèches, pour étendre la sélection. Dans la vue à un seul fichier, l’inspecteur du bas affiche le décalage sélectionné, la longueur, l’élément de structure correspondant et un aperçu de valeur.

Utilisez le menu de valeur ou le clic droit Copier en tant que pour inspecter ou copier les octets sélectionnés comme :

Le contrôle LE / BE définit l’interprétation little-endian ou big-endian pour les nombres multi-octets. Lorsqu’une structure analysée fixe l’ordre des octets, ABDiff affiche cet ordre et désactive les changements manuels.

Utilisez la pastille d’informations de fichier en haut à gauche pour ouvrir les métadonnées récapitulatives. Dans les fichiers structurés, le même popover inclut des métadonnées de parser comme les résumés de conteneur et des faits propres au format qui ne sont pas liés à une plage d’octets unique.

Rechercher et aller au décalage

Utilisez Édition ▸ Rechercher… pour chercher dans la surface binaire active. En vue Hex, Rechercher comprend les recherches d’octets : une syntaxe hexadécimale valide comme 1F 8B, 0x1F8B ou 1f-8b recherche les octets bruts, tandis qu’un texte comme Papyrus recherche ces mêmes octets en UTF-8 sans changer de mode. Une entrée qui ressemble à de l’hexadécimal mais ne peut pas décrire des octets complets signale toujours une recherche invalide au lieu de deviner.

En vue Structure, Rechercher correspond automatiquement aux noms et valeurs de structure analysés. Il n’y a pas de sélecteur de mode de recherche ; la vue active détermine la cible.

Utilisez Naviguer ▸ Aller au décalage… pour sauter à un décalage d’octet. Les décalages sont hexadécimaux par défaut ; utilisez 0x pour l’hexadécimal explicite, d: pour le décimal, ou + / - pour un décalage relatif depuis l’octet sélectionné.

Histogramme et entropie

Utilisez le bouton d’histogramme dans la barre d’outils pour inspecter la distribution des octets, l’entropie, les principales valeurs d’octets et des classifications générales comme forte entropie ou données riches en remplissage. Dans la vue hexadécimale à un seul fichier, le panneau d’histogramme peut aussi afficher une bande Carte d’entropie à côté des lignes hexadécimales pour naviguer rapidement dans le fichier.

Comportement en lecture seule

La comparaison de données hexadécimales est en lecture seule :

Raccourcis clavier

Action Raccourci
Déplacer la sélection à gauche
Déplacer la sélection à droite
Déplacer la sélection vers le haut ou le bas ↑ / ↓
Étendre la sélection d’octets ⇧ plus touches fléchées
Passer à l’autre volet
Ramener le focus depuis le volet droit ou la structure ⇧⇥
Développer la ligne de structure sélectionnée
Réduire la ligne de structure sélectionnée

Rubriques associées