Detail předmětu

Pokročilé asemblery

IPA Ak. rok 2011/2012 zimní semestr 5 kreditů

Aktuální akademický rok

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.

Garant předmětu

Orság Filip, Ing., Ph.D. (UITS FIT VUT)

Jazyk výuky

český

Zakončení

zkouška (písemná)

Rozsah

26 hod. přednášky, 14 hod. pc laboratoře, 12 hod. projekty

Bodové hodnocení

60 zkouška, 14 cvičení, 26 projekty

Zajišťuje ústav

Přednášející

Orság Filip, Ing., Ph.D. (UITS FIT VUT)

Cvičící

Herman David, Ing. (UITS FIT VUT)

Získané dovednosti, znalosti a kompetence z předmětu

Principy chráněného režimu architektury IA-32. Tvorba programů používajících instrukce MMX a SSE. Tvorba programů a knihoven pracujících v chráněném režimu používajících Win32 API na nejnižší úrovni.

Cíle předmětu

Seznámit studenty s programováním náročnějších aplikací na nejnižší úrovni. Naučit používat instrukce multimediálního rozšíření procesorů Intel. Seznámit s principy chráněného režimu architektury IA-32, naučit programovat v chráněném režimu a používat rozhraní Win32 API v nízkoúrovňových aplikacích. Seznámit s 64-bitovými procesory.

Požadované prerekvizitní znalosti a dovednosti

Nezbytná je základní znalost asembleru procesorů x86 (pro studenty FIT je to předmět IAS), znalost programování v NASM a jazyka C.

Literatura studijní

  • 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

Literatura referenční

  • Hyde, R.: The Art of Assembly Language, No Strach, 2003, ISBN 1886411972
  • Irvine, K.R.: Assembly Language for Intel-Based Computers, Prentice Hall, 2002, ISBN 0130910139
  • Bistry, D.: The Complete Guide to MMX Technology, McGraw-Hill/TAB Electronics, 1997, ISBN 0070061920
  • Abel, P.: IBM PC Assembly Language and Programming, Prentice-Hall, Inc., 1995, ISBN 0-13-317729-7
  • Intel 64 and IA-32 Architectures Software Developer's Manuals [online]. K dispozici na <www.intel.com>.

Osnova přednášek

  1. OS Windows a asembler - obecné seznámení.
  2. Programování aplikací v asembleru pro OS Windows - konzolové aplikace a DLL knihovny.
  3. Programování aplikací v asembleru pro OS Windows - okénkové aplikace a OpenGL.
  4. Seznámení s instrukcemi rozšíření MMX.
  5. Aplikace využívající rozšíření MMX.
  6. Seznámení s instrukcemi technologie SSE.
  7. Aplikace využívající technologii SSE.
  8. Optimalizace kódu v asembleru.
  9. Chráněný režim procesorů IA-32 - soubor registrů a instrukcí, paměťové modely.
  10. Chráněný režim procesorů IA-32 - základní datové struktury, správa paměti.
  11. Chráněný režim procesoru IA-32 - způsoby ochrany dat a kódu.
  12. Chráněný režim procesoru IA-32 - správa úloh.
  13. 64bitové procesory.

Osnova počítačových cvičení

  1. Tvorba a použití knihoven DLL.
  2. Win32 API - konzolová aplikace.
  3. Win32 API - klasická aplikace s okny.
  4. Win32 API - aplikace využívající OpenGL.
  5. Aplikace instrukcí rozšíření MMX.
  6. Aplikace instrukcí technologie SSE.
  7. Optimalizace kódu.

Osnova ostatní - projekty, práce

  1. 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.

Průběžná kontrola studia

  1. Práce na cvičeních.
  2. Hodnocený projekt.

Kontrolovaná výuka

Kontrolovanou výukou je práce na cvičeních a hodnocený projekt.

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

  • Program IT-BC-3, obor BIT, libovolný ročník, volitelný
Nahoru