Libro di programmazione a basso livello Hardware purpose

Il ritrovo della comunità dove confrontarsi e discutere sulle notizie dal mondo dell'informatica, di Ubuntu e di tutto quello che la riguarda, novità, pettegolezzi e quant'altro.
Scrivi risposta
Avatar utente
mr.chaka
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 742
Iscrizione: martedì 29 settembre 2009, 22:23
Località: Barcelona

Libro di programmazione a basso livello Hardware purpose

Messaggio da mr.chaka »

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!
Ultima modifica di mr.chaka il martedì 22 dicembre 2009, 23:48, modificato 1 volta in totale.
Avatar utente
jOoK3r
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 307
Iscrizione: giovedì 30 aprile 2009, 17:30

Re: Libro di programmazione ed elettronica

Messaggio da jOoK3r »

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/
Il bruco alla mela: "Ci vorrà del tempo, ma prima o poi il buco te lo faccio..."
Avatar utente
mr.chaka
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 742
Iscrizione: martedì 29 settembre 2009, 22:23
Località: Barcelona

Re: Libro di programmazione ed elettronica

Messaggio da mr.chaka »

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
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

Messaggio da giovanhalen »

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.
Avatar utente
mr.chaka
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 742
Iscrizione: martedì 29 settembre 2009, 22:23
Località: Barcelona

Re: Libro di programmazione ed elettronica

Messaggio da mr.chaka »

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)
Ultima modifica di mr.chaka il martedì 22 dicembre 2009, 7:47, modificato 1 volta in totale.
Avatar utente
digy79
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 4719
Iscrizione: venerdì 28 ottobre 2005, 22:50
Desktop: Xfce
Distribuzione: Debian

Re: Libro di programmazione ed elettronica

Messaggio da digy79 »

Non essendo una richiesta di supporto tecnico sposto al Bar

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
Avatar utente
mr.chaka
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 742
Iscrizione: martedì 29 settembre 2009, 22:23
Località: Barcelona

Re: Libro di programmazione ed elettronica

Messaggio da mr.chaka »

Non essendo una richiesta di supporto tecnico sposto al Bar
Ok chiedo scusa..

@ 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.
Avatar utente
mr.chaka
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 742
Iscrizione: martedì 29 settembre 2009, 22:23
Località: Barcelona

Re: Libro di programmazione ed elettronica

Messaggio da mr.chaka »

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

Messaggio da giovanhalen »

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.
Avatar utente
mr.chaka
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 742
Iscrizione: martedì 29 settembre 2009, 22:23
Località: Barcelona

Re: Libro di programmazione a basso livello Hardware purpose

Messaggio da mr.chaka »

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
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.
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...
Ultima modifica di mr.chaka il mercoledì 23 dicembre 2009, 18:35, modificato 1 volta in totale.
Scrivi risposta

Ritorna a “Bar Ubuntu”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 6 ospiti