Høy - og lav- nivå datamaskin programmeringsspråk er laget for kommunikasjon mellom et menneske og en datamaskin på ulike nivåer av abstraksjon . Et svært lavt nivå språk ville innebære et menneske gi instrukser direkte til en datamaskin maskinvare , ved hjelp av språk og struktur av denne maskinvaren , i høy - nivå språk , mennesker jobber med komplekse , abstrakte logiske verktøy for å skrive instruksjoner som et spesielt program må oversette for maskinen. Det er generelt lettere for mennesker å bruke disse verktøyene . Programmeringsspråk
Et programmeringsspråk er alle språk som mennesker kan gi datamaskiner instruksjoner. En liste med instruksjoner klare til å gis til en datamaskin og henrettet kalles et program . I hovedsak instruksjonene butikken , flytte og endre verdier i datamaskinens minne , kan disse verdiene tolkes av ulike enheter --- skjermer , høyttalere , tastatur, touch pads , mus --- som gir måter å kommunisere med en bruker < . br >
Machine Code
lavnivå språk er en som er nær det grunnleggende av maskinvaren. Den laveste nivå språk er maskinkode , som er forstått direkte av maskinvare og krever ingen tolkning eller oversettelse . Maskinkode består utelukkende av strenger av binære tall : den berømte nuller og enere . Selv om det kan gjøre noe andre språk kan gjøre --- ja, må alle andre språk skal oversettes til maskinkode av tolk --- det er ikke designet rundt behovene til programmerer, krever en meget nær forståelse av datamaskinens prosessor og enheter , og er nesten umulig for et menneske å lese.
Assembly Language
Den neste " høyere" programmeringsspråk er assembly , som er maskinkode med instruksjon koder erstattet av mer intuitive kommandoer . Kommandoen for å sette en verdi på 97 inn i et minne register kalt AL , for eksempel --- som ville i maskinkode være " 10110000 01100001 " --- ville i assembly være " MOV AL , 97" , fortsatt en kryptisk kommando, men en mye lettere å lære . Mens det fortsatt er ineffektivt å skrive og krever en programmerer å avtale direkte med henne datamaskinens maskinvare, er det et høyere nivå språk enn maskinkode fordi det er mer abstrakt : Det er nærmere forfatteren
Høyere - nivå språk
Moderne programmerere skriver selv i assembly svært sjelden. I stedet bruker de en av mange forskjellige høyere nivå språk som C , Java eller Python , hvilke programmer som kalles kompilatorer eller tolker kan oversette til maskinkode . Disse språkene fjerne programmerer fra den fysiske verden av maskinvare og inn logisk abstraksjon : I stedet for å flytte heksadesimalverdier rundt minne registre , jobber programmerer med variabler med innhold som kan endres , løkker som kan gjentas inntil noen betingelsen er oppfylt , logiske utsagn liker IF, og deretter, OR og annet, og andre verktøy . Disse språkene er designet rundt programmerer , oppmerksomme på hvordan hun kan gis mest makt med minst problemer.
Sammenligninger
High-level språk er ikke så kalt fordi de er " bedre " enn lavnivå språk . Noen ganger , kan evnen til å snakke mer direkte til en datamaskin prosessor i forsamlingen språk eller maskinkode løse problemer vanskeliggjøres av lag av abstraksjon i et høyere nivå språk . En svært høy - nivå språk kan bare behandle et bestemt operativsystem , for eksempel Microsoft Visual Basic , eller med et bestemt program , som " makroer " i et tekstbehandlingsprogram. Disse programmene er svært nyttig for noen som ønsker å manipulere Windows eller Word uten å kjenne detaljene i hvordan hver fungerer --- men slikt språk ville være til ingen nytte for noen prøver å skrive et program av sine egne, som ville trenge noe lavere nivå . En programmerer velger dermed et språk basert på den jobben som han trenger å gjøre .