Un po' di sana ottimizzazione
 
Scarica qui il programma per questo corso (38 kb)
 
Come spesso avrete avuto modo di constatare (o almeno lo spero :) nel reversing spesso è necessario scrivere routine piccole piccole per poter farle entrare in qualche buffer minuscolo che abbiamo a disposizione e spesso questo diventa un problema....Perchè molti di ottimizzazione ne capiscono ben poco. Lo scopo di questo corso è proprio quello di insegnarvi le basi dell'ottimizzazione, non è un corso impegnativo ne difficile e sarà utile anche per farvi distendere un pochetto i nervi.
Vi presento un programma scritto in Asm e compilabile con il Tasm reperibile su questo sito alla sezione downloads, il sorgente è lineare ed il programma.....Non fa assolutamente nulla, si preoccupa solo di generare un numero quasi-random utilizzando il più possibile i cicli di clock :) se infatti avete dimistichezza con le tabelle dove sono riportati i cicli necessari al processore per ogni operazione, vedrete che ho strutturato il programma in modo da farvi utilizzare inutilmente tanto processore :)))). Ma il vostro scopo? Il vostro scopo...O meglio...I vostri scopi sono:
1) ottimizzare il sorgente in modo da avere una sezione CODE nell'eseguibile finale più piccola possibile, non preoccupatevi dei buffer, mi interessa solo la .CODE, il programma integra un misuratore per il tempo di esecuzione che vi servirà a livello intuitivo durante l'ottimizzazione.
2) presentarmi l'exe più piccolo possibile :) e stavolta potete anche toccare i buffer e quello che volete, ma l'exe COMPLETO finale deve essere il più piccolo possibile. La soluzione più rapida sarebbe quella di ottimizzare la .CODE e rimpicciolire l'exe, ma potete anche fare le due cose separatamente se vi piace :)...Ah, il testo delle due Messagebox NON può cambiare, deve restare quello :).
Suppongo che 15 giorni siano sufficienti, semmai prolungo il termine, buon divertimento ragazzi :)
-=Quequero=-