Sdílet prostřednictvím


Syntaxe registrů

Ladicí program může řídit registry a registry s plovoucí desetinnou čárkou.

Pokud použijete registr ve výrazu, měli byste před registrací přidat znak at ( @ ). Tento zavináč označuje pro ladicí program, že následující text je název registru.

Pokud používáte syntaxi výrazů MASM, můžete u některých velmi běžných registrů vynechat znak zavináč. V systémech založených na platformě x86 můžete vynechat znak zavináč u registrů eax, ebx, ecx, edx, esi, edi, ebp, eip a efl. Pokud však zadáte méně běžný registr bez znaménka, ladicí program se nejprve pokusí interpretovat text jako šestnáctkové číslo. Pokud text obsahuje nehexadecimální znaky, ladicí program jej dále interpretuje jako symbol. Pokud ladicí program nenajde shodu symbolů, ladicí program interpretuje text jako registr.

Pokud používáte syntaxi výrazu jazyka C++, je vždy vyžadován znak at.

Příkaz r (Registers) je výjimkou tohoto pravidla. Ladicí program vždy interpretuje svůj první argument jako registr. (Znak at není povinný nebo povolený.) Pokud je pro příkaz r druhý argument, interpretuje se podle výchozí syntaxe výrazu. Pokud je výchozí syntaxe výrazu C++, musíte pomocí následujícího příkazu zkopírovat registr ebx do registru eax .

0:000> r eax = @ebx

Další informace o registrech a pokynech specifických pro jednotlivé procesory najdete v tématu Architektura procesoru.

Příznaky procesoru založeného na platformě x86

Procesory založené na platformě x86 také používají několik 1bitových registrů, které se označují jako příznaky. Další informace o těchto příznakech a syntaxi, pomocí které je můžete zobrazit nebo změnit, najdete v tématu x86 Příznaky.

Registry a vlákna

Každé vlákno má vlastní hodnoty registru. Tyto hodnoty jsou uloženy v registru procesoru při spouštění vlákna a v paměti při spuštění jiného vlákna.

V uživatelském režimu se všechny odkazy na registr interpretují jako registr přidružený k aktuálnímu vláknu. Další informace o aktuálním vlákně naleznete v tématu Řízení procesů a vláken.

V režimu jádra se všechny odkazy na registr interpretují jako registr přidružený k aktuálnímu kontextu registru. Kontext registru můžete nastavit tak, aby odpovídal konkrétnímu vláknu, záznamu kontextu nebo snímku pasti. Můžete zobrazit pouze nejdůležitější registry pro zadaný kontext registru a nemůžete změnit jejich hodnoty.