В настоящее время я использую представление дизассемблирования VS для отладки некоторого кода C #. Есть некоторые области памяти, которые выглядят так, когда отображаются и байты, и разборка:
24E2822A ?? ?? ??
24E2822B ?? ?? ??
24E2822C ?? ?? ??
24E2822D FB sti
24E2822E 2B 8B CE E8 9A 2A sub ecx,dword ptr [ebx+2A9AE8CEh]
24E28234 1B 2D CC 00 B8 9D sbb ebp,dword ptr ds:[9DB800CCh]
24E2823A DC 24 00 fsub qword ptr [eax+eax]
Я бы ожидал, что ??
соответствует не отображенным областям памяти, однако я видел call
инструкции, которые указывают на эти ??
области. Попытка использовать шаг VS в функциональности просто приводит к тому, что они переступают через эти вызовы. Следующим моим предположением было то, что это были области памяти, предшествующие JIT, но разрыв в этой области кода несколько раз подряд приводит к одинаковому значению ??
в этих областях.
Что Visual Studio пытается рассказать мне об этой области памяти?