Qual è la lingua di base del computer?

January 6

Qual è la lingua di base del computer?


Programmi per computer sono scritti in un'ampia varietà di lingue a seconda delle risorse disponibili per il computer stesso e sulle esigenze dei programmatori stessi. Tuttavia, vi è un solo linguaggio nativo compresa da un dato processore e questi linguaggi sono noti collettivamente come assemblaggio.

La lingua più di base

Nel linguaggio assembly, ogni comando si riferisce a un'operazione che può essere eseguita direttamente dall'hardware del computer, senza ulteriore interpretazione richiesto. Per questo motivo, le strutture di programmazione disponibili per le lingue di montaggio sono definiti più dalla capacità dell'hardware e quali comandi possono essere economicamente implementate, e non per quello che i programmatori avrebbero trovato più semplice o la più naturale con cui lavorare.

Comuni Assemblers

Il linguaggio assembly più comune per i personal computer è di gran lunga il linguaggio usato dalla linea X86 di Intel di processori per computer. personal computer Quasi tutti i consumatori contengono processori sia prodotto da Intel o deliberatamente progettato per essere compatibile con il montaggio X86 di Intel. Tuttavia, ci sono delle eccezioni. Sun Microsystems produce workstation Solaris SPARC che utilizzano il montaggio, molte console per videogiochi e anziani computer Apple utilizzano montaggio PowerPC di IBM, e piccoli dispositivi informatici come i telefoni intelligenti e PDA usano comunemente ARM.

CISC e RISC

linguaggi assembly possono essere suddivisi in due filosofie di progettazione: Complex Instruction Set Computing (CISC) e Reduced Instruction Set Computing (RISC). lingue RISC hanno un minor numero di istruzioni. Ciò significa che un programma di montaggio deve essere prolungato per ottenere la stessa operazione, ma ogni singola istruzione può eseguire più rapidamente. Esempi di lingue RISC comprendono ARM, PowerPC e SPARC. lingue CISC prendere l'approccio opposto: hanno più istruzioni, consentendo ai programmatori di ottenere di più con ogni istruzione. X86 è un esempio di architettura CISC.

Esempio di montaggio

Si tratta di un programma relativamente semplice assemblaggio in X86 che stampa un breve messaggio sullo schermo.

.MODEL piccolo
.pila
.dati
messaggio db "Ciao mondo, sto imparando Assemblea !!!", "$"

.codice

proc principale
mov ax, messaggio seg
mov ds, ax

mov ah, 09
lea dx, messaggio
int 21h

mov ax, 4c00h
int 21h
ENDP principale
principale end

Vantaggi di uso diretto

Poiché le istruzioni di montaggio correlano direttamente alle operazioni svolte dalla macchina, programmi assemblaggio efficiente scritti verrà eseguito un determinato programma nel modo più veloce possibile.

Vantaggi di livello superiore Lingue

Assemblea ha alcuni svantaggi profonde pure. Durante il montaggio può teoricamente produrre il codice più veloce possibile, in pratica, l'ottimizzazione automatica fornito da linguaggi di alto livello come il C ++ sorpasserà gli sforzi di ottimizzazione della maggior parte dei programmatori. programmi assemblaggio tendono ad essere estremamente complessa rispetto ai loro equivalenti in Java o C. Ad esempio, il seguente programma C ottiene lo stesso risultato del programma di assemblaggio sopra:

cout << "Ciao mondo, C è molto più facile di Assemblea!"