Jazyk C
Z MAM wiki
(přesměrován link) |
(link) |
||
(Není zobrazeno 6 mezilehlých verzí.) | |||
Řádka 1: | Řádka 1: | ||
==Základy jazyka C== | ==Základy jazyka C== | ||
[http://publications.gbdirect.co.uk/c_book/ The C Book] je online kniha o C pozoruhodná tím, že obsahuje jak naprosté základy, tak významné podrobnosti často neznámé i zkušeným programátorům. | [http://publications.gbdirect.co.uk/c_book/ The C Book] je online kniha o C pozoruhodná tím, že obsahuje jak naprosté základy, tak významné podrobnosti často neznámé i zkušeným programátorům. | ||
+ | [http://sites.google.com/site/qeewiki/books/avr-guide/c-bit-math Bitové operace jsou názorně popsány zde.] | ||
+ | |||
+ | ==Překlad z jazyka C== | ||
+ | Program v jazyce C můžeme do strojových instrukcí přeložit pomocí [[překladač GCC|překladače GCC]], který je zdarma k dispozici pro překlad libovolně velkých programů. | ||
+ | |||
+ | Pro řízení složitého překladu můžeme použít [[Makefile]]. | ||
+ | |||
+ | ==Pokročilé C== | ||
+ | *[[C intrinsics]] umožnují využít z C i ty strojové instrukce, ke kterým běžný překlad nevede | ||
+ | *[[Optimalizace v C]] program zrychlí, ale u čekací smyčky to vadí :-) | ||
==C, Pascal a Java== | ==C, Pascal a Java== | ||
Řádka 8: | Řádka 18: | ||
Studenti FEL se dnes učí jazyk Java, který se snaží být jakousi univerzální cestou mezi drsným C a pohodlnými skriptovými jazyky jako tcl/tk, Python či Basic. Kdo zná jazyk Java, toho syntaxe jazyka C nevyděsí. Ale tak jako žádné auto není zároveň použitelné jako buldozer i jako nablýskané taxi, ani Java není vším tím, co říkali v reklamě. S AVR by zmařeného výkonu byla opravdu škoda, takže zůstaneme u C. | Studenti FEL se dnes učí jazyk Java, který se snaží být jakousi univerzální cestou mezi drsným C a pohodlnými skriptovými jazyky jako tcl/tk, Python či Basic. Kdo zná jazyk Java, toho syntaxe jazyka C nevyděsí. Ale tak jako žádné auto není zároveň použitelné jako buldozer i jako nablýskané taxi, ani Java není vším tím, co říkali v reklamě. S AVR by zmařeného výkonu byla opravdu škoda, takže zůstaneme u C. | ||
+ | |||
+ | ==BASCOM AVR== | ||
+ | Podrobný návod [http://www.avrhelp.mcselec.com/index.html?readhitag.htm zde] --[[Uživatel:Horakma6|Horakma6]] 12. 4. 2010, 21:08 (UTC) |
Aktuální verze z 9. 6. 2011, 19:34
Obsah |
[editovat] Základy jazyka C
The C Book je online kniha o C pozoruhodná tím, že obsahuje jak naprosté základy, tak významné podrobnosti často neznámé i zkušeným programátorům. Bitové operace jsou názorně popsány zde.
[editovat] Překlad z jazyka C
Program v jazyce C můžeme do strojových instrukcí přeložit pomocí překladače GCC, který je zdarma k dispozici pro překlad libovolně velkých programů.
Pro řízení složitého překladu můžeme použít Makefile.
[editovat] Pokročilé C
- C intrinsics umožnují využít z C i ty strojové instrukce, ke kterým běžný překlad nevede
- Optimalizace v C program zrychlí, ale u čekací smyčky to vadí :-)
[editovat] C, Pascal a Java
Jazyk C si vytvořili sami pro sebe programátoři zvyklí na assembler. Chtěli více pohodlí při programování, ale nechtěli se vzdát skoro ničeho z dokonalého využití procesoru. V jazyce C tak jsou třeba operace i++ odpovídající INC v assembleru či >> odpovídající SHR (bit shift right). V jazyce C byl napsán UNIX a to způsobilo úspěch jak UNIXu, tak C.
Studenti na FEL se dříve učili Pascal. Kdo umí Pascal, může místo begin psát {, místo end psát } a tak podobně a bez velkých změn v přístupu bude umět programovat i v C. Je ale pravda, že Pascal nebyl navržen jako jazyk, ve kterém by se mělo opravdu programovat, a při praktickém použití je to znát. Jeden z autorů C to v Pascalu upřímně zkusil, a zde si můžete přečíst, proč mu to neudělalo dobře.
Studenti FEL se dnes učí jazyk Java, který se snaží být jakousi univerzální cestou mezi drsným C a pohodlnými skriptovými jazyky jako tcl/tk, Python či Basic. Kdo zná jazyk Java, toho syntaxe jazyka C nevyděsí. Ale tak jako žádné auto není zároveň použitelné jako buldozer i jako nablýskané taxi, ani Java není vším tím, co říkali v reklamě. S AVR by zmařeného výkonu byla opravdu škoda, takže zůstaneme u C.