Dansk - English

Kort version - Fuld version


Avanceret assembly programmering (Efterår 2004)

Kursuskode : IASM-U01
ECTS Point : 7,5 Status : Tilvalg
Revideret : 08/06 2004 Oprettet : 27/05 2004
Placering : 5-7 semester Timer pr. uge : 4
Længde : 1 semester Undervisningssprog : Dansk hvis der ikke er engelsksprogede studerende tilstede

Målsætning : Assembly programmering er især anvendeligt til embeddede systemer, et operativsystems kerne, device drivere, samt applikationer hvor hastigheden er kritisk, såsom behandling af lyd og grafik. Kursets hovedvægt vil være på hastighedskritiske applikationer.

At kunne vurdere hvilke dele af en applikation der evt. med fordel kan programmeres i assembly. At kunne designe, implementere, optimere og teste et subrutinebibliotek i assembly og linke til det fra en applikation i højniveausprog. At kunne anvende Single-Instruction-Multiple-Data instruktioner.
Hovedindhold : Assembly, linking, lokering, lib, make. Instruktionssæt for Intel Pentium 4 og AMD Opteron mikroprocessorer. Application Binary Interface standarder. Single-Instruction-Multiple-Data instruktioner. Testmetoder. Optimering.
Undervisningsform : Teori, øvelser, samt et selvvalgt projekt. Projektet kan laves alene eller i små grupper. Projektet kan f.eks. vælges inden for et af følgende områder: Digital signalbehandling af lyd eller grafik, herunder animation. Numerisk løsning af differentialligninger. Fraktaler. Skakprogram. Kryptering. Datakomprimering.
Krævede forudsætninger : Grundlæggende forståelse af assembly, svarende til kurset DEL2/DIG2. Kunne programmere i C++.
Anbefalede forudsætninger : -
Relationer : -
Prøveform : Mundtlig evaluering på grundlag af kursusopgaver
Censur : Intern
Bedømmelse : 13-skala
Bemærkninger : -
Undervisningsmateriale : Richard C. Detmer: Introducton to 80X86 Assembly Language and Computer Architecture. 2nd edition, 2004. Jones & Bartlett Publ.
Agner Fog: How to optimize for the Pentium family of microprocessors. www.agner.org/assem/pentopt.pdf.Manualer fra Intel og AMD.
Ansvarlig underviser : Agner Fog , agfo@dtu.dk