8941


Podstawy informatyki w elektrotechnice

Wykład sem. II studia dzienne

Wykład 2 Podstawowe informacje o architekturze komputerów

    1. Jakie rodzaje obwodów scalonych są najczęściej wykonywane w układach scalonych?

    2. Jakie parametry charakteryzują pamięć? Omów krótko każdy z nich.

    3. Czym różnią się pamięci RAM i ROM?

    4. Czym od pamięci ROM różnią się pamięci EPROM i EEPROM?

    5. Wymień kluczowe elementy komputera. Spróbuj narysować schemat blokowy.

    6. Jaką rolę w systemie komputerowym pełni zegar?

    7. Do czego służą CPU i FPU?

    8. Do czego używane są pamięci RAM i ROM ?

    9. Do czego służą szyna adresowa i szyna danych?

    10. Co to jest adresowanie? Co to jest przestrzeń adresowa?

    11. Do czego służą układy I/O (wejścia\wyjścia)?

    12. Do czego służą kooprocesory?

    13. Jak wygląda typowy cykl pracy mikroprocesora?

    14. Jakie są podstawowe elementy mikroprocesora?

    15. Jakich technik używa się by przyspieszyć pracę procesora?

    16. Czym różnią się procesory RISC i CISC?

Wykład 3 Procesor i techniki przyspieszania jego pracy

    1. Wymień i omów podstawowe bloki funkcjonalne procesora?

    2. Omów wady i zalety procesorów RISC i CISC?

    3. Na czym polega przetwarzanie potokowe? Jakie są zyski z takiego sposobu wykonywania operacji?

    4. Jakie są ograniczenia techniki przetwarzania potokowego?

    5. Jakie znasz techniki przyspieszania pracy mikroprocesorów?

    6. Co to są superskalarne techniki budowy procesora? Jakie widzisz korzyści zastosowania technik superskalarnych?

Wykład 4 Rodzaje i zadania systemów operacyjnych

    1. Jakie są główne cele systemu operacyjnego?

    2. Na czym polega spooling?

    3. Na czym polega wieloprogramowość?

    4. W środowisku wieloprogramowym i wielodostępnym pewna liczba użytkowników wspólnie korzysta z usług systemu. Może to powodować powstawanie różnorodnych problemów związanych z bezpieczeństwem systemu.

  1. Wymień dwa takie problemy.

  2. Czy w maszynie z podziałem czasu możemy zagwarantować taki sam poziom bezpieczeństwa jak w maszynie dla indywidualnego użytkownika? (Odpowiedź uzasadnij).

    1. Co jest główną zaletą wieloprogramowości?

    2. Na czym polega praca współbieżna?

    3. Zdefiniuj najistotniejsze cechy następujących typów systemów operacyjnych:

  1. systemu wsadowego;

  2. systemu interakcyjnego;

  3. systemu z podziałem czasu (wielozadaniowego);

  4. systemu czasu rzeczywistego;

  5. systemu rozproszonego.

    1. Co to jest proces?

    2. Po co stosuje się pamięć wirtualną?

    3. Opisz różnice między przetwarzaniem symetrycznym i asymetrycznym. Wymień trzy zalety i jedną wadę systemów wieloprocesorowych?

    4. Skąd bierze się zapotrzebowanie na systemy rozproszone?

    5. Jaką największą trudność musi pokonać osoba pisząca system operacyjny przeznaczony do pracy w warunkach czasu rzeczywistego?

Wykład 5 Współpraca systemu operacyjnego ze sprzętem komputerowym

    1. Jaką rolę w systemie komputerowym pełni program rozruchowy?

    2. Czym różnią się od siebie synchroniczny i asynchroniczny sposób obsługi wejścia\wyjścia?

    3. Omów cykl rozkazowy procesora.

    4. W jaki sposób rozróżnienie między trybem monitora a trybem użytkownika wpływa na elementarną ochronę (bezpieczeństwo) systemu?

    5. Jakie są różnice między pułapką a przerwaniem? Jakie zastosowania znajduje każde z nich?

    6. Do jakiego rodzaju działań przydaje się tryb DMA? Wyjaśnij swoją odpowiedź ?

    7. Które z poniższych rozkazów powinny być uprzywilejowane:

  1. określ wartość czasomierza;

  2. odczytaj stan zegara;

  3. zeruj pamięć;

  4. wyłącz wykrywanie przerwań;

  5. przełącz z trybu użytkownika w tryb monitora.

    1. Niektóre systemy komputerowe nie dysponują sprzętowym trybem operacji uprzywilejowanych. Zastanów się, czy jest możliwe skonstruowanie dla takich komputerów bezpiecznego systemu operacyjnego? Podaj zarówno argumenty przemawiające na rzecz możliwości takiego przedsięwzięcia, jak i udowadniające, że jest to niemożliwe.

    2. Omów budowę i logiczny podział dysku twardego.

    3. Wymień i omów podstawowe parametry dysków twardych.

    4. Gdzie znajdują zastosowanie pamięci podręczne? Jakie problemy pozwalają one rozwiązać? Jakich problemów są przyczyną? Gdyby można było wykonać pamięć podręczną tak dużą jak urządzenie, dla którego pełni funkcje pamięci podręcznej (np. pamięć podręczną tak dużą jak dysk), to dlaczego by tego nie zrobić, pozbywając się takiego urządzenia?

    5. W jaki sposób można uzyskać ochronę pamięci?

    6. Po co system operacyjny stosuje czasomierze?

