- Nazwa przedmiotu:
- Programowanie niskopoziomowe lab
- Koordynator przedmiotu:
- dr inż. Andrzej Kalicki, anka@iem.pw.edu.pl, tel. +48222347427
- Status przedmiotu:
- Obowiązkowy
- Poziom kształcenia:
- Studia I stopnia
- Program:
- Informatyka
- Grupa przedmiotów:
- Wspólne
- Kod przedmiotu:
- Semestr nominalny:
- 7 / rok ak. 2011/2012
- Liczba punktów ECTS:
- 3
- Liczba godzin pracy studenta związanych z osiągnięciem efektów uczenia się:
- Liczba punktów ECTS na zajęciach wymagających bezpośredniego udziału nauczycieli akademickich:
- Język prowadzenia zajęć:
- polski
- Liczba punktów ECTS, którą student uzyskuje w ramach zajęć o charakterze praktycznym:
- Formy zajęć i ich wymiar w semestrze:
-
- Wykład0h
- Ćwiczenia0h
- Laboratorium0h
- Projekt0h
- Lekcje komputerowe0h
- Wymagania wstępne:
- Programowanie niskopoziomowe 1
- Limit liczby studentów:
- Cel przedmiotu:
- Zajęcia laboratoryjne mają na celu praktyczne zapoznanie z zagadnieniami omawianymi w trakcie wykładu.
- Treści kształcenia:
- Laboratorium - jednostki 2-godzinne oraz objaśnienia (2 godziny)
A.Procesor 8-bitowy:
• Analiza pracy magistrali mikroprocesora za pomocą analizatora stanów logicznych.
• Makrodefinicje w asemblerze.
• Rozszerzenia standardowego kompilatora C dla danego procesora.
• Obsługa układów wejścia i wyjścia mikrokomputera w C i asemblerze.
• Łączenie programów i obsługa bibliotekarza.
• Programowanie hybrydowe w językach C i asemblera.
• Obsługa przerwań w językach C i asemblera.
B. Procesor 32-bitowy:
• Szablon programu w asemblerze. Tworzenie i uruchamianie programów. Deklaracja stałych i zmiennych w asemblerze. Dyrektywy i instrukcje.
• Budowa procesora x86. Rejestry procesora. Rodzaje argumentów rozkazów i ich adresowanie (w tym adresowanie pamięci). Przesyłanie danych. Operacje na stosie.
• Deklaracja procedur i makroinstrukcji. Organizacja pętli programowych. Rozkazy skoków warunkowych i bezwarunkowych.
• Zasady kodowania oraz konwersji liczb i znaków (liczb binarne i heksadecymalne, znaki ASCII). Operacje arytmetyczne wykonywane na liczbach.
• Przerwania obsługa przerwań, wywoływanie przerwań przez użytkownika, procedury obsługi przerwań. Obsługa niektórych urządzeń wejścia-wyjścia (klawiatura, mysz i inne).
• Programowanie hybrydowe w językach C i asemblera.
• Funkcje niskiego poziomu w kompilatorze języka C.
- Metody oceny:
- brak
- Egzamin:
- Literatura:
- Jan Bielecki "Turbo Asembler i Turbo Debugger", Wydawnictwo WNT, Warszawa 1990. Gary Syck "Turbo Asembler® Biblia użytkownika", Wydawnictwo LT&P, Warszawa 1994. Janusz Biernat "Arytmetyka komputerów", PWN, 1996. Artur Kowalczyk "Assembler", Wydawnictwo Croma, Wrocław 1999. Stanisław Kruk "Asembler. Kurs programowania dla średnio zaawansowanych", Wydawnictwo MIKOM, Warszawa 2001. Stanisław Kruk "Procesor Pentium", Wydawnictwo PLJ, Warszawa 1998. Kip R. Irvine "Asembler dla procesorów Intel. Vademecum profesjonalisty", Wydawnictwo Helion, Zabrze 2003. Materiały firmowe - dostępne w sieci www - ARM, Intel, Philips.
- Witryna www przedmiotu:
- Uwagi:
Efekty uczenia się