Debugger a interpreter x86 assembly v prehliadači
Aplikácia umožňuje napísať program v x86 NASM syntaxi a spustiť ho v prehliadači. Spustený program je možné potom krokovať a sledovať stav vizualizované pamäte a registrov.
funkcia:
- preklad, spustenie, krokovanie
- zvýraznenie NASM syntaxe x86 assembly, kontrola syntaktických a sémantických chýb, možnosť vkladať komentáre
- ovplyvnenie rýchlosti vykonávania programu, vkladanie Breakpoint do kódu
- dva jednoduché interrupt - vypísanie hodnoty registra a vypísanie reťazca (výpis je vykonávaný do konzoly, ktorá je zobrazená v rámci aplikácie)
- výpis pamäti po 1, 2 alebo 4 bytoch, ASCII interpretácia pamäti
V súčasnej verzii programu ani zďaleka nepodporuje všetky funkcie NASM ani x86 assembly (ani sa o to nesnaží). Obsahuje ale podľa môjho dosť základných inštrukcií na to, aby v nej išli napísať krátke programy.
Pre vytvorenie aplikácie mňa inšpirovala má magisterské štúdium, v ktorej som robil niečo podobné (vizualizáciu stavu programu pri ladení) pre C / C ++. Hľadal som niečo podobné online, našiel som toto, ale nepáčilo sa mi, že to používalo zjednodušenú inštrukčnú sadu, chcel som používať niečo, čo by zvládalo čo najviac z x86 assembly, aby sa to dalo jednoducho previesť do spustiteľného súboru. Motiváciou pre túto aplikáciu je hlavne výučba a experimentovanie s assembler, čo by mala uľahčovať práve vizualizácie pamäte.
Aplikácia je napísaná v TypeScriptu a Angular. Niektoré časti enginu assembleri sú otestované, UI zatiaľ nie. Prípadné chyby môžete oznamovať tady.
Aplikáciu je možné vyskúšať tu.
Zdrojový kód je tu.
Hodnotenie porotcov
Aplikácia bola vytvorená do súťaže ITnetwork summer 2017
- David Čapka (9 bodov) - ASM známy len ako tie podivné sekvencie znakov, čo som stretával vtedy v pascalovských jednotkách, takže bohužiaľ nemôžem plne vyskúšať možnosti debuggera. Čo sa týka vzhľadu, Bootstrap vyzerá dobre, očakával by som to responzívne, škoda. Čo sa týka zdrojového kódu, vyzerá to dobre a pomerne rozsiahlo. Priložená ukážka funguje parádne, určite je to veľmi zaujímavý nástroj, snáď tí dá spätnú väzbu niekto tu zo siete, kto v ASM píše
- Lucie Hartingerová (9 bodov) - Veľa pokročilých. Bohužiaľ nie som úplne schopná doceniť kvality také aplikácie, však zdrojové kódy a dokumentácia vyzerá dosť prepracovane
- Tomáš Bitter (8 bodov) - Nepoznám žiadne iné podobné aplikácie, takže nemám s čím porovnávať. Nemám k tomu veľmi čo vytknúť či vyzdvihnúť. Aplikácia sa mi celkovo páči; nástroje na debugovania sa proste vždy hodia, zvlášť u Assemblera.
Galéria
Stiahnuť
Stiahnutím nasledujúceho súboru súhlasíš s licenčnými podmienkami
Stiahnuté 35x (116.37 kB)
Aplikácia je vrátane zdrojových kódov v jazyku JavaScript