Wykład 6 Reprezentacja informacji w komputerze

    1. Dlaczego sposób reprezentowania informacji jest ważny dla wygody jej przetwarzania?

    2. Wymień i krótko scharakteryzuj podstawowe typy danych.

    3. Co to jest bit i bajt. Wyjaśnij jak to możliwe, że ciąg bitów pozwala reprezentować przekazać dowolną wiadomość?

    4. Co definiują standardy reprezentacji danych alfanumerycznych? Jakie znasz standardy reprezentacji danych alfanumerycznych? Czym różnią się one między sobą?

    5. Czym różnią się od siebie pozycyjne i niepozycyjne systemy liczbowe? Podaj przykłady systemów obu rodzajów.

    6. Jaka jest różnica pomiędzy systemami dwójkowym, dziesiętnym i szesnastkowym? Czy każda liczba może mieć reprezentację w każdym z nich? Dla każdego z wymienionych systemów wymień z jakich cyfr możemy budować liczby?

    7. Zamień dwójkową (dziesiętną, szesnastkową) liczbę X (np. 11010101) na jej dziesiętny (szesnastkowy, dwójkowy) odpowiednik.

    8. Jakich jednostek używamy do opisywania wielkości danych. Jakie przedrostki (np. mega) stosujemy i co one oznaczają?

    9. Na co ma wpływ typ danych?

    10. Jakie podstawowe operacje może wykonywać komputer?

Wykład 7 Wprowadzenie do algorytmiki

    1. Zdefiniuj pojęcia procesu i algorytmu.

    2. Wyjaśnij co oznaczają pojęcia: dane wejściowe, algorytm, wyniki.

    3. Jakie elementy systemu są niezbędne by wykonać algorytm (Sprzęt (przybory) i oprogramowanie)? Uzasadnij dlaczego?

    4. Czym zajmuje się algorytmika?

    5. Podaj przykład czynności w której realizacji posługujesz się algorytmem?

    6. Podaj przykłady zadań algorytmicznych trudnych (bądź niemożliwych) do wykonania przez komputer.

    7. Jaki poziom szczegółowości jest niezbędny by poprawnie zdefiniować algorytm?

    8. Dlaczego poziom szczegółowości jest ważny dla definiowania algorytmu?

    9. Co to są akcje podstawowe i po co należy je uzgadniać?

    10. Czy krótki algorytm może być wykonywany długo? Od czego zależy czas wykonywania algorytmu?

    11. Dlaczego należy specyfikować rodzaj dopuszczalnych danych wejściowych dla algorytmu?

    12. Z jakich elementów składa się zadanie algorytmiczne?

