Я изучаю язык ассемблера в свободное время. Может кто-нибудь объяснить, почему .maxstack представляется необязательным в этой программе. Я попытался найти ответ в Интернете и в моей книге без такой удачи, то есть программа будет компилироваться и запускаться с помощью .Maxstack:
//Add.il
//Add Two Numbers
.assembly extern mscorlib {}
.assembly Add
{
.ver 1:0:1:0
}
.module add.exe
.method static void main() cil managed
{
//.maxstack 2
.entrypoint
ldstr "The sum of 50 and 30 is = "
call void [mscorlib]System.Console::Write (string)
ldc.i4.s 50
ldc.i4 30
add
call void [mscorlib]System.Console::Write (int32)
ret
}
Я компилирую программу в командной строке с помощью инструмента ILASM, а затем запускаю сгенерированный исполняемый файл.