Libro di programmazione a basso livello Hardware purpose
- mr.chaka
- Scoppiettante Seguace

- Messaggi: 742
- Iscrizione: martedì 29 settembre 2009, 22:23
- Località: Barcelona
Libro di programmazione a basso livello Hardware purpose
Ciao a tutti, scusate se il titolo puo essere un po ambiguo per mi spiego meglio subito.
Sono molto interessato alla programmazione di basso livello, mi piacerebbe molto imparare a programmare l'hardware dai principi quindi forse ho anche bisogno di conoscere ed imparare alcune basi dell'elettronica, quindi, qualcuno saprebbe consigliarmi un buon testo si riferimento per iniziare seriamente?
Gia so programmare quindi i concetti base della programmazione li conosco, ho gia praticato abbastanza in quest'argomento, sarebbe piu per la parte "a basso livello"..
Va bene in italiano, se in inglese ancora meglio!
Grazie mille a tutti gli interessati!
Sono molto interessato alla programmazione di basso livello, mi piacerebbe molto imparare a programmare l'hardware dai principi quindi forse ho anche bisogno di conoscere ed imparare alcune basi dell'elettronica, quindi, qualcuno saprebbe consigliarmi un buon testo si riferimento per iniziare seriamente?
Gia so programmare quindi i concetti base della programmazione li conosco, ho gia praticato abbastanza in quest'argomento, sarebbe piu per la parte "a basso livello"..
Va bene in italiano, se in inglese ancora meglio!
Grazie mille a tutti gli interessati!
Ultima modifica di mr.chaka il martedì 22 dicembre 2009, 23:48, modificato 1 volta in totale.
Re: Libro di programmazione ed elettronica
Ti serve dunque qualcosa per programmare in assembly?
Puoi o leggere un data sheet di qualche casa che si occupa della distribuzione di processori o andare a guardare il materiale che è su internet (che secondo me è più dettagliato ed esplicativo).
Es. http://digilander.libero.it/antaresws/h ... zione/asm/
Puoi o leggere un data sheet di qualche casa che si occupa della distribuzione di processori o andare a guardare il materiale che è su internet (che secondo me è più dettagliato ed esplicativo).
Es. http://digilander.libero.it/antaresws/h ... zione/asm/
Il bruco alla mela: "Ci vorrà del tempo, ma prima o poi il buco te lo faccio..."
- mr.chaka
- Scoppiettante Seguace

