Nazwa forum

Opis forum


#1 2010-06-19 11:47:33

sirac

Nowy użytkownik

Zarejestrowany: 2010-06-19
Posty: 3
Punktów :   

Podstawy informatyki

1.    Pojęcie algorytmu w tym algorytmu rekurencyjnego.
Algorytm – „przepis” rozwiązania postawionego zadania, bez potrzeby odwoływania się do konkretnego języka programowania. Algorytm można wyrazić językiem mówionym lub za pomocą schematów blokowych.
Algorytmy dzielimy na moduły, które stanowią opis wyróżnionego, dobrze określonego działania na równie dobrze określonych obiektach. Z tych zadań zbudujemy ogólny plan (algorytm) całego problemu. Problemy dzielimy na podproblemy
Pojęcie algorytmu – jest to opis danych wejściowych, potrzebny do rozwiązania problemu, łącznie z jednoznacznie zrozumiałym opisem operacji, czyli instrukcji, zleceń, pozwalających na podstawie wartości danych wejściowych otrzymać oczekiwane wyniki – dane wyjściowe jako rezultat działania algorytmu.
Algorytm w matematyce oraz informatyce to skończony, uporządkowany ciąg jasno zdefiniowanych czynności, koniecznych do wykonania pewnego zadania, to pewnego rodzaju przepis rozwiązania zadania.
Algorytm musi być:
- poprawny, tzn. dla każdego poprawnego zestawu danych, po wykonaniu skończonej liczby czynności, prowadzi do poprawnych wyników.
- jednoznaczny- w każdym wypadku jego zastosowania, dla tych samych danych uzyskamy ten sam wynik
- szczegółowy, aby wykonawca algorytmu rozumiał opisane czynności i potrafił je wykonać
- uniwersalny, aby służył do rozwiązywania pewnej grupy zadań, a nie tylko jednego konkretnego przypadku zadania.
Rekurencja występuje gdy funkcja wywołuje samą siebie.
Algorytm rekurencyjny, algorytm który wywołuje sam siebie do rozwiązania tego samego problemu i posiada warunek przerwania, polecenie przerwania wykonywania algorytmu.
Przykładem rekurencji może być obliczanie wyrazu ciągu fibonacciego – pierwszy i drugi wyraz ciągu równy jest 1 każdy następny równy jest sumie dwóch poprzednich. Aby obliczyć N-ty wyraz ciągu potrzebujemy wyraz (N-1) i (N-2).
2.    Składnia, a semantyka języków programowania.
Aby dany ciąg znaków mógł być rozpoznany jako program napisany w danym języku, musi spełniać reguły składni. Składnia opisuje:
Rodzaje dostępnych symboli.
Zasady, według których symbole mogą być łączone w większe struktury.
Semantyka języka programowania definiuje precyzyjnie znaczenie poszczególnych symboli oraz ich funkcję w programie. Semantykę najczęściej definiuje się słownie, ponieważ większość z jej zagadnień jest trudna lub wręcz niemożliwa do ujęcia w jakikolwiek formalizm. Część błędów semantycznych można wychwycić już w momencie wstępnego przetwarzania kodu programu, np. próbę odwołania się do nieistniejącej funkcji, lecz inne mogą ujawnić się dopiero w trakcie wykonywania.
3.    Podstawowe dane i ich komputerowa realizacja, arytmetyka dwójkowa.
Bit jest podstawową jednostką danych komputerowych noże przyjmować wartości 1 lub 0. 8 bitów nazywamy bajtem. Dane w komputerach realizowane są Np: w pamięciach RAM poprzez istnienie lub brak ładunku na kondensatorze pamięć taka składa się z milionów lub nawet miliardów miniaturowych kondensatorów.
Komputer przetwarza dane zapisane w postaci zer i jedynek, dane wejściowe są zamieniane na dane wyjściowe przy pomocy podstawowych operacji, które wykonuje procesor.
Dodawanie - do wykonywania dodawania niezbędna jest znajomość tabliczki dodawania, czyli wyników sumowania każdej cyfry z każdą inną.
0+0=0        ;    0+1=1        ;    1+0=1        ;    1+1=0 i jeden w pamięci
Odejmowanie - przy odejmowaniu korzystamy z tabliczki
0-0=0        ;    0-1=1 i pożyczka od następnej pozycji    ;    1-0=1        ;    1-1=0
Mnożenie - tabliczka mnożenia:
0*0=0        ;    0*1=0        ;    1*0=0        ;    1*1=1
Tabliczka mnożenia binarnego (podobnie jak w systemie dziesiętnym) posłuży do tworzenia iloczynów częściowych cyfr mnożnej przez cyfry mnożnika. Iloczyny te następnie dodajemy wg opisanych zasad i otrzymujemy wynik mnożenia.
Dzielenie - binarne jest najbardziej skomplikowaną operacją arytmetyczną z dotychczas opisywanych. Algorytm, który polega na cyklicznym odejmowaniu odpowiednio przesuniętego dzielnika od dzielnej. W systemie dwójkowym jest to szczególnie proste, ponieważ dzielnika nie musimy mnożyć.