Wykład 8 i 9 Algorytmy i dane

    1. Dlaczego kolejność wykonywania akcji w algorytmie ma znaczenie?

    2. Jakie znasz struktury przepływu sterowania?

    3. Jak działa sortowanie bąbelkowe?

    4. Jak działa instrukcja skoku? Czy można ją wyeliminować z języków programowania? Uzasadnij.

    5. Co to są schematy blokowe? Z jakich elementów je składamy? Podaj przykład.

    6. Do czego w programach mogą się przydać podprogramy? (Jaki są korzyści z ich użycia?)

    7. Na czym polegają analityczna i syntetyczna metoda budowy algorytmów?

    8. Co to jest rekurencja i do czego można ją wykorzystać?

    9. Jakie znasz sposoby algorytmicznego opisywania długich procesów za pomocą zwięzłych instrukcji?

    10. Dlaczego z typem danych związane są akcje podstawowe?

    11. Co to są zmienne i do czego można je wykorzystać w algorytmach?

    12. Jakiego rodzaju dane możemy przechowywać w tablicach jednowymiarowych? Podaj przykłady.

    13. W jaki sposób zorganizowany jest wektor (lista, tablica jednowymiarowa)? Jak odwołujemy się do jego poszczególnych elementów ?

    14. Jakiego rodzaju dane możemy przechowywać w tablicach dwuwymiarowych? Podaj przykłady.

    15. W jaki sposób zorganizowane są tabele (tablice dwuwymiarowe)? Jak odwołujemy się do ich poszczególnych elementów ?

    16. Przy pomocy jakich struktur sterujących najwygodniej jest operować na zmiennych, wektorach i tabelach (tablicach dwuwymiarowych)? (każdej z tych struktur danych odpowiada właściwa struktura sterująca)

    17. Co to są listy LIFO i FIFO? Jak zorganizowane są w nich dane?

    18. Co to jest drzewo i do czego może się przydać?

    19. Wyjaśnij znaczenie pojęć: węzeł, korzeń, gałąź, liść, ścieżka, potomstwo, rodzeństwo w odniesieniu do drzewa.

    20. Omów najważniejsze etapy sortownia drzewiastego. Jak powstaje binarne drzewo poszukiwań?

    21. Jaką konstrukcję programistyczną (sterująca) odpowiada drzewom? Dlaczego jest ona zwykle wygodna podczas pracy z drzewami?

    22. Na co mogą się przydać bazy danych i bazy wiedzy?

Wykład 10 Języki programowania, proste typy danych

    1. Dlaczego programy wymagają precyzyjnej składni? Co zawiera formalna składnia języka programowania?

    2. Jakie znasz sposoby przedstawiania reguł składniowych? Podaj przykłady.

    3. Dlaczego oprócz składni i interpunkcji w języku programowania ważna jest semantyka?

    4. Jakie etapy są niezbędne by przejść od programu w języku programowania do jego wykonania przez komputer? Jakie znasz sposoby wykonywania programu przez komputer?

    5. Czym różnią się od siebie kompilacja i interpretowanie programów?

    6. Co to jest język adresów symbolicznych?

    7. Dlaczego nie istnieje jeden uniwersalny język programowania, którego wszyscy mogliby się nauczyć i posługiwać przez całe życie?

    8. Od czego zależy wielkość rozmiaru pamięci potrzebnego dla przechowywania danych określonego typu?

    9. Co to jest typ danych i jakie ma cechy ?

    10. Co to jest moc typu?

    11. Jakie znasz standardowe typy proste?

    12. Jakiego rodzaju dane może przechowywać typ logiczny? Jakie operacje można wykonywać na danych tego typu? Jakie typy logiczne są dostępne w Object Pascalu (wymień przynajmniej jeden)?

    13. Jakiego rodzaju dane przechowujemy w zmiennych typu całkowitego? Jakie działania wykonujemy na danych typu całkowitego? Czy otrzymywane wyniki są dokładne? Jakie znasz typy całkowite (w Object Pascalu)?

    14. Jakiego rodzaju dane przechowujemy w zmiennych typu rzeczywistego? Jakie działania wykonujemy na danych typu rzeczywistego? Czy otrzymywane wyniki są dokładne? Jakie znasz typy rzeczywiste (w Object Pascalu)?

    15. Jakie znasz typy znakowe i łańcuchowe? Jakie dane możemy przechowywać w zmiennych tych typów? Czym różnią się dane w różnych wariantach typów znakowych (łańcuchowych)?

    16. Jak definiujemy własne typy w Object Pascalu?

    17. Jak i po co definiujemy typy okrojone?

    18. Jak definiujemy typy wyliczeniowe? Jakie są korzyści z użycia takiego typu? Podaj przykład definicji typu wyliczeniowego.

