Вопрос

Существует ли инструкция CIL для обмена первыми двумя элементами в стеке?

Это было полезно?

Решение

Нет единого обмена инструкциями. Однако, используя stloc , pop и ldloc , вы сможете выполнить обмен.

Другие советы

Нет.Единственный способ поменять местами элементы - поместить два верхних элемента в locals, затем переместить их в обратном порядке.

Глядя на список инструкций CIL , похоже, нет ни одной инструкции который обменивается двумя элементами в верхней части стека. Вы должны будете сделать это по-старому.

Для дальнейшего использования вы можете создать сборку, которая будет выполнять то, для чего вы хотите изучить IL, а затем просмотреть сборку в Reflector. Вы можете выбрать язык, на котором хотите код, и IL - один из вариантов. Я сделал это, пытаясь понять, как кодировать динамический метод ...

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top