Technologie informacyjne (wyk. 1) Podstawowe pojęcia związane z informatyką, zarys historii informatyki, komputerowy zapis informacji dr Tomasz Ordysiński ordych@wneiz.pl tomaszordysinski.pl
Podstawowe pojęcia informatyki - defincja Przedmiotem informatyki jest całokształt problematyki związanej ze zbieraniem, przechowywaniem, przekształcaniem, wyszukiwaniem, przesyłaniem i udostępnianiem danych, czyli ogólnie przetwarzaniem danych, w celu zapewnienia sprawnego i celowego działania określonego systemu. Nazwa,,informatyka powstała w wyniku skojarzenia dwóch pojęć: INFORmacja + automatyka
Podstawowe pojęcia informatyki dane, informacja, wiedza DANE- to każde dowolne przedstawienie faktów, liczb, pojęć w sformalizowanej postaci, umożliwiające przekazywanie i dokonywanie na nich różnorodnych czynności przetwarzania. Dane to surowe fakty, znaki zapisane na jakimś medium. Narzuca się formalizm zapisu. INFORMACJE (teoria ilościowa) - stworzona przez Shannona; zwraca się uwagę na wpływ wielkości informacji na stopień określoności lub nieokreśloności obiektu. Podstawowymi kategoriami tej teorii są entropia i prawdopodobieństwo. INFORMACJE (teoria jakościowa) - bada się własności informacji oraz jej znaczenia w aspekcie użytkowym. W tym ujęciu przyjmuje się, że informacja oznacza znaczenie, treści, jakie przy zastosowaniu odpowiedniej konwencji przyporządkowuje się danym. WIEDZA - wykracza poza informacje, gdyż powoduje zdolność do rozwiązywania problemów, inteligentnego zachowania się i działania.
Podstawowe pojęcia informatyki komputer, oprogramowanie, system komputerowy Elektroniczna maszyna cyfrowa urządzenie elektryczne potrafiące wykonać 4 podstawowe działania arytmetyczne. Komputer elektroniczna maszyna cyfrowa stosowana do gromadzenia, przetwarzania i wyszukiwania informacji przy pomocy odpowiedniego oprogramowania. Oprogramowanie zbiór programów, które pozwalają na wykonanie przez komputer pewnych zadań. Algorytm przepis na rozwiązanie pewnego zadania przy pomocy skończonej liczby kroków. Program algorytm zapisany za pomocą języka zrozumiałego dla komputera. Hardware zbiór wszystkich urządzeń komputerowych. Software zbiór programów zainstalowanych na twardym dysku komputera.
System komputerowy SYSTEM KOMPUTEROWY HARDWARE + SOFTWARE
Główne cechy komputera Zdolność zapamiętywania dużej ilości danych (pamięć dyskowa, taśmowa, nośniki optyczne), Możliwość automatycznego wykonywania rozkazów (program komputerowy), Programowalność zdolność do zmiany sposobu działania programu, Bardzo duża szybkość obliczeń (procesor wykonuje wiele milionów operacji arytmetycznych na sekundę), Możliwość prezentacji wyników w różnej formie (pliku, tabeli wykresu itp.) Elastyczność budowy sprzętu komputerowego,
Kierunki zastosowań informatyki (1) Obliczenia naukowe i inżynierskie Obliczenia numeryczne stanowią klasyczny i najstarszy kierunek zastosowań komputerów. Specyficzne cechy tego typu zastosowań to: skomplikowane obliczenia, algorytmy; liczba danych wejściowych w tego typu zastosowaniach (i wyjściowych) jest niewielka; stosunkowo niewielkie wymagania odnośnie urządzeń zewnętrznych; sprawne i wydajne translatory różnych języków programowania. Masowe przetwarzanie danych (ekonomicznych) Cechami zastosowań w masowym przetwarzaniu danych są: operowanie na bardzo dużych zbiorach i bazach danych; posługiwanie się raczej nieskomplikowanymi algorytmami przetwarzania danych; stosowanie rozbudowanych, efektywnych systemów kontroli; potrzeba tworzenia czytelnych i estetycznych wydruków komputerowych; duże wymagania odnośnie urządzeń peryferyjnych i przesyłania danych; konieczność stosowania różnorodnych programów użytkowych, tj. arkusze kalkulacyjne, bazy danych, edytory tekstowe, programy multimedialne itd.
Kierunki zastosowań informatyki (2) Symulacja i modelowanie Komputerowe modele symulacji mogą służyć trzem celom: prognostycznym- za pomocą modelu bada się co zdarzy się w przyszłości i w oparciu o tę wiedzę modyfikuje się podejmowane działania; diagnostycznym- model pomaga znaleźć przyczynę obserwowanych zjawisk lub dokładniej i taniej prześledzić ich przebieg; dydaktycznym- model pozwala tanio i bezpiecznie zdobyć doświadczenie wymagane przy wykonywaniu wielu prac. Sterowanie procesami Sterowanie daje całkowicie inne zastosowania, które powodują szereg uwarunkowań: wymagają specjalnych urządzeń do sprzężenia komputera ze sterowanym procesem (np. czujniki); rola komputera sprowadza się do gromadzenia i raportowania danych; konieczność pracy w tzw. trybie rzeczywistym- komputer w obliczeniach musi uwzględniać czynnik czasu i wysyłać sygnały sterujące dokładnie w tym momencie, kiedy są potrzebne. Inne (poligrafia, edukacja, biuro, rozrywka)
Generacje komputerów (1) GENERACJA 0 technika przekaźnikowa, komputer MARK I, praca w systemie dziesiętnym; GENERACJA 1 technika lampowa, komputer ENIAC (1946r.) dane do komputera wprowadza się z taśm, kart perforowanych lub dalekopisów; realizowały jeden program napisany w języku wewnętrznym (kod 0,1 ), nie posiadały systemu operacyjnego; głównie do obliczeń naukowo-technicznych, duża awaryjność. GENERACJA 2 tranzystory pojawiły się pod koniec lat 50, w Polsce komputer XYZ, ZAM2; pojawienie się pamięci zewnętrznych (dyski magnetyczne, taśmy magnetyczne, bębny); wprowadzenie wieloprogramowości komputerów; komputery wyposażone w system operacyjny; wprowadzenie języków symbolicznych (języki pisane kodem 0, 1zostały zastąpione symbolem); zwiększenie szybkości przetwarzania do 100 tysięcy operacji na sekundę;
Generacje komputerów (2) GENERACJA 3 układy scalone: ODRA 1300. wieloprogramowość i wieloprocesowość rozpowszechnienie pamięci dyskowych stosunkowo,,bogaty zestaw oprogramowania systemowego możliwość pisania programów w językach wyższego rzędu (symbole zastępuje się komendami w języku angielskim) tworzenie sieci komputerowych rozwój urządzeń zewnętrznych (peryferyjnych- do wprowadzania i wyprowadzania danych) szybkość wykonywania operacji wzrasta do 10 milionów działań na sekundę. GENERACJA 4 układy scalone VLSI- bardzo duża skala integracji; ULSI (ultra); technika mikroprocesorowa; różnorodne oprogramowanie użytkowe, początek lat 80 GENERACJA 4 PLUS superkomputery o bardzo dużej mocy obliczeniowej: japoński NEC, amerykański CRAY GENERACJA 5 /i dalsze/ technika sztucznej inteligencji; możliwość posługiwania się językiem naturalnym umiejętność wnioskowania i uczenia się przez maszynę poprzez wykorzystanie sieci neuronowych, automatyczne pozyskiwanie wiedzy
Zakres informatyki Zakres zainteresowań informatyki obejmuje: sprzęt komputerowy- hardware (jego parametry techniczne, eksploatacyjne oraz dane dotyczące obsługi, konserwacji itp.) oprogramowanie komputerowe- software (systemy operacyjne, języki programowania, oprogramowanie użytkowe itp.) konstrukcje i eksploatację urządzeń do automatycznego przekazywania danych na odległość (sieci komputerowe, sieci telekomunikacyjne) projektowanie i wdrażanie systemów informatycznych na potrzeby określonych jednostek (np. przedsiębiorstw)
INFORMACJA CYFROWA (1) Def.1. Informacją cyfrową nazywamy informację przedstawioną w postaci słów cyfrowych Def.2. Słowem cyfrowym nazywamy dowolny ciąg składający się z symboli 0 i/lub 1 Długość słowa 1 4 8 16 32 64 Oznaczenie symboliczne a 0 a 3...a 0 a 7...a 0 a 15...a 0 a 31...a 0 a 63...a 0 Nazwa bit tetrada, kęs bajt słowo 16-bitowe, słowo podwójne słowo, dwusłowo słowo 64-bitowe, czterosłowo 1b - oznacza 1 bit 1B=8b 1B - oznacza 1 bajt 1kB=1024B (2 10 ) 1MB=1024kB 1GB=1024MB Przykład: 20 MB jest ilością informacji ośmiokrotnie większą niż 20Mb
INFORMACJA CYFROWA (2) W słowach cyfrowych wyróżnia się najstarszą i najmłodszą pozycję, tj. bit najbardziej znaczący zwany najstarszym (ang. MSB - Most Significant Bit) oraz bit najmniej znaczący zwany najmłodszym (ang. LSB - Least Significant Bit) a n-1... a 0 MSB LSB Analogicznie możemy mówić o starszym i najmłodszym bajcie lub o starszej lub młodszej tetradzie
DZIESIĘTNY SYSTEM LICZBOWY Do zapisu dowolnej liczby system wykorzystuje dziesięć symboli (cyfr): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 Dowolną liczbę w systemie dziesiętnym możemy przedstawić jako następująca sumę: (a n-1...a 1 a 0 ) D = a n-1 *10 (n-1) +...+ a 1 *10 1 + a 0 *10 0 = gdzie: i - numer pozycji w liczbie, a i - dowolna z cyfr od 0 do 9, n - ilość cyfr (pozycji) w liczbie Przykład: 424 D = 4*10 2 + 2*10 1 + 5*10 0 pozycja jedynek (0) pozycja dziesiątek (1) pozycja setek (2) n i 1 0 a i 10 i
DWÓJKOWY SYSTEM LICZBOWY Do zapisu dowolnej liczby system wykorzystuje dwa symbole (cyfry): 0, 1 Dowolną liczbę w systemie dwójkowym możemy przedstawić jako następująca sumę: (a n-1...a 1 a 0 ) B = a n-1 *2 (n-1) +...+ a 1 *2 1 + a 0 *2 0 = gdzie: i - numer pozycji w liczbie, a i - dowolna z cyfr (0 lub 1), n - ilość cyfr (pozycji) w liczbie n i 1 0 i a i 2 Przykład: 10100 B = 1*2 4 + 0*2 3 + 1*2 2 + 0*2 1 + 0*2 0
kierunek odczytu wyniku KONWERSJA LICZB 1. 10100 B = 1*2 4 + 0*2 3 + 1*2 2 + 0*2 1 + 0*2 0 = = 1*16 + 0*8 + 1*4 + 0*2 + 0*1 = 20 D 2. 20:2 = 10 10:2 = 5 5:2 = 2 2:2 = 1 1:2 = 0 reszta=0 reszta=0 reszta=1 reszta=0 reszta=1 czyli 20 D = 10100 B
HEKSADECYMALNY (SZESNASTKOWY) SYSTEM LICZBOWY Do zapisu dowolnej liczby system wykorzystuje szesnaście symboli (cyfr i liter): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F Dowolną liczbę w systemie heksadecymalnym możemy przedstawić jako następująca sumę: (a n-1...a 1 a 0 ) H = a n-1 *16 (n-1) +...+ a 1 *16 1 + a 0 *16 0 = gdzie: i - numer pozycji w liczbie, a i - dowolna cyfra heksadecymalna, n - ilość cyfr (pozycji) w liczbie n i 1 0 i a i 16 Przykład: 1C2 H = 1*16 2 + C*16 1 + 2*16 0
kierunek odczytu wyniku KONWERSJA LICZB (1) 1. 1C2 H = 1*16 2 + C*16 1 + 2*16 0 = = 1*256 + 12*16 + 2*1 = 450 D 2. 450:16 = 28 28:16 = 1 1:16 = 0 reszta=2 reszta=c reszta=1 reszty zapisujemy w postaci cyfry heksadecymalnej czyli 450 D = 1C2 H
KONWERSJA LICZB (2) Do konwersji zapisu binarnego na heksadecymalny i odwrotnie wykorzystuje się tabelę: cyfra heksadecymalna liczba binarna liczba dziesiętna 0 0000 0 1 0001 1 2 0010 2 3 0011 3 4 0100 4 5 0101 5 6 0110 6 7 0111 7 8 1000 8 9 1001 9 A 1010 10 B 1011 11 C 1100 12 D 1101 13 E 1110 14 F 1111 15
KONWERSJA LICZB (3) 1. 2. 1C2 H = = 0001 1100 0010 = = 000111000010 = = 111000010 B 111000010 B = = 0001 1100 0010 B = = 1C2 H każdą cyfrę hex. zapisujemy w postaci czwórki cyfr binarnych odrzucamy nieznaczące zera na początku liczby binarnej liczbę binarną dzielimy od końca na czwórki ewentualnie dopisując nieznaczące zera w ostatniej (pierwszej) czwórce każdą czwórkę binarną zapisujemy w postaci cyfry hex.
OPERACJE RACHUNKOWE NA LICZBACH BINARNYCH DODAWANIE MNOŻENIE 0 + 0 =0 0 * 0 =0 0 + 1 =1 0 * 1 =0 1 + 0 =1 1 * 0 =0 1 + 1 =10 1 * 1 =1
DODAWANIE TRZECH BITÓW bit A bit B bit C SUMA PRZENIESIENIE 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 1 0 0 1 0 0 1 1 0 1 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1
DODAWANIE LICZB BINARNYCH - PRZYKŁAD PRZENIESIENIE 1 0 0 1 0 0 1 1 1 0 1 1 0 1 + 1 0 0 1 0 0 1 1 0 1 1 0 1 1 0 SUMA
LICZBY UJEMNE W UKŁADZIE BINARNYM KOD U2 W zapisie U2 (uzupełnień do 2) liczbę binarną można przedstawić jako: a n-1...a 0 = -a n-1. 2 n-1 +a n-2. 2 n-2 +... +a 0. 2 0 Najstarszy bit nie jest tylko bitem znaku ale niesie wraz ze swoją wagą wartość ujemną. PRZYKŁADY: 1101 U2 = -1. 2 3 +1. 2 2 +0. 2 1 +1. 2 0 = -8+4+1 = -3 D 0111 U2 = -0. 2 3 +1. 2 2 +1. 2 1 +1. 2 0 = 4+2+1 = 7 D
KOD U2 ZAKRESY LICZB Zakresy liczb w kodzie U2: -2 n-1 X 2 n-1-1 np. dla n=5 liczby od -16 D (10000 U2 ) do +15 D (01111 U2 ). W zakresie tym muszą się znaleźć nie tylko argumenty ale i wynik. Sposób zamiany ujemnej liczby dziesiętnej na kod U2: 1. Zamiana na zwykłą liczbę binarną 2. Dopisanie 0 z przodu, jeżeli słowo jest zbyt krótkie do zadanego 3. Negacja poszczególnych bitów 4. Dodanie 1 Zamiana na liczbę przeciwną
KODOWANIE INFORMACJI (1) Kodowaniem nazywamy przyporządkowanie poszczególnym obiektom zbioru kodowanego odpowiadających im elementów zwanych słowami kodowymi, przy czym każdemu słowu kodowemu musi odpowiadać dokładnie jeden element kodowany. Zbiorem kodowanym może być zbiór dowolnych obiektów (cyfr, liter, symboli graficznych, stanów logicznych, poleceń do wykonania itp.) A 111 100 B 010 C 001 Proces kodowania może być opisem słownym, wzorem (zależnością matematyczną), tabelą kodową itp. Kodem liczbowym nazywamy taki kod, który liczbom dowolnego systemu będzie przyporządkowywał słowa kodowe w postaci zerojedynkowej (binarnej).
WYBRANE METODY KODOWANIA Kody binarne kod naturalny NKB zwykła zamiana na liczbę binarną kod prosty BCD każdej z liczb z układu dziesiętnego przyporządkowuję się tetradę w kodzie binarnym. Kodowanie znaków (tekstów) kod ASCII - w 1977 roku ANSI (American National Standards Institute) zatwierdził kod ASCII (The American Standard Code for Information Interchange). Jest to system zapisu w pamięci komputera podstawowych znaków graficznych i poleceń sterujących. (nieefektywny do zapisu liczb!!)