A disassembler is a computer program that translates machine language into assembly language—the inverse operation to that of an assembler. A disassembler differs from a decompiler, which targets a high-level language rather than an assembly language. Disassembly, the output of a disassembler, is often formatted for human-readability rather than suitability for input to an assembler, making it principally a reverse-engineering tool.

PropertyValue
p:abstract
  • A disassembler is a computer program that translates machine language into assembly language—the inverse operation to that of an assembler. A disassembler differs from a decompiler, which targets a high-level language rather than an assembly language. Disassembly, the output of a disassembler, is often formatted for human-readability rather than suitability for input to an assembler, making it principally a reverse-engineering tool. Assembly language source code generally permits the use of symbolic constants and programmer comments. These are usually removed from the assembled machine code by the assembler. If so, a disassembler operating on the machine code would produce disassembly lacking these constants and comments; the disassembled output becomes more difficult for a human to interpret than the original annotated source code. Some disassemblers make use of the symbolic debugging information present in object files such as ELF. The Interactive Disassembler allow the human user to make up mnemonic symbols for values or regions of code in an interactive session: human insight applied to the disassembly process often parallels human creativity in the code writing process. Disassembly is not an exact science: On CISC platforms with variable-width instructions, or in the presence of self-modifying code, it is possible for a single program to have two or more reasonable disassemblies. Determining which instructions would actually be encountered during a run of the program reduces to the proven-unsolvable halting problem. (en)
  • Un désassembleur est un programme informatique qui traduit du langage machine (un fichier exécutable) en langage assembleur . Cette opération, le désassemblage, est l'inverse de celle effectuée par un programme assembleur, l'assemblage. À noter qu'on peut désassembler le code machine généré par un compilateur de langage haut-niveau, mais on n'obtiendra pas le code source du langage d'origine, juste la correspondance en assembleur du code machine. Si on veut réaliser cette opération, il faudrait utiliser un décompilateur, un type de programme qui n'est pas encore vraiment au point à ce jour. La sortie d'un désassembleur est plus souvent destinée à lire le code de manière plus simple, plus humaine que de lire des suites de bits du code machine, plutôt que de servir d'entrée à un programme assembleur. En effet, les symboles ne sont pas restitués ni même les commentaires de l'auteur (utiles pour comprendre, si l'auteur en avait écrit). (fr)
  • 逆アセンブラ(ぎゃくアセンブラ、disassembler ディスアセンブラ)とは、コンピュータ(CPU)が解釈可能な機械語を、人間から見て解釈しやすいニーモニック(アセンブリ言語)に変換するプログラムをいう。技術者の間では逆アセと呼ばれる事もある。 アセンブリ言語以外の高級言語等への変換を行うプログラムは逆コンパイラ(decompiler デコンパイラ)と呼ばれ区別される。 (ja)
  • Een disassembler is een programma dat computerprogramma's vertaalt van de binaire machinetaal naar voor de programmeur leesbaardere assembleercode. Het is de 'omgekeerde' bewerking van wat een assembler en linker samen doen. De terugomzetting is volledig, maar moeilijk leesbaar. Bij het assembleren zijn commentaar en symbolische adressen namelijk weggegooid en de disassembler kan die niet herstellen. Vergelijkbaar met een disassembler is een discompiler of decompiler die de assembleercode of machinecode weer terug probeert te vertalen in de originele hogere programmeertaal. Een andere benaming voor disassembleren of discompileren is 'reverse engineering'. (nl)
  • Dezasembler (ang. disassembler) – program tłumaczący kod maszynowy na kod źródłowy w języku asemblera. Dezasemblacją nazywa się sam proces tworzenia kodu. Asembler zwykle pozwala na korzystanie z komentarzy i stałych wewnątrz programu; są one usuwane podczas procesu zamiany kodu asemblera na kod maszynowy. W większości przypadków nie jest możliwa skuteczna metoda zamiany kodu maszynowego na asembler, analizator nie jest w stanie rozróżnić danych od kodu i interpretuje dane umieszczone w kodzie programu jak instrukcje - szczególnie jeśli analizowane dane są dodatkowo zabezpieczone przed dezasemblacją, poprzez niskopoziomowe metody pomagające chronić prawa autorskie programisty. Kod wynikowy dezasemblowanego programu jest przez to jeszcze trudniejszy do zinterpretowania przez człowieka. (pl)
  • Дизассе́мблер — транслятор, преобразующий машинный код в программу на языке ассемблера. По режиму работы с пользователем делятся на Автоматические Интерактивные Примером автоматических дизассемблеров может служить Sourcer. Такие дизассемблеры генерируют готовый листинг, который можно затем править в текстовом редакторе. Пример интерактивного — IDA. Он позволяет изменять правила дизассемблирования, весьма удобный инструмент для исследования программ. Чаще всего дизассемблер используют для анализа программы, исходный текст которой неизвестен — с целью модификации, копирования или взлома. Реже — для поиска ошибок в программах и компиляторах, а также для анализа оптимизации создаваемых компилятором машинного кода. Обычно используется параллельно с отладчиком. (ru)
  • Disassemblator, eller disassemblerare, är ett program som analyserar en kompilerad fil och reproducerar källkoden för filen i assemblerkod. (sv)
  • Un desensamblador es un programa de computación que traduce desde el lenguaje máquina (código binario) hacia el lenguaje ensamblador. El programa desensamblador a utilizar, por trabajar con lenguaje máquina y ensamblador, depende exclusivamente del microprocesador que estamos usando, de la arquitectura de la máquina y del sistema operativo en uso . (es)
  • Un disassemblatore o disassembler è un programma che traduce dal linguaggio macchina al linguaggio assembly. Esso effettua quindi l'operazione inversa di un assembler. Comunque, l'output di un disassembler è spesso fatto in modo da poter essere facilmente compreso dall'uomo piuttosto che per essere utilizzato come input per un assembler. Similmente, un decompilatore traduce il linguaggio macchina in un linguaggio ad alto livello. La maggior parte dei debugger includono un disassembler, come il programma objdump delle GNU Binutils. Generalmente, in un codice sorgente in linguaggio assembly vengono utilizzate le costanti simboliche e i "commenti" del programmatore - annotazioni che sono ignorate dall'assembler ma servono a spiegare ad un altro programmatore cosa il programma fa e in che modo. Le costanti simboliche e i commenti vengono generalmente rimossi dall'assembler. La perdita di queste informazioni rende più difficile la comprensione del codice rispetto al codice sorgente originario. In effetti, uno strumento per il disassemblaggio completamente automatico non può raggiungere in genere risultati molto accurati, poiché il processo di disassemblaggio si riduce ad un famoso problema informatico noto come "problema della fermata" . Per questo motivo, i disassembler interattivi avranno sempre una resa migliore rispetto a quelli automatici consentendo all'uomo di utilizzare la sua intelligenza nel processo di disassemblaggio. I disassembler sono tra gli strumenti più comunemente utilizzati per il reverse engineering del software. Sono stati scritti molti disassembler. Alcuni esempi notevoli includono: RosASM- Assembler a 32 bit . Nonostante sia essenzialmente un assembler, contiene anche un disassembler molto potente (sebbene automatico) che è in grado di ricostruire una grande quantità di piccole applicazioni. Il supporto per applicazioni di maggiore dimensione è in via di sviluppo. Interactive Disassembler Un disassembler commerciale interattivo. Sourcer - Un altro disassembler commerciale. (it)
  • Um desmontador, desassemblador ou disassembler é um programa de computador que converte código de máquina em código escrito em linguagem de montagem. A diferença entre um desmontador e um descompilador é que este último reverte a compilação de uma linguagem de alto nível, enquanto o primeiro reverte a montagem de uma linguagem de montagem. O código fonte em linguagem de montagem geralmente contém constantes simbólicas, comentários e rótulos de endereçamento que são normalmente removidos do código de máquina gerado. Assim, o desmontador consegue reverter apenas parcialmente o processo de montagem, pois o código fonte produzido não irá conter essas constantes e comentários. Por causa disso, o código produzido por um desmontador é mais difícil de entender (para um humano) que o código fonte original, com suas anotações. (pt)
  • Ein Disassembler ist ein Computerprogramm, das die binär kodierte Maschinensprache eines ausführbaren Programmes in eine für Menschen lesbarere Assemblersprache umwandelt. Er ist also ein spezieller Übersetzer, der den umgekehrten Arbeitsvorgang eines Assemblers durchführt. (de)
