Jeziki na visoki ravni v primerjavi z jeziki nizke ravni (Infographics) - eduCBA

Kazalo:

Anonim

Vir slike: pixabay.com

Ta blog sem napisal ob upoštevanju ljudi, ki bodo to brali, so absolutni začetniki. Ljudje, ki imajo podobno ozadje, mislim, da ni ravno tehnološko ozadje, bi se dejansko težko začeli učiti programiranja, ko nikogar, ki bi ga vodil. Tako sem ta blog napisal vljudno zanje. Torej, če govorimo o jezikih, kaj sta ravno jezik visokega nivoja in jezik nizke ravni? Zakaj se sploh imenujejo tako? In koliko se med seboj razlikujejo?

Ni treba posebej poudarjati, da sem vse na tem blogu obravnaval.

Infografika na visoki ravni v primerjavi z jeziki nizke ravni

Kaj so jeziki na visoki ravni?

Morate biti stvar Kaj je jezik na visoki ravni? ampak povejte mi, da jih je lažje razumeti in je uporabnikom prijazen. S pomočjo teh jezikov lahko pišete aplikacije, ki so prenosne na različnih platformah (na primer Linux ali Windows) in niso odvisne od katere koli arhitekture (na primer ne-Intel ARM ali zloglasni Intel). Primer jezikov na visoki ravni: pisanje programa v python, ki po privzetku deluje v katerem koli sistemu Linux, nato pa ga preprosto zbere v kateri koli exe z uporabo py2exe in ga nato zažene v Windows.

Podobni primeri so Python, C, Fortran ali Pascal. Takšni jeziki veljajo za jezik na visoki ravni, ker so bližje človeškim jezikom in veliko bolj od strojnih jezikov. Ko govorim človeški jezik, ne mislim tega, o čemer govorimo v vsakdanjem življenju. Pomeni, da je koda nekaj, kar lahko razumemo, če poznamo nekaj osnov v programiranju. Zapisana koda je človek skoraj berljiv, kar lahko berejo in izgovarjajo.

Sledi nekaj primerov strojnega jezika za tiskanje preprostega programa na zaslon v Fortranu in C.

V Fortranu:

program NewProgramF90

write(*, *) "This is a printed program"

end program NewProgramF90

Zdaj ga lahko sestavite z uporabo:

gfortran newprogram.f90 -o newprogram -f90-gcc

In nato preprosto zaženite.

Podoben program v C:

#include

main()

(

printf("This is a printed program");

)

Za čiste začetnike je to najlažje.

Ker pa govorimo o računalnikih, je za računalnik to težko razumeti. Da bi bilo to občutljivo za računalnike in zagnalo program, ustvarjen z jezikom na visoki ravni, ga je treba sestaviti v strojni jezik.

Vir slik: github.com

Tukaj je vmes jezik nizke ravni. Za razliko od prej, kjer je bilo le nekaj jezikov na visoki ravni, danes obstaja n število jezikov visoke ravni, kot so C, Cobol, FORTRAN, Pascal, Java, Perl, Python, PHP, Ruby, C ++, BASIC in Visual Basic .

Kaj so jeziki nizke ravni?

Jeziki na nizki ravni so tisti jeziki, ki so izredno blizu strojnemu jeziku. Znani so tudi kot skupinski jeziki. Najbližji jeziki po montaži do jezika stroja sta C in C ++. Nekateri celo imenujejo C in C ++ kot jezike nizke ravni. Strojna koda je znana kot nizka raven, ker za razliko od programskih jezikov visoke ravni ne potrebuje nič drugega, kot so prevajalniki ali kaj podobnega. Deluje neposredno na procesor in so izjemno arhitekturno specifični.

Jeziki nizke ravni so primernejši za razvoj novih operacijskih sistemov ali pisanje kod programske opreme za mikro krmilnike. Z malo trdega dela lahko naredijo karkoli (pravzaprav veliko trdega dela, da je natančno določeno), a očitno ne boste želeli v to napisati kakšne večje aplikacije. Podobno je s C (Pravzaprav se imenuje Cee). C je pravzaprav zelo obsežen jezik za začetek. Omogoča vam neposredno registracijo in takojšen dostop do različnih pomnilniških mest.

Hkrati pa ima tudi veliko konstrukcij, ki strojni opremi omogočajo nalaganje abstrakcije. Iskreno povedano, C in C ++ dvojno predstavljata različne jezike, saj je večina jezikov iz njih vzela svoje knjižnice. V praksi sta C in C ++ nizko raven, kot sem vam že povedal, saj je pisanje vlog na ravni podjetij precej težko. Toda teoretično sta oba dejansko jezik na visoki ravni.

Priporočeni tečaji

  • Strokovni tečaj varnosti IT
  • Komplet za vadbo Ruby on Rails
  • Strokovni tečaj CSS
  • Spletni tečaj HTML5 in CSS3

Značilnosti jezikov visoke in nizke ravni:

Zdaj je stvar ta, da me občasno v različnih intervjujih in drugih krajih sprašujejo, kje so mi najbolj všeč programiranje na najnižji ali visoki ravni. Zdi se mi, da takšnega kot najboljšega ni. Odgovor je, da imata oba svojo posebnost in je ne morete zamenjati eno za drugo. Tako sta mi dejansko všeč oba.

Programiranje na nizki ravni je zahtevno in zahteva veliko izkušenj in znanja. Značilnosti jezikov na visoki ravni so, kjer se odvijajo vse ustvarjalne stvari, tj. Aplikacije, ki jih ljudje uporabljajo v vsakodnevnem življenju, in je mogoče odpraviti napako na veliko lažji način kot na nizki ravni. In tukaj lahko začnete sodelovati z izredno novimi tehnologijami, saj se veliko teh jezikov nenehno nadgrajuje zaradi podpore skupnosti.

