Differenza tra assemblatori e compilatori

June 29

Assemblatori e compilatori sono due tipi di programmi per computer che servono allo stesso scopo: per convertire il codice leggibile in codice che può essere compreso da un computer.

Differenza tra assemblatori e compilatori

Codice macchina

codice macchina è di programmazione che il processore di un computer può capire. Entrambi gli assemblatori e compilatori produrre codice macchina.

montaggio

Gli assemblatori produrre codice macchina da un linguaggio chiamato assembly. Ogni comando in assembly corrisponde solitamente con un singolo comando in codice macchina.

Ad alto livello Lingue

I compilatori producono codice macchina interpretando un linguaggio ad alto livello. La maggior parte dei comandi in linguaggi di alto livello, come C e Java, non corrispondono a un singolo comando nel codice macchina, e il processo di traduzione all'altro può essere complessa.

Hardware Abstraction

l'astrazione hardware è una tecnica in cui dettagli hardware sono nascosti per semplificare la programmazione. Assemblea ha poco a che non è un'astrazione dell'hardware. linguaggi compilati di solito hanno una grande quantità di esso.

Vantaggi assembler

uno-a-uno dell'Assemblea ai comandi che il processore del computer è in esecuzione e l'hardware specifico sulla macchina garantisce che un programma di montaggio in modo efficiente scritta sovraperformare il codice più complessa prodotta mediante la compilazione di un linguaggio ad alto livello. Così, il montaggio è una buona scelta quando le prestazioni è fondamentale, come in un motore grafico, o quando disponibili risorse hardware sono piccole rispetto a quelle di un personal computer, come in un sistema di controllo per un forno a microonde.

Vantaggi del compilatore

Nella maggior parte dei casi, i piccoli vantaggi prestazionali di assemblaggio efficiente scritta non fanno la sua mancanza di astrazione hardware e la relativa difficoltà di utilizzo, rispetto al livello superiore, linguaggi compilati come C ++. Per questo motivo, quasi tutto il software è scritto in un linguaggio di livello superiore compilato.