programowanie niskopoziomowe
Transkrypt
programowanie niskopoziomowe
Politechnika Opolska Wydział Elektrotechniki, Automatyki i Informatyki Karta Opisu Przedmiotu Kierunek studiów Profil kształcenia Poziom studiów Specjalność Forma studiów Semestr studiów INFORMATYKA Ogólnoakademicki Studia pierwszego stopnia Nazwa przedmiotu PROGRAMOWANIE NISKOPOZIOMOWE Subject Title Całk. 5 Wymagania wstępne w zakresie przedmiotu Studia niestacjonarne IV Nauki podst. (T/N) N LOW-LEVEL PROGRAMMING ECTS (pkt.) Tryb zaliczenia przedmiotu Kod przedmiotu Kont. 1,2 Prakt. 2,2 Zaliczenie na ocenę K Nazwy ARCHITEKTURA KOMPUTERÓW, INFORMATYKA, ALGORYTMY I przedmiotów STRUKTURY DANYCH Wiedza 1. Zna budowę procesorów rodziny 8086 w różnych trybach pracy. Potrafi posługiwać się technikami programowania w asemblerze do Umiejętności 1. tworzenia prostych aplikacji w 16-bitowym trybie pracy procesora. Kompetencje społeczne Potrafi odpowiednio określić priorytety służące realizacji określonego 1. przez siebie lub innych zadania. Program przedmiotu Forma zajęć Wykład Ćwiczenia Laboratorium Projekt Seminarium L. godz. zajęć w sem. Prowadzący zajęcia Całkowita Kontaktowa (tytuł/stopień naukowy, imię i nazwisko) 60 20 dr inż. Marek Rydel | | 55 10 zgodnie z przydziałem obowiązków | | | Treści kształcenia Wykład 1. Sposób realizacji Wykład z wykorzystaniem rzutnika Tematyka zajęć Zakres wykładu, warunki zaliczenia, literatura. Przegląd wersji kompilatorów asemblera oraz narzędzi wspomagających programowanie 2 2. Składania programów w języku Asemblera w trybie rzeczywistym oraz chronionym: deklaracje segmentów, rodzaje kompilacji, deklaracje zmiennych, tworzenie makr oraz funckji, importowanie funkcji bibliotecznych Przegląd podstawowych rozkazów procesora 8086: tryby adresowania, operacje przesłań danych, instrukcje skoków warunkowych i bezwarunkowych, tworzenie pętli, operacje arytmetyczne i logiczne. Architektura koprocesora numerycznego oraz realizacja obliczeń numerycznych na koprocesorze arytmetycznym z zastosowaniem Odwrotnej Notacji Polskiej. 4 Programowania w asemblerze w systemie Windows w trybie konsolowym importowanie funkcji z bibliotek dll, przekazywanie argumentów przez rejestry oraz stos. Tworzenie bibliotek statycznych oraz dynamicznych w asemblerze. 4 Programowanie hybrydowe - łączenie asemblera z językiem programowania wysokiego poziomu (C, C++) za pomocą wstawek inline, bibliotek statycznych oraz dynamicznych. Wprowadzenie do programowania w asemblerze w Windows w trybie okienkowym. 2 Zastosowanie funkcji WinAPI w programowaniu aplikacji graficznych. 2 Lp. 3. 4. 5. 6. 7. Liczba godzin 2 2 2 8. 9. L. godz. pracy własnej studenta 40 L. godz. kontaktowych w sem. 20 Sposoby sprawdzenia zamierzonych Kolokwium pisemne, zaliczenie ustne efektów kształcenia Laboratorium Sposób realizacji Ćwiczenia praktyczne w laboratorium komputerowym Lp. Tematyka zajęć Liczba godzin Omowienie warunków uzyskania zaliczenia, przedstawienie zagadnień 1 1. poruszanych na zajeciach oraz dostępnych narzędzi programistycznych. Elementy programowania w języku asembler w trybie rzeczywistym - obsługa przerwań BIOS / DOS. Wykorzystanie koprocesora arytmetycznego w zadaniach obliczeniowych z zastosowaniem grafiki niskiej rozdzielczości w systemie DOS Łączenie asemblera z językiem programowania wysokiego poziomu (C, C++) 1 5. Programowania aplickacji okienkowych w asemblerze w systemie Windows z zastosowaniem funkcji WinAPI. 3 6. Zaliczenie przedmiotu 1 2. 3. 4. 2 2 L. godz. pracy własnej studenta 45 L. godz. kontaktowych w sem. 10 Sposoby sprawdzenia zamierzonych Wykonanie zadań wyznaczonych w trakcie zajęć efektów kształcenia 1. Ma szczegółową wiedzę z zakresu budowy procesorów rodziny 8086 w różnych trybach pracy oraz budowy wbudowanych modułów. Wiedza 2. Zna techniki programowania procesorów 8086 zarówno w trybie REAL oraz PROTECTED z zastosowaniem usług systemów operacyjnych. Efekty kształcenia dla 1. Potrafi posługiwać się technikami programowania w przedmiotu - po asemblerze do tworzenia złożonych aplikacji w 16-bitowym i zakończonym cyklu 32-bitowym trybie pracy procesora (również z zastosowaniem kształcenia koprocesora, systemu przerwań, z modułami MMX, SSE etc.). Umiejętności 2. Ma umiejętność samokształcenia się z zastosowaniem instrukcji języka i dokumentacji funkcji WinAPI. Kompetencje społeczne 1. Rozumie potrzebę ciągłego pogłębiania wiedzy. Metody dydaktyczne: Wykład informacyjny z elementami wykładu problemowego. Prezentacje multimedialne. Dyskusja dydaktyczna w ramach wykładu i laboratorium. Materiały informacyjne na stronie internetowej. Konsultacje. Forma i warunki zaliczenia przedmiotu: Laboratorium: Średnia z ocen z wykonanych ćwiczeń laboratoryjnych w formie programów w asemblerze. Wykład: pozytywna ocena z ezgaminu pisemnego (uzyskanie co najmniej 50% punktów) lub egzamin ustny. Literatura podstawowa: [1] Syck G.: Turbo asembler. Biblia użytkownika. OW LT&P, 2002. [2] Metzger P.: Anatomia PC. Architektura komputerów zgodnych z IBM PC. Helion, 2006. [3] Chalk B.S.: Organizacja i architektura komputerów. WNT, Warszawa, 1998. Stallings W.: Organizacja i architektura systemu komputerowego. WNT, Warszawa, [4] 2006. [5] Intel Architecture Software Developer’s Manual, Intel Corporation, No: 243190-2, 1997. Literatura uzupełniająca: [1] Dudek A.: Jak pisać wirusy. Read Me, Warszawa, 1994. [2] Kotowski, M: Pod zegarem [asembler 8086/80286], "Lupus" Warszawa 1992. ______________ * niewłaściwe przekreślić ………………………………………………….. ………………………………………………………. (kierownik jednostki organizacyjnej/bezpośredni przełożony: pieczęć/podpis (Dziekan Wydziału pieczęć/podpis)