За регистрите
6 отговора
592 прегледа
За регистрите
Пропомнете ми за кои регистри (stdcall) се гарантираше че си запазват стойността след изпълнение на функция. Доколкото помня за esi и edi няма гаранция, а пък за eax е ясно че се променя защото връща стойност.
Re: За регистрите
Струва ми се, че когато говорим за stdcall, подразбира се че става дума и за компилатор който изпълнява конвенцията/стандарта за stdcall.
Мечтата е мисъл, мисълта е идея, всяка идея се реализира. Аз не мечтая, а реализирам идеите си.
Мечтата е мисъл, мисълта е идея, всяка идея се реализира. Аз не мечтая, а реализирам идеите си.
Re: За регистрите
Т.е. как ф-ята ще си получи параметрите и кой ще изчисти стека. Колкото до регистрите, които не участват в предаването някакъв резултат никой не може да знае дали ще бъдат запазени/омазани.
Re: За регистрите
Е те точно затова има конвенции. За да СЕ ЗНАЕ. Т.е. когато функцията е от определен тип, компилаторът е ДЛЪЖЕН да ти пази регистрите.
Мечтата е мисъл, мисълта е идея, всяка идея се реализира. Аз не мечтая, а реализирам идеите си.
Мечтата е мисъл, мисълта е идея, всяка идея се реализира. Аз не мечтая, а реализирам идеите си.