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

Garantující katedraKatedra informatikyKredity4
Garant předmětuIng. Petr Olivka, Ph.D.Garant verze předmětuIng. Petr Olivka, Ph.D.
Úroveň studiapregraduální nebo graduálníPovinnostpovinně volitelný
Ročník1Semestrletní
Odkaz na webJazyk výukyčeština
Rok zavedení2015/2016Rok zrušení
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:

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

Doporučená literatura:

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

Způsob průběžné kontroly znalostí během semestru

Během cvičení budou studenti programovat zadané úkoly. Výsledky těchto úkolů budou tvořit základ výsledného hodnocení.

E-learning

Další požadavky na studenta

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

Minimální znalostní požadavky

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

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

Prezenční forma (platnost od: 2017/2018 zimní semestr)
Název úlohyTyp úlohyMax. počet bodů
(akt. za podúlohy)
Min. počet bodů
Zápočet a zkouška Zápočet a zkouška 100 (100) 51
        Zápočet Zápočet 45 (45) 23
                Úlohy ve cvičení Jiný typ úlohy 45  23
        Zkouška Zkouška 55 (55) 28
                Zkouška Písemná zkouška 55  28
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

Výskyt ve studijních plánech

Akademický rokProgramOborSpec.FormaJazyk výuky Konz. stř.RočníkZLTyp povinnosti
2017/2018 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika P čeština Ostrava 1 povinně volitelný stu. plán
2017/2018 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika K čeština Ostrava 1 povinně volitelný stu. plán
2016/2017 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika P čeština Ostrava 1 povinně volitelný stu. plán
2016/2017 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika K čeština Ostrava 1 povinně volitelný stu. plán
2015/2016 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika P čeština Ostrava 1 povinně volitelný stu. plán
2015/2016 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika K čeština Ostrava 1 povinně volitelný stu. plán

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

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