Dalej: Semestr III
W górę: Krótki opis przedmiotów
Wstecz: Semestr I
Algorytmy i struktury danych (2w, -ć, 2l)
Podstawowe struktury danych, pojęcie typu danych, proste typy
danych, tablice, rekordy, zbiory, pliki; reprezentacje struktur danych;
podstawowe operacje na zbiorach, haszowanie; abstrakcyjne typy danych,
stosy, listy liniowe, struktury drzewiaste: drzewa binarne, drzewa
wielokierunkowe; podstawy algorytmizacji, pojęcie algorytmu, metody
zapisu algorytmu: opis słowny, schematy blokowe, sieci działań, języki
programowania, weryfikacja poprawności i kompletności algorytmów;
podstawowe typy algorytmów i metody algorytmiczne, algorytmy
sekwencyjne, iteracyjne, rekurencyjne, probabilistyczne, metody dziel i
zwyciężaj, metoda zachłanna, programowanie dynamiczne; algorytmy dla
podstawowych zagadnień kombinatorycznych, sortowanie, wybór,
poszukiwanie w drzewach zrównoważonych, algorytmy teoriografowe:
przeszukiwanie grafu wgłąb i wszerz, znajdowanie dróg, domknięcie przechodnie;
analiza złożoności algorytmów i problemów, złożoność czasowa i
pamięciowa algorytmów, złożoność w najgorszym przypadku i złożoność
średnia; klasy problemów decyzyjnych: P,NP, NP-zupełne, silnie
NP-zupełne, wielomianowa hierarchia problemów, złożoność obliczeń
równoległych, hipoteza obliczeń równoległych, rozwiązywalność i
aproksymacja problemów optymalizacyjnych.
Programowanie niskopoziomowe (2w, -ć, 2l)
Podstawowe elementy języka C (język C a Pascal, przepływ
sterowania, wejście-wyjście); zaawansowane elementy języka C
(wskaźniki, struktury danych); podstawowe rozkazy procesorów 80x86;
wprowadzenie do asemblerów MASM i TASM; zasady przechowywania danych w
pamięci operacyjnej; podprogramy; oddzielnie kompilowane moduły;
łączenie asemblera z językami wysokiego poziomu; makrogeneracja i
kompilacja warunkowa; operacje na pojedynczych bitach i ciągach znaków;
przerwania i ich obsługa; programy rezydentne; obsługa urządzeń
zewnętrznych.
Systemy operacyjne I (2w, -ć, 2l)
System plików: organizacje plików, katalogi i ich struktury,
system plików w systemie UNIX, zarządzanie przestrzenią na dysku,
metody alokacji plików na dysku; optymalizacja ruchu głowic dyskowych,
niezawodność, spójność i sprawność systemu plików, rozproszone systemy plików;
zarządzanie pamięcią operacyjną: zarządzanie pamięcią dzieloną na
strefy statyczne i dynamiczne, pamięcią ze stronicowaniem na żądanie,
pamięcią segmentową ze stronicowaniem; pamięć wirtualna;
zarządzanie pamięcią w systemie UNIX; zarządzanie
urządzeniami wejścia/wyjścia:
struktura oprogramowania we/wy, użytkowanie systemu UNIX (system
plików, programy usługowe, programowanie powłoki).
Układy techniki cyfrowej (2w, 1ć, 2l)
Wprowadzenie, zakres przedmiotu; podstawowe bloki
funkcjonalne jako elementarne ,,cegiełki", z których składamy układy
cyfrowe; TTL, CMOS różne technologie - ich wpływ na właściwości użytkowe
układów; podstawy teorii układów cyfrowych; algebra Boole'a; układy
kombinatoryczne i sekwencyjne; podstawowe funkcje logiczne, sposoby
przedstawiania funkcji logicznych, minimalizacja funkcji logicznych,
automaty synchroniczne i asynchroniczne; podstawowe funktory logiczne;
typy przerzutników D, D-latch, SR, JK-MS; rejestry szeregowe i
równoległe, pamięć cyrkulacyjna, rejestry liczące; pamięci statyczne i
dynamiczne, typy pamięci RAM, ROM, CAM, łączenie pamięci, parametry,
cykle zapisu i odczytu; programowane zespoły logiczne PLD, PLA, PAL;
liczniki: typy liczników, ich właściwości, liczniki synchroniczne i
asynchroniczne, binarne, dziesiętne; projektowanie liczników;
multipleksery i demultipleksery; komparatory, łączenie komparatorów;
kodery, dekodery, translatory kodów; sumatory: sumatory binarne,
dziesiętne, subtraktory, ALU; przetworniki A/C i C/A; przetwarzanie NBC
w BCD i BCD w NBC; współpraca układów cyfrowych z otoczeniem;
wprowadzanie i wyprowadzanie danych, wyświetlanie statyczne i
dynamiczne; łączenie układów cyfrowych, połączenia układów wykonanych w
różnych technologiach; układy uzależnień czasowych; sposoby organizacji
systemów cyfrowych, iteracja w czasie i przestrzeni; taktowanie
systemów cyfrowych, częstotliwości maksymalne; projektowanie układów
cyfrowych, podejście ,,bottom-up" i ,,top-down"; projektowanie układów
sterowania, synteza układu sterowania, układy sterowania oparte na
licznikach i układach mikroprogramowanych.
Elementy metod numerycznych (1w, -ć, 1l)
Podstawowe pojęcia analizy numerycznej; numeryczna realizacja
obliczeń na wielomianach i funkcjach wymiernych; interpolacja; układy
równań liniowych; równania nieliniowe i układy równań nieliniowych.
Matematyka II (3w, -ć, -l)
Elementy rachunku prawdopodobieństwa: zdarzenia losowe i
działania na nich, miara i przestrzeń probabilistyczna,
prawdopodobieństwo warunkowe i całkowite, tw. Bayesa, zdarzenia
niezależne i zależne, zmienne losowe, dystrybuanta, momenty i parametry
pozycyjne, funkcje charakterystyczne, niektóre rozkłady, ciągi
zmiennych losowych i ich zbieżność, prawa wielkich liczb, centralne
twierdzenia graniczne, procesy losowe, funkcja korelacyjna,
stacjonarność i ergodyczność, proces Poissona, procesy Markowa;
elementy statystyki matematycznej: momenty z próby i ich funkcje, testy
istotności, własności estymatorów i metody ich uzyskiwania.
Elementy teorii obliczeń: przedmiot teorii obliczeń, funkcje rekurencyjne
częściowe, maszyny Turinga i maszyna RAM, elementy rachunku lambda,
rezolucja w klauzulach Horna, weryfikacja poprawności programów
sekwencyjnych , związki z teorią języków formalnych i teorią translacji.
Dalej: Semestr III
W górę: Krótki opis przedmiotów
Wstecz: Semestr I