6201


Prof.nadzw.dr hab.inż. Władysław Brzozowski Cz*stochowa-Gliwice, 15.02.1999 r.

Politechnika Częstochowska

Instytut Elektroenergetyki

Wykłady z przedmiotu:

TECHNIKA PROGRAMOWANIA

studia magisterskie, kierunek Elektrotechnika,

specjalno** Informatyka w Elektroenergetyce, sem.VI

Wyk*ad 1. Literatura przedmiotu. Zakres wyk*ad*w. Klasyfikacja komputer*w. Superkomputery. Mikrokomputery.

1.1. Literatura do wyk*ad*w

[1] Loshin D.: Superkomputery bez tajemnic. MIKOM, Warszawa 1977.

[2] Comte D., Syre J-C.: Les supercalculateurs. La Recherche, 147/1983.

[3] Rydzewski A., Sacha K.: Mikrokomputer - elementy, budowa, dzia*a- nie. NOT-Sigma, Warszawa 1986.

[4] Marciniak A.: Borland Pascal 7.0. Cz*** I. Pozna* 1994.

[5] Osier D., Grobman S., Batson S.: Delphi 3. Helion, Gliwice 1997.

poza tym r**ne aktualne pozycje z zakresu: DOS, Windows, Internet, bazy danych: Dbase, Clipper, Oracle itp.

1.2. Cel i zakres wyk*ad*w

Wyk*ady po*wi*cone s* technice programowania. Celem wyk*ad*w jest przedstawienie og*lnych zasad programowania, jak r*wnie* opanowanie jednego wybranego j*zyka programowania w stopniu profesjonalnym.

Zakres wyk*ad*w obejmowa* b*dzie:

Kr*tkie wprowadzenie do komputer*w. Klasyfikacja komputer*w.

Historia i generacje oraz przysz*o** komputer*w. Superkomputery.

Zastosowania mikrokomputer*w. Podstawy logiki i architektury mikrokomputer*w.

Klasyfikacja software'u.

Zasady programowania.

J*zyk Borland Pascal 7.0 w zakresie trudniejszych element*w: struktura program*w, typy zmiennych, pliki dyskowe, zmienne dynamiczne i ich struktury, grafika.

J*zyk Borland Pascal 7.0 w zakresie programowania obiektowego. Polimorfizm.

J*zyk Borland Delphi 3.0.

Nale*y podkre*li*, *e w toku wyk*ad*w mo*liwe jest poruszenie jedynie wybranych trudniejszych zagadnie*.

Zasad* przyj*t* przez wszystkie uczelnie na *wiecie jest, *e studenci opanowuj* j*zyki programowania samodzielnie w ramach pracy domowej, korzystaj*c ze szczeg**owych instrukcji j*zyka w postaci ksi**kowej.

1.3. Wprowadzenie do komputer*w

Komputer jest maszyn* matematyczn* cyfrow*. Ponadto znamy maszyny matematyczne analogowe i hybrydowe.

Pierwszy komputer, mechaniczny, zosta* skonstruowany przez Charles'a Babbage'a (1792-1871). Po II wojnie *wiatowej skonstruowano pierwszy komputer elektroniczny (ENIAC, 1946 r.). Od tego czasu nast*puje rozw*j komputer*w w kolejnych generacjach:

1.4. Klasyfikacja wsp**czesnych komputer*w

Drzewo typ*w komputer*w przedstawia si* nast*puj*co:

komputery

| - superkomputery

| | - superkomputery

| | - minisuperkomputery

| | - komputery typu mainframe

| - minikomputery

| - mikrokomputery

| | - komputery typu workstation

| | - mikrokomputery (stacjonarne)

| | - mikrokomputery przeno*ne (lap top)

| - kalkulatory

| - notatniki elektroniczne

| - kalkulatory

| - konsole do gier

1.5. Superkomputery. Nowe architektury komputerowe

Superkomputerem nazywamy komputer wieloprocesorowy, o z*o*onej nietradycyjnej architekturze oraz o nietradycyjnej zasadzie dzia*ania. Tradycyjna zasada dzia*ania zwana zasad* sekwencyjn* von Neumanna polega na realizacji przez pojedynczy procesor poszczeg*lnych operacji jeden za drugim, przy czym s* to operacje r**nego typu: zar*wno o charakterze sterowania jak i operacji matematyczno-logicznych. W efekcie tradycyjn* architektur* komputera jest architektura sisd - single instruction stream single data stream.

Drzewo architektur superkomputer*w przedstawia si* tak jak w ramce poni*ej. Symbole w ramce oznaczaj*:

pipeline (pipe) - potokowe;

multipipe - wielopotokowe

simd - single instruction stream multiple data stream;

mimd - multiple instruction stream multiple data stream.

architektura superkomputer*w

| - sterowanie sekwencyjne

| | - sekwencyjna realizacja oblicze*

