Maison >développement back-end >C++ >Comment puis-je utiliser objdump pour désassembler un exécutable binaire et obtenir le code assembleur sous Linux ?
Pour désassembler un exécutable binaire et extraire son code d'assemblage, nous pouvons utiliser un désassembleur.
L'un des désassembleurs les plus couramment utilisés sous Linux est objdump, une partie des outils de développement GNU. Objdump fournit une commande simple à cet effet :
$ objdump -d /path/to/binary
où /path/to/binary représente l'emplacement du binaire que vous souhaitez désassembler.
Une fois que vous aurez exécuté cette commande, objdump afficher le code d'assemblage démonté dans un format lisible. Voici un exemple de sortie :
080483b4 <main>: 80483b4: 8d 4c 24 04 lea 0x4(%esp),%ecx 80483b8: 83 e4 f0 and xfffffff0,%esp 80483bb: ff 71 fc pushl -0x4(%ecx) 80483be: 55 push %ebp 80483bf: 89 e5 mov %esp,%ebp 80483c1: 51 push %ecx 80483c2: b8 00 00 00 00 mov x0,%eax 80483c7: 59 pop %ecx 80483c8: 5d pop %ebp 80483c9: 8d 61 fc lea -0x4(%ecx),%esp 80483cc: c3 ret 80483cd: 90 nop 80483ce: 90 nop 80483cf: 90 nop
Cette sortie fournit une représentation détaillée du code assembleur du binaire, y compris les instructions, les adresses mémoire et l'utilisation des registres.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!