Zobrazení zpětného překladu kódu v ladicím programu sady Visual Studio (C#, C++, Visual Basic, F#)
Okno Zpětné překladu zobrazuje kód sestavení odpovídající pokynům vytvořeným kompilátorem. Pokud ladíte spravovaný kód, tyto pokyny k sestavení odpovídají nativnímu kódu vytvořenému kompilátorem JIT (Just-in-Time), nikoli jazyku MSIL (Microsoft Intermediate Language) vytvořenému kompilátorem sady Visual Studio.
Poznámka:
Pokud chcete plně využít výhod okna zpětného překladu, seznamte se se základy programování v jazyce sestavení. Referenční materiály pro instrukční sady Intel se nacházejí v 2. svazku příručky k architektuře. Tento materiál se obecně vztahuje také na instrukční sady AMD.
Tato funkce je dostupná jenom v případě, že je povolené ladění na úrovni adresy. Není k dispozici pro ladění skriptu nebo SQL.
Kromě pokynů k sestavení může okno zpětného překladu zobrazit následující volitelné informace:
Adresa paměti, kde se nachází každá instrukce. Pro nativní aplikace se jedná o skutečnou adresu paměti. Pro Visual Basic nebo C# je to posun od začátku funkce.
Zdrojový kód, ze kterého je kód sestavení odvozen.
Bajty kódu, tj. bajtové reprezentace skutečného počítače nebo pokynů jazyka MSIL.
Názvy symbolů pro adresy paměti.
Čísla řádků odpovídající zdrojovému kódu
Instrukce jazyka sestavení se skládají z mnemonics, což jsou zkratky pro názvy instrukcí a symboly pro proměnné, registry a konstanty. Každá instrukce strojového jazyka je reprezentována jedním měmonic v jazyce sestavení volitelně následovaný jedním nebo více symboly.
Kód sestavení je silně závislý na registrech procesorů nebo u spravovaných registrů modulu CLR (Common Language Runtime). Můžete použít okno zpětného překladu spolu s oknem Registrů, které umožňuje zkoumat obsah registru.
Pokud chcete zobrazit pokyny strojového kódu v nezpracované číselné podobě, nikoli jako jazyk sestavení, použijte okno Paměť nebo v místní nabídce v okně Zpětné překladu vyberte Bajty kódu.
Použití okna zpětného překladu
Chcete-li povolit okno zpětného překladu, v části Nástroje>Možnosti>ladění vyberte Povolit ladění na úrovni adresy.
Pokud chcete otevřít okno zpětného překladu během ladění, vyberte Windows>Disassembly nebo stiskněte Alt+ 8.
Poznámka:
Dialogová okna a příkazy nabídek, které vidíte, se mohou lišit od těch popsaných v nápovědě v závislosti na aktivních nastaveních nebo edici. Pokud chcete změnit nastavení, zvolte v nabídce Nástroje možnost Importovat a exportovat Nastavení. Další informace najdete v tématu Resetování všech nastavení.
Chcete-li zapnout nebo vypnout volitelné informace, klikněte pravým tlačítkem myši v okně zpětného překladu a nastavte nebo zrušte zaškrtnutí požadovaných možností v místní nabídce.
Žlutá šipka na levém okraji označuje aktuální bod provádění. V případě nativního kódu bod provádění odpovídá čítači programu procesoru. V tomto umístění se zobrazí další instrukce, která se spustí ve vašem programu.
Posunutí paměti o stránku nahoru nebo dolů
Při zobrazení obsahu paměti v okně Paměť nebo v okně zpětného překladu můžete pomocí svislého posuvníku přesunout nahoru nebo dolů v paměťovém prostoru.
Pokud chcete přejít na stránku dolů (přejděte na vyšší adresu paměti), klikněte na svislý posuvník pod posuvníkem.
Pokud chcete stránku posunout nahoru (přesunout na nižší adresu paměti), klikněte na svislý posuvník nad palcem.
Všimněte si také, že svislý posuvník funguje nestandardním způsobem. Adresní prostor moderního počítače je velmi velký a bylo by snadné ho ztratit tak, že chytíte palec posuvníku a přetáhnete ho na náhodné místo. Z tohoto důvodu je palec "springloaded" a vždy zůstává uprostřed posuvníku. V aplikacích nativního kódu můžete stránku nahoru nebo dolů, ale nelze se volně posouvat.
Ve spravovaných aplikacích je demontáž omezena na jednu funkci a můžete se posouvat normálně.
Všimněte si, že v dolní části okna se zobrazí vyšší adresy. Pokud chcete zobrazit vyšší adresu, musíte se přesunout dolů, ne nahoru.
Přesunutí o jednu instrukci nahoru nebo dolů
- Klikněte na šipku v horní nebo dolní části svislého posuvníku.