Interaktivní disassembler pro procesory architektury Intel 64
Interactive disassembler for Intel 64 processors
bachelor thesis (DEFENDED)
View/ Open
Permanent link
http://hdl.handle.net/20.500.11956/69171Identifiers
Study Information System: 130278
Collections
- Kvalifikační práce [11242]
Author
Advisor
Referee
Kofroň, Jan
Faculty / Institute
Faculty of Mathematics and Physics
Discipline
Programming
Department
Department of Software Engineering
Date of defense
4. 9. 2014
Publisher
Univerzita Karlova, Matematicko-fyzikální fakultaLanguage
Czech
Grade
Excellent
Keywords (Czech)
disassembler, Intel 64Keywords (English)
disassembler, Intel 64Práce se zabývá implementací disassembleru-debuggeru pro procesory architektury Intel64. Disassembler si instrukce i jejich formát načítá z předpřipravených XML souborů, čímž je zajištěna rozšiřitelnost i pro budoucí instrukce a architektury. Disassembler dokáže po vložení libovolného programu v jednom z podporovaných formátů převést vykonávané instrukce vloženého programu do jazyka symbolických adres. Pomocí debuggeru je následně možné tento program spustit a kontrolovat tok vykonávaných instrukcí. Instrukce je možné procházet v pořadí, jakém jsou právě vykonávány anebo umístit na určitou instrukci programu breakpoint, na kterém se vykonávání program zastaví. Debugger je schopný zobrazit jednotlivá vlákna běžícího programu a také najít a rozpoznat základní vyšší programové struktury jako jsou podmíněný příkaz a cyklus. Powered by TCPDF (www.tcpdf.org)
The aim of this thesis is to create disassembler-debugger for Intel64 processors. Disassembler loads instructions and instruction's format from XML files which implies future extensibility for new instructions and architecture. After inserting of a program disassembler converts its instructions to assembly language. Debugger is able to run and control the program's instruction flow by stepping over single instruction or by setting some breakpoints that stops the program. Debugger can also show program's threads and find some basic programming structures like if statements and loops. Powered by TCPDF (www.tcpdf.org)