Če to vprašate kodnim jezikovnim šifrantom o tem, kaj jim je všeč, bi bil odgovor, ki ga boste dobili, daleč od tistega, kar potrebujete. Ne bodo vam povedali, kaj je bolje.

Verjetno bodo rekli, da so bolj strastni do določenega jezika na visoki ravni in ne do vseh. Ne vem, da se to zgodi. Najbolj znana primera sta Python in Ruby in če jima pokažete nekaj programov, napisanih v sestavi, bodo verjetno šli hasta-la-vista.

Vir slike: mathworks.com

Kar je v resnici veliko jezikov na visoki ravni, je to, da spadajo v kategorijo hibridov. Na primer, python je izredno objektno usmerjen, hkrati pa podpira tudi zapiranja in prvovrstne funkcije. Čeprav ni tako močan kot Scala, vendar ima sposobnost predstavljanja več ali manj stvari kot tisto iz čisto jezika.

Jeziki na visoki ravni so običajno počasni v primerjavi z jeziki na nizki ravni. To je zato, ker imajo jeziki na visoki ravni veliko abstrakcij in plasti kode, preden pridejo do strojne opreme same, ker pa je strojna koda bližje, je dejansko hitra za obdelavo in vračanje izhodnih podatkov. En del kode v Pythonu najverjetneje prevede v tisočih vrstic strojnih besed.

Seveda so jeziki na visoki ravni enaki tistim, kjer je surova zmogljivost nepotrebna, saj ne morete razviti tako stabilnih in velikih aplikacij na nizki ravni kot na visoki. To si je treba zapomniti.

Programiranje C - Zmeda na nizki / visoki ravni

Čeprav ima C veliko značilnosti, podobnih jezikom Pascal, ga včasih še vedno obravnavajo kot jezik nizke ravni, zato podpira delovanje bitov, kazalcev in neposreden dostop do pomnilnika. C je dejansko jezik na visoki ravni z vključujočimi lastnostmi nizke ravni. To je glavni razlog, zakaj so programerji zaradi svojih nepremagljivih lastnosti odvisni od C od česar koli.

Mogoče se zdi čudno, da je C, čeprav je obravnavan kot jezik nizke ravni, izjemno prenosljiv. Fanatično gledano je C dejansko razširjen na uporabo strojne opreme v skrajnih mejah.

Sestavni jezik je na drugi strani težko prenosljiv. Čeprav je prizadevanje za dosego prenosljivosti veliko v primeru nizke ravni, zlasti v primeru Jave, ki deluje na JVM, tj. Navideznem stroju. C ali sklop, ki deluje v VM-ju, nikoli ne bo imel čistega dostopa do strojne opreme.

Če sem natančnejši, jezik postane nizek, če je izdelan posebej za strojno opremo. Jeziki nizke ravni imajo zelo manj sintakse, za razliko od jezikov na visoki ravni, ki imajo veliko kod.

Nizka raven jezikov, ki omogočajo popoln dostop do strojne opreme, bi bila dejansko slaba izbira za pisanje projektov.

Kdaj uporabljati Low-level?

Tako izgleda strojna koda, ki deluje zelo hitro, saj je zelo blizu strojne opreme.

8B542408 83FA0077 06B80000 0000C383

FA027706 B8010000 00C353BB 01000000

B9010000 008D0419 83FA0376 078BD98B

C84AEBF1 5BC3

Zgoraj je napisana funkcija za 32-bitno arhitekturo, tj. Strojno kodo x86 za izračun Fibonaccijevega števila.

Pisanje strojne kode je nesporno precej razdražljivo, saj zahteva preverjanje številčnih kod in vsake toliko časa za vsako drugo navodilo, ki se izvaja. Kdo za vraga ima čas za to? In zato se je rodilo programiranje na nizki ravni.

Če pa vprašate o programiranju na nizki ravni programerjem na visoki ravni, bi dobili odgovor:

Vir slike: pixabay.com

Zaključek

Jeziki na nizki ravni imajo še dodatno prednost, saj izgubljajo nadzor nad CPU-jem, vendar jih kode zelo težko razumejo in odpravljajo napake s strani programerjev. Vsaka druga družina arhitekture ima svoj nabor jezika za sestavljanje, kar pomeni, da kodo, napisano za eno, ni mogoče izvajati na drugi. Kar na kratko pomeni, koda ni prenosljiva.

Prednosti jezika na visoki ravni so, da so jeziki na visoki ravni na drugi strani izjemno prenosljivi in ​​se večinoma uporabljajo za pisanje programske opreme, ki se lahko izvaja na več platformah in arhitekturah. Nobeden od njiju se ne more nadomestiti, ker sta dve strani istega kovanca.

Priporočeni članki

Tukaj je nekaj člankov, ki vam bodo pomagali do podrobnosti o jezikih na visoki ravni v primerjavi z jeziki nizke ravni, zato pojdite po povezavi.

  1. Najpomembnejši nasveti Haskell Programming Language
  2. HTML5 in Flash - poiščite razlike
  3. Besedilo rudarjenja v primerjavi z obdelavo naravnega jezika - top 5 primerjav
  4. 12 najboljših korakov za namestitev programskega jezika R (hitri vodnik)
  5. 8 Najboljši jezik za programiranje mobilnih aplikacij, ki ga morate poznati
  6. Pomembne stvari, ki jih morate vedeti o programu Haskell Programming Language