Изучая CLI возникло пару вопросов о который раньше как-то не задумывался.
Я так понимаю, что это относится ко всем ассемблерам, но всё же: везде в книге пишут, что VES (Virtual Execution System) оперирует данными на стеке. Вопрос, почему используется именно стек? И если есть чё нибудь почитать на это тему, то прошу поделиться. Гуглом чего то не берётся это вопрос.
Как организован стек? Что область памяти понятно, но нафига например указывать директиву .maxstack в начале тела метода, если в стеке всё равно могут хранится значения разных типов и размер его, просто зная количество элементов в стеке, не посчитаешь? И как собственно выглядит размещение ValueType в стеке? Т.е. меня интересует именно как устроен стек в CLI.