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)