Imparare a programmare in assemblea - Risorse utili [chiuso]

10

Facendo seguito a una discussione precedente, mi ha interessato conoscere qualcosa sulla programmazione di Assembly. Non tanto per voler programmare app utili, solo per avere un'idea di programmazione di basso livello per capire meglio cosa sta succedendo.

Qualcuno può consigliare libri o risorse online per principianti?

Grazie.

    
posta Darren Young 19.12.2010 - 12:40
fonte

5 risposte

5

Libro consigliato: L'arte della programmazione linguistica dell'assemblaggio .

Mi è piaciuto anche questo sito . Buona introduzione alla programmazione di assemblaggio! Ho usato questo sito come riferimento mentre studiavo per il mio corso sui microprocessori e sui microcontrollori.

    
risposta data 19.12.2010 - 12:56
fonte
2

È un esercizio accademico o hai intenzione di utilizzare la lingua dell'assembly che impari? Questa è roba abbastanza specializzata, in questi giorni. L'ottimizzazione del compilatore è diventata così buona, che anche qualcosa come un hard disk ad alte prestazioni in genere avrebbe scritto circa l'1% della sua base di codice scritta in assembler. Andando lungo la catena alimentare verso i processori a 4 bit o alcuni a 8 bit vedrai molto più linguaggio di assemblaggio utilizzato.

Se vuoi davvero provare il linguaggio assembly, scegli un processore con un set di istruzioni piacevole. Sono un ex dipendente di ARM quindi sono probabilmente prevenuto, ma ho scoperto che il set di istruzioni ARM era particolarmente facile da imparare - sono stato in grado di scrivere un filtro FIR efficiente nel mio terzo giorno in azienda. I partner di ARM per i semiconduttori stanno consegnando circa un miliardo di core ARM al trimestre in questi giorni, quindi è abbastanza facile trovare un'azienda che sia disposta a utilizzare la tua competenza ARM ASM.

Ci sono un sacco di schede di valutazione ARM disponibili per circa $ 50 per provare il tuo codice - sembra che ARM Cortex M3 sarà immensamente popolare. Usa il set di istruzioni Thumb2 di ARM, che è un po 'più oscuro del semplice codice ARM32, ma è comunque abbastanza facile e molto potente.

Questa piccola scheda sembra molto interessante, per 80 euro: link

    
risposta data 19.12.2010 - 16:00
fonte
1

Fondamentalmente, nel senso della programmazione degli assembly, è necessario conoscere prima l'architettura sottostante, quindi il linguaggio corrispondente, ad esempio, con i microcontrollori PIC, è possibile utilizzare il compilatore quale fornito e il linguaggio. Io uso il sito questo per fare riferimento alle esercitazioni sul microcontrollore PIC.

    
risposta data 19.12.2010 - 15:27
fonte
1

Ho sempre trovato che la parte più difficile era il buongiorno, che di solito è solo una banale funzione di assem chiamata da un languare più alto come aggiungere due numeri. Una volta superato questo ostacolo si tratta semplicemente di aggiungere istruzioni e psuedo-ops (come la definizione dei dati) al tuo repertorio.

Sarei il secondo geekbrit, anche se non ho mai usato ARM. Un'architettura minimale come quella sarebbe non solo più facile, ma potrebbe avvicinarsi ad avere una legittima, contraria solo a uno scopo didattico.

    
risposta data 19.12.2010 - 17:04
fonte
0

Ho un set di istruzioni, un assemblatore e un simulatore, con alcune lezioni che sono state create proprio per questo scopo. Non ho ancora un riscontro su quanto bene o male ho fatto, ma è là fuori, darlo 15 minuti o mezz'ora per vedere se ti insegna qualcosa. link Dopo di che ho alcuni simulatori di istruzioni mainstream che puoi provare anche tu, semplice, senza fronzoli, dovresti correre ovunque tu abbia una C compilatore, ecc.

    
risposta data 13.01.2012 - 04:43
fonte

Leggi altre domande sui tag