![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
где мои байты ???? [Delphi, Windows]
Deimos © (2004-04-03 11:07:00)ффтопик, конечно но тем не менее...
объясните мне кто-нибудь пожалуйста следующий факт..
допустим имеется программка(для примера просто вывод сообщения с цифрой)
program Project1;
uses KOL;
var
i:integer;
begin
i:=0;
showMessage(int2str(i));
end.
размер у меня в компилированном виде 6656 байт
изменяем её
program Project1;
uses KOL;
var
i:integer;
begin
i:=0;
asm
xor eax,eax // очищаем eax
xor edx,edx // и edx тоже
mov eax,5 // засовываем в eax 5
mov edx,4 // засовываем в edx 4
add eax,edx // складываем
mov i,eax // засылаем результат в переменную i
end; // вываливаемся обратно
showMessage(int2str(i));
end.
размер компилированном виде тоже 6656 байт
куда делся добавленный код ???
Deimos (2004-04-05 21:31:00) [1]Благодарю за предлджение, но структура PE мне знакома..
просто я не знал как дельфи выравнивает страницы
Delphi5.01 (2004-04-04 20:36:00) [2]K sojaleniu mne kajetsa ne lza, kak naprime doc fail sostoit iz malenkih sektorov 64 baita i bolshih 256.
Esli sektor slishkom malenki to, v etom sluchae sama struktura FAT zanimaet bolshoe mesto, v kotoroi soderjitsa informacia o raspolojenii i posledovatelnosti etih sektorov.
Ia podrobno razobral doc fail. No exe fail soderjit pohojuiu strukturu.
Kak ia viju vam nujen malenki razmer ili dla troianca ili dla virusa, v protivnom sluchae ne mogu ponat zachem programma menshe chem 6kb.
kstati esli vas interesuet struktura exe faila mogu podelitsa. Mojet programno smojete izmenit razmer :-)
Deimos (2004-04-04 12:59:00) [3]а можно как нибудь изменить кратность выравнивания ??
в masm-е , помнится, была директива линкера ALIGN:x
можно было аж до 4 уменьшить..
Владимир Кладов (2004-04-03 12:50:00) [4]Project|Information
SPeller (2004-04-03 11:26:00) [5]Потому что размер ЕХЕ растёт не побайтно, в зависимости от кода в нём. Его размер выравнивается по какой-либо границе. (н-р 512 байт, 128 байт и т.п.)