|
jeppojeps |
.fedelissimo.
Registered: Apr 2004
Posts: 46 (0.01 al dì)
Location:
Corso:
Anno:
Time Online: 7:17:00: [...]
Status: Offline
Edit | Report | IP: Logged |
Array, numeri casuali e funzioni
Per creare un vettore con i numeri casuali, è sufficiente appoggiarsi alla libreria standard del C, non ditemi che qualcuno ha talmente tanta voglia di scrivere una funzione che generi dei numeri casuali in assembly quando c'è ne già una nelle librerie standard int rand(void) è sufficiente stare attenti a come muovere i registri esp e ebp e si possono chiamare tutte le funzioni del C...anche quelle personalizzate....tipo per ordinare un vettore.... (voleva essere un suggerimento)
La cosa da ricordare è che le funzioni standard del C agiscono sui registri in un certo modo, cioè lasciano inalterati certi registri e ne possono modificare altri, magari le funzioni personalizzate non seguono questo tipo di schema e ci si può trovare qualche valore a troie in qualche registro che supponevamo non venisse toccato, comunque per tutte queste delucidazioni c'è un po' di materiale sul manuale di Paul Carter, che trovate sul sito www.drpaulcarter.com c'è anche la versione in italiano tradotta da Giacomo Bruschi. Che non c'entra con il Prof Danilo Bruschi del nostro corso ma che è valida ugualmente.
Per i più pigri con l'assembly il GCC può senz'altro aiutare
gcc -S -o esempio.asm listato.c
dove esempio.asm sarà il file generato dal gcc che contiene il codice assembly del listato C, che non credo sia compatibile con nasm, non ho provato, comunque è utile per farsi un'idea...
Last edited by jeppojeps on 12-10-2007 at 15:11
|