| | | - architektura potokowa - pipeline (CDC 1960 r.)

| | - r*wnoleg*a realizacja oblicze*

| | | - architektura wielopotokowa - multipipe (CRAY 1)

| | | - architektura macierzowa - simd (PHOENIX)

| | | - architektura macierzowo-potokowa - simd/pipe | | | (CYBER 205)

| - sterowanie r*wnoleg*e

| | - r*wnoleg*a realizacja oblicze*

| | | - architektura ga**zi r*wnoleg*ych - mimd (DATA- | | | -FLOW)

| | | - architektura ga**ziowo-potokowa - mimd/pipe (SPRINT)

Architektura potokowa polega na zastosowaniu wielu specjalizowanych procesor*w, z kt*rych ka*dy wykonuje tylko jeden typ operacji: sterowania lub oblicze* (poodobnie jak na ta*mie monta*owej w fabryce samochod*w).

Architektura macierzowa polega na zastosowanie macierzy procesor*w (processor array). Obliczenia macierzowe s* w komputerze o takiej architekturze wykonywane w jednym kroku obliczeniowym, co znakomicie przyspiesza obliczenia.

Jako** komputer*w przyj*to analizowa* z pomoc* wska*nik*w szybko*ci dzia*ania:

FLOPS - liczba dzia*a* zmiennoprzecinkowych na sekund*;

MIPS - liczba milion*w instrukcji na sekund* (jako odniesienie przyjmuje si* instrukcj* mikrokodu - j*zyka wewn*trznego maszyny, tj. pojedynczej operacji obliczeniowej na zbiorze argument*w).

Aktualnie superkomputery maj* moc obliczeniow* rz*du 300 MFlops, a docelowo jest mo*liwo** uzyskania do 1000 MFlops (z inna technologi* urz*dze* prze**czaj*cych - opart* o z**cza Josephsona; komputery optyczne jeszcze wi*cej). Dla por*wnania aktualne mikrokomputery osi*gaj* moc rz*du 10 MFlops.

Szybko** dzia*ania komputera zale*y g**wnie od cz*sto*ci zegara taktuj*cego, ale r*wnie* od technologii wykonania procesora. Tak* nowoczesn* technologi* stosunkowo niedawno wprowadzon* jest technologia RISC - Reduced Instruction Set Computer (komputer o ograniczonym zbiorze instrukcji).

Rozw*j superkomputer*w warunkowany jest technologi* urz*dze* prze**czaj*cych. Najwi*ksze nadzieje wi*zane s* aktualnie z komputerami optycznymi. Mo*liwo** zastosowania takich komputer*w wi**e si* ze zjawiskiem bistabilno*ci optycznej. Dla pewnych materia**w wsp**czynnik za*amania *wiat*a jest funkcj* nat**enia sygna*u *wietlnego. Z materia*u takiego mo*na wykona* tranzystor fotoniczny o 2 stanach stabilnych, dzia*aj*cy 1000 razy szybciej ni* tranzystor elektroniczny.

Trzeba jednak te* wspomnie* o zupe*nie nowatorskich rozwi*zaniach jakimi s* np. komputery biologiczne oparte o DNA, lub komputery oparte o poj*cie chaosu.

Superkomputery znalaz*y ju* szerokie pole zastosowa*, m.in.:

- w fizyce wielkich energii do modelowania cz*stek elementarnych;

- w produkcji uk*ad*w scalonych o wielkiej skali integracji;

- w modelowaniu pogody i pr*d*w oceanicznych (metod* element*w sko*czonych);

- w grafice i rzeczywisto*ci wirtualnej;

- w konstruowaniu z*o*onych maszyn i urz*dze* (wsp**czesne samoloty, samochody itp.).

1.6. Mikrokomputery

1.6.1. Definicja mikrokomputera

Mikrokomputerem nazywamy komputer z jednym procesorem g**wnym, w formie pojedynczego uk*adu scalonego zrealizowanego w technologii CMOS-LSI, kt*ry nazywamy mikroprocesorem.

1.6.2. Drzewo zastosowa* mikrokomputer*w

| - zastosowania osobiste i domowe

| - zastosowania profesjonalne

| - muzyka, grafika, historia, medycyna, poligrafia

| - obliczenia in*ynierskie

| | - projektowanie CAD/CAM, optymalizacja konstrukcji

| | - dob*r materia**w

| | - doradztwo techniczne, systemy eksperckie

| | - statystyka techniczna, techniczne bazy danych

| | - szkolenie, edukacja techniczna CAE

| - zarz*dzanie

| - systemy sterowania

| | - regulacja, automatyka

| | - sterowanie, robotyka

| | - pomiary i zabezpieczenia

| - systemy kierowania

| | - akwizycja danych

| | - kontrola proces*w

| | - optymalizacja kr*tkoterminowa

| | - doradztwo operatorskie

| - systemy zarz*dzania

| - akwizycja i ewidencja danych

| - analiza

| - planowanie i optymalizacja *rednio- i d*ugotermin.

| - sprawozdawczo**

1.6.3. Podstawy logiki i arytmetyki mikrokomputer*w

Aby komputer mog* liczy*, tzn. rozwi*za* jaki* problem matematyczny, problem ten musi zosta* sprowadzony do ci*gu elementarnych operacji arytmetycznych: dodawanie, odejmowanie, mno*enie, dzielenie oraz do elementarnych operacji logicznych. Operacje realizowane przez mikroprocesor sa jeszcze bardziej ograniczone; mno*enie i dzielenie zast*puje si* ci*giem operacji dodawania i odejmowania. W technice komputerowej stosuje si* liczbowy system binarny, tj. wykorzystuj*cy tylko cyfry 0 i 1. Wiemy, *e cz*owiek stosuje system dziesi*tny, co wynika z anatomii (10 palc*w u r*k). Zastosowanie systemu binarnego wynika st*d, *e trudno jest skonstruowac prosty element elektroniczny 10-stanowy, natomiast *atwo dwustanowy. Jest nim tzw. trigger utworzony z dwu tranzystor*w.

Liczb* w dowolnym systemie liczbowym, og*lnie w S-tym systemie liczbowym przedstawiamy og*lnym wzorem

(1.1)

gdzie: S - stopie* systemu liczbowego; i - wska*nik miejsca cyfry w liczbie; n - liczba miejsc liczby; l - cyfra stoj*ca na i-tym miejscu w liczbie.

Odpowiednio np. liczba dziesi*tna 18 zgodnie z wzorem (1) jest obliczana jako

1 * 101 + 8 * 100 (1.2)

Ta sama liczba w systemie binarnym ma zapis 10010 i jest obliczana jako

1 * 24 + 0 * 23 + 0 * 22 + 1 * 21 + 0 * 20 (1.3)

Po wykonaniu mno*e* przekonywujemy si*, *e jest to ta sama liczba.

W technice mikrokomputerowej operujemy r*wnie* systemem heksadecymalnym, kt*rego podstaw* jest 16 a cyframi: 0, 1, .., 9, A (odp.10), B (odp.11), C (odp.12), D (odp.13), E (odp.14), F (odp.15).

Liczba dziesi*tna 18 w uk*adzie heksadecymalnym ma posta* 12 i jest obliczana jako

1 * 161 + 2 * 160 (1.4)

Logika mikrokomputer*w oparta jest o nast*puj*ce elementarne funkcje logiczne:

f(a,b) = a or b (1.5)

gdzie: a, b - zmienne logiczne tj. takie, kt*re przybieraj* warto** true lub false.

f(a,b) = a and b (1.6)

f(a) = not a (1.7)

Z powy*szych elementarnych funkcji logicznych tworzy si* z*o*one funkcje logiczne: negacj* iloczynu logicznego oraz tzw. logiczn* r**nic* symetryczn*.

Uniwersalna struktura mikrokomputera przedstawia si* jak na poni*szym rysunku 1.1.

Rys.1.1. Struktura mikrokomputera.

Mikroprocesor komunikuje sie z pozosta*ymi dwoma elementami: pami*ci* operacyjn* i z uk*adami wej*cia-wyj*cia za po*rednictwem trzech magistral:

- magistrali adresowej

- magistrali danych

- magistrali steruj*cej,

jak na poni*szym rysunku 1.2.

Rys. 1.2. Magistrale mikrokomputera.

Ka*da magistrala jest to zbi*r r*wnoleg*ych *cie*ek obwodu drukowanego na p*ycie g**wnej, w liczbie odpowiadaj*cej liczbie bit*w s*owa mikrokomputera.

Mikrokomputer dzia*a w takt impuls*w zegarowych. W momencie danego impulsu uk*ad bit*w na magistralach (tj. po prostu obecno** napi*cia na *cie*kach obwod*w drukowanych) powoduje wykonanie elementarnej operacji. Np. aby zapisa* dan* do pami*ci operacyjnej, mikroprocesor musi wyda* j* na szyny magistrali danych, r*wnocze*nie wyda* polecenie zapisu (w postaci okre*lonej kombinacji bit*w) na magistral* steruj*c* oraz wyda* adres pod kt*rym dana ma by* zapisana, na magistral* adresow*. Bity na magistrali adresowej otwieraj* okre*lone bramki logiczne w tzw. SIMM-ach tj. uk*adach scalonych pami*ci i w ten sposob dana jest zapisywana.

 Koniec wyk*adu 1

Plik W1TEPR99.DOC

Edytor WORD 6.0 PL



Wyszukiwarka

Podobne podstrony:
6201
6201
6201
6201
6201
6201

więcej podobnych podstron