p:dmozProperty
  • Computers/Programming/Disassemblers (en)
  • Disassemblers (en)
p:hasPhotoCollection
p:wikiPageUsesTemplate
rdfs:comment
  • A disassembler is a computer program that translates machine language into assembly language—the inverse operation to that of an assembler. A disassembler differs from a decompiler, which targets a high-level language rather than an assembly language. Disassembly, the output of a disassembler, is often formatted for human-readability rather than suitability for input to an assembler, making it principally a reverse-engineering tool. (en)
  • Un désassembleur est un programme informatique qui traduit du langage machine (un fichier exécutable) en langage assembleur (aussi désigné sous le nom de langage « bas niveau »). (fr)
  • 逆アセンブラ(ぎゃくアセンブラ、disassembler ディスアセンブラ)とは、コンピュータ(CPU)が解釈可能な機械語を、人間から見て解釈しやすいニーモニック(アセンブリ言語)に変換するプログラ� をいう。技術者の間では逆アセと呼ばれる事もある。 アセンブリ言語以外の高級言語等への変換を行うプログラ� は逆コンパイラ(decompiler デコンパイラ)と呼ばれ区別される。 (ja)
  • Een disassembler is een programma dat computerprogramma's vertaalt van de binaire machinetaal naar voor de programmeur leesbaardere assembleercode. (nl)
  • Dezasembler (ang. disassembler) – program tłumaczący kod maszynowy na kod źródłowy w języku asemblera. Dezasemblacją nazywa się sam proces tworzenia kodu. (pl)
  • Дизассе́мблер — транслятор, преобразующий машинный код в программу на языке ассемблера. (ru)
  • Disassemblator, eller disassemblerare, är ett program som analyserar en kompilerad fil och reproducerar källkoden för filen i assemblerkod. (sv)
  • Un desensamblador es un programa de computación que traduce desde el lenguaje máquina (código binario) hacia el lenguaje ensamblador. (es)
  • Un disassemblatore o disassembler è un programma che traduce dal linguaggio macchina al linguaggio assembly. (it)
  • Um desmontador, desassemblador ou disassembler é um programa de computador que converte código de máquina em código escrito em linguagem de montagem. (pt)
  • Ein Disassembler ist ein Computerprogramm, das die binär kodierte Maschinensprache eines ausführbaren Programmes in eine für Menschen lesbarere Assemblersprache umwandelt. (de)
rdfs:label
  • Disassembler (en)
  • Désassembleur (fr)
  • 逆アセンブラ (ja)
  • Disassembler (nl)
  • Дизассемблер (ru)
  • Disassemblator (sv)
  • Desensamblador (es)
  • Disassembler (it)
  • Desmontador (pt)
  • Disassembler (de)
owl:sameAs
skos:subject
foaf:page
is p:redirect of