Disassembler: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
fix |
|||
(7 versioni intermedie di 4 utenti non mostrate) | |||
Riga 2:
== Descrizione ==
L{{'}}''
Generalmente, in un [[codice sorgente]] in linguaggio assembly vengono utilizzate le [[costante simbolica|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. {{Sf|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 il quale è stato dimostrato che non esiste un [[algoritmo]] che lo risolva).}} 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.
== Programmi famosi ==
Riga 10:
Sono stati scritti molti disassembler. Alcuni esempi notevoli includono:
* [[RosASM]]- [[Assembler]] a [[32 bit]] (disponibile sotto [[GNU General Public License|licenza GPL]]). 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.
Line 20 ⟶ 19:
==Collegamenti esterni==
* {{cita web|1=http://www.program-transformation.org/Transform/DisAssembly|2=Il disassembly su Wiki|lingua=en|accesso=9 luglio 2005|urlarchivio=https://www.webcitation.org/617hwkBUM?url=http://www.program-transformation.org/Transform/DisAssembly|dataarchivio=22 agosto 2011|urlmorto=sì}}
* {{cita web|http://java.sun.com/j2se/1.3/docs/tooldocs/solaris/javap.html|Un disassembler per file Java|lingua=en}}
* {{cita web|1=http://www.dms.at/kopi/|2=Kopi Project|lingua=en|accesso=9 luglio 2005|urlarchivio=https://web.archive.org/web/20050603074654/http://www.dms.at/kopi/|dataarchivio=3 giugno 2005|urlmorto=sì}}
* {{cita web|1=http://pvdasm.reverse-engineering.net/|2=PVDasm|lingua=en|accesso=9 luglio 2005|urlarchivio=https://web.archive.org/web/20070501135754/http://pvdasm.reverse-engineering.net/|dataarchivio=1º maggio 2007|urlmorto=sì}}
* {{cita web|http://bastard.sourceforge.net/libdisasm.html|x86 Disassembler Library|lingua=en}}
* {{cita web|1=http://biew.sourceforge.net|2=BIEW|lingua=en|accesso=28 agosto 2018|urlarchivio=https://web.archive.org/web/20160702180758/http://biew.sourceforge.net/|dataarchivio=2 luglio 2016|urlmorto=sì}}
* {{cita web|1=http://www.openrce.org/|2=OpenRCE: Various Disassembler Resources and Plug-ins|lingua=en|accesso=29 aprile 2007|dataarchivio=28 agosto 2008|urlarchivio=https://web.archive.org/web/20080828152956/http://openrce.org/|urlmorto=sì}}
* {{cita web|http://www.thefreecountry.com/programming/disassemblers.shtml|The free country|lingua=en}}
* {{cita web|1=http://www.programmersheaven.com/zone5/cat460/index.htm|2=Programmer's heaven|lingua=en|urlmorto=sì}}
{{Controllo di autorità}}
|