C proti vdelanemu C
Razvoj vgrajenih programov je danes hitro rastoče področje. Obstaja stalna potreba po pisanju vdelanih aplikacij z uporabo visokonivojskih programskih jezikov (kot je C) predvsem iz dveh razlogov. Prvič, kompleksnost vdelanih aplikacij narašča in postalo je zelo težko upravljati aplikacije z uporabo jezikov nizke ravni, kot je zbirni jezik. Drugič, ker se novi modeli procesorjev izdajajo zelo pogosto, obstaja potreba po nenehnem posodabljanju/prilagajanju vaših vdelanih programov novejšim nizom ukazov. Funkcija ponovne uporabe, ki je prisotna v jezikih, kot je C, bi lahko ponudila rešitve za obe težavi.
Embedded C je korak k prilagajanju programskega jezika C za pisanje učinkovitih vdelanih aplikacij. Embedded C je razširitev programskega jezika C, ki programerjem omogoča vse uporabne funkcije programskega jezika na visoki ravni, hkrati pa ima možnost neposredne komunikacije s ciljnimi vgrajenimi procesorji za izboljšano zmogljivost. V preteklih letih so številni neodvisni programerji C dodali razširitve za podporo dostopa do osnovne V/I strojne opreme. Embedded C je poskus združitve teh praks in zagotavljanja enotne sintakse.
Kaj je C?
C je splošni programski jezik na visoki ravni, ki ga je razvil Dennis Ritchie v 1970-ih. Namenjen je predvsem razvoju sistemske programske opreme. Vendar se zelo pogosto uporablja tudi za razvoj aplikacijske programske opreme. Programski jezik C je med vsemi programerji tako priljubljen, da prevajalniki C obstajajo za skoraj vse računalniške arhitekture. C je vplival na številne druge računalniške programske jezike, kot sta C++ in Java. Pravzaprav je bil C++ začet kot razširitev za C in skupaj z Javo vsebuje sintakso, ki je zelo podobna C.
Kaj je Embedded C?
Embedded C je razširitev programskega jezika C, ki nudi podporo za razvoj učinkovitih programov za vdelane naprave. Ni del jezika C. Razvila ga je delovna skupina ISO, imenovana »Razširitve za programski jezik C za podporo vgrajenim procesorjem« in je opisana v tehničnem poročilu o vgrajenem C (TR 18037), ki je bilo objavljeno februarja 2004. Cilj razvoja vgrajenega C je zagotoviti povečanje zmogljivosti za funkcije, ki se uporabljajo za DSP (digitalno obdelavo signalov) in vgrajeno obdelavo. Poskuša omogočiti prenosljiv in učinkovit razvoj aplikacij v domeni vgrajenih sistemov z neposrednim dostopom do funkcij v ciljnem procesorju.
Kakšna je razlika med C in Embedded C?
C je široko uporabljen splošni programski jezik na visoki ravni, namenjen predvsem sistemskemu programiranju. Embedded C je razširitev programskega jezika C, ki nudi podporo za razvoj učinkovitih programov za vgrajene naprave. Vgrajeni C ni del jezika C. C je običajno za namizno programiranje, medtem ko je Embedded C bolj primeren za vdelano programiranje. Za razliko od C-ja Embedded C programerjem omogoča neposreden stik s ciljnim procesorjem in zato zagotavlja izboljšano zmogljivost v primerjavi s C-jem. C ustvari izvršljive datoteke, odvisne od OS, medtem ko Embedded C ustvarja datoteke, ki se običajno prenesejo neposredno v mikrokontrolerje. Za razliko od C ima Embedded C tipe fiksnih točk, več pomnilniških območij in preslikavo V/I registrov.