Embedded C++ – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Embedded C++ – C / C++ – Fórum – Programujte.comEmbedded C++ – C / C++ – Fórum – Programujte.com

 

Toto vlákno bylo označeno za vyřešené.
Kenvelo+2
Super člen
10. 2. 2020   #1
-
0
-

Zdravím chtěl bych se zeptat, jaký je rozdíl mezi klasickým programováním v c++ a embedded ? Princip programování je stejný či se nějak liší ? Díky za odpověď

Nahlásit jako SPAM
IP: 89.177.200.–
Díky bohu, že počítače vymysleli muži. Kdyby to byly ženy, tak binární soustavu reprezentují jedničky, nuly a "možná"
KIIV
~ Moderátor
+43
God of flame
10. 2. 2020   #2
-
0
-

Jestli je tim embedded c++ mysleno pro mikrokontrolery, tak jsou tam jiste rozdily.

Napriklad pro AVR je jen naprosto ciste C++, zadne STL a tak. Vetsinou jsou vyple i vyjimky a RTTI. Kontejnery jsou vynechany hlavne proto, ze je straslive malo pameti a vetsina z nich pouziva dynamickou pamet. Par operaci a pamet muze byt tak zfragmentovana, ze je konec... Takove Arduino ma vlastni (ne moc hezkou/povedenou) implementaci stringu (String). A zacatecnici radi pouzijou neco jako:    String retezec = "...."; retezec += cislo + "retezec" + ........................; No a pak se divi, jak programy divne nefungujou nebo fungujou jen nejaky cas.

U ARM procesoru uz je vetsinou podpora vcetne kontejneru a tak. Pameti je mnohem vice, to ale neznamena, ze je dobry napad je pouzivat neja presprilis. Obvykle je take moznost prepinat mezi Reduced C++ a Full. Ale nikdy sem nezkoumal, jake jsou tam rozdily.

Taktez jsou velke rozdily ve velikostech datovych typu podle toho, jestli je procesor 8/16/32/64b. Pouzivani float na procesorech bez hardwarove podpory je super pomale. Takove AVR napriklad nema ani celociselne deleni, takze je to vse pomoci funkci misto instrukci. Zalezi co pocitas a jak rychle to potrebujes.

Vse zalezi na zvolenem procesoru.

Nahlásit jako SPAM
IP: 37.48.58.–
Program vždy dělá to co naprogramujete, ne to co chcete...
MilanL+1
Expert
11. 2. 2020   #3
-
0
-

#1 Kenvelo
Řekl bych, že základní princip programování je stejný, jen je potřeba brát v úvahu HW a Systémové možnosti zařízení.

U HW jde o druh a typ procesoru velikosti a druhy pamětí apod,

Systémové možnosti závisí na platformě operačního systému, trošku jinak se programuje pro Windows, Windows S/RE, linux (různé distribuce), IOS, Android atd.

Vetšinou je třeba použít odpovídající knihovny případně si knihovnu udělat.

Nahlásit jako SPAM
IP: 91.139.9.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 41 hostů

Podobná vlákna

C++/embedded — založil Goodcall.eu

EMBEDDED TESTER — založil DenisaO

Embedded- Test engineer (Brno) — založil embedded testers

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032020 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý