Co to jest informatyka?
Informatyka jest to dziedzina wiedzy zajmująca się problemami przetwarzania danych, przechowywania dancych przesyłania danych. Historycznie początki były już w starożytności - choć nie byo komputerów, ale było myślenie algorytmiczne Euklides wyznaczanie najwyśszego dzielnika (IV w . p. n e.)
Obszar działania informatyki
Algorytmy i struktury danych, języki progra,owania, architektura systemów liczących, systemy operacyjne, obliczenia numeryczne i symboliczne, inżynieria oprogramowania, bazy danych, sztuczna inteligencja robotyka, komunikacja człowiek - komputer, sieci komputerowe i internet
co to jest algorytm
jest to ciąg instrukcji służących wykonaniu pewnego zdarzenia. W każdym algorytmie można wyróżnić szereg instrukcji (odszukaj, wejdź, zpal).aby algorytm był wykonany cel musi znać, rozumieć o co chodzi. Komputer rozumie tylko to co ma zaprogramowane, te instrukcjie to język programowania, są konceretne i skomelizowane.
system operacyjny
system operacyjny jest to nadrzędny program nadzoru wykonujący wewnątrz funkcje komputera (przyjmowanie klawiatury, wykonywanie innych programów). System operacyjny zarządza 4 typami operacji uruchamianiem, nadzorowaniem zakończeniem, aplikacjami. Przydziela aplikacji potrzebną pamięć operacyjną uwalnia nie używaną pamięć,(alokacja pamięci), operacje wejścia wyjścia i system plików) jest integralną częścią plików, zarządza zbiorami plików na dysku, nadzoruje nazwy, zmienia nazwy, otwiera, obsługuje urządzenia wejścia - wyjścia.
Języki programowania proceduralne i deklaratyczne
Wiążą się z stukturą danych i preprezentowanych danych w komputerze, wykonywaniem w komputerze na tych danych działań i operacji. Język programowania sztuczny składa się ze skończonego zbioru reguł zwanych składnikami polecenia dla komputera. Język proceduralny zpisuje się procedury którą komputer wykonuje (procedura - moduł programu wykonujący określone zadanie) synonim programowania modół działający samodzielnie. język deklaratyczny - umożliwia wyszukiwanie danych w dużych zbiorach.
różnica w obliczaniu numerycznym i symbolicznym.
Obliczenia numeryczne to przetwarzanie liczb, obliczania związane z fizyką, matematyką liczb, broblemami technicznymi (np. oblicvzenie zasięgu strzału) obliczenia symboliczne - przetwarzanie znaków, symboli. Kod źródłowy programu przetwarza symbole na języki deklaratyczne, wynikiem są znaki i symbole. Obliczenia symboliczne wykorzystywane są do wyszukiwania danych txt i systemach eksportowych.
czym zajmuje się inżynieria oprogramowania.
Zajmuje się ona doskonaleniem i optymalizacją wytwarzanego oprogramowania. Dobre oprogramowanie powinno być zgodne z wymaganiami użytkownka, niezawodne, efektywne, łatwe w koncerwacni, ergonomiczne (łatwe w obsłudze). Inżynieria oprogramowania powstała bo oprogramowanie nie nadążało z systemem, tzn. kryzys oprogramowania. Przyczyny powstania : duża złożonośćsystemów operacyjnych, niepowtarzalność poszczególnych przedsięwzięć, nieprzejrzystość procesu budowy oprogramowania, pozorna łatwość dokonywania poprawek.
do czego mogą być przydatne układy SI.
Wyróżniamy 2 nurty w rozwou sprzętu komputerowego: 1 - coraz szybsze, 2-nurt_dąży do budowy inteligentnych struktur komputerowych. Systemy inteligentne to takie ,tóre potrafią się uczyć i mogą na podstawie danych podejmować trafne decyzje. Systmey neuronowe (SI) w swej budowie moją być podstawą do mózgu.odporne na uszkodzenie - wiele komórek umiera, a sprawność nie maleje, łatwe przystosowanie się do nowych warunków, potrafjimy sobie poradzić z niedokładną informacją, działa w sposób równoległy, jest mały zużywa mało energii.
Co to jest baza danych?
Bazy danych, zbiór powiązanych informacji i pewnej dziedziny, dane są zorganizowane w taki sposób, by łatwo je można było przeszukiwać i wyciągać wnioski, podejmować na ich podstawie decyzje. Każdy zbiór danych to baza danych nie musi być komputerowa. Komputerowa baza danych jest podzeilona na rekordy. Najprostszą formą prezentacjni bazy jest tabela składająca się z rekordów.
Co to jest sieć komputerowa?
Istnieją od ponad 20 lat, są coraz popularniejsze od takich łączących kilka komputerów po globalone sieci. Sieci udostępniane innym użytkownikom danych i naszego komputera. Powody powstania sieci: wymiana informacji (szybciej i coraż różnorodnej), współdzielenie zasobów (udostępnianbie części dysku komuś innemu jak i my to możemy zrobić - ściągać coś od kogoś).
Podział sieci
LAN - obejmuje swoim zasięgiem stosunkowo małuy obszar (ffirmę, akademię)
MAN - sieci mejskie, obejmują swym zasięgiem kilka sieci LAN
WAN - obejmują swym zasięgiem duży obszar geograficzny, wykrzystuje do przenoszenia informacji np.sieci telekomunikacyjne.
INTERTNET - ...
co to jest internet?
Globalna sieć komputerowa, umożliwająca wymianę inforacji dzięki jednolitemu sposobowi kodowania i przesyłu informacji protokołem TCP/IP. Idea internetu wywodzi się z lat 60, dążono do komunikacji między centrami dowodzenia nawet gdyby przeprowadzono atak rakietowy, alternatywny dostępu.
Zapisz liczbę 416D w uklądzie 2-kowym, 16-stkowych i dziesiętnym
416:2 = 208 reszty 0
208:2 = 104 reszty 0
104:2 = 52 reszty 0
52:2 = 26 reszty 0
...............................
416:16 = 26 reszty 0
26:16 = 1 reszty 10 - czyli A
416 = 1A0H
Ile w układzie dziesiętnym i dwójkowym wynosi 3F3H
Zamiana na dziesiętny:
3*162+F*162 +3*16(0) = 1011B
1011:2=505 reszty 1
505:2 = 252 reszty 1
252:2 = 126 reszty 0
126:2 = 63 reszty 0
63:2 = 31 reszty 1
31:2 = 15 reszty 1
15:2 = 7 reszty 1
7:2 = 3 reszty 1
3:2 = 1 reszty 1
1011D = 1111110011B
Relacje pomiędzy ilościami informacji
8 bitów = 8b = 1 bajt
1 kilobajt = 2(10) bajtów = 1024 bajty
1 megoa bajt = 2(10) kilobajtów = 1024 kilobajty = 1048576 bajtów
1 giga bajt = 2(10) mega bajtów = 1073741324 bajty
na czym polega cyfrowe kodowanie informacji
dowolna informacja w komputerze występuje tylko w postaci 0 i 1, potrzebnę są zatem reguły które przekształcają różne postaci informacji na postaci binarną ciąg cyfr binarnych.
Proces przekształcania informacji nazywamy kodowaniem, polegaa na wzajemnie jednoznacznym przyporządkowaniu elementom zbioru kodowanego słów kodowanych (ciąg liczb binarnych). Naturalny kod binarny NKB - przyporządkowuje dowolnej liczbie 10-tnej odpowiednią liczbę binarną
co to jest kod ASCII
służy do kodowania tekstu i przesyłania go między urządzeniami cyfrowymi oprócz znaków alfanumerycznych, koduje takie znaki sterujące pracą drukarki. Przyporząddkowuje on znakom alfanumerycznym i znakom sterującym, ciąg złożony się ośmiu cyfr binarnych (8 bitów = 1 bajt). Kodowanie ASCII na 8 = 256 znaków. Posługując się kodem ASCII możemy każdy tekst zpisać jako ciąg bitów i na odwrót.
Podstawowe działania na zmiennych logicznych.
Mogą być 1- true, 2- false, działanie logiczne wykonywane w technice cyfrowej przez bramkę, gdy coś na yjście to pojawia sięsygnał wyściowy. Są sumy, iloczynu, negacji logicznej
Bramki AND, OR, NOT
Tabela bramki AND
Iloczyn logiczny y= x1*x2
X1 X2 Y
0 1 0
1 0 0
0 0 0
1 1 1
może być wielo mienna ,1,x2,...,n, ale działa gdy wszystkie są 1
tabela bramki OR
suma logiczna y=x1=x2
x1 x2 y
0 1 1
1 0 1
0 0 0
1 1 1
moze być bramka wieloargumentowa, ale 0 osiąga tylko gdy wszystkie są 0
tabela bramki NOT
negacja y=x
x y
0 1
1 0
zawsze negacja
Porównanie układów kombinacyjnych i sekwencyjnych
Układ kombinacyjny jest to taki układ cyfrowy których stan wyjść zależy tylko od tanu wejść. Bardziej złożone układy kombinacyjne uzyskujemy poprzez połączenie paru prostych.
Układy sekwencyjne są to takie układy których stan wyjśc nie zależy tylko od wejścia, ale też od tego co dzieje się wcześniej w układzie.
co to są cyfrowe uklady synchroniczne i asynchroniczne.
Układem asynchronicznym nazywamy taki układ cyfrowy, który w każdej chwili wejście dziala na wyjście.
Uładem synchronicznym nazywamy takie układy kiedy stany wejśc tylko w danych momentach czasu działają na stany wyjść. Czas czynny i martwy jest podawany sygnałem (zegarowym).
Zasada działania przerzutników RS i D.
Przerzutnik jest najprostszym układem sekwencyjnym pozwalającym zapamiętać 1 bit informacji
przerzutnik asynchroniczny typu RS
R(reset) S(set) Qn+1
0 0 0
0 1 1
1 0 0
1 1 -
działanie przerzutnika
przerzutnik D - przerzutnik reagujący na poziom niski lub wysoki tylko gdy na wejście CK jest podany sygnał wysoki
D Qn+1
0 0
1 1
Jest to zatem przerzutnik synchroniczny, zmiany sygnału wyjściowego następują tylko w czasie czynnym, w czasie martwym jest pamiętany poprzedni stan.
Co to są i jak działają rejestry?
Układ cyfrowy przeznaczony do krótkotrwałego przechowywania niewielkich i ilości informacji lub do zmiany informacji i szeregowej na równoległą i na odwrót. Równoległe wprowadzenie inormacji do układu polega na wprowadzeniu wszystkich bitów w jednym takcie zegara, w celu zrealizowania takiego wprowadzenia liczba wyjściowych zacisków wejściowych układu musi być równa liczbie bitów we wprowadzanym słowie. Wejście szeregowe to takie wejście które umożliwia wprowadzenie informacji do układu bit po bicie. Do wprowadzenia słowa 1- bitowego potrzeba n - taktów zegara, a układ ma tylko 1 wejście
Co to jest magistrala?
W systemie mikroprocesorowym należy zapewnić przesyłanie informacji między różnymi układami w systemie mikroprocesorowym, najprościej każdy układ z każdym co jest jednak fizycznie niemożliwe. Więc tych połączeń jest mniej, droga przepływu danych , komunikuje się nią wszystkie układy.
Magistralą nazywamy zestaw linii i urządzeń przełączających co najmniej 2 lub więcej układy bedących nadajnikami lub odbiornikami informacji
do czego służą termistory?
Dwukierunkowe wzmacniacze buforowane, montuje się je pomiędzy magistralą i odbiornikiem, służą wymianie informacji i pełnią 2 funkcje:
wzmacniają przesyłany sygnał, doprowadzają pod względem elektrycznym sygnał i separują połączone układy
gdy magistrala jest 2 kierunkowa to termistory mogą być 2 - kierunkowe
realizacja sumatora
Do obliczenia sumy 2 liczb binarnych trzeba obliczyć sumę 3 liczb
co to jest kod U2
działanie na liczbach binarnych ze znakiem `-` można sprowadzić do dodawania i negacji. Kod który umożliwia taką realizację t owłaśnie U2, jest to kod , który dowolnej luczbie całkowitej dziesiętnej rpzyporządkowuje słowo binarne a1...a0 - spełniające warunek: an-1...a0 = an-1*2(n-1) = an-2*2(n-1) = a0*2(0).
Jeżeli chcemy przedstawić liczbe ujemną, to najstarszy bit powinien mieć znak `-` 1110U2 = -1*2(3) = 1*2(1) = 1*2(0) = -2D, liczby dodatnie w naturalnym binarnym i U2, wyglądają tak samo.
Jednostka arytmetyczno logarytmiczna.
Uniwersalny układ cyfrowy przeznaczony do wykonywania operacji arytmetycznych i logarytmicznych
Jednostka ta wykonuje operacje takie jak: dodawanie, odejmowanie, przesuwanie bitów (w prawo lub lewo), porównywanie (kompilacja) wartości 2 słów, operacjie ioczynowe i sumy algebraiczne, negacjii alternatywy, wyboru rodzaju operacji wykonujemy sygnałem sterującym. Układ nie ma pamięci własnej dlatego współpracuje z rejestrem:
gdy zawiera 1 argument wynik jest nazywany akumilatorem
gdy przeniesienie czy przekierowanie znaku rejestr flagowy.
Kodery idekodery protytetu.
Dekoder, potoczna nazwa cyfrowego układu który ma n wejść i k wyjść k<=2, stosowane są tam gdzie wybieramy coś z wielu możliwości
Koder jest urządzeniem odwrotnym do dekodera, na jego wyjściu podaje się zakodowany sygnał wejściowy , na którym pojawił się sygnał wyjściowy. Koder prorytetu (gdy wiele urządzeń chce daną inforamcje)
na wyjściu może być więcej niż 1 sygnał wyróżniony, każdemu wyjściu przysługuje różny priorytet.
Podział pamięci półprzewodnikowej.
W technice komputerowej stosowane są głownie pamięci o dostępie zwrotnym, dla tych pamięci czas dostępu jest taki sam dla wszystkich miejsc w pamięci, pamięć sekwencyjna, czas dostępu zależy do miejsca w pamięci. Pamięć swobonda RAM - pamięć ulotna służy do zapisu i odczytu (pamięć operacyjna, grafika). Tę pamięć dzielimy na :DRAM - są to pamięci wolne, tanie i łatwe w miniaturyzacji stosuje się je jako RAM; SDRAM - szybkie, drogie stouje się je jako pamięć podręczno (cache) w procesorach. Pamięć ROM - pamięćnieulotna przeznaczona tylko do odczytu (programu inicjujące pracę komputera).
Organizacja pamięci
DB - szyna wejście - wyjście danych
AB - szyna adresowa
RXW - szyna wyboru rodzaju wykonywanej operacji (O/2)
CS - wejście uaktywnia ukła pamięci (przy łączeniu układów scalonych
Łączenie pamięci półprzewodnikowych.
Ma ono na celu zwiększenie długości słowa przy niezmienionej ilości słó, zwiększanie ilości słów nie zminiając ich długości, zwiększamy zaróno długość słowa jak i ich ilość.
Przy zwiększaniu długości słowa musimy mieć dłuższą magistralę danych, z bitów danych kilku układów scalonych pamięci. Magistrala odróżnia sygnały sterujące łączymy wówczas rónolegle
Zwiększanie liczby słów wymaga zwiększenia liczby adresów - liczby bitów szyny adresowej.
Zwiększanie długości słowa wymaga zwiększanie liczby lini szyny danych.
Pamięci DRAM, SDRAM, RDRAM - metody skracania czasu dostępu.
Pamięi DRAM - zastosowano adresowanie potokowe, pamięci pracuje w cyklu 5-2-2-2, kolejne odczyty następuje co 2 takty zegara, częstotliwość 66 Mhz
Pamięć SDRAM - pełna synchronizacja z procesorem, pracuje w cyklu 5-1-1-1, czs dostępu 10 ns, stadandowo 100 MHz, buduje się także 133 MHz, 200 MHz zwiększanie wynika z tego że w 1 takcie zegara są przekazywane 2 słowa danych, podczas narastania i opadania sygnału, a także 266 MHz.
Pamięć RDRAM - budowana w 3 standartach PC-600, PC - 700 i 800 szerokość szyny wynosi tylko 16 bitów - 2 B, przepustowość pamięci PC800 dla częstotliwości taktowania szyny 400 MHz, 400 MHzx2x2B=1600MB,może ona 184 złącza stykowe i bardzo się grzeje, szybkość przesyłu jest uzależniona od częstotliwości.
Na czym polega adresowanie pamięci
Adresowanie 2- fazy wraz z opadającym zboczem sygnału RAS, z szyną adresową uzyskuje się adres wersza, przy opadaniu zbocza sygnał CAS uzyskuje się adres kolumny, w ten sposób za pomocą 10 lini adresowych aroaz lini RAS, CAS uzyskuje się 20 bitowy adres.
Adresowanie stronicowe - nie podajemy adresu wiersza tylko kolumnę.
Adresowanie potokowe - w trybie seryjnym polega na zapisie i odczycie informacji całymi wieszami, adresy kolejnych, kolumn są generowane wewnątrz pamięci. Podczs odczytu słowa już się podaje nowy adres. Synchronizacja działanie pamięci i zegarem procesora, wykorzystywane w pamięci dynamicznej.
35 + 36 Moduły pamięci.
Pamięci FPM.RAM oraz EOO były zestawiane w moduy SIMM dla procesorów 386/486 z magistralą 16 bitową i 32 bitową dla SIMM PS/2 - 72 styki.
SDRAM zestawiano w moduły DIMM 16 par końcówek, DDR SDRAM 184
Moduły pamięci SDRAM DIMM
niebuforowane do 768 MB
64bitowa magistrala danych
72bitowa danych ECC
buforowane >1GB
72bitowa magistrala ECC
dodatkowe rejestry
37 pamięci ROM i jej typy
Pamięc ROM tylko do odczytu
MROM - zawartośc ustala się przy produkcji ich zawartości nie może zostać zmieniona.
DROM - pamięc jednokrotnego programowania, jej trukturę wanie niszczy trukturę połączeń
FPROM - pamięć wielokrotnego programowania, do kasowania zawartości pamięci używa się promieniowania ultrafioletowego, programowanie uzyskuje się poza systemem
EEPROM - bez wyeliminowania z płyty czy układu, można je programować, przechowuje się w tej pamięci BIOS.
38. Różnica między specjalizowany układem cyfrowym a systemami mikroprocesorowymi.
W specjalizowanym układzie cyfrowym , tóry działa w ściśle z góry ustalony posób. W tych układach przetwarzanie informacji zależy tylko od danego układu, jak został zaprogramowany, tak musi być.
Przetwarzanie danych w systemie mikroprocesorowym najważniejszy jest procesowe przetwarzanie informacji za pomocą elementów operacji, czyli instrukcji, ciąg instrukcji tworzy program, my do systemów mikroprocesorowych musimy dostarczyć, poza danymi, program wg którego będą przetwarzane dane.
39 .Schemat układu mikroprocesorowego
40. Elementy układu mikroprocesorowego i jego funkcje
CPU - mikroprocesor, zegar systemowy, sterownik magistrali mikroprocesora, wytwarza przebiegi czasowe potrzebne do pracy mikroprocesora i całego ukadu, służy do przetwarzania danych i steruje pracą całego układu.
MEN - pamięć ROM, RAM, pamięć opreracyjna RAM przechowywany w niej jestwykonywany program przez systm i wszystkie dane są wnim zawarte, wyłączenie komputera wymazuje RAM. Aby system mikroprocesorowy zaczął działąć musi być program inicjujący prace systemu BIOS zapisywany w pamięci ROM.
I/0 układy wejścia wyjścia służą wymianie informacji pomiędzy procesorem - pamięcią i urządzeniami zewnętrzynymi, potrzeba pośrednictwa wynika że urządzenia działają z różną szybkością , trzeba to dopracować, informacje przesyłane nie są jednorodne, co chwila inny mikroprocesor działa więc różna napięcie na wyjściu trzeba ustawić tak aby wszystko działało.
DB - magistrala danych - służy do przechowywania wyników oraz kodów funkcji 2 kierunkowe im szybsza tym system wydajniejszy.
AB - magistrala adresowa - służy do przesyłania adresów komórek pamięci lub adresów układów wejścia - wyjścia
CB - zestaw lini sterujących - służy do sterowania układami wsspółpracjującymi z mikroprocesorem.
Struktura mikroprocesora
Rys.11
rejestry mikroprocesorowe
Rejestr rozkazów (IR) - zawiera kod aktualnie wykonywanego rozkazu kod jest pobierany z pamięci RAM i dekodowany w dekoderze, sygnał dekodera trafia do układów sterowania (wewnętrznych lub zewnętrznych), sygnały sterujące rediurują rozkaz (przekazują do urządzeń zewnętrznych)
Rejestry części wykonawczej - współpraca z ALU oraz układami sterowania. Występują rejestry dostępne i niedostępne programowo, zawartość tych pierwszych może być zmieniana przez procesor w wyniku jakiejś instukcji należą do nich A - akumulator - zawiera 1 z operandów operacji, do niego jest ładowany wynik operacji F - zapisuje się dodatkowe informacje, informuje że coś jest nie tak (zły znak liczby), flagi są używane do rozgałęzień w programach. Rejestry B,C,D,E,H,L - rejestry uniwersalne robocze, przechowują argumenty, bądź wyniki operacji. P.C licznik rozkazu IP - wskaźnik instrukcji, zawiera adres komórki przechowującej kod, który będzie wykonywany jako następny Si - wskaźnik stosu - zawiera adres ostatniej pełnej komórki stosu
Jaką funkcję pełni stos?
Stos jest to wyróżniony obszar pamięci zorganizowany wg zasad:
dane zapisywane są na stos do kolejnych komórek, przy czym żadnego adresu nie można pominąć, odczyt danych od początku, a zapis od końca
informacje odczytujemy w odwrotnej kolejności do zapisywania, odczytujemy z ostatniej, zapisujemy do 1 wolnej.
Cykl adresowy
Przy realizacji jekiegokolwiek rozkazu procesor wykonuje cyklicznie dane czynności - pobranie kodu rozkazu z pamięci, wczytanie kodu do układu sterowania i realizacji rozkazu. FAZA POBRANIA - odczytujemy rozkaz z licznika rozkazu, a dokładniej odczytuje się adres komórki z nowym kodem rozkazu, adres ten jest przesyłąny magistralą danych, - pobranie kodu rozkazu z pamięci i umieszczenie go w IR;
Modyfikacja licznika rozkazu IPX = PC + 1 FAZA WYKONANIA - zakodowanie kodu rozkazu; - wysłanie sygnałów sterujących realizujących danyrozkaz
Kod rozkazu
Rozkaz - instrukcja maszynowa, jest to najprostrza operacja, której wykonaie można żądać od procesora. Programowanie rozkazami to programowanie językiem niskiego poziomu (asembler). Każdy procesor ma inne zestawy rozkazów, które trzeba znać , aby programować go tą metodą. Ogólnie jednak rozróżńiamy - rozkazy przesłań (przesył argumentów i wyników; - rozkazy logiczne i arytmetyczne (matematyka); - rozkazy sterujące (skoki, pętle, wykonanie); - inne: sterowanie pracą komputera.
Kod rozkazu musi zawierać:
kod operacji,
operatory
adresy wyników
np. EB.0.3 JMP.SHOET NEXT - przesunięcie argumentu o 3 komuórki
EB - kod operacji
03 - argument
JMP - mnożnik
Short NEXT - argument
Tryby adresowania
tryb adresowania natychmiastowego (argument rozkazu jest zawarty w kodzie rozkazu).
Adresowanie bezpośrednie (kod rozkazu, zawiera kod operacji
Adresowanie rejestrowe - w kodzie rozkazu określony jest rejestr w którym przechowywany jest argument rozkazu
Adresowanie pośrednie - adres argumentu może zmieniać swoje poołożenie w rejestrze - jest on wyliczany przez program
Rys.13
Adresowanie indeksowe z przemieszczaniem - adres argumentów w pamięci wynika z sumy 2 adresów zawartości rejestru - przesunięcie
Rys.14
W procesorach 80x86 istnieje 12 typów adresowania.
Magistrala sterująca
W fazie wykonywania rozkazu ma miejsce zdekodowanie kodem rozkazu (dekoder w mikroprocesorze) i wysyłania sygnałów sterujących realizujących dany rozkaz (układ sterujący mikroprocesorem). Magistrala sterująca - jest zestawem linii które służą do przysyłąnia sygnałó sterujących wychodzących i przychodzących do procesora: - Sygnały wchodzące informują procesor o stanach układów współpracujących z procesorem, - sygnały wychodzące sterują jednostką wykonawczą procesora oraz ukłądami zewnętrznymi
+ 49 Ukłądy wejścia/ wyjścia
Układy te pośredniczą w wymianie informacji między pamięcią, procesorem, a urządzeniami zewnetrznymi. Układy we/wy mogą być dedykowane tylko do pracy z konkretnym urządzeniem oraz pracować z wieloma urządzeniami porty RS, USB. Wyróżniamy układy we/wy:
-współadresowalne z pamięcią operacyjną - traktuje się te układy jako pewien zespół rejestrów , które są wybierane za pomocą adresów ( karta grafiki - w celu wyświetlania grafiki - umieszczamy w określinym obszarze obszarze RAM - buforze obrau
-izolowane -obekt we/wy wybirany jestg poprzez podanie odpowiedniego sygnału strującego. Przestrzeń adresowa ukłądu we/wy i pamięć może się pokrywać, o wyborze decyduje sygnał strujący (sterowanie dyskiem IDE)
Jakie znasz procesory rodziny Pentium
86, 88 186 188 286 386 486 Pentium MMx, celeron
Podstawowe cechy dziłania procesora Pentium
64 bitowa magistrala danych, 32 bitowa magistrala adresowa, praca w 3 trybach: rzeczywisty, chroniony tryb wirtualny , wirtualny 8086 . Architektura procesora umożliwia: pracę potokową, dwa potoki przetważania instrukcji przewidywanie rozgałęzień w programach, segmentacja i stronicowanie pamięci.
Główne elementy schematu blokowego procesora Pentium.
Rys. 15.
Do czego służą rejestry segmentowe
Wyróżńiamy następujące rejestry segmentowe:
-rejestr segmentowy programu CS - rejestr segmentowy danych DS.; - rejestr segmentowy stosu SS; - rejestr dodadkowy stosu dancyh BS, GB, RS.
Adres początku bloku (segmentu) = zawartości rejestru segmentowego x 16, blok ten może się przemieszczać ze skokiem równym 16B, adres efektywny (tj. przesunięcie), adres ten jest 16 - bitowy. W pamięci może się znajdować. Jednocześnie kilka segmentów pokrywających się w sobt.
Adresowanie w trybie rzeczywistym i chronionym
W trybie rzeczywistym, pentium zachowuje się jak szybki procesor 16 bitowy 8086, w trybie rzeczywistym procesory sa kompatybilne. Generowanie adresu w procesorze 8086, parametry tego procesora: 16 bitowa szyna danych, 16 bitowe rejestry, 20 bitowa magisrala danych, adresowanie pamięci o pojemności 1 MB, aby zaadresować 1Mb 16 bitami adresów opracowano specjalny układ generowania adresu fizycznego.
Rys.16
Praca w systemie chronionym - w tym trybie są dostępne „........”wspomagające obsługę pamięci wirtualnej, pracy wielozadaniowej, stronicowanie pamięci.
56 . Co to jest tablica deskryptorów?
Różnice między trybem adresowania rzeczywistym, a trybem wirtualnym 8086.
Na czym polega praca wielozadaniowa w systemach jednoprocesorowych?
Cel stosowania i wspópraca pamięci cache z procesorem
Jest to bardzo szybka pamięć statyczna (dużo szybsza od RAM), potrzeba pamięci cache, wynika z tego że procesor jest dużo szybszy niż RAM więc potrzeba bufora, który będzie te prace wspierał. Jest ona stosukowo mała od kilku do kilkuset kb. Aby ją obsłużyć i dobrze wykorzystać jest obecny w systemie sterownik cache, który synchronizuje jego prace z całą resztą. Funkcje pamięci cache sprawdza czy dana informacja jest w cache jeżeli tak to mamy tzw. Trafienie, jeżejli jej nie ma to trzeba dogrywać ją z RAM, co trwa długo i jest nieefektywne.
60. Omów pracę potokową procesora Pentium
Praca potokowa procesora Pentium
Praca w tym trybie polega na jendoczesnym wykonywaniu kilu faz rozkazu. W procesorze Pentium realizowane jest 5 faz:
-F-pobranie kodu instukcji z pamięci
-D1-I etap dekodowania instrukcji (ustala się rodzaj operacji)
-D1-II etap dekodowania instukcji (obliczany jest adres efektywny lub przygotowane są argumenty natychmiastowe)
-E-wykonywanie - realizowany jest - jeśli jest wymagany - dostęp do pamięci i wykonywana jest operacja
-V-zapis do rejestrów - zapis wyniku w koreślonym rejestrze.
W jednoczesnym realizowaniu różnych faz kilku rozkazów, w trakcie taktów zegara wykonywane jest 10 instrukcji.
Przestrzeń adresowa komputera.
Pierwsze komputery PC wyposażone były w procesor o 20 bitowej szynie adresowej, co umozliwiało zaadrezowanie 1 MB RAM. Obszar ten dzielimy na:
-pamięć konwencjonalną przeznaczoną dla programów i danych o wielkości 640kb
-pamięć górną wielkości 384kb zarezerwowaną na potrzeby systemu BIOS, VIDEO BIOS, VIDEO RAM, ramke pamięci stronicowania (EXPANEDED).
Adresowanie pamięci powyżej 1MB (przy 20 bitowym adresie) uzyskano przez wprowadzenie pamięci górnej, ramki pamięci pozwalającej zaadresować 32 MB, te pamięć nazwano EXPANDED, dalszy rozwój pamięci pojawił się przy wprowadzeniu 32 bitowej magistrali adresowej, dla tych procesorów pamięc powyżej 1 MB nazywano EXPANDED LUB XMS, wcześniej gdy był DOS, nie było odpowiednich sterowników dla tej pamięci
BIOS
Basic input-output system- jest to pakiet programów przetrzymywany na płycie głównej, zadaniem tych programów jest miedzy innymi:
-testowanie układów i urządzeń systemowych po włączeniu zasilania
-inicjacja pracy systemu poprzez dostarczenie instrukcji pobiranych podczas startu procesora i wpis do pamięci tablicy
-zaprogramowanie sposobu pracy niektórych układów płyty głównej (np. zegaru czasu rzeczywistego), pracy magistrali PCI
Rodzina procesorów Pentium
-Pentium, pentum Pro 8kb cache zegar 50 lub 60 Mhz, 66,100,1333 MHz MMx
Pro 256kb cache, 150, 166, 180, 200 MHz zegar
-Pentium II - 512 cache 64 Gb - pamięci fizycznej
-Celeron 2x16kb; 2x 128 kb cache 66 MHz
-Pentium III L1-32 kb L2-512kb cache i 64 kb szyna danych
-Pentium IV szyna 100 Mhz, 256 cache
Pojęcie FSB, Fcore
FSB - zewnętrzna szyna procesora taktowanie zegara o częstotliwościach od 50 Mhz dla Pentium do 200 wzwyż dla nowszych
Fcore - częstotliwość wewnętrzna jest kilkakrotnie większa od częstotliwości zewnętrznej (wynika ona z mnożnika wstawionego np. za pomocą zworek, lub w nowych modułach w BIOS-się)
65 Definicja algorytmu
Algorytm - to sposób postępowania programisty, może być on tłumaczony słownie, jest to sposób mało czytelny niekiedy niejednoznaczny, w praktyce algorytm to schemat blokowy programu, tóry chcemy wykonać.
67. o to jest złożoność algorytmu?
złożoność algorytmu
zagadnieniem określaniem czasu obliczeń zajmują się informatycy i wprowadzili oni pojęcie złożoności algorytmu tj. zależności czasu obliczeń od rozmiaru danych wyróżnia się algorytmy o złożoności:
-wykładniczej 2(n) (algorytm rekurencyjny do obliczenia funkcji Fibanciego F(n)
-wielomianowej - czas zależy od potęgi rozmiaru problemu, np. liniowo 2n kwadratowo 3n(2)
-logarytmicznej np.log(2)n - bardzo dobra zbieżność
czas obliczeń zależy od:
liczby operacji, rodzaju operacji (+,-,if); szybkość procesora ograniczania programowego (np. wydruk) dostępu do danych (w plikach, RAM-ie)
68. Pojęcie algorytmu iteracyjnego i rekurencyjnego
1 dla n=0
n(n-1) dla n>1
to algorytm rekurencyjny - charakterustyczne dla tego algorytmu, jest to, że w celu oblicznia n!, trzeba policzyć (n-1)! Obliczenie (n-1)! Wymaga obliczenia (n-2)! I tak dalej aż do 1
4! = 4*3!; 4!=4*3*2!; 4!=4*3*2*1!; 4!=4*3*2*1
W celu obliczenia silni korzystamy wielokrotnie z tej samej definicji, jest to cecha charakterystycznba dla algorytmu rekurencyjnego.
Rekurencja polega na wywoływaniudanego algorytmu, tego samego algorytmu, wywołanie te są w sobie zagnieżdżone i w każdym z nich mamy inne argumenty. Obliczenie zaczynamy od najdalszego wywołania (tj. dla najmniejszych argumentów).
Schemat blokowy algorytmu rekurencyjnego
Jak widać obliczenia idą w nie tą strone, wykonywane jest zatem coraz więcej obliczeń, ten algorytm jest mało efektywny, wiele razy liczymy to samo, bardziej efektywny jest algorytm iteracyjny, efektywność algorytmu to, oszczędność czasu, efektywność mierzymy liczbą operacji
Dla n=10 liczba operacji wynosi:
-dla algorytmu itracyjnego odoło n-10
-dla algorytmu rekurencyjnego około 2(10)=1024.
Schemat blokowy algorytmu iteracyjnego - złożoność liniowa tj. czas obliczeń proporcjonalny do n.
69. Na czym polega metoda dziel i zwyciężaj?
Na czym polega metoda dziel i zwyciężaj
Algorytmy które dzielą problem na mniejsze problemy tego samego typu (przynajmniej 2 razy) nazywamy algorytmem typu „dziel i zwyciężaj”, takie algorytmy są bardzo pożądane
Podaj algorytm: poszukiwania NWD, F(n), 2n, n! sprawdzania czy n jest liczbą pierwszą, rozwiązywania równania kwadratowego.
Podaj algorytm poszukiwania NWD F(n), 2(n), - sprawdzenie czy n jest liczbą pierwszą, algorytm rozwiązania równania kwadratowego
Poszukiwanie NWD - algorytm Euklidesa, polega on na powtarzaniu ciągu operacji:
-dzielimy liczbę większą przez mniejszą 28:12=2 reszty 4
-dzielimy dzielnik przez uzyskaną resztę 12:4=3 reszty 0
NWD=4
Algorytm obiczenia silni:
Algorytm iteracyjny n!=1*2*3*4*...n-1*n
Algorytm sprawdzenia, czy n jest liczbą pierwszą:
-jeżeli n dzieli się bez reszty przez którąkolwiek z liczb od 2 do (n-1) to n nie jest liczbą pierszą
-jest to algorytm o złożoności (...) liniowej
rozpatrujemy:
-jeżeli n nie dzieli się przez 2 to nie dzieli się przez żadną z liczb parzystych, redukujemy w ten sposób liczbę operacji o połowę
-dla dużego podzielnika p>n(0,5) istnieje zawsze podzielnik q mały (tj. q<n(0,5)) równy q=n/p
schemat blokowy
Rys.22
Algorytm rozwiązania równania kwadratowego ax(2)+bx+c=0
Rys.23
Struktura programu w BP
W jaki sposób deklaruje się: moduły, typy, etykiety, stałe, zmienne?
73. .Jakie znasz typy porządkowe - podaj przykłady.
Typy proste są to podstawowe typy Pascala, za ich pomocą określa się bardziej złożone struktury danych. Wszystkie typy proste składają się ze skończonego i uporządkowanego zbioru wartości , dzięki temu na ich wartościach możemy wykonywać operacje m. Innymi porównań. Typy porządkowe to takie, dla których można określić wartość poprzedniej i następne. TYP WYLICZENIOWY-stosuje się go do zbioru o niewielkiej liczbie argumentów, nie wykonuje się na nim operacji arytmetycznych IYPE identyfikator typu=l lista identyfikacyjna); elementy typu wyliczeniowego są uporządkowane zgodnie z kolejnością ich wyliczenie w definicji typu i mają liczby porządkowe odpowiednio 0,1,2,itd.(np.TYPE pory roku [wiosna, lato, jesień, zima] .TYP CAŁKOWITY-sa predefiniowane i nie wymagają opisu w programie .Wszystkie typy całkowite są podzbiorami liczb całkowitych wśród typów całkowitych wyróżniamy :shortlnt(-128 do 127);byte(0 do 255); Integer(-32768 do 32767);word .TYPY LOGICZNE-najczęściej typ Boolean , Byte Bool (1bajt); Word Braol(2bajty) ;Long Bool (4bajty).Wartości typów logicznych są oznaczone za pomocą predefiniowanych literałów (stałych):True, False, co oznacza odpowiednio prawda(1), fałsz(0).TYP ZNAKOWY- w Turbo Pascalu ozn. go predefiniowanym identyfikatorem :char, elementami tego typu są znaki ASCH, z których każdy jast pamiętany w 1 bajcie. TYP OKROJONY- służy do ograniczania zakresów wartości dowolnego z dotychczasowych opisanych typów porządkowych TYPE identyfikator typu =stała...stała;TYPE=Litery=',,A”.,,2” zakres=',,0”...,,100”
74.Wyjaśnij pojęcie typu rekordowego, zbieżnego, plikowego, tablicowego.
TYP TABLICOWY-tablica składa się z ustalonej liczby elementów, tego samego typu zwanego typem składowym. Typ składowy może być typem prostym, łańcuchowym, strukturalnym: - za pomocą tablic są reprezentowane regularnie układy danych (macierze)
-dostęp do poszczególnych elementów tablicy uzyskuje się przez index. -indeksem może być dowolne wyrażenie którego wartość jest zgodna w sensie przypisania z typami indeksowymi. - dopuszczalny zakres np.type identyfikator typu errey(typ indeksowy ) typ składowy V=errey[1...5]of integer ; macierz =errey [1...20, 1...30] of red. TYP REKORDOWY -rekordem naz. złożoną strukturę danych której składnikiem , znane polami mogą być różnego typu ;poszczególne pola mogą być strukturami złożonymi , liczba pól jest z góry złożona .W definicji typu dokładnie określa się typ i identyfikator każdego rekordu .Definicja typu składa się z 2 kluczowych słów,,record” l. deklaracja i każdego ,,end' na końcu. Poszczególne deklaracje i pól oddzielamy a następnie po ostatnim deklarowaniu może być ,,cose - of”
Pojedynczy typ rekordu ma postać :TYPE identyfikator typu:=record
Lista deklaracji-pól
End.
TYP ZBIOROWY- jest zbiorem potęgowym, danego typu porządkowego tzn: jest zbiorem wszystkich podzbiorów tego typu i tym także Φ. Liczba elementów typu zbiorowego do 256(0 do 255):TYPE identyfikator typu =set of typ porządkowy TYPE klasy = set of (l0-1d, [0-2d, l0-3d)Elementami typu klasy może być dowolny podzbiór podanych niej klas między innymi:[(0-1d,l0-2d]- zbiór 2 elementów [I-Φ ] TYP PLIKOWY - powiązany z rodzajem typów jakie tworzy plik elementów tego samego typu ich liczba jest zmienna. Liczbą elementów jest uzależniona od przebiegu wykonywania programu i skojarzenia pliku z fizycznym zbiorem danych. Od tablicy typ plikowy różni się ponadto metodę dostępu do poszczególnych elementów: TYPE identyfikator typu =file of opis typu elementów pliku .
Pliki niezdefiniowane są stosowane głównie w celu dostępu do fizycznych zbiorów dyskowych zgodnie z ich wewnętrznym formatem. W Pascalu istnieje predefiniowany plik tekstowy v TEXT (plik tekstowy) TYPE=file of integer zbiór=file Wynik=text
75. Wyjaśnij pojęcie typu wskaźnikowego i łańcuchowego.
Typ łańcuchowy- służy do reprezentowania ciągu znaków, w tym znaku spacji, elementami typu łańcuchowego są łańcuchem, których długość zmienia się od 0 do wartości podanej
TYPE identyfikator typu=String[rozmiar]max255 TYPE nazwisko=String [20]
TYPY WSKAŹNIKOWE- zmienne typów prostych i strukturalnych , charakteryzują się tym, że zajmują pamięć istnieją cały czas, są to zmienne statyczny. -W języku Pascala występuje też zmienna dynamiczna, dla których pamięć jest zwolniona i przedzielona na żądanie . -Zmienna te nie posiadają identyfikatorów, a odwołanie do nich następuje za pomocą wskaźnika .-Wartościami wskaźników adresy , zmiennych dynamicznych w pamięci. -Aby je stosować trzeba wcześnie zdefiniować typy wskaźników TYPE identyfikator typu =^identyfikator bazowy TYPE a =^real TYPEwww=^6666 6666=record Text=String[50] liczba= integer end. Definicja ta wiąże typ www ze zbiorem wskazań danych typu 6666, jeżeli wprowadzimy teraz deklaracje,, var=aaa `'W Pascalu sa L typy przedefiniowanych typów wskaźnikowych ,są to Pointer i Pcha to 1 jest zgodna z każdym innym typem wskaźnikowanie , drugi służy ze wskaźnikiem do łańcuchów zakończonych znakiem,,spacji” słowo kluczowe nil- wskazuje na adres pusty.
Wyjaśnij pojęcia typów proceduralnych i obiektowych.
77. W jaki sposób deklarujemy zmienne?
Wyrażenia w języku Pascal
79. .Jakie znasz rodzaje operatorów.
Wyrażenie składające się z argumentu i operatorów. Dzięki operatorom możemy wykonać różne operacje na argumentach np.(a, axb, = zxy). W przypadku występowania wielu operatorów w wyrażeniu , kolejności operacji określa ich priorytet.
+, NOT - 1, * /, DIV, MOD,AND, SHL , SHL 2
+,-,OR. XOR -3, =, < >, ≤ ≥,IN Jeżeli 2 operatory mają ten sam priorytet to zostaje wykonane działanie od lewej do prawej. Operatory dzielimy na arytmetyczne, logiczne i relacyjne.
68.Instrukcje proste.
Instrukcje - jest to czynność (operacja) wykonywana na danych ;instrukcje proste to takie które jako skład nie zawiera innej instrukcji. Rozróżniamy instrukcje proste : -instrukcja przypisana służy do przypisania zmiennej nowej wartości np. A=1 , T[2* ,1,13] = 2,22
Instrukcja skoku -jest jedyną instrukcją której stosowanie nie jest zalecane. Jej stosowanie to może być zawsze zastąpione instrukcjami ,,dopaki” lub,,portang” Ogulna jej postać jest następująca: GO TO etykieta ;
PROGRAM AAA;
LABEL e1
BEGIN
Instrukcja pusta nie wymaga użycia żadnego symbolu języka i nie powoduje ona wykonanie czynności. Instrukcje tę stosuje się w celu ułatwiania operowania programu lub gdy chce się unikać wykonania jakiejkolwiek czynności .
80. Instrukcje proste
Instrukcje strukturalne
Podaj przykłady instrukcji iteracyjnych
Podaj przykłady instrukcji warunkowych
Parametry formalne i aktualne
Sposoby przekazywania informacji do (oraz z) procedur (funkcji)
Podaj procedury (funkcje) obliczania silni, elementów ciągu Fibonacciego, NWD, działań na liczbach zespolonych, rozwiązywania równania kwadratowego, mnożenia macierzy.
76 .Wyjaśnij pojęcie trybów proceduralnych i obiektywnych.
Typ proceduralny - jest potrzebny w Pascalu dlatego, że trzeba specjalnie traktować procedury i funkcje, gdyż procedury i funkcje mogą być jako elementy przypisywane do zmiennych i przekazywane do innych funkcji lub procedur jako parametry .
TYPE nazwa: procedura TYPE nazwa: procedura (lista parametrów)
TYPE nazwa: function(typy a wartości funkcji)
TYPE nazwa: function lista parametrów
Np. yy = procedure (x,y : Byte, var);
ff: function (x,y:Byte );Booleon;
Typ obiektowy - obiekt w Pascalu jest to złożona struktura danych o ustalonej liczbie elementów , każdy z tych elementów może być polem, albo metodą (procedura lub funkcja), która wykonuje dane operacje na naszym obiekcie . W definicji typu obiektowego, tak samo jak w rekordzie definicji, musimy podać jego typ i identyfikator .Opis metody składa się z nagłówku procedury (funkcji) konstrukcji lub destrukcji. W 1 typie obiektowym może być wiele metod Opis typu obiektowego zaczynamy ,,object” a kończymy ,,end” Type identyfikator typu =object (dziedzictwo)
Lista deklarowanych pól
Lista deklarowanych metod
End.
Każda z deklaracji pól:lista nazw pól : opis typu.
Deklarowanie metody : nagłówek metody ; nagłówek metody :wirtnal
Słowo kluczowe wirtnal określa daną metodę jako wirtnol.
Dyrektywa ,,priwate” oznacza to,że zakres ważności pól i (lub) metod podanych
....................................................... do modułu (lub program ), który zawiera definicje danego typu obiektowego metodę naz. polami i metodami prywatnymi. Użycie po ................... dyrektywę priwate, dyrektywy ,,public” powodują anulowanie, ograniczenie zakresu ważności dla dalszych pól i metod .Przykład deklaracji typów obiektowych.
TYPE punkt z object
X,Y = INTEGER
End. Pierwszy obiekt(punkt) ma tylko 2 pola typu integer.
Instrukcja strukturalna
Instrukcja złożona
Instrukcja warunkowa
Instrukcja if . . then (jeśli)
Instrukcja case ... of … end (wyboru)
Instrukcje iteracyjne
Instrukcja for .. do (dla)
Instrukcja while .. do (dopóki)
Instrukcje repeat .... until (powtarzaj)
Instrukcja wiążąca
Instrukcja asemblerowa asm ... end
Instrukcja złożona jest ciągiem instrukcji poprzedzonych słowem kluczowym „begin” i zakończonym słowem „end”. Instrukcje wchodzą skład instrukcji złożonej wykonane np. sekwencyjnie (jedna po drugiej)
Instrukcja warunkowa - uzależniają wykonanie innych instrukcji od spełnienia określonego warunku (if .. then - jeśli; case .. of - wybór).
Instrukcja jeśli uzależnia wykonanie instrukcji od spełnienia lub niespełnienia określonego warunku if wyrażenie do instrukcja. Wartość wyrażenie jest zawsze logiczna True lub False. Np. if s = 2 then y := 0 else y:=1
If wyrażenie then instrukcja
Else instrukcja
I Instrukcja wyboru jest przydatna gdy wykonywanie różnych operacji jest uzależniona od wartości poprzedniej zmiennej
case wyrażenie of
sekwencja instrukcji wyboru
else instrukcja
end;
Działanie instrukcji wyboru jest następujące: najpierw jest obliczona wartość selektora, po czym w sekwencji instrukcji wyboru jest odszukiwana pierwsza instrukcja poprzedzona stałą wyboru równą obliczonej wartości selektora. Gdy wartość musi być typu porządkowego:
sekwencja instrukcji wyboru składa się z instrukcji
każda z nich poprzedzona jest 1 lub kilkoma stałymi, wartościami logicznymi wyboru
stałe wyboru od instrukcji oddzielone są dwukropkiem
poszczególne stałe dzielimy przecinkami
Instrukcje iteracyjne - umożliwiają nam organizowanie cykli programowych tj wielokrotnego wykonywania pewnych sekwencji instrukcji. W Pascalu rozpoznajemy 3 rodzaje takich instrukcji :
Instrukcja for zmienna:=wyrażenie1 to wyrażenie2 do instrukcja, lub for zmienna:=wyrażenie1 dawnto wyrażenie2 do instrukcja zmienna (tzw zmienna sterująca)musi być identyfikatorem typu porządkowego i powinna być lokalna w bloku zawierającego daną instrukcje „dla” wartości zmiennych gdy jest ich więcej powinna być zgodna w sensie przypisania. Instrukcja może być dowolna prosta lub strukturalna.
Instrukcja dopóki służy do opisania iteracji ze sprawdzeniem warunku na początku i ma postać „while wyrażenie do instrukcja”, wyrażenie, które jest najczęściej wyrażeniem porównania, daje wartość logiczna (true, false). Instrukcja występująca po słowie do może być dowolną instrukcją prostą lub strukturalną. Instrukcja ta wykonana jest tak długo, jak długo wartość wyrażenia jest True np.
K:=1;
X:=0;
While k<10 do
Begin
X:=(x+k)/k;
K:=k+1;
End;
Instrukcja dopóki zostanie wykonana dziewięć razy
Instrukcja „powtarzaj” służy do opisywania iteracji ze sprawdzeniem warunku na końcu pętli i ma postać
Repeat
Inst_1
Inst_2
…..
inst_n
until wyrażenie
Wyrażenie powinno dawać w wyniku wartość logiczną, a każda instrukcja może być dowolną instrukcją prostą lub strukturalną
Instrukcja wiążąca - do odwoływania się do poszczególnych pól rekordu lub obiektu służą dysygnatory pół, składające się z identyfikatora odpowiedniego pola i nazy zmiennej rekordowej lub obiektowej. Pozwala na wygodniejsze odwołanie się do poszczególnych pól
With lista zmiennych do instrukcja, przy czym liista zmiennych zawiera oddzielone przecinkami identyfikatory zmiennych rekordowych lub obiektowych, a instrukcja może być dowolną instrukcją prostą lub strukturalną.
Przykłady instrukcji
Instrukcja while K:=1; X:=0; While k<10 do Begin X:=(x+k)/k; K:=k+1; End; |
Instrukcja for
Suma:=0 For I:=1 dawnto -128 do Suma:=suma+i |
Instrukcja repeat
Repeat K:= mod j; I:=j J:=k Until j:=0 |
Instrukcja Case
Case miesiac od 4,6,9,11:dni:=30 2 : dni:=28 else dni:=31 end |
Instrukcja if
Ifx>=y then a:=1 else a:=0 |
84. Parametry formalne I aktualne
Procedure Nazwa_procedury (lista_parametrów aktualnych)
Częśc opisowa
Begin
Ciąg_instrukcji
End.
Function nazwa_funkcji (lista_parametrów_formalnych)
Częśc opisowa
Begin
Ciąg_instrukcji
End;
Parametry formalne - pomocnicze nazwy parametryzujące algorytm. Lista parametrów formalnych określa w sposób w jaki ta lista ma być zastąpiona listą parametrów aktualnych przy wywołaniu procedury lub funkcji
85. Sposoby przekazywania informacji do procedur lub funkcji rozróżniamy 6 rodzajów
parametry przekazywane przez wartości (elementy_listy_parametrów_formalnych) np.
procedure : obl (xy,z : real; i : integer), wywołanie obl(a,y,z,i);
Przy wywołaniu procedury (funkcji) elementów w liście parametrów aktualnych muszą być wyrażenia takiego samego typu jak elementy w liście parametrów formalnych W treści procedury parametry formalne traktowane są jak wewnętrzne procedury (funkcje), jak zmienne lokalne (ich wartość może się zmieniać, ale nie zmienia się wartości odpowiadającym im parametrów aktualnych. Wynik jest zmienny przez zmienną globalną
Parametry przekazywane przez stałe określonego typu (elementy listy parametrów formalnych : const) (obliczanie silni)
Parametry przekazywane przez stałe zmienne określonego typu
Var a : longint {deklaracja globalna}
Procedure obl_silnie (n : byte; var s longint)
Var I : longint (deklaracja lokalna)
Wewnątrz procedury działania wykonane są na zmiennej globalnej a przekazywanie wartości przez te zmienne przez lokalną
Parametry przekazywane przez wartości stałe nieokreślonego typu, zmienne nieokreślonego typu
Parametry otwarte
86. Podaj procedury funkcji obliczania silni działania na liczbach zespolonych
Function silnia (const n :byte):longint
Var I : byte
Begin
Silnia:=1
For I:=1 to n do silnia:=silnia*i
End
87. Typy plików zmienna plikowa
Do wprowadzania i wyprowadzania danych służą urządzenia zewnętrzne
klawiatura, HDD, drukarka, monitor, dane pobierane lub wysyłane do tych urządzeń nazywamy plikami, w Pascalu rozróżniamy pliki
Zdefiniowane : opis typu pliku zdefiniowanego
Type identyfikator_pliku = file of opis_typu_elementów_plikowego
Niezdefiniowane, opis typu pliku niezdefioniwanego
Type identyfikator_pliku = file
Tekstowe : typu plikowego tekstowego określa się za pomocą procedury predefiniowanego identyfikatora „text”
Dostęp do pliku uzyskuje się za pomocą zmiennej plikowej
Deklaracja zmiennej plikowej:
Type r = file of real
Z = file of record
Re, im : real
End;
Var f : text;
Zbiór : R
Aa : file of integer;
Zbiorek : z;
Przed użyciem pliku zmienna plikowa musi być skojarzona z fizycznym zbiorem danych do tego celu służy instrukcja assign np.
Var
F : text;
Zbiór : r
Begin
Assign (f)
End.
88. Instrukcja tworzenia otwarcia zamknięcia pliku
Do tworzenia nowego fizycznego pliku identyfikowanego przez zmienne plikowe służy instrukcja Rewrite np. Rewrite (f); Rewrite(ff,rozmiar)
Do otwarcia pliku, który istnieje I jest zamknięty służy instrukcja “Reset” np. Reset(f), Reset (ff, rozmiar)
Append służy do otwarcia pliku textowego I dopisania coś do pliku append (f)
Zapis i odczyt danych z plików tekstowych, zdefiniowanych, niezdefiniowanych
Operacje na plikach i ich przeszukiwanie
Struktura modułu.
Sposób deklaracji modułów.
Jakie znasz moduły standardowe
Przykłady funkcji i procedur: arytmetycznych, konwersji danych, operacji porządkowych, graficznych.
Opisz sposób deklarowania klas
Co rozumiesz pod pojęciem biblioteka VCL
Wyjaśnij pojęcie dziedziczności w programowaniu obiektowym
.W jaki sposób deklaruje się moduły ,typy, etykiety, stałe, zmienne.
Deklaracja modułów (USES) umożliwia nam zdefiniować dowolną ilość modułów w naszym programie USES crt, dos, graph, kazio, - deklarujemy 3 (pierwsze ) standardowe moduły i jeden kazio niestandardowy .Moduły służą do grupowania funkcji, procedur w biblio., przez co 1 program może pisać wielu programistów. Deklaracja etykiet ;(LABEL)- powoduje skok w programie przez co nie jest wykonywana jakaś część programu:
LABEL skok 1,2
BEGIN
GO TO skok 1
Skok1;Writeln(` skok do etykiety 1)
Skok2: Writeln(` skok do etykiety2)
End.
Deklaracja stałych (CONST)- jeżeli tu nadamy stałej wartość, to nie możemy jej zmienić inaczej będzie błąd w programie.
CONST MaxWYSPKOŚĆ=100
Deklaracja Typu(TYPE) -stałe dzielimy na 2 typy ;
-przedefiniowane nie wymagają przez opisu.
-niestandardowe definiowane przez użytkowników
TYPE dzien =( pon, ... , niedz).
Numer = Integer
Jaczk = erray [1....10] of real
Deklaracja zmiennych (VAR)- wszystki nazwy zmiennych muszą być wnikalne i zdeklarowane . VAR: Wynik: byte
I=Integer