4.    Instrukcje iteracyjne.
Instrukcje iteracyjne (zw. pętlami) - są to instrukcje wielokrotnego powtarzania pewnego bloku instrukcji. Rozróżniamy 3 pętle iteracyjne:
for – pętla wykonywana określoną ilość razy (przykład: (Pascal) for i:=1 to 10 do …; (C/C++) for(i=1;i<=10;i++) {…})
while – pętla która jest wykonywana jeśli warunek jest spełniony, warunek jest sprawdzany na początku pętli, co oznacza że pętla może nie wykonać się ani razu (przykład: (Pascal) while (warunek) do (…); (C/C++) while (warunek)  {…})
repeat – pętla która jest wykonywana do czasu spełnienia warunku. Warunek jest sprawdzony na końcu pętli i jeśli jest prawdziwy następuje wyjście z pętli, oznacza to że instrukcje wykonają się przynajmniej raz przykład: (Pascal) repeat (…) until (warunek); (C/C++) do (…) while (warunek)
5.    Architektura komputera, zasady działania najważniejszych elementów sprzętowych: procesor, pamięć wewnętrzna, magistrale i urządzenia zewnętrzne.
Procesor – urządzenie cyfrowe sekwencyjne, które pobiera dane z pamięci, interpretuje je i wykonuje jako rozkazy. Wykonuje on ciąg prostych operacji (rozkazów) wybranych ze zbioru operacji podstawowych określonych zazwyczaj przez producenta procesora jako lista rozkazów procesora.
Procesory (zwane mikroprocesorami) wykonywane są zwykle jako układy scalone zamknięte w hermetycznej obudowie, często posiadającej złocone wyprowadzenia (stosowane ze względu na odporność na utlenianie). Ich sercem jest monokryształ krzemu, na który naniesiono techniką fotolitografii szereg warstw półprzewodnikowych, tworzących, w zależności od zastosowania, sieć od kilku tysięcy do kilkuset milionów tranzystorów. Połączenia wykonane są z metalu (aluminium, miedź).
Jedną z podstawowych cech procesora jest długość (liczba bitów) słowa, na którym wykonywane są podstawowe operacje obliczeniowe. Jeśli słowo ma 64 bity, mówimy, że procesor jest 64-bitowy.
Innym ważnym parametrem określającym procesor jest szybkość z jaką wykonuje on rozkazy. Przy danej architekturze procesora, szybkość ta w znacznym stopniu zależy od czasu trwania pojedynczego taktu.
Współcześnie większość procesorów ma budowę wielordzeniową.
Pamięć operacyjna- jest to pamięć  adresowana i dostępna bezpośrednio przez procesor, a nie przez urządzenia wejścia-wyjścia procesora. W pamięci tej mogą być umieszczane rozkazy (kody operacji) procesora (program) dostępny bezpośrednio przez procesor i stąd nazwa pamięć operacyjna. Na pamięć operacyjną składa się pamięć RAM ale też pamięć nieulotna (ROM, EPROM i inne jej odmiany) dostępna bezpośrednio przez procesor.
W obecnych komputerach głównym rodzajem pamięci operacyjnej jest pamięć RAM, wykonana jako układy elektroniczne, wykorzystywana przez komputer do przechowywania programu i danych podczas jego pracy.
Magistrala (ang. bus) – zespół linii oraz układów  przełączających służących do przesyłania sygnałów  między połączonymi urządzeniami  w systemach mikroprocesorowych, złożony z trzech współdziałających szyn:
    * sterująca (kontrolna) - mówi, czy sygnał ma zostać zapisany, czy odczytany
    * adresowa (rdzeniowa) - mówi, z jakiej komórki pamięci sygnał ma zostać odczytany lub do jakiej komórki pamięci sygnał ma zostać zapisany;
    * danych - tą magistralą przepływają dane.
