m (Petrovic premiestnil stránku Principy Pocitacov Systemove Programovanie/sk na Course:Principy Pocitacov Systemove Programovanie/sk, ale neponechal presmerovanie: move to course ns) |
m |
||
(20 intermediate revisions by the same user not shown) | |||
Line 3: | Line 3: | ||
| title = Princípy počítačov – systémové programovanie | | title = Princípy počítačov – systémové programovanie | ||
}} | }} | ||
+ | |||
+ | === 2021/2022, jarný semester === | ||
+ | |||
+ | Povinný predmet zo série "Princípy počítačov", odporúčaný v 1. ročníku bakalárskeho programu Aplikovaná informatika. V tomto predmete sa venujeme programovaniu na nízkej úrovni - v jazyku C a assemblerovom jazyku (jazyku symbolických inštrukcií) a stretneme sa aj s nízkoúrovňovým programovaním jednočipových mikropočítačov. | ||
+ | |||
+ | == Kontakt == | ||
+ | |||
+ | Pavel Petrovič, pavel.petrovic[[Image:zavinac.gif|@]]fmph.uniba.sk<br> | ||
Stránky cvičení z C: [[Course:Tatrabot/sk|Tatrabot]] | Stránky cvičení z C: [[Course:Tatrabot/sk|Tatrabot]] | ||
+ | |||
+ | == Stretnutia == | ||
+ | |||
+ | Pondelok 12:20 - 13:50 prednáška, poslucháreň A<br> | ||
+ | Utorok 16:30 - 18:45 cvičenie skupiny 1AIN4 a 1AIN5, počítačová miestnosť H6<br> | ||
+ | Streda 8:10 - 10:25 cvičenie skupina 1AIN1, počítačová miestnosť H3<br> | ||
+ | Streda 10:40 - 12:55 cvičenie skupina 1AIN2, počítačová miestnosť H3<br> | ||
+ | Piatok 8:10 - 10:25 cvičenie skupina 1AIN3, počítačová miestnosť F1-248<br> | ||
+ | <br> | ||
+ | |||
+ | Napíšte alebo zavolajte na 0915772685 ak nie ste v MS Teams skupine a chcete sa pridať, alebo ma z nejakého dôvodu nie je možné zohnať. | ||
+ | |||
+ | |||
+ | == Hodnotenie == | ||
+ | |||
+ | Hodnotenie pozostáva z hodnotení cvičení a hodnotenia 2 písomiek, v ktorých študent preukazuje znalosť teórie preberanej na prednáškach i praktických zručností v assembleri získaných na cvičeniach. | ||
+ | * cvičenia sa hodnotia v troch nezávislých častiach: | ||
+ | # úlohy z programovacieho jazyka C: cvičenia na hodine, domáce úlohy a prémiové úlohy, odovzdávajú sa do systému LIST | ||
+ | # úlohy s jednočipovými mikropočítačmi: domáce riešenia a podpora na cvičeniach v škole, odovzdávajú sa na cvičeniach v škole alebo cez ms teams | ||
+ | # úlohy v assembleri: rozcvičky na cvičeniach a prémiové úlohy | ||
+ | * písomky: midterm, skúšková písomka | ||
+ | |||
+ | == Termíny skúšok (prihlasovanie cez AIS, zmena termínov vyhradená) == | ||
+ | |||
+ | * H3 20.5. - '''vrátane opravných midtermov - tie sa ale neprihlasujú na termín v AISe''' | ||
+ | * H3 27.5. | ||
+ | * H3 3.6. | ||
+ | * H6 17.6. | ||
+ | * H6 24.6. - ''ak sa prihlásite na tento termín ako na Váš prvý termín, negarantujem, že budete mať aj 2. opravný'' | ||
+ | * ''v prípade nutnosti ďalšieho opravného termínu pre niektorých študentov ešte jeden termín pribudne'' | ||
+ | * čas je vždy 9-12:30, vyhodnotenie sa môže o niečo natiahnuť do poobedia | ||
+ | |||
+ | === Bodové ohodnotenie jednotlivých častí === | ||
+ | |||
+ | * skúšková písomka (v skúškovom období): 30% známky | ||
+ | * midtermová písomka (druhá polovica apríla): 20% známky | ||
+ | * rozcvičky (v druhej polovici semestra): 20% známky | ||
+ | * úlohy z programovacieho jazyka C: 15% | ||
+ | * úlohy s jednočipovými mikropočítačmi: 15% | ||
+ | |||
+ | Na skúškovej ani midtermovej písomke sa nebudú vyskytovať programátorské úlohy v jazyku C. | ||
+ | Obe budú obsahovať úlohy z preberanej teórie aj úlohy o assemblerovom jazyku vrátane praktických úloh. | ||
+ | |||
+ | === Náhradné možnosti === | ||
+ | |||
+ | * ak sa študent nemôže zúčastniť midtermu, môže ho napísať na prvom skúškovom termíne | ||
+ | * ak študent nemá dosť bodov z programovacieho jazyka C, dostane možnosť pri počítači v škole vyriešiť ďalšie zadania, v ktorých môže získať ďalšie body | ||
+ | * riešenia úloh s jednočipovými mikropočítačmi je možné odovzdávať do konca skúškového obdobia | ||
+ | * na poradí získania bodov za jednotlivé kategórie nezáleží (študent môže robiť skúškovú písomku, aj keď ešte nemá splnené ostatné povinnosti) | ||
+ | * ak študent nemôže písať rozcvičku vo svojej skupine, môže ju ten týždeň napísať v inej skupine | ||
+ | * ak študent nemá na konci dosť bodov za rozcvičky a midterm, môže jedenkrát písať náhradnú midtermovú písomku | ||
+ | |||
+ | === Minimálne požiadavky na počet bodov získaných v jednotlivých kategóriách === | ||
+ | |||
+ | * skúšková písomka: aspoň 1/3 bodov | ||
+ | * midtermová písomka a rozvičky spolu: aspoň 1/2 bodov | ||
+ | * úlohy z jazyka C: aspoň 70% bodov | ||
+ | * úlohy s jednočipovými mikropočítačmi: aspoň 70% bodov | ||
+ | |||
+ | === Výsledná známka === | ||
+ | |||
+ | * Fx <50% | ||
+ | * E 50% - 60% | ||
+ | * D 60% - 70% | ||
+ | * C 70% - 80% | ||
+ | * B 80% - 90% | ||
+ | * A >90% | ||
+ | |||
+ | === Príklady === | ||
+ | |||
+ | <i>Poznámka: všetky číselné hodnoty sú tu vymyslené a počet bodov aj spôsob hodnotenia v jednotlivých kategóriách sa môže lísiť (napr. namiesto piatich 4-bodových rozcvičiek môže byť šesť 5-bodových a podobne). Všetko ostatné - čiže spôsob započítavania bodov sedí.</i> | ||
+ | |||
+ | * z programovacieho jazyka C budú vypísané úlohy za 140 základných bodov a 40 prémiových a študent spolu z nich získa 70 bodov => nemá dosť bodov, musí riešiť doplnkové úlohy z jazyka C, kde získa 20 bodov, ale 90 zo 140 nie je ani 70%, takže nezávisle od ostatných bodov získava známku Fx. | ||
+ | * k jednočipovým mikropočítačom budú vypísané úlohy za 65 základných bodov a 15 prémiových a študent spolu z nich do konca skúškového získa 40 bodov, čo nie je ani 70% zo 65, takže nezávisle od ostatných bodov získava známku Fx. | ||
+ | * z piatich 4-bodových rozcvičiek získa študent spolu 8 bodov (t.j. 8% za rozcvičky do celkovej známky) a z midtermovej písomky za 15 bodov získa 8 bodov (10.67% do celkovej známky), spolu má teda <s>16 bodov</s>, 18.67% z celkovej známky čo nie je ani 1/2 z celkových <s>35 bodov</s> 40% za túto kategóriu, musí písať opravnú midtermovú písomku, ktorú napíše na 9 bodov (12% do celkovej známky) takže už má <s>17 bodov</s> 20%, čo je presne polovica zo 40% za túto kategóriu, takže kritérium splnil. <s>čo je ale stále menej ako polovica z celkových 35 bodov, takže nezávisle od ostatných bodov získava známku Fx.</s> | ||
+ | * za úlohy v jazyku C získa študent 14%, za jednočipový mikropočítač 14%, za rozcvičky a midterm spolu 35%, ale na skúškovej písomke, ktorá bola za 30 bodov získa len 9 bodov. Prihlási sa na opravný termín, kde získa 7 bodov. Prihlási sa na druhý opravný termín, kde získa 9.5 bodov. Nesplnil dostatočný počet bodov na skúšku a nezávisle od ostatných bodov získava známku Fx. | ||
+ | * úspešná študentka získa známku C takto: | ||
+ | # z programovacieho jazyka C budú vypísané úlohy za 140 základných bodov a 40 prémiových a študentka spolu z nich získa 120 bodov => 120/140 * 0.15 = 0.12857 => 12.86 % do známky | ||
+ | # k jednočipovým mikropočítačom budú vypísané úlohy za 65 základných bodov a 15 prémiových a študentka spolu z nich do konca skúškového získa 58 bodov => 58/65 * 0.15 = 0.13384 => 13.38% do známky | ||
+ | # z piatich 4-bodových rozcvičiek získa študentka spolu 14 bodov => 14/20 * 0.2 = 0.14 => 14% do známky (je to iba príklad, za rozcvičky môže byť napr. aj šesť 5-bodových, rolu hrajú len percentá z maxima) | ||
+ | # z midtermovej písomky za 15 bodov získa 11 bodov => 11/15 * 0.2 => 0.14667 => 14.67% do známky | ||
+ | # na skúškovej písomke, ktorá bola za 30 bodov získa 12 bodov => 21/30 * 0.3 => 0.21 => 21% do známky | ||
+ | # spolu: 12.86 + 13.38 + 14 + 14.67 + 21 = 75,91 % | ||
+ | * úspešný študent získa známku D takto: | ||
+ | # z programovacieho jazyka C budú vypísané úlohy za 140 základných bodov a 40 prémiových a študent spolu z nich získa 170 bodov => 170/140 * 0.15 = 0.18214 => 18.21 % do známky | ||
+ | # k jednočipovým mikropočítačom budú vypísané úlohy za 65 základných bodov a 15 prémiových a študent spolu z nich do konca skúškového získa 71 bodov => 71/65 * 0.15 = 0.16384 => 16.38% do známky | ||
+ | # z piatich 4-bodových rozcvičiek získal študent spolu 10 bodov => 10/20 * 0.2 = 0.1 => 10% do známky | ||
+ | # z midtermovej písomky za 15 bodov získa 7.5 bodov => 7.5/15 * 0.2 => 0.1 => 10% do známky | ||
+ | # na skúškovej písomke, ktorá bola za 30 bodov získa 10 bodov => 10/30 * 0.3 => 0.1 => 10% do známky | ||
+ | # keďže aj bez bodov nad rámec 100% v prvých dvoch kategóriách splnil podmienky na známku E, tak sa mu počítajú aj body navyše a spolu získal: 18.21 + 16.38 + 10 + 10 + 10 = 64,59 % | ||
+ | |||
+ | == Denník == | ||
+ | |||
+ | * 14. feb: úvodné informácie, cvičenie: úvod do jazyka C | ||
+ | * 28. feb: organizácia počítačových systémov | ||
+ | * 7. mar: reprezentácia čísel v počítači | ||
+ | * 14. mar: viac o typoch a bitových operáciách | ||
+ | * 21. mar: úvod do assembleru procesorov Intel Pentium | ||
== Materiály == | == Materiály == | ||
− | * [[ | + | * [[Media:zoznam_vybranych_instrukcii.pdf|zoznam_vybranych_instrukcii.pdf]] |
− | * [[ | + | * [https://www.intel.com/content/dam/www/public/us/en/documents/manuals/64-ia-32-architectures-software-developer-instruction-set-reference-manual-325383.pdf Intel® 64 and IA-32 Architectures Software Developer’s Manual Volume 2: Intel Instruction Set Reference Manual] |
− | * [[ | + | * [https://hjlebbink.github.io/x86doc/ x86 Assembly Documentation] |
− | * [[ | + | * [[Media:x87.pdf|x87]] <br>(čo je 8. kap. z celého manuálu [https://www.intel.com/content/dam/www/public/us/en/documents/manuals/64-ia-32-architectures-software-developer-vol-1-manual.pdf Intel® 64 and IA-32 Architectures Software Developer’s Manual, Volume 1: Basic Architecture]) |
− | * [[ | + | * [[Media:00.pdf|00.pdf]] |
− | * [[ | + | * [[Media:02.pdf|02.pdf]] |
+ | * [[Media:03a.pdf|03a.pdf]] | ||
+ | * [[Media:04.pdf|04.pdf]] | ||
+ | * [[Media:04a.pdf|04a.pdf]] | ||
+ | * [[Media:04b.pdf|04b.pdf]] | ||
+ | * riešenia rozcvičiek a cvičení: [https://dai.fmph.uniba.sk/courses/pphw/vsetky_cvicenia.zip vsetky_cvicenia.zip] | ||
+ | |||
+ | == Odkazy: == | ||
+ | |||
+ | * staršia stránka Dr. Tomcsányiho k predmetu: [http://edu.fmph.uniba.sk/~tomcsanyi/sys1.html na pôvodnej stránke Dr. Tomcsányiho] | ||
+ | |||
+ | __notoc__ |
Latest revision as of 23:48, 9 May 2022
Princípy počítačov – systémové programovanie 1-AIN-186/20
2021/2022, jarný semester
Povinný predmet zo série "Princípy počítačov", odporúčaný v 1. ročníku bakalárskeho programu Aplikovaná informatika. V tomto predmete sa venujeme programovaniu na nízkej úrovni - v jazyku C a assemblerovom jazyku (jazyku symbolických inštrukcií) a stretneme sa aj s nízkoúrovňovým programovaním jednočipových mikropočítačov.
Kontakt
Pavel Petrovič, pavel.petrovicfmph.uniba.sk
Stránky cvičení z C: Tatrabot
Stretnutia
Pondelok 12:20 - 13:50 prednáška, poslucháreň A
Utorok 16:30 - 18:45 cvičenie skupiny 1AIN4 a 1AIN5, počítačová miestnosť H6
Streda 8:10 - 10:25 cvičenie skupina 1AIN1, počítačová miestnosť H3
Streda 10:40 - 12:55 cvičenie skupina 1AIN2, počítačová miestnosť H3
Piatok 8:10 - 10:25 cvičenie skupina 1AIN3, počítačová miestnosť F1-248
Napíšte alebo zavolajte na 0915772685 ak nie ste v MS Teams skupine a chcete sa pridať, alebo ma z nejakého dôvodu nie je možné zohnať.
Hodnotenie
Hodnotenie pozostáva z hodnotení cvičení a hodnotenia 2 písomiek, v ktorých študent preukazuje znalosť teórie preberanej na prednáškach i praktických zručností v assembleri získaných na cvičeniach.
- cvičenia sa hodnotia v troch nezávislých častiach:
- úlohy z programovacieho jazyka C: cvičenia na hodine, domáce úlohy a prémiové úlohy, odovzdávajú sa do systému LIST
- úlohy s jednočipovými mikropočítačmi: domáce riešenia a podpora na cvičeniach v škole, odovzdávajú sa na cvičeniach v škole alebo cez ms teams
- úlohy v assembleri: rozcvičky na cvičeniach a prémiové úlohy
- písomky: midterm, skúšková písomka
Termíny skúšok (prihlasovanie cez AIS, zmena termínov vyhradená)
- H3 20.5. - vrátane opravných midtermov - tie sa ale neprihlasujú na termín v AISe
- H3 27.5.
- H3 3.6.
- H6 17.6.
- H6 24.6. - ak sa prihlásite na tento termín ako na Váš prvý termín, negarantujem, že budete mať aj 2. opravný
- v prípade nutnosti ďalšieho opravného termínu pre niektorých študentov ešte jeden termín pribudne
- čas je vždy 9-12:30, vyhodnotenie sa môže o niečo natiahnuť do poobedia
Bodové ohodnotenie jednotlivých častí
- skúšková písomka (v skúškovom období): 30% známky
- midtermová písomka (druhá polovica apríla): 20% známky
- rozcvičky (v druhej polovici semestra): 20% známky
- úlohy z programovacieho jazyka C: 15%
- úlohy s jednočipovými mikropočítačmi: 15%
Na skúškovej ani midtermovej písomke sa nebudú vyskytovať programátorské úlohy v jazyku C. Obe budú obsahovať úlohy z preberanej teórie aj úlohy o assemblerovom jazyku vrátane praktických úloh.
Náhradné možnosti
- ak sa študent nemôže zúčastniť midtermu, môže ho napísať na prvom skúškovom termíne
- ak študent nemá dosť bodov z programovacieho jazyka C, dostane možnosť pri počítači v škole vyriešiť ďalšie zadania, v ktorých môže získať ďalšie body
- riešenia úloh s jednočipovými mikropočítačmi je možné odovzdávať do konca skúškového obdobia
- na poradí získania bodov za jednotlivé kategórie nezáleží (študent môže robiť skúškovú písomku, aj keď ešte nemá splnené ostatné povinnosti)
- ak študent nemôže písať rozcvičku vo svojej skupine, môže ju ten týždeň napísať v inej skupine
- ak študent nemá na konci dosť bodov za rozcvičky a midterm, môže jedenkrát písať náhradnú midtermovú písomku
Minimálne požiadavky na počet bodov získaných v jednotlivých kategóriách
- skúšková písomka: aspoň 1/3 bodov
- midtermová písomka a rozvičky spolu: aspoň 1/2 bodov
- úlohy z jazyka C: aspoň 70% bodov
- úlohy s jednočipovými mikropočítačmi: aspoň 70% bodov
Výsledná známka
- Fx <50%
- E 50% - 60%
- D 60% - 70%
- C 70% - 80%
- B 80% - 90%
- A >90%
Príklady
Poznámka: všetky číselné hodnoty sú tu vymyslené a počet bodov aj spôsob hodnotenia v jednotlivých kategóriách sa môže lísiť (napr. namiesto piatich 4-bodových rozcvičiek môže byť šesť 5-bodových a podobne). Všetko ostatné - čiže spôsob započítavania bodov sedí.
- z programovacieho jazyka C budú vypísané úlohy za 140 základných bodov a 40 prémiových a študent spolu z nich získa 70 bodov => nemá dosť bodov, musí riešiť doplnkové úlohy z jazyka C, kde získa 20 bodov, ale 90 zo 140 nie je ani 70%, takže nezávisle od ostatných bodov získava známku Fx.
- k jednočipovým mikropočítačom budú vypísané úlohy za 65 základných bodov a 15 prémiových a študent spolu z nich do konca skúškového získa 40 bodov, čo nie je ani 70% zo 65, takže nezávisle od ostatných bodov získava známku Fx.
- z piatich 4-bodových rozcvičiek získa študent spolu 8 bodov (t.j. 8% za rozcvičky do celkovej známky) a z midtermovej písomky za 15 bodov získa 8 bodov (10.67% do celkovej známky), spolu má teda
16 bodov, 18.67% z celkovej známky čo nie je ani 1/2 z celkových35 bodov40% za túto kategóriu, musí písať opravnú midtermovú písomku, ktorú napíše na 9 bodov (12% do celkovej známky) takže už má17 bodov20%, čo je presne polovica zo 40% za túto kategóriu, takže kritérium splnil.čo je ale stále menej ako polovica z celkových 35 bodov, takže nezávisle od ostatných bodov získava známku Fx. - za úlohy v jazyku C získa študent 14%, za jednočipový mikropočítač 14%, za rozcvičky a midterm spolu 35%, ale na skúškovej písomke, ktorá bola za 30 bodov získa len 9 bodov. Prihlási sa na opravný termín, kde získa 7 bodov. Prihlási sa na druhý opravný termín, kde získa 9.5 bodov. Nesplnil dostatočný počet bodov na skúšku a nezávisle od ostatných bodov získava známku Fx.
- úspešná študentka získa známku C takto:
- z programovacieho jazyka C budú vypísané úlohy za 140 základných bodov a 40 prémiových a študentka spolu z nich získa 120 bodov => 120/140 * 0.15 = 0.12857 => 12.86 % do známky
- k jednočipovým mikropočítačom budú vypísané úlohy za 65 základných bodov a 15 prémiových a študentka spolu z nich do konca skúškového získa 58 bodov => 58/65 * 0.15 = 0.13384 => 13.38% do známky
- z piatich 4-bodových rozcvičiek získa študentka spolu 14 bodov => 14/20 * 0.2 = 0.14 => 14% do známky (je to iba príklad, za rozcvičky môže byť napr. aj šesť 5-bodových, rolu hrajú len percentá z maxima)
- z midtermovej písomky za 15 bodov získa 11 bodov => 11/15 * 0.2 => 0.14667 => 14.67% do známky
- na skúškovej písomke, ktorá bola za 30 bodov získa 12 bodov => 21/30 * 0.3 => 0.21 => 21% do známky
- spolu: 12.86 + 13.38 + 14 + 14.67 + 21 = 75,91 %
- úspešný študent získa známku D takto:
- z programovacieho jazyka C budú vypísané úlohy za 140 základných bodov a 40 prémiových a študent spolu z nich získa 170 bodov => 170/140 * 0.15 = 0.18214 => 18.21 % do známky
- k jednočipovým mikropočítačom budú vypísané úlohy za 65 základných bodov a 15 prémiových a študent spolu z nich do konca skúškového získa 71 bodov => 71/65 * 0.15 = 0.16384 => 16.38% do známky
- z piatich 4-bodových rozcvičiek získal študent spolu 10 bodov => 10/20 * 0.2 = 0.1 => 10% do známky
- z midtermovej písomky za 15 bodov získa 7.5 bodov => 7.5/15 * 0.2 => 0.1 => 10% do známky
- na skúškovej písomke, ktorá bola za 30 bodov získa 10 bodov => 10/30 * 0.3 => 0.1 => 10% do známky
- keďže aj bez bodov nad rámec 100% v prvých dvoch kategóriách splnil podmienky na známku E, tak sa mu počítajú aj body navyše a spolu získal: 18.21 + 16.38 + 10 + 10 + 10 = 64,59 %
Denník
- 14. feb: úvodné informácie, cvičenie: úvod do jazyka C
- 28. feb: organizácia počítačových systémov
- 7. mar: reprezentácia čísel v počítači
- 14. mar: viac o typoch a bitových operáciách
- 21. mar: úvod do assembleru procesorov Intel Pentium
Materiály
- zoznam_vybranych_instrukcii.pdf
- Intel® 64 and IA-32 Architectures Software Developer’s Manual Volume 2: Intel Instruction Set Reference Manual
- x86 Assembly Documentation
- x87
(čo je 8. kap. z celého manuálu Intel® 64 and IA-32 Architectures Software Developer’s Manual, Volume 1: Basic Architecture) - 00.pdf
- 02.pdf
- 03a.pdf
- 04.pdf
- 04a.pdf
- 04b.pdf
- riešenia rozcvičiek a cvičení: vsetky_cvicenia.zip
Odkazy:
- staršia stránka Dr. Tomcsányiho k predmetu: na pôvodnej stránke Dr. Tomcsányiho