460-4083/03 – Strojově orientované jazyky (SOJ)

Garantující katedraKatedra informatikyKredity6
Garant předmětuIng. Petr Olivka, Ph.D.Garant verze předmětuIng. Petr Olivka, Ph.D.
Úroveň studiapregraduální nebo graduálníPovinnostpovinný
Ročník1Semestrletní
Jazyk výukyčeština
Rok zavedení2018/2019Rok zrušení2022/2023
Určeno pro fakultyFEIUrčeno pro typy studianavazující magisterské, magisterské
Výuku zajišťuje
Os. čís.JménoCvičícíPřednášející
OLI10 Ing. Petr Olivka, Ph.D.
Rozsah výuky pro formy studia
Forma studiaZp.zak.Rozsah
prezenční Zápočet a zkouška 2+2
kombinovaná Zápočet a zkouška 14+7

Cíle předmětu vyjádřené dosaženými dovednostmi a kompetencemi

Cílem je seznámení se s možnostmi využití technických prostředků počítače PC v jazyce symbolických instrukcí. Po absolvování předmětu budou studenti schopni eliminovat nedostatky vyšších programovacích jazyků kódem v JSI. Studenti budou také schopni spojovat moduly z více programovacích jazyků do jednoho programu.

Vyučovací metody

Přednášky
Cvičení (v učebně)

Anotace

V předmětu se studenti seznámí s programováním v JSI pod OS Linux na platformě x86. Seznámí se z technickými možnostmi procesoru, používáním ALU, FPU a SSE. Naučí se některé programovací techniky, které vyšší programovací jazyky neumožňují.

Povinná literatura:

[1] Barry B. Brey, The Intel Microprocessors, Prentice Hall; 8 edition (June 28, 2008), ISBN: 0135026458 [2] Benjamin Ray Seyfarth, Introduction to 64 Bit Intel Assembly Language Programming for Linux, CreateSpace Independent Publishing Platform; 2 edition (June 23, 2012), ISBN: 1478119209 [3] http://www.intel.com, http://www.amd.com - technická a programátorská specifikace procesorů.

Doporučená literatura:

[1] Brandejs,M.: Mikroprocesory INTEL 8086-80486, GRADA a.s., 1991. [2] Dokumentace překladače NASM, http://www.nasm.us

Další studijní materiály

Forma způsobu ověření studijních výsledků a další požadavky na studenta

Během cvičení budou studenti programovat zadané úkoly. Výsledky těchto úkolů budou tvořit základ výsledného hodnocení. Teoretické znalosti jsou ověřeny písemnou zkouškou.

E-learning

Další požadavky na studenta

Znalost programování v jazyce C/C++.

Prerekvizity

Předmět nemá žádné prerekvizity.

Korekvizity

Předmět nemá žádné korekvizity.

Osnova předmětu

Přednášky: 1. Procesory Intel 8086, velikosti operandů, registry, adresace - bázové a indexové registry, výpočet fyzické adresy. 2. Instrukce přesunové, použití adresace přímé a nepřímé. 3. Instrukce aritmetické a logické. 4. Instrukce skokové, řetězcové a řídící. 5. Rozšiřování instrukčního souboru během vývoje procesorů Intel. 6. Spojování programů v JSI s vyššími programovacími jazyky, použití JSI ve zdrojových textech vyšších programovacích jazyků. 7. Předávání parametrů a návratových hodnot do funkcí. 8. Rozšíření procesorů na 64 bitový režim, spojování s vyššími programovacími jazyky 9. Statické a dynamické linkování, implementace OOP a přetížených identifikátorů. 10. Výpočty s velkými čísly, základní principy. 11. Výpočty s velkými čísly bez omezení velikosti. 12. Formáty desetinných čísel, provádění výpočtů s desetinnými čísly. 13. Matematický koprocesor, FPU a SSE. Cvičení (probíhají v počítačové učebně): 1. Registry, základní adresovací režimy, nedokonalosti překladačů vyšších jazyků. 2. Překlad a linkování programu. Symboly veřejné a lokální. Spojování programů jazyka C a ASM. 3. Instrukce přesunové a skokové. 4. Instrukce logické a aritmetické. 5. Instrukce řetězcové. 6. Předávání parametrů přes zásobník, návratové hodnoty funkcí. 7. Manipulace se základními datovými typy v podprogramech. 8. Aritmetika s čísly ve více registrech. 9. Sčítání, odčítání a bitové posuny N-bitových čísel. 10. Násobení a dělení N-bitových čísel. 11. Programování v 64 bitovém režimu. 12. Formáty a výpočty s desetinnými čísly. 13. Matematický koprocesor FPU a jednotka SSE Projekt:

Podmínky absolvování předmětu

Prezenční forma (platnost od: 2018/2019 zimní semestr, platnost do: 2022/2023 letní semestr)
Název úlohyTyp úlohyMax. počet bodů
(akt. za podúlohy)
Min. počet bodůMax. počet pokusů
Zápočet a zkouška Zápočet a zkouška 100 (100) 51
        Zápočet Zápočet 45 (45) 23
                Úkoly ve cvičeních Jiný typ úlohy 45  23
        Zkouška Zkouška 55 (55) 28 3
                Projekt Projekt 27  14
                Písemná zkouška Písemná zkouška 28  14
Rozsah povinné účasti: Povinnost účasti na cvičení koresponduje s požadavkem získání minimálního počtu bodů pro uznání zápočtu

Zobrazit historii

Podmínky absolvování předmětu a účast na cvičeních v rámci ISP:

Zobrazit historii

Výskyt ve studijních plánech

Akademický rokProgramObor/spec.Spec.ZaměřeníFormaJazyk výuky Konz. stř.RočníkZLTyp povinnosti
2021/2022 (N0612A140004) Informační a komunikační bezpečnost P čeština Ostrava 1 povinný stu. plán
2020/2021 (N0612A140004) Informační a komunikační bezpečnost P čeština Ostrava 1 povinný stu. plán
2020/2021 (N2647) Informační a komunikační technologie (1801T064) Informační a komunikační bezpečnost P čeština Ostrava 1 povinný stu. plán
2019/2020 (N2647) Informační a komunikační technologie (1801T064) Informační a komunikační bezpečnost P čeština Ostrava 1 povinný stu. plán
2019/2020 (N0612A140004) Informační a komunikační bezpečnost P čeština Ostrava 1 povinný stu. plán
2018/2019 (N2647) Informační a komunikační technologie (1801T064) Informační a komunikační bezpečnost P čeština Ostrava 1 povinný stu. plán

Výskyt ve speciálních blocích

Název blokuAkademický rokForma studiaJazyk výuky RočníkZLTyp blokuVlastník bloku

Hodnocení Výuky



2021/2022 letní
2020/2021 letní
2019/2020 letní
2018/2019 letní