Detail předmětu
Pokročilé asemblery
FIT-IPAAk. rok: 2017/2018
Chráněný režim procesorů Pentium: princip ochrany, registry, správa paměti, soubor instrukcí. Technika programování v chráněném režimu, správa úloh, virtuální režim. Využití nízkoúrovňového Win32 API v aplikacích pro Windows - konzolové aplikace, "okénkové" aplikace, OpenGL. Technologie programování s využitím multimediálních SIMD instrukcí současných procesorů Intel (MMX a SSE). Seznámení s 64bitovými procesory.
Jazyk výuky
Počet kreditů
Garant předmětu
Zajišťuje ústav
Výsledky učení předmětu
Prerekvizity
Způsob a kritéria hodnocení
Osnovy výuky
- Osnova přednášek:
- OS Windows a asembler - obecné seznámení.
- Programování aplikací v asembleru pro OS Windows - konzolové aplikace a DLL knihovny.
- Programování aplikací v asembleru pro OS Windows - okénkové aplikace a OpenGL.
- Seznámení s instrukcemi rozšíření MMX.
- Aplikace využívající rozšíření MMX.
- Seznámení s instrukcemi technologie SSE.
- Aplikace využívající technologii SSE.
- Optimalizace kódu v asembleru.
- Chráněný režim procesorů IA-32 - soubor registrů a instrukcí, paměťové modely.
- Chráněný režim procesorů IA-32 - základní datové struktury, správa paměti.
- Chráněný režim procesoru IA-32 - způsoby ochrany dat a kódu.
- Chráněný režim procesoru IA-32 - správa úloh.
- 64bitové procesory.
- Tvorba a použití knihoven DLL.
- Win32 API - konzolová aplikace.
- Win32 API - klasická aplikace s okny.
- Win32 API - aplikace využívající OpenGL.
- Aplikace instrukcí rozšíření MMX.
- Aplikace instrukcí technologie SSE.
- Optimalizace kódu.
- Individuální projekt: program ve 32bitovém chráněném režimu využívající Win32 API, rozšíření MMX a/nebo technologii SSE, OpenGL.
Osnova počítačových cvičení:
Osnova ostatní - projekty, práce:
Učební cíle
Vymezení kontrolované výuky a způsob jejího provádění a formy nahrazování zameškané výuky
Základní literatura
Doporučená literatura
Bistry, D.: The Complete Guide to MMX Technology, McGraw-Hill/TAB Electronics, 1997, ISBN 0070061920
Hall, R. B.:Assembly Programming and Computer Architecture for Software Engineers. Prospect Press. 2017. ISBN: 978-1943153329.
Hyde, R.: The Art of Assembly Language, No Strach, 2003, ISBN 1886411972
Intel 64 and IA-32 Architectures Software Developer's Manuals [online]. K dispozici na <www.intel.com>.
Irvine, K.R.: Assembly Language for Intel-Based Computers, Prentice Hall, 2002, ISBN 0130910139
Kusswurm, D.: Modern X86 assembly language programming: 32-bit, 64-bit, SSE, and AVX. Apress, 2014. ISBN: 9781484200650.
Orság, F.: Studijní opora k předmětu IPA
Zbořil, F.: Strojově orientované jazyky, skripta, VUT v Brně, 1991, ISBN 80-214-0349-7
Zařazení předmětu ve studijních plánech
Typ (způsob) výuky
Přednáška
Vyučující / Lektor
Osnova
- OS Windows a asembler - obecné seznámení.
- Programování aplikací v asembleru pro OS Windows - konzolové aplikace a DLL knihovny.
- Programování aplikací v asembleru pro OS Windows - okénkové aplikace a OpenGL.
- Seznámení s instrukcemi rozšíření MMX.
- Aplikace využívající rozšíření MMX.
- Seznámení s instrukcemi technologie SSE.
- Aplikace využívající technologii SSE.
- Optimalizace kódu v asembleru.
- Chráněný režim procesorů IA-32 - soubor registrů a instrukcí, paměťové modely.
- Chráněný režim procesorů IA-32 - základní datové struktury, správa paměti.
- Chráněný režim procesoru IA-32 - způsoby ochrany dat a kódu.
- Chráněný režim procesoru IA-32 - správa úloh.
- 64bitové procesory.
Cvičení na počítači
Vyučující / Lektor
Osnova
- Tvorba a použití knihoven DLL.
- Win32 API - konzolová aplikace.
- Win32 API - klasická aplikace s okny.
- Win32 API - aplikace využívající OpenGL.
- Aplikace instrukcí rozšíření MMX.
- Aplikace instrukcí technologie SSE.
- Optimalizace kódu.