Jest elementem, który sprawia, że system komputerowy staje się określoną całością. Szerokość magistrali (liczba równoległych ścieżek szyny danych) określa, ile bitów może ona przesłać za jednym razem (w jednym takcie). Rozróżniane są 2 typy magistrali: jednokierunkowa (dane przepływają tylko w jednym kierunku) oraz dwukierunkowa (dane przepływać mogą w obu kierunkach).
Urządzenia zewnętrzne zwane też peryferiami są to urządzenia podłączone do komputera zapewnić mają komunikację z użytkownikiem (mysz, klawiatura, monitor, głośniki, mikrofon), przetwarzanie obrazów (skaner, drukarka, kamera, ploter). W dobie powszechnej komputeryzacji i miniaturyzacji urządzenia zewnętrzne mogą robić prawie wszystko od prostych czynności jakimi jest kontrola zamknięcia i zabezpieczenia drzwi, poprzez sterowanie lampkami choinkowymi, aż do przeprowadzania skomplikowanych operacji chirurgicznych (jednak te ostatnie nie jest zbyt rozpowszechnione bardziej ze względu na obawy ludzi i koszty takich urządzeń niż możliwości techniczne)
6.    Pojęcia interpretacji i kompilacji.
Komputer bez oprogramowania może wykonywać jedynie instrukcje w języku maszynowym (wewnętrznym), jedynie taki jest dla niego zrozumiały. Oznacza to, że programy napisane w innych (źródłowych) językach muszą być przed ich uruchomieniem przetłumaczone na język maszynowy, zrozumiały dla danego typu komputera. Tłumaczenie tekstów programów z języka programowania na język maszynowy nazywa się translacją, która jest wykonywana przez komputer automatycznie za pomocą specjalnego programu zwanego translatorem. Translator dokonuje nie tylko tłumaczenia tekstu programu źródłowego, lecz także kontroluje prawidłowość jego napisania z punktu widzenia składni wybranego języka programowania.
Istnieją dwa zasadnicze typy translacji: kompilowanie i interpretowanie. W zależności od typu translacji translator może być nazywany kompilatorem lub interpretatorem.
Kompilator tłumaczy cały program na język maszynowy i dopiero taka wersja programu może być wykonywana.
Interpreter tłumaczy i wykonuje poszczególne operacje po kolei w miarę odczytywania ich z programu źródłowego.
    Rozróżniamy translatory języków wysokiego poziomu, tzn. takie, w których jednej operacji języka programowania odpowiada wiele operacji maszynowych, oraz translatory języków symbolicznych- np. translator języka Asembler.
Wśród języków wysokiego poziomu najczęściej są wykorzystywane: Basic, Pascal, Fortran, C.
7.    Oprogramowanie systemowe, narzędziowe i użytkowe.
Oprogramowanie systemowe – najważniejszym składnikiem tego oprogramowania są systemy operacyjne. System operacyjny to zespół programów, którego podstawowymi zadaniami są:
-    zarządzanie zasobami komputera w celu zapewnienia możliwie optymalnego wykorzystania sprzętu,
-    tworzenie środowiska pracy dla użytkownika oraz wspomaganie go w procesie opracowywania, uruchamiania oraz eksploatacji programów użytkowych.
Po uruchomieniu komputera, system operacyjny musi być załadowany do pamięci operacyjnej przed rozpoczęciem jakichkolwiek działań na komputerze.
W zależności od przeznaczenia komputera, jego mocy obliczeniowej może na nim być zainstalowany jeden z wielu stosowanych obecnie systemów operacyjnych. Pewne systemy operacyjne pozwalają na wykorzystywanie jednego komputera przez wielu użytkowników jednocześnie (wielodostępowe). Nowoczesne oprogramowanie pozwala łączyć komputery w tak zwane sieci. Za pomocą łączności telefonicznej lub satelitarnej potrzebne programy, dane i wyniki mogą być przesyłane od jednego komputera do drugiego na nieograniczoną odległość. W ten sposób rozbudowany system operacyjny nazywamy sieciowym. Jest on zwykle zainstalowany na tzw. komputerze – serwerze, do którego może być podłączona pewna liczba innych komputerów
Jednostanowiskowe systemy operacyjne: MS DOS, MS Windows 95, MS Windows 98.
Wielostanowiskowe (sieciowe) : MS Windows NT, Novell Net Ware, Unix, Linux.
Oprogramowanie narzędziowe – rodzaj oprogramowania, który wspomaga zarządzanie zasobami sprzętowymi poprzez dogodne interfejsy użytkowe oraz usprawnia, modyfikuje oprogramowanie systemowe w celu usprawnienia wykonywania programów w bardziej wygodny i wydajny sposób a przy tym pozbawiony błędów.

Oprogramowanie użytkowe – zwane też aplikacyjnym, aplikacjami – określa sposoby w jaki zostają użyte zasoby systemowe do rozwiązywania problemów zadanych przez użytkownika (kompiler, systemy baz danych, gry, oprogramowanie biurowe), zazwyczaj program który ma bezpośredni kontakt z użytkownikiem i nie jest częścią większego programu.

Ostatnio edytowany przez sirac (2010-06-19 12:35:50)

Offline

 

Stopka forum

RSS
Powered by PunBB
© Copyright 2002–2008 PunBB
Polityka cookies - Wersja Lo-Fi


Darmowe Forum | Ciekawe Fora | Darmowe Fora
www.galaktyczny-football.pun.pl www.dietetyka2010.pun.pl www.bl.pun.pl www.opowiadaniarp.pun.pl www.bti.pun.pl