Alto e basso livello di linguaggi di programmazione per computer sono progettati per la comunicazione tra un umano e un computer a diversi livelli di astrazione . Un linguaggio di livello molto basso comporterebbe un danno umani istruzioni direttamente l'hardware di un computer, utilizzando il linguaggio e la struttura di tale hardware , in linguaggi di alto livello , gli esseri umani lavorano con complessi strumenti logici , astratto di scrivere istruzioni che un programma speciale deve tradursi per il computer . E ' generalmente più facile per gli esseri umani a utilizzare questi strumenti . Linguaggi di programmazione
Un linguaggio di programmazione è un linguaggio in cui gli esseri umani possono dare i computer istruzioni . Una lista di istruzioni pronte da dare ad un computer ed eseguito costituisce un programma . In sostanza , il negozio di istruzioni , spostare e modificare i valori nella memoria del computer , questi valori possono essere interpretati da vari dispositivi --- monitor , altoparlanti , tastiere, touch pad , mouse --- che forniscono modi di comunicare con un utente < . br>
macchina Codice
un linguaggio a basso livello è uno che è vicino ai fondamenti di hardware del computer . Il linguaggio di livello più basso è codice macchina , intesa direttamente dall'hardware e non richiede alcuna interpretazione o traduzione. Codice macchina è costituito interamente da stringhe di numeri binari : il famoso zero e uno . Mentre si può fare qualsiasi cosa in qualsiasi altra lingua può fare --- infatti , ogni altra lingua deve essere tradotto in linguaggio macchina da un interprete --- non è progettato intorno alle esigenze del programmatore , richiede una stretta comprensione del processore del computer e dispositivi , ed è quasi impossibile per un essere umano di leggere .
assembly Language
Il linguaggio assembly prossima " superiore" linguaggio di programmazione , che è codice macchina con i codici di istruzione sostituiti da comandi più intuitivi . Il comando di mettere un valore di 97 in un registro di memoria denominata AL, per esempio --- che sarebbe in codice macchina essere " 10110000 01100001 " --- sarebbe in linguaggio assembly essere " MOV AL, 97" , ancora un comando criptico ma uno molto più facile da imparare . Mentre è ancora inefficiente di scrivere e richiede un programmatore di trattare direttamente con l'hardware del suo computer , si tratta di un linguaggio di livello superiore rispetto al codice macchina , perché è più astratto : è più vicino allo scrittore
< br . > di più alto livello Lingue
programmatori moderni scrivono anche in linguaggio assembly molto raramente . Invece, usano uno dei molti linguaggi di più alto livello diversi, come C , Java o Python , quali programmi chiamati compilatori o interpreti in grado di tradurre in codice macchina . Queste lingue rimuovere il programmatore dal regno fisica dell'hardware e in astrazione logica : piuttosto che spostare i valori esadecimali intorno registri di memoria , il programmatore lavora con variabili il cui contenuto può essere modificato ; loop che possono essere ripetuti fino a quando una condizione è verificata ; affermazioni logiche come se , e , QUINDI , O e altro; ed altri strumenti. Queste lingue sono progettati intorno al programmatore , attento ai modi in cui può essere data la massima potenza con la minima difficoltà .
Confronti
linguaggi di alto livello non sono così chiamato perché sono " meglio" di linguaggi di basso livello . A volte , la capacità di parlare più direttamente al processore del computer in linguaggio assembly o codice macchina in grado di risolvere problemi di resa difficile dagli strati di astrazione in un linguaggio di livello superiore . Un linguaggio di altissimo livello può riguardare solo un particolare sistema operativo , come Microsoft Visual Basic , oppure con un programma particolare , come le "macro" in un elaboratore di testi . Questi programmi sono molto utili per chi vuole manipolare di Windows o Word senza dover conoscere la complessità di come ogni funziona --- ma un tale linguaggio sarebbe di alcuna utilità per qualcuno che cerca di scrivere un programma tutto suo, che avrebbe bisogno qualcosa - livello inferiore . Un programmatore sceglie quindi un linguaggio basato sul lavoro che ha bisogno di fare .