- Messaggi: 742
- Iscrizione: martedì 29 settembre 2009, 22:23
- Località: Barcelona
Re: Libro di programmazione ed elettronica
Con l'assembly avevo gia incominciato a praticare, pero magari mi servirebbe un libro proprio dedicato all'argomento nel senso vero e proprio.. o no?
Non é che escludo l'assembly perche so che é fondamentale in cio, pero so che anche C si puo usare benissimo per questo tipo di programmazione (per quello che si puo fare solo in assembly ;D ).
Un libro che mi potrebbe interessare potrebbe essere uno che riguardi i sistemi embedded??
Chiedo consulenza... :-[ :-\ ;D
Non é che escludo l'assembly perche so che é fondamentale in cio, pero so che anche C si puo usare benissimo per questo tipo di programmazione (per quello che si puo fare solo in assembly ;D ).
Un libro che mi potrebbe interessare potrebbe essere uno che riguardi i sistemi embedded??
Chiedo consulenza... :-[ :-\ ;D
Ultima modifica di mr.chaka il martedì 22 dicembre 2009, 2:40, modificato 1 volta in totale.
-
giovanhalen
- Prode Principiante
- Messaggi: 1
- Iscrizione: sabato 23 giugno 2007, 16:06
Re: Libro di programmazione ed elettronica
La programmazione in assembly più che una difficoltà di linguaggio, che è molto ridotto rispetto ad un qualsiasi linguaggio di alto livello, offre una difficoltà a livello di approccio del problema da risolvere. Immagino che tu sappia che programmare in assembly si fa per porzioni di codice molto ristrette e per ottimizzazioni molto spinte, in quanto incorrere in errori o bug è molto facile.
Il difficile stà nel dover scomporre un qualsiasi problema in operzaioni elementari. Anche un banale ciclo for stressa, un programma che calcola il fattoriale...urcera.
Il codice assembly specifico per ciascun processore lo trovi nelle reference che mettono a disposizione le case produttrici. Ora ad esempio mi vengono in mente quelli di IBM Cell Processor o processori con archittettura MIPS o ARM che ho usato per ricerca.
Un buon testo per entrare nel meccanismo è a mio parere:
D.A. Patterson, J.L. Hennessy, "Struttura e Progetto dei Calcolatori" 2^a edizione ITALIANA (traduzione della 3^a edizione inglese), Zanichelli, Luglio 2006, ISBN 978-88-08-09145-1
In questo libro si fa riferimento in particolare all'assembly mips, linguaggio molto leggero e essenziale, ma per capire il ragionamento è l'ideale, poi ad aggiungere istruzioni sempre più complesse è questione di pratica.
Inoltre, sempre a mio parere, piu che di elettronica ti serve conoscere l'architettura dell'processore, lascerei i mosfet agli elettronici... bene che ci impazziscano loro.
Se vuoi saperne qualcosa di più chiedi pure.
Il difficile stà nel dover scomporre un qualsiasi problema in operzaioni elementari. Anche un banale ciclo for stressa, un programma che calcola il fattoriale...urcera.
Il codice assembly specifico per ciascun processore lo trovi nelle reference che mettono a disposizione le case produttrici. Ora ad esempio mi vengono in mente quelli di IBM Cell Processor o processori con archittettura MIPS o ARM che ho usato per ricerca.
Un buon testo per entrare nel meccanismo è a mio parere:
D.A. Patterson, J.L. Hennessy, "Struttura e Progetto dei Calcolatori" 2^a edizione ITALIANA (traduzione della 3^a edizione inglese), Zanichelli, Luglio 2006, ISBN 978-88-08-09145-1
In questo libro si fa riferimento in particolare all'assembly mips, linguaggio molto leggero e essenziale, ma per capire il ragionamento è l'ideale, poi ad aggiungere istruzioni sempre più complesse è questione di pratica.
Inoltre, sempre a mio parere, piu che di elettronica ti serve conoscere l'architettura dell'processore, lascerei i mosfet agli elettronici... bene che ci impazziscano loro.
Se vuoi saperne qualcosa di più chiedi pure.
- mr.chaka
- Scoppiettante Seguace

- Messaggi: 742
- Iscrizione: martedì 29 settembre 2009, 22:23
- Località: Barcelona
Re: Libro di programmazione ed elettronica
Ciao giovanhalen, commentando il discorso che mi ha fatto tu sull'assembly avevo gia le idee chiare rispetto alle sue difficoltá esattamente come tu me le hai esposte. Come testo per incominciare a familiazzare con suddetto linguaggio poco tempo fa ho incominciato a studiare "Programming from the ground Up", che essendo un libro introduttivo alla programmazione in generale partendo dai principi (anche se non incominciai a programmare con questo libro) é basato interamente su Gas (Gnu Assembler), e devo dire che si, analizzare un programma di assemby é "leggermente" piu "macchinoso" di uno in C per esempio..
Quindi tornando al mio discorso, dite che mi conviene prima continuare a familiarizzare con la programmazione assembly (che ripeto, linguaggio fondamentale per la comunicazione con l'hardware) e poi introdurmi con la programmazione di componenti elettronici o di poter passare direttamente ad essa?
Se devo essere piu chiaro mi piacerebbe proprio essere in grado di saper esercitare funzioni professionali in qualitá di "driver developer", ossia programmare l'hardware partendo dalle base della sua struttura fisica (non costruirlo ovviamente) e tutto il lavoro che verrebe a seguire ::) .. Pero non solo con Linux ma in generale.. Per esempio ho letto buona metá di Linux Device Drivers (che considero una vera e propria referenza alla Kernel API), stavo incominciando Essential Linux Device Drivers che non é altrettanto male, ma io non mi voglio limitare solo a Linux (li ho in sospeso perché attualmente non ho tutto il tempo libero per dedicarmi a quei mattoni ;D ).
Se mi consigliate di continuare con l'assembly per il momento al fin di farmi una solida base con il linguaggio un buon libro che mi potrebbe interessare é sicuramente questo: (?)
http://www.amazon.com/Assembly-Language ... roduct_top
Che tra l'altro tratta NASM, pero prima aspetto i vostri consigli oltre che a sbirciarlo per bene in libreria, perché magari ha un approccio simile a "Programming from the ground Up"..
O continuare con le referenze Linux citate poco prima per il driver developing, (piu che altro per i concetti teorici) ??
Consulenza consulenza... ???
Vi ringrazio infinitamente per i suggerimenti. (b2b)
Quindi tornando al mio discorso, dite che mi conviene prima continuare a familiarizzare con la programmazione assembly (che ripeto, linguaggio fondamentale per la comunicazione con l'hardware) e poi introdurmi con la programmazione di componenti elettronici o di poter passare direttamente ad essa?
Se devo essere piu chiaro mi piacerebbe proprio essere in grado di saper esercitare funzioni professionali in qualitá di "driver developer", ossia programmare l'hardware partendo dalle base della sua struttura fisica (non costruirlo ovviamente) e tutto il lavoro che verrebe a seguire ::) .. Pero non solo con Linux ma in generale.. Per esempio ho letto buona metá di Linux Device Drivers (che considero una vera e propria referenza alla Kernel API), stavo incominciando Essential Linux Device Drivers che non é altrettanto male, ma io non mi voglio limitare solo a Linux (li ho in sospeso perché attualmente non ho tutto il tempo libero per dedicarmi a quei mattoni ;D ).
Se mi consigliate di continuare con l'assembly per il momento al fin di farmi una solida base con il linguaggio un buon libro che mi potrebbe interessare é sicuramente questo: (?)
http://www.amazon.com/Assembly-Language ... roduct_top
Che tra l'altro tratta NASM, pero prima aspetto i vostri consigli oltre che a sbirciarlo per bene in libreria, perché magari ha un approccio simile a "Programming from the ground Up"..
O continuare con le referenze Linux citate poco prima per il driver developing, (piu che altro per i concetti teorici) ??
Consulenza consulenza... ???
Vi ringrazio infinitamente per i suggerimenti. (b2b)
Ultima modifica di mr.chaka il martedì 22 dicembre 2009, 7:47, modificato 1 volta in totale.
- digy79
- Imperturbabile Insigne

- Messaggi: 4719
- Iscrizione: venerdì 28 ottobre 2005, 22:50
- Desktop: Xfce
- Distribuzione: Debian
Re: Libro di programmazione ed elettronica
Non essendo una richiesta di supporto tecnico sposto al Bar
Ciao
Ciao
alessio | le FAQ del forum
Non inviatemi messaggi privati per chiedere supporto tecnico, non risponderò! Problemi e soluzioni devono essere pubblici, a beneficio di tutti
Non inviatemi messaggi privati per chiedere supporto tecnico, non risponderò! Problemi e soluzioni devono essere pubblici, a beneficio di tutti
- mr.chaka
- Scoppiettante Seguace

- Messaggi: 742
- Iscrizione: martedì 29 settembre 2009, 22:23
- Località: Barcelona
Re: Libro di programmazione ed elettronica
Ok chiedo scusa..Non essendo una richiesta di supporto tecnico sposto al Bar
@ others; Credo che sia meglio per me scegliere un libro di Architetture di calcolatori proprio come consigliato da giovanhalen.. Sto guardando un po cosa offre amazon di interessante.
- mr.chaka
- Scoppiettante Seguace

- Messaggi: 742
- Iscrizione: martedì 29 settembre 2009, 22:23
- Località: Barcelona
Re: Libro di programmazione ed elettronica
Cmq nessuno ha qualcosa in piu da consigliarmi?
-
giovanhalen
- Prode Principiante
- Messaggi: 1
- Iscrizione: sabato 23 giugno 2007, 16:06
Re: Libro di programmazione a basso livello Hardware purpose
Se ho capito meglio le tue necessità, mi sebra ti interessi riuscire ad interfacciarti con l'hardware. Non sono esperto di creazione di driver, ma mi pare che ciò che hai letto sia gia una bel passo in avanti. Direi che oltre a quello occorre prendere familiarità con l'architettura dei componenti che vuoi andare a "pilotare".
Per quello sono consigliabili testi di architettura dei calcolatori e datasheet dei componenti che vuoi utilizzare.
Continuo a ribadire che l'aspetto elettronico non ti dovrebbe essere utile, almeno che tu non sia inetressato pr curiosità. Ma direi che sono aspetti, almeno tu non voglia farti costruire un chippettino in fonderia, penso tu possa tralasciare.
Ammetto che però non sono molto informato sulla creazione di driver.
Per quello sono consigliabili testi di architettura dei calcolatori e datasheet dei componenti che vuoi utilizzare.
Continuo a ribadire che l'aspetto elettronico non ti dovrebbe essere utile, almeno che tu non sia inetressato pr curiosità. Ma direi che sono aspetti, almeno tu non voglia farti costruire un chippettino in fonderia, penso tu possa tralasciare.
Ammetto che però non sono molto informato sulla creazione di driver.
- mr.chaka
- Scoppiettante Seguace

- Messaggi: 742
- Iscrizione: martedì 29 settembre 2009, 22:23
- Località: Barcelona
Re: Libro di programmazione a basso livello Hardware purpose
Quindi rimaniamo sempre verso la programmazione di processori e microcontrollori per poi spingersi verso le altre periferiche hardware, giusto?
Se facciamo ben riferimento infatti:
http://it.wikipedia.org/wiki/Firmware
Se facciamo ben riferimento infatti:
http://it.wikipedia.org/wiki/Firmware
Ho chiesto un po di qua e di la e mi hanno indicato come argomento la programmazione di Firmware.. Non si escludono ovviamente testi di Computers Architecture...Il firmware è un programma, inteso come sequenza di istruzioni, integrato direttamente in un componente elettronico nel senso più vasto del termine (integrati, schede elettroniche, periferiche). Lo scopo del programma è quello di avviare il componente stesso e consentirgli di interagire con altri componenti tramite l'implementazione di protocolli di comunicazione o interfacce di programmazione.
Ultima modifica di mr.chaka il mercoledì 23 dicembre 2009, 18:35, modificato 1 volta in totale.
Chi c’è in linea
Visualizzano questa sezione: Google [Bot] e 3 ospiti