Wykład 11 Podstawy Object Pascala

    1. Jakie są reguły tworzenia identyfikatorów w Object Pascalu?

    2. W jaki sposób wstawiamy do programu do programu komentarze?

    3. Z jakich głównych części składa się program pascalowy?

    4. Podaj szkielet programu pascalowego?

    5. Jak w programie możemy skorzystać z biblioteki?

    6. Co to są stałe? Do czego służą w programach? Jak je definiujemy w Object Pascalu?

    7. Co to są zmienne? Do czego służą ? Jak je deklarujemy w Object Pascalu?

    8. Jakie znasz operatory? Co to są priorytety operatorów?

    9. Do czego służy operator przypisania? Jak go zapisujemy? Podaj przykład skorzystania z tego operatora.

    10. W jaki sposób wykorzystujemy instrukcje w Pascalu? Jak dostarczamy im parametry?

    11. Wymień znane ci funkcje realizujące operacje obliczeniowe oraz oznacz ich przeznaczenie?

    12. Zapisz przy pomocy znanych ci operatorów i funkcji matematycznych następujące działanie ...? (w miejsce kropek pojawi się wzór działania, które trzeba będzie zapisać)

    13. Wymień znane ci funkcje konwersji danych oraz oznacz ich przeznaczenie?

Wykład 12 Instrukcje sterujące

    1. Jakie znasz cechy obiektów? W jaki sposób odwołujemy się do metod i właściwości obiektów?

    2. Do czego służy instrukcja przypisania? Jak ją zapisujemy? Podaj przykład skorzystania z tej instrukcji.

    3. W jaki sposób w programach pascalowych możemy realizować skoki?

    4. Co to jest instrukcja pusta i do czego służy?

    5. Jaką ma składnię, jak działa, do czego może się przydać instrukcja złożona?

    6. Omów składnię i działanie instrukcji warunkowej? Podaj przykład jej użycia.

    7. Jak budujemy warunki logiczne składające się z więcej niż jednej części np. liczba większa od 8 lub liczba mniejsza od 5?

    8. Omów składnię i działanie instrukcji wyboru? Podaj przykład jej użycia.

    9. Jakie znasz instrukcje iteracyjne w Object Pascalu? Wskaż, które z nich służą do realizacji iteracji ograniczonych, a które do realizacji iteracji nieograniczonych?

    10. Omów składnię i działanie instrukcji for (dla)? Podaj przykład jej użycia.

    11. Omów składnię i działanie instrukcji while? Jakie są warunki jej poprawnego użycia? Podaj przykład jej wykorzystania.

    12. Omów składnię i działanie instrukcji repeat ... until? Jakie są warunki jej poprawnego użycia? Podaj przykład jej wykorzystania.

    13. Jakie są różnice pomiędzy pętlami while i repeat ... until? Czy jeśli jakiś kod udaje się zapisać przy pomocy jednej z nich to jest możliwy jego zapis za pomocą drugiej? Uzasadnij. Podaj przykład.

    14. Za pomocą jakiej instrukcji Object Pascala możemy obsługiwać sytuacje wyjątkowe? Podaj i omów jej składnię.

    15. Omów składnię i przeznaczenie instrukcji try ... finally. Podaj przykład jej stosowania.

Wykład 13 Funkcje i procedury

    1. Co to jest podprogram? Jakie znasz rodzaje podprogramów w Object Pascalu? Czym różnią się podprogramy poszczególnych rodzajów?

    2. Podaj i omów składnię procedury?

    3. Podaj i omów składnię funkcji?

    4. Jakie elementy mogą być definiowane w części opisowej funkcji i procedur?

    5. W jaki sposób określamy wynik funkcji? Podaj przykład.

    6. Jakie znasz rodzaje parametrów funkcji i procedur? Scharakteryzuj każdy z nich.

    7. Co to jest zasięg deklaracji?

    8. Napisz funkcję która oblicza ..., gdzie x jest liczbą rzeczywistą (całkowitą, znakiem, tekstem alfanumerycznym, ...)? (W miejsce ... pojawi się odpowiedni wzór np. 0x01 graphic
      )

    9. Co to jest rekurencja? Podaj przykład funkcji rekurencyjnej.

    10. Omów budowę modułów (bibliotek w Object Pascalu)?

    11. Co to są moduły wzajemnie zależne? Jak rozwiązujemy problem wzajemnego uzależnienia modułów?

Wykład 14 Tablice, rekordy i zbiory

    1. Co to jest tablica? Jak w Object Pascalu definiujemy tablice?

    2. Do czego służą konstruktor i selektor tablicowy? Podaj ich składnię.

    3. Wyjaśnij w jaki sposób porównujemy tablice.

    4. W jaki sposób definiuje się tablice wielowymiarowe? Jak możemy odwoływać się do elementów w tablicach wielowymiarowych?

    5. Jak definiujemy w Object Pascalu rekordy? Podaj przykład.

    6. Podaj składnię konstruktora i selektora rekordowego? Do czego one służą? Podaj przykład użycia konstruktora selektora.

    7. Podaj składnię, omów przeznaczenie instrukcji wiążącej?

    8. Jak definiujemy rekordy z wariantami? Podaj przykład.

    9. Jak definiujemy w Object Pascalu typy zbiorowe? Jakie operacje można wykonywać na zbiorach? W jaki sposób przypisujemy wartości zmiennym typu zbiorowego?

Wykład 15 Grafika, Wykorzystanie narzędzi malarskich w Object Pascalu

    1. Do czego służy płótno? Omów sposób powstawania obrazu na płótnie.

    2. Jakie znasz narzędzia malarskie? Opisz ich przeznaczenie.

    3. Jakie są atrybuty pióra? Za co odpowiadają poszczególne atrybuty; jak je ustawiamy?

    4. Jakie są atrybuty pędzla? Za co odpowiadają poszczególne atrybuty; jak je ustawiamy?

    5. Jakie są atrybuty czcionki? Za co odpowiadają poszczególne atrybuty; jak je ustawiamy? Jak korzystamy z czcionek. Jakie znasz instrukcje do wypisywania tekstu.

    6. Wymień znane ci instrukcje do kreślenia figur geometrycznych. Oznacz ich przeznaczenie.

    7. Jakie znasz sposoby odświeżania rysunku? Wyjaśnij dlaczego takie odświeżanie jest konieczne.

Wykład 16 Obiektowy typ danych

    1. Omów cykl życia aplikacji.

    2. Spróbuj zdefiniować pojęcie obiektu. Jakie atrybuty posiada obiekt?

    3. Wyjaśnij pojęcia: enkapsulacja, polimorfizm, dziedziczenie.

    4. W jaki sposób w Object Pascalu definiujemy nowy typ obiektowy, typ obiektowy pochodny względem innego typu, zmienną typu obiektowego?

    5. Do czego w obiektach przydają się konstruktory i destruktory? (patrz tez wykład 17)

    6. Jak dodajemy do definicji obiektu nowe pola? Podaj przykłady.

    7. Jak dodajemy do definicji obiektu nowe metody? Podaj przykłady.

    8. Czym różnią się od siebie metody statyczne, dynamiczne, wirtualne?

    9. Jak przedefiniowujemy metody?

    10. Jak dodać do obiektu nowe właściwości? Podaj przykłady.

    11. Jakie znasz klasy widoczności elementów obiektu. Krótko je scharakteryzuj.

Wykład 17 Tworzenie komponentów

    1. Podaj przykład definiowania właściwości typu wyliczeniowego?

    2. Podaj przykład definiowania właściwości typu zbiorowego?

    3. Czy możliwe jest definiowanie właściwości typu obiektowego? Jeśli tak to podaj przykład takiej definicji, jeśli nie to uzasadnij dlaczego?

    4. Podaj przykład definiowania właściwości typu tablicowego?

    5. Co to są zdarzenia? Jak dodajemy do komponentu obsługę nowych zdarzeń?

    6. W jaki sposób rejestrujemy w środowisku komponenty?

Wykład 18 Operacje plikowe

    1. Jakie znasz rodzaje plików obsługiwanych przez Object Pascala? Przedstaw schemat wykonywania operacji plikowych.

    2. Omów budowę plików tekstowych. Przedstaw schemat zapisu/odczytu informacji do pliku tekstowego. Powiąż odpowiednie instrukcje Object Pascala z poszczególnymi krokami tego schematu.

    3. Jakie znacz trzy sposoby otwierania plików tekstowych? Czym te sposoby różnią się między sobą?

    4. Jakie znasz instrukcje, które pozwalają podczas przetwarzania plików tekstowych rozpoznać, że osiągnięto już koniec linii, koniec zbioru (pliku)?

    5. Omów budowę plików elementowych? Przedstaw schemat zapisu/odczytu informacji do pliku elementowego. Powiąż odpowiednie instrukcje Object Pascala z poszczególnymi krokami tego schematu.

    6. W jaki sposób definiujemy typ dla plików elementowych?

    7. W jaki sposób możemy wybrać element pliku, w którym ma się odbyć zapis/odczyt informacji? Jak możemy sprawdzić ile elementów ma plik?

    8. Przedstaw schemat zapisu/odczytu informacji do pliku amorficznego (niezdefiniowanego) Powiąż odpowiednie instrukcje Object Pascala z poszczególnymi krokami tego schematu.



Wyszukiwarka

Podobne podstrony:
8941
8941
8941
8941

więcej podobnych podstron