Detail předmětu

Počítače a programování 1

FEKT-BKC-PC1MAk. rok: 2023/2024

Základní pojmy z oblasti výpočetní techniky, architektura počítačů, periferie osobního počítače, počítačové sběrnice, sítě, komunikační protokoly, služby Internetu, informační výchova. Specifika operačních systémů, vývoj procesoru, jeho vnitřní struktura a druhy architektur, instrukční soubor. Číselné soustavy a převody mezi nimi, interpretace čísla. Algoritmizace, zápis algoritmu, optimalizace algoritmu s ohledem na výpočetní jednotku. Větvení programu, cyklus, podmínky, skoky.

Jazyk výuky

čeština

Počet kreditů

5

Vstupní znalosti

Jsou požadovány znalosti na úrovni středoškolského studia.

Pravidla hodnocení a ukončení předmětu

Hodnocení předmětu se skládá ze dvou částí. V rámci počítačových cvičení je možné získat 50 bodů a za závěrečný semestrální test 50 bodů. Zisk bodů za počítačová cvičení je dále rozdělen na sérii domácích úkolů 20 bodů a kontrolních testů přípravy na cvičení 20 bodů. Za vlastní tvorbu kódů, dodržení systematičnosti programování a vhodného formátování kódu pak 10 bodů.

Učební cíle

Cílem je předmětu je seznámit studenty s výpočetní technikou včetně jejího praktického použití a s programováním od úrovně mikrokontroleru až po aplikace využívající výpočetní výkon grafickcýh karet osobního počítače. Student se tak seznámí se strukturou osobního počítače, z jakých se skládá komponent a jejich vzájemným propojením. Získá přehled o používaných sběrnicích a datových úložištích. Současně student získá základní přehled o fungování operačních systémů a počítačových sítí. Nedílnou součástí je vysvětlení vnitřní struktury procesoru a pochopení pojmů procesor a kontroler. Současně je cílem studenty naučit převádět mezi číselnými soustavami a vysvětlit způsoby digitální prezentace čísel. Vysvětlit jak větvit program, obecně tvořit cykly, podmínky a výpočetní algoritmy a jejich aplikace v programovacím jazyce. Vysvětlit jak pracuje přerušovací systém procesoru. Vysvětlit, jaký je rozdíl mezi sériovou a paralelní, synchronní a asynchronní komunikací, jak funguje komunikace na nejrozšířenějších sběrnicích. Informovat o možnosti využití periferií k analogově-digitálnímu či digitálně-analogovému převodu. Nastínit možnosti jazyka UML při programování.
1. Student ví, z jakých komponent se skládá osobní počítač, umí je pojmenovat a orientuje se v jejich parametrech.
2. Dokáže pojmenovat nejrozšířenější operační systémy a má přehled v jejich odlišnostech.
3. Dokáže pojmenovat běžně používané bezdrátové sítě.
4. Dokáže vysvětlit rozdíl mezi Harvardskou a Von Neumannovou strukturou procesoru.
5. Umí převádět čísla mezi číselnými soustavami a ví co jsou to datové typy.
6. Dokáže vysvětlit rozdíl mezi procesorem a mikrokontrolerem.
7. Dokáže vyjmenovat běžné periferie mikrokontroleru.
8. Dokáže vysvětlit pojmy instrukce a programový čítač.
9. Umí vytvořit vývojový diagram algoritmu.

Základní literatura

Christian B., Griffith T. Algoritmy pro život, Jan Melvil, 2017. ISBN 978-80-7555-037-8 (CS)
Kabelová, A., Dostálek, L. Velký průvodce protokoly TCP/IP a systémem DNS. Computer Press, 2008. (CS)
Ličev, L., Morkes, D. Procesory - architektura, funkce, použití. Computer Press, ISBN: 80-7226-172-X (CS)
Pecinovský R, Virius M: Učebnice programování - základy algoritmizace. Grada Publishing, Praha 1997. (CS)
Pinker J, Mikroprocesory a mikropočítače, BEN - technická literatura, 2004. ISBN 80-7300-110-1 (CS)
Tanenbaum A. Modern Operating Systems: Global Edition, Pearson Education Limited 2014, ISBN 9781292061429 (CS)
Wróblewski P, Algoritmy. Computer Press, 2015. ISBN 978-80-251-4126-7 (CS)

Zařazení předmětu ve studijních plánech

  • Program BKC-MET bakalářský 1 ročník, zimní semestr, povinný

Typ (způsob) výuky

 

Přednáška

26 hod., nepovinná

Vyučující / Lektor

Osnova

1. Informační systémy používané na FEKT/VUT a jim odpovídající uživatelské účty. Pravidla a směrnice počítačové sítě FEKT/VUT. Přístup k fakultní elektronické poště, WWW rozhraní Horde. Elektronický index.
2. Číselné soustavy, převody mezi číselnými soustavami. Reprezentace záporných čísel. Aritmetické operace v binární soustavě. Reprezentace desetinných čísel, standard IEEE 754. Zlomková reprezentace desetinných čísel, zaokrouhlování, reprezentace znaků, znakové sady
3. Vývoj procesoru a jeho architektura, jádro procesoru, ALU, paměť, Von Neumannova a Harwardská architektura procesoru, strojová instrukce, instrukční soubor, přerušovací systém.
4. Architektury PC, základní typy, periferie počítače, vývoj počítače, (1. test)
5. Operační systém (OS), role OS, abstrakce poskytované OS, specifika operačních systémů
6. Programovací a značkovací jazyky. Rozdělení programovacích jazyků. Strukturované a objektově orientované programování.
7. Algoritmus, vývojové diagramy, větvení programu, cykly, podmínky, skoky, rekurzivní zápis
8. Algoritmy vyhledání maxima, minima, třídění (2. test)
9. Jazyk UML, modelování struktury programu

Cvičení na počítači

26 hod., povinná

Vyučující / Lektor

Osnova

1. Seznámení s počítačovou učebnou, pravidly provozu počítačové sítě VUT, způsoby přihlašování do sítě. Elektronická pošta - fakultní systém doručování elektronické pošty.
2. e-Learningový kurs Informační výchova (samostudium).
3. Samostatný projekt - tvorba dokumentu v MS Office
4. Seznámení se s mikrokontrolery AVR a vývojovým prostředím AVR Studio 4, založení projektu
5. Vytvoření základní struktury programu v jazyce symbolických adres - Assembleru, konfigurace V/V bran mikrokontroleru, rozsvícení LED
6. Časové zpoždění pomocí cyklu, efekty s polem LED
7. Přerušovací systém mikrokontroleru, synchronizace události s časovým přerušením, efekty s polem LED
8. Algoritmus výběru hodnoty z tabulky - nepřímé adresování. Zobrazení čísla na sedmisegmentovém displeji.
9. Zobrazení čísla na čtyřmístném sedmisegmentovém displeji - časový multiplex
10. Zpracování stavu připojených tlačítek - program siréna
11. Využití periferie převodníku A/D - řízení intenzity svitu LED
12. Využití interní paměti EEPROM - záloha dat
13. Komunikace po sériové lince s PC - asynchronní sériová komunikace