Utili linguaggi di programmazione per la programmazione dell'hardware [chiuso]

1

Sto pensando di frequentare il prossimo semestre un corso chiamato "Architettura dei sistemi digitali", e so che dobbiamo programmare microcontrollori con diversi linguaggi di programmazione come C, C ++, Verilog e VHDL. Voglio essere preparato a seguire quel corso, ma ho bisogno di sapere se ho bisogno di approfondire queste lingue.

In questo momento, ho seguito un corso in Java base che trattava metodi di base, tipi di dati, strutture di loop, vettori, matrici e programmazione GUI. Devo studiare Java più profondo e poi andare con C e C ++? Inoltre, conosco i verilog di base e VHDL.

    
posta Sebastian Valencia 13.09.2012 - 06:49
fonte

1 risposta

5

Durante i miei studi, abbiamo usato C e VHDL, ma C era di gran lunga il linguaggio più usato. E il vantaggio dell'apprendimento C è ovviamente ovvio anche al di là della programmazione hardware. Quindi questo è quello che raccomando. Quando impari molto bene C, non dovresti avere problemi ad imparare Java e C ++ in seguito - si tratta solo di imparare gli aspetti OOP di entrambi, soprattutto. Dopo aver imparato C, avrai già una buona conoscenza dei principi fondamentali della programmazione.

E se ci si deve fidare dei nostri professori, la maggior parte dell'hardware embedded è ancora programmata con la semplice vecchia C, quindi dovrebbe essere più che sufficiente per fare un lavoro. Quindi puoi dirigerti verso sistemi più sofisticati ancora in C, o più moderni (e più rari, credi?) Programmando con C ++ e altri. La maggior parte dell'hardware embedded è così semplice che l'utilizzo di MCU a 32 bit sarebbe incredibilmente eccessivo e uno spreco di entrate e risorse.

Ma ovviamente dipende dal tuo interesse. Se vuoi programmare hardware moderno, come GPU, controller SSD e simili, allora C + + potrebbe avviarsi più vicino, anche se Assembly è più probabile quello che userai, a seconda di quanto vicino al "core" si otterrà con l'hardware .

Come per Java, C ++ e simili, forse l'hardware multimediale (lettori DVD / BluRay, TV moderne, ecc.) è il campo che usa quelle lingue.

    
risposta data 13.09.2012 - 12:15
fonte

Leggi altre domande sui tag