Wstęp do Informatyki

Zagadnienia do egzaminu

Kierunek Informatyka

Studia stacjonarne

Pojęcie algorytmu i definicja problemu algorytmicznego.

Specyfikacja algorytmów. Elementy analizy algorytmów.

Szacowanie złożoności obliczeniowej algorytmów. Złożoność asymptotyczna.

Struktury iteracyjne i rekurencyjne w budowaniu algorytmów. Równoważność struktur.

Język maszynowy, asemblerowy, języki wysokiego poziomu.

Programowanie strukturalne i proceduralne

Języki programowania strukturalnego.

Hierarchia języków programowania. Przegląd języków programowania.

Paradygmaty programowania, imperatywny, funkcyjny deklaratywny, obiektowy.

Translator, kompilator, asembler, interpreter, debuger, linker, profiler.

Struktura oprogramowania komputera. Klasyfikacja oprogramowania

System operacyjny. Zadania i usługi systemu operacyjnego.

Struktura systemu operacyjnego. Interpreter poleceń, jądro systemu operacyjnego.

Klasyfikacja systemów komputerowych

Aspekty języków programowania – składnia i semantyka.

Lingwistyka formalna. Gramatyka formalna, gramatyki bezkontekstowe.

Sposoby opisu składni. Notacje: BF, EBF, Odwrotna Notacja Polska OP, diagramy syntaktyczne.

Miary ilości informacji, entropia źródła binarnego.

Idea kodowania Shannona, Shannona-Fano. Efektywność kodowania.

Pozycyjne systemy liczbowe: binarny, ósemkowy, szesnastkowy. Konwersja miedzy systemami.

Arytmetyka binarna i jej aspekty.

Reprezentacje stałopozycyjne. Znak – moduł, uzupełnieniowa U2. Zakresy liczbowe.

Arytmetyka binarna liczb całkowitych, nadmiar arytmetyczny.

Reprezentacja zmiennopozycyjna. Normalizacja mantysy i wykładnika, standardy.

Arytmetyka binarna dla reprezentacji zmiennopozycyjnej. Zakresy liczbowe.

Błędy arytmetyki zmiennopozycyjnej.

Elementy funkcjonalne systemu komputerowego.

Jednostka Arytmetyczno-Logiczna (ALU).

System rejestrów. Rodzaje rejestrów i ich funkcje.

Procesor. Zasada działania, fazy cyklu rozkazowego, interpretacja.

Układ sterowania i jego rola w procesie przetwarzania. Licznik rozkazów.

Podstawowe kanały przepływu informacji pomiędzy pamięcią a procesorem.

Ewolucja technologii komputerowej od komputera von Neumanna do współczesnego. Generacje

komputerów.