Mam pytanie bo już trochę zgłupiałem:
Instrukcja typu
mov edi edi
to odpowiednik
x = x;
i nie robi absolutnie nic, prawda?
Tzn. robi - zajmuje czas i pracę procesora.
W takim razie po co w funkcjach z user32.dll - tylko tam patrzyłem (za pomocą IDA) ale podejrzewam że tego jest więcej - po co na początku każdej funkcji występuje takie coś?
Jedyne zastosowanie takiego czegoś jakie mi przychodzi do głowy to zatrzymanie na chwilę procesora żeby dać czas innym urządzeniom, ale w tym przypadku mi się to wydaje zupełnie bezsensowne.
Tyle się mówi o optymalizacji przez kompilatory, a one, nawet jeśli im takie coś wyjdzie, nie umieją czegoś takiego usunąć?
Chyba że to ja czegoś nie rozumiem?