PDA

View Full Version : Assembly intel, at&t, nasm...?


Black imp
15-07-2004, 02:21
Sto per mettermi a studiare un po' di assembly. ne avevo già studiato uno a informatica1 ma era una versione UNIX che non ho capito se fosse reale o didattica. Morale vorrei imparare a programmare sotto Linux processori intel/amd.

ora leggendo qui e cercando con google mi sembra di aver capito quanto segue:

ci sono due sintassi principali: intel e AT&T

ora ho trovato ovunque per programmare il compilatore NASM che è detto avere sintassi SIMILE a intel ma più semplice, quindi NON uguale. ora mi chiedo: ma quale compilatore usa invece sintassi intel pura - sempre per linux - ?

quale usa sintassi AT&T?

quale è preferibile - sotto linux - ?

se voglio utilizzare delle istruzioni specifiche dei processori AMD xp o intel P4 ecc. sono disponibili sui compilatori che si trovano e che eventualmente mi avete citato rispondendo sopra? e dove sono documentate?

la intel e la amd non fanno loro compilatori? - sui rispettivi siti non li ho trovati ma ammetto di avere avuto delle difficoltà a disctricarmici -

insomma ogni informazione in più è gradita

Black imp
15-07-2004, 13:44
ma come nessuno??

:(

cionci
16-07-2004, 02:15
Per la sintassi AT&T c'è gas il compilatore già incluso in gcc...

Black imp
16-07-2004, 02:25
Originariamente inviato da cionci
Per la sintassi AT&T c'è gas il compilatore già incluso in gcc...


fico... mi hai risposto :D
grazie!

una cosa: per imparare quella sintassi e a usare gas bastano i man? avrei bisogno di qualcosa che proprio mi spiegasse tutto :(

cionci
16-07-2004, 02:31
Non so quanto il man possa coprire la sintassi del GAS, ma credo che in giro tu possa trovare diverse cose...

Black imp
16-07-2004, 14:42
Originariamente inviato da cionci
Non so quanto il man possa coprire la sintassi del GAS, ma credo che in giro tu possa trovare diverse cose...


sto cercando come un disperato ma non trovo una mazza. o si trova qualcosa come il nasm che è in sintassi intel o si trovano cose vecchie solo fino al 386...
il man del gas non spiega la sintassi diobono.

sembra un'impresa!

un bel manuale aggiornato agli ultimi intel/amd con tutti i nuovi registri e i comandi specifici tipo mms, sse, 3dnow! ecc. magari in sintassi at&t sembra un miraggio. ma anche un manuale in sintassi intel per linux con le caratteristiche di cui sopra sembra introvabile. in compenso c'è un maledetto libro che parla di un High Level Assembler... ora ma a che cavolo serve un libro su di un assembler che non esiste?? visto che poi i comandi dipendono dalla macchina mi sembrerebbe più utile fare un manuale specifico e basato su compilatori reali.
dio mio sto impazzendo :muro::muro::muro:

maxithron
17-07-2004, 01:49
necessariamente direi di partire da qui:

http://linuxassembly.org/howto/assemblers.html

http://sources.redhat.com/binutils/docs-2.15/as/index.html

Black imp
17-07-2004, 03:07
Originariamente inviato da maxithron
necessariamente direi di partire da qui:

http://linuxassembly.org/howto/assemblers.html

http://sources.redhat.com/binutils/docs-2.15/as/index.html



grazie già visti. :(

il primo qualcosa di interessante lo dice sicuramente

il secondo è il man dell' as. ma sembra molto datato


ho l'impressione che non esista, non solo un tutorial o manuale on line, ma neanche un libro a pagamento come sto cercando.

almeno potete chiarirmi una cosa? le istruzioni di un p3, p4 amd xp ecc sono le stesse dei 386? io direi di no ma non trovo da nessuna parte documentazione di quelle aggiunte dopo.

Black imp
17-07-2004, 16:55
OK vi ringrazio sono riuscito a trovare un po' di cose interessanti.

Ok per il manuale di gas, grazie, utilissimo, poi il nasm, poi vari tutorial su come convertire le due sintassi e poi ho trovato i manuali per ottimizzare il codice sia per intel IA32 che per AMD 32bit e 64 bit. sul sito AMD si trova molto facilmente tutta l'info che si vuole per i nuovo atlon a 64 bit ma ho fatto una fatica pazzesca per trovare il file che spiega le istruzioni dei 'vecchi' athlon a 32 bit. adesso ho praticamente tutto. se qualcuno vuole fare una raccolta del materiale partecipo volentieri - mi ci son voluti 3 gg per trovare tutto - . ho anche trovato un documento che spiega come ottimizzare i trasferimenti di dati quando si programmano i VGs per AMD!

Luc@s
17-07-2004, 17:06
[OT]
mi dai i link della documentazione in PVT???