Název:

Pokročilé asemblery

Zkratka:IPA
Ak.rok:2013/2014
Semestr:zimní
Studijní plán:
ProgramObor/
specializace
RočníkPovinnost
IT-BC-3BIT-volitelný
Vyučovací jazyk:čeština
Informace pro zapsané:http://www.fit.vutbr.cz/study/courses/IPA/private/
Kredity:5 kreditů
Ukončení:zkouška (písemná)
Výuka:
hod./sempřednáškasem./cvič.lab. cvič.poč. cvič.jiná
Rozsah:26001412
 zkouškatestycvičenílaboratořeostatní
Body:60014026
Garant:Orság Filip, Ing., Ph.D. (UITS)
Přednášející:Orság Filip, Ing., Ph.D. (UITS)
Cvičící:Doležel Michal, Ing. (UITS)
Drahanský Martin, prof. Ing., Dipl.-Ing., Ph.D. (UITS)
Klubal Ondřej, Ing. (VCIT)
Fakulta:Fakulta informačních technologií VUT v Brně
Pracoviště:Ústav inteligentních systémů FIT VUT v Brně
 
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.
Anotace:
  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.
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.
Získané dovednosti, znalosti a kompetence:
  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.
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.
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>.
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
Kontrolovaná výuka:
  Kontrolovanou výukou je práce na cvičeních a hodnocený projekt.
Průběžná kontrola studia:
  
  1. Práce na cvičeních.
  2. Hodnocený projekt.
 

Vaše IPv4 adresa: 54.198.92.22
Přepnout na https

DNSSEC [dnssec]