Wyklad 1 Pojęcie architektury komputerów, modelu architekturalnego, modelu obliczeniowego, podstawowe modele obliczeniowe systemów komputerowych
|
|
- Amelia Wysocka
- 7 lat temu
- Przeglądów:
Transkrypt
1 Wyklad 1 Pojęcie architektury komputerów, modelu architekturalnego, modelu obliczeniowego, podstawowe modele obliczeniowe systemów komputerowych Części wykładu: 1. Pojęcia postawowe dotyczące środowiska sprzętowego komputera 2. Poziomy abstrakcji opisu urządzeń cyfrowych 3. Pojęcie architektura komputerów 4. Modele architekturalne systemów 5. Modele obliczeniowe
2 Sprzęt komputera Sygnały danych - sygnały reprezentujące dane w trakcie przemieszczania się między składowymi elementami sprzętowymi komputera (ang. data signals). Sygnały sterujące sygnały przesyłane w komputerze w celu wywoływania w nim wykonania operacji niezbędnych dla wykonania programów (ang. control signals). Bramka logiczna - podzespół (urządzenie) komputera realizujący funkcję (operację) logiczną na sygnałach wejściowych; może wypełniać funkcję sterującą - kontroluje (otwiera/zamyka) drogę dla sygnału sterującego lub sygnału danych, albo funkcję przekształcania (przetwarzania) danych - wytwarza nową wartość danej na podstawie danych wejściowych (argumentów operacji, którą realizuje) (ang. logical gate).
3 Przerzutnik - podzespół (urządzenie) komputera, umożliwiające zapamiętanie jednego bitu informacji (ang. flip-flop). Rejestr podzespół (urządzenie) komputera, umożliwiające zapamiętanie ciągu bitów (ang. register). Rejestr stanowi ciąg przerzutników. Rejestr rozkazów komputera rejestr, do którego należy wprowadzić rozkaz komputera, aby został wykonany (ang. instruction register). Rejestr buforowy rejestr pośredniczący na drodze przesyłania informacji w komputerze (ang. buffer register). Rejestr adresowy rejestr, który przechowuje ciąg binarny wykorzystywany jako adres komórki pamięci komputera (ang. address register).
4 Rejestr danych rejestr, który przechowuje ciąg binarny wykorzystywany jako dane dla obliczeń (ang. data register). Licznik - podzespół (urządzenie) komputera, przyjmujący określoną sekwencję stanów pod wpływem impulsów podawanych na jego wejście (ang. counter). Licznik zawiera ciąg przerzutników, których stany w danej chwili określają stan licznika (ang. counter status). Licznik rozkazów specjalny licznik w komputerze, który wyznacza adres następnego rozkazu do wykonania (ang. program counter). Blok funkcjonalny (wykonawczy), układ wykonawczy (funkcjonalny), jednostka wykonawcza (funkcjonalna) fragment sprzętu komputera (podzespół) wypełniający wydzielony zbiór operacji (funkcji) o podobnym charakterze (ang. functional unit). Blok arytmetyczno-logiczny inaczej jednostka arytmetyczno-logiczna blok funkcjonalny wykonujący arytmetyczne i logiczne operacje na danych.
5 Pamięć komputera - podzespół (urządzenie) komputera, umożliwiające przechowywanie informacji (ang. memory, store). Szyna (magistrala) - podzespół (urządzenie) komputera, umożliwiające przysyłanie informacji między różnymi urządzeniami (blokami) komputera (ang. bus). Procesor inaczej centralny procesor, jednostka centralna- główny podzespół komputera, wykonujący instrukcje wewnętrzne komputera (ang. processor, central procesor, central processing unit - CPU). Układ sterowania komputera inaczej układ sterujący podzespół procesora zajmujący się pobieraniem rozkazów i wytwarzaniem sygnałów sterujących pracą elementów składowych komputera (ang. control unit).
6 Poziomy abstrakcji opisu urządzeń cyfrowych Systemy cyfrowe i ich działanie mogą być opisywane na różnych poziomach szczegółowości, które nazywane są poziomami abstrakcji (ang. abstraction levels). Można wyróżnić 6 poziomów abstrakcji opisu systemów cyfrowych. Podane są one w tabeli poniżej. W pierwszej kolumnie podano nazwę poziomu abstrakcji. W drugiej kolumnie podano elementy składowe, które są rozważane przy opisywaniu systemu na danym poziomie abstrakcji. W trzeciej kolumnie określono ogólnie elementy (rodzaj) języka, przy pomocy którego wyrażony jest opis elementów rozważanych na danym poziomie abstrakcji.
7 6 poziomów abstrakcji opisu systemów cyfrowych Poziom abstrakcji Rozważane elementy Opis poprzez Poziom systemu operacyjnego Poziom ogólnego systemu Poziom procesorów Poziom bloków funkcjonalnych Poziom logiczny Poziom elektroniczny Moduły systemu operacyjnego Elementy systemu komputerowego Operacje procesora, pamięci, zespoły rejestrów, itp Bloki arytmetyczne, bloki logiczne, układ sterowania Dyrektywy systemu operacyjnego Instrukcje komputera Podstawowe instrukcje procesora Podstawowe operacje Bramki, przerzutniki Równania logiczne Tranzystory, diody itp Równania napięć, prądów
8 Najwyższym poziomem abstrakcji opisu typowego systemu komputerowego jest poziom systemu operacyjnego. System operacyjny jest spoiwem, który wiąże w systemie komputerowym elementy sprzętowe i programowe systemu z programami użytkowymi. W skrócie, można powiedzieć, że system operacyjny wykonuje szereg funkcji związanych z utrzymywaniem systemu w stanie gotowości do pracy, wykonywaniem programów użytkowych, zabezpieczaniem poprawności działania systemu oraz ochroną programów, danych i urządzeń sprzętowych przed działaniami zagrażającymi ich bezpiecznemu istnieniu w systemie. Spełnianiem tych funkcji zajmują się różne moduły programowe należące do systemu operacyjnego. Można więc spojrzeć na system bardzo makroskopowo, poprzez wypełniane przez niego funkcje i odpowiadające im moduły. Funkcje te i moduły możemy najkrócej opisać poprzez dyrektywy, przy pomocy których te funkcje i moduły są wywoływane.
9 Niższym poziomem abstrakcji jest tzw. poziom ogólnego systemu. Widzimy tam system komputerowy jako aglomerację połączonych ze sobą dużych podzespołów, takich jak procesory, pamięci, urządzenia zewnętrzne i ich urządzenia sterujące, zainstalowane w komputerze. Podane wyżej elementy będą rozważane przy opisie działania systemu. Opis systemu na tym poziomie wyrazimy poprzez opis współdziałania rozważanych elementów systemu. Najprościej będzie to zrobić przez podanie typów i generalnego opisu instrukcji języka wewnętrznego komputera.
10 Kolejny niższy poziom abstrakcji opisu systemu jest nazwany poziomem procesorów. Na tym poziomie system widzimy poprzez własności procesorów, których znajomość jest konieczna dla napisania poprawnych programów użytkowych dla tych procesorów. Najprościej te własności wyrazić poprzez listę instrukcji (rozkazów języka wewnętrznego) tych procesorów realizujących operacje obliczeniowe.
11 Następny niższy poziom abstrakcji nazywamy poziomem bloków funkcjonalnych. Jeżeli chcemy przedstawić funkcjonalność procesorów bardziej szczegółowo, to możemy przejść na niższy poziom abstrakcji i wyróżnić operacje, z których wykonania składa się wykonanie rozkazów procesorów. Z tymi operacjami związane są pewne bloki wykonawcze (inaczej funkcjonalne) we wnętrzu procesora, które te operacje realizują. Na tym poziomie system widzimy jako zbiorowisko połączonych bloków funkcjonalnych. Bloki funkcjonalne najprościej opisać na tym poziomie poprzez opis wykonywanych przez nie operacji.
12 Niższy poziom abstrakcji opisu systemu jest poziomem układów logicznych. Na tym poziomie widzimy logiczne moduły składowe użyte do realizacji operacji bloków funkcjonalnych. Rozważanymi elementami opisu systemu komputerowego są na tym poziomie elementarne układy użyte do budowy bloków funkcjonalnych i dróg przesyłania informacji między tymi blokami, takie jak bramki logiczne, przerzutniki, itp. Te elementarne układy są opisywane za pomocą tzw. równań logicznych, wyrażających zależności między sygnałami logicznymi obecnymi na ich wejściach i wyjściach.
13 Jeżeli, opisując system cyfrowy, chcemy wniknąć w szczegóły budowy fizycznej bramek, przerzutników i innych elementów sprzętowy musimy zejść na poziom elektroniczny opisu systemu. Ten poziom rozważa jak bramki i przerzutniki są zbudowane z podstawowych używanych dzisiaj elementów elektronicznych takich jak tranzystory, diody, oporności, kondensatory itp. Dla opisu działania tych elementów i ich współdziałania użyjemy równań opisujących zależności między napięciami na ich końcówkach, rozpływ prądów, itp.
14 Należy tu powiedzieć, że zwykle, na niższych poziomach abstrakcji opisu systemów cyfrowych, stosujemy hierarchiczną metodę opisu. Polega to na tym, że przechodzimy na poziom niskiej abstrakcji jedynie dla niewielkiej liczby składników opisu widocznych na wyższym poziomie abstrakcji. Ułatwia to odbiór opisów przez osoby lub systemy z nich korzystające.
15 Dla opisu systemu na danym poziomie abstrakcji często stosujemy tzw. schematy blokowe, w których przedstawione są elementy systemu rozważane na danym poziomie abstrakcji oraz ich wzajemne powiązania. Schemat blokowy urządzenia (komputera) (ang. block diagram) jest to rysunek składający się ze zbioru figur geometrycznych z nazwami (prostokątów, kwadratów, kół itp.) połączonych liniami. Figury symbolizują podzespoły urządzenia.
16 Linie łączące przedstawiają możliwe powiązania (współdziałanie) między podzespołami, np. przesyłanie informacji, przesyłanie sygnałów sterujących itp. Dobór podzespołów przedstawionych w schemacie blokowym zależy od poziomu szczegółowości z jaką rozpatrywane jest działanie urządzenia a więc poziomu abstrakcji.
17
18 Pojęcie architektura komputerów Definicję pojęcia architektury podał w 1964 G. Amdahl, projektant słynnej serii komputerów IBM System/360, używanych w latach 60-tych. Architektura komputera (ang. computer architecture) jest to charakterystyka komputera, którą musi znać programista, aby napisać poprawny program w języku wewnętrznym dla tego komputera. Niemal taka sam znajomość cech komputera jest potrzebna dla pisania programów w języku asemblera, definicję te więc można zmodyfikować wprowadzając w języku wewnętrznym lub asemblerze.
19 Zgodnie z definicją Amdahla na architekturę komputera składają się: schemat blokowy komputera, opis rejestrów, struktura i opis pamięci, opis bloków funkcjonalnych opis listy rozkazów opis podstawowych mechanizmów sterujących, takich jak układ przerwań, układy synchronizacji, itp.
20 Architektura komputera wyznacza poziom abstrakcji wiedzy o komputerze potrzebny do napisania programu w języku wewnętrznym komputera lub języku asemblera. Ten poziom abstrakcji wyznacza niezbędną strukturę komputera i odpowiadający jej schemat blokowy. Organizacja logiczna komputera jest to realizacja architektury komputera na poziomie układów logicznych, rejestrów, pamięci i bloków funkcjonalnych. Poziom abstrakcji rozpatrywany w organizacji logicznej komputera jest znacznie niższy niż przy rozpatrywaniu architektury komputera, gdyż uwzględnia układy logiczne, które w architekturze komputera nie są uwzględniane.
21 Możliwe są dwa sposoby rozpatrywania architektury: Exo-architektura (architektura zewnętrzna )- opisywane urządzenie traktuje się całościowo jako blok (element składowy schematu blokowego) i podaje się jego opis funkcjonalny. Endo-architektura (architektura wewnętrzna) - opis urządzenia na poziomie abstrakcji niższym (bardziej szczegółowym) niż poziom exoarchitektury, opisuje się schemat blokowy oraz własności i działanie elementów tego schematu.
22 Bardziej ogólna definicja architektury urządzeń, przeznaczona nie tylko dla rozpatrywania komputerów, została podana w 1981 przez S. Dasguptę: "Architektura jest to opis urządzenia (komputera lub jego elementu) na danym poziomie abstrakcji" albo "definicja sprzęgu (interfejsu) między różnymi poziomami abstrakcji opisu urządzenia (komputera lub jego elementu), potrzebnego do zrozumienia działania urządzenia (komputera, elementu) na tym niższym poziomie".
23 Na rysunku poniżej pokazano kolejne poziomy abstrakcji opisu architektury systemu komputerowego i jego elementów. Najwyższy poziom abstrakcji jest to poziom globalnych własności systemu, na którym podajemy jego exo-architekturę. Zawiera ona cechy systemu istotne z punktu widzenia wykorzystania systemu jako elementu składowego większych struktur np. struktur multi-systemowych. Endo-architektura systemu to jego struktura w rozłożeniu na mniejsze bloki np. procesory, bloki pamięci i elementy łączące oraz ich cechy ogólne wraz z ogólnym sposobem współpracy. Elementy systemu widzianego na tym poziomie możemy opisywać podając ich exo-architekturę, użyteczną dla budowy z nich całego systemu lub tez możemy wejść w ich endo-architekturę czyli ich strukturę i opis funkcjonalny w rozbiciu na mniejsze elementy składowe. Aby zrozumieć działanie systemu na kolejnych, malejących poziomach abstrakcji, musimy, zgodnie ze definicją Dasgupty, znać endo-architekturę systemu odpowiadającą dekompozycji na elementy składowe o zadanym niższym poziomie szczegółowości.
24 Architektura globalna (exo-architektura) systemu komputerowego C Architektura szczegółowa (endo-architektura) systemu komputerowego P 1 P 2 P k Sieć łącząca M 1 M 2 M i Procesory Bloki pamięci
25 Architektura globalna (exo-architektura) procesora P Architektura szczegółowa (endo-architektura) procesora Zespół Rejestrów Układ Sterowania Magistrala systemowa Blok Funkcjonalny 1 Blok Funkcjonalny n
26 Architektura ogólna (exo-architektura) bloku funkcjonalnego Blok Funkcjonalny Architektura szczegółowa (endo-architektura) bloku funkcjonalnego
27 Pojęcie "modelu architekturalnego" komputera Model architekturalny komputera określa w jaki sposób będą wykonywane obliczenia w danym komputerze.
28 Na model architekturalny komputera składa się 5 podstawowych elementów: 1. Podstawowe operacje obliczeniowe czyli podstawowe operacje komputera i typy danych określone przez listę instrukcji wewnętrznych. 2. Definicja przestrzeni adresowych dostępnych dla obliczeń (mechanizm dostępu do danych). 3. Sterowanie operacjami obliczeniowymi ( zasady odwzorowania problemu obliczeniowego na podstawowe operacje obliczeniowe i określania kolejności ich wykonania - mechanizm sterowania w programach). 4. Zasady komunikacji między komputerami pracującymi równolegle. 5. Zasady synchronizacji wymiany informacji.
29 Model architekturalny von Neumana: 1. Procesor wykonuje obliczenia zgodnie z programem, składającym się z instrukcji wewnętrznych, zapamiętanych w pamięci operacyjnej. 2. Instrukcje wykonują operacje na danych ulokowanych w pamięci i rejestrach. 3. Pamięć instrukcji wewnętrznych i danych jest wspólna. 4. Procesor ma układ sterowania, który szeregowo pobiera kolejne instrukcje z pamięci i steruje ich wykonaniem w komputerze.
30 Model von Neumana pochodzi z projektu elektronicznej maszyny EDVAC oraz maszyny IAS opublikowanego w 1946 na Uniwersytecie Princeton w USA przez prof. Johna von Neumana. Koncepcje von Neumana okazały się być wcześniej zrealizowane w Iowa State College w USA w 1939 r w maszynie ABC (Atanasov-Berry Computer), a pózniej w maszynie ENIAC na Uniwersytecie Pensylvania, która była pierwszą elektroniczną (lampową) maszyną cyfrową. Pamięć Blok arytmetyczno - logiczny ALU Układy We / Wy Układ sterowania Ogólny schemat blokowy komputera o architekturze von Neumana
31 Harvardzki model architekturalny (ang. Harvard architecture): 1. Procesor wykonuje obliczenia zgodnie z programem, składającym się z instrukcji wewnętrznych, zapamiętanych w pamięci operacyjnej. 2. Instrukcje wykonują operacje na danych ulokowanych w pamięci i rejestrach. 3. Pamięć instrukcji wewnętrznych i danych jest rozdzielna. 4. Układ sterowania pobiera kolejne instrukcje z pamięci równolegle z dostępem do danych dla innych rozkazów.
32 Model pochodzi z maszyny Mark I (przekaźnikowa pamięć danych, pamięć instrukcji na taśmie papierowej), zbudowanej w 1944 na Uniwersytecie Harvard w USA. Pamięć danych Pamięć instrukcji Blok arytmetyczno - logiczny ALU Układ sterowania Układy We / Wy Ogólny schemat blokowy komputera o architekturze harvardzkiej
33 Pojęcie modelu obliczeniowego Model obliczeniowy (ang. computational model) określa w jaki sposób będą programowane i wykonywane obliczenia w programie. Na model obliczeniowy składa się: model architekturalny systemu język programowania.
34 Podstawowe modele obliczeniowe wykorzystywane w informatyce. Model obliczeniowy Model architekturalny Język programowania Model von Neumana (sterowany przepływem sterowania w programie) Model sterowany przepływem danych w programie (ang. data flow driven) Model sterowany żądaniami obliczeń (aplikacyjny, redukcyjny) Model programowania obiektowego Model programowania logicznego Maszyna von Neumana Komputer sterowany przepływem danych (ang. data flow computer) Komputer redukujący zapisy instrukcji do danych Komputer zorientowany obiektowo Komputer zorientowany na programowanie logiczne Imperatywny Graf przepływu danych w programie lub język pojedyńczych przypisań Funkcjonalny czyli aplikacyjny Obiektowy lub zorientowany obiektowo Logiczny Model Turinga Maszyna Turinga Dane na taśmie wraz z tablicą przejść stanów
35 Model obliczeniowy von Neumana (klasyczny) Instrukcje obliczeniowe wykonują operacje na danych zapisanych w pamięci i rejestrach komputera. Kolejność wykonywania instrukcji w programie jest ustalona przez programistę poprzez kolejność ich zapisu w programie oraz instrukcje zmiany sterowania: skok, wywołanie podprogramu, powrót z podprogramu, itp. W modelu architekturalnym von Neumana kolejność wykonywania instrukcji zapisanych w pamięci wyznacza licznik rozkazów (ang. program counter), który zawiera zawsze adres następnej instrukcji w pamięci. O ile aktualny rozkaz nie jest rozkazem zmiany sterowania, to jako następny wykonany jest rozkaz o adresie wziętym z licznika rozkazów komputera. O ile aktualnym rozkazem jest rozkaz zmiany sterowania w programie, to ustawia on nową zawartość licznika rozkazów tj. nowy adres następnej instrukcji do wykonania.
36 Język programowania stanowi w tym modelu język w jakim zapisano program przed wykonaniem a więc język maszynowy. W języku maszynowym programista lub kompilator określa bezpośrednio (explicite) i dokładnie jakie instrukcje (obliczenia) maja się wykonać i dokładnie w jakiej kolejności. Takie języki programowania nazywane są językami imperatywnymi.
37 Przykład Obliczenie: y = (a+c)*(b+5)+a*c) drukuj y dla a=1, b=2, c=3. Budowa instrukcji komputera użytych poniżej w programie realizującym obliczenie y.: operacja adres/wartość argumentu 1 adres/wartość argumentu 2 adres wyniku
38 Program jest zapisany w pamięci komputera w komórkach odpowiadających kolejnym adresom począwszy od a 1. Wykonanie programu rozpoczyna się od instrukcji zapisanej pod adresem a 1. Po wykonaniu każdej instrukcji, komputer wykonuje instrukcję zapisaną pod następnym adresem pamięci. Steruje tym zwiększająca się o jeden zawartość licznika rozkazów.
39 Ilustracja modelu obliczeniowego von Neumana Licznik rozkazów Instrukcje programu Dane/wyniki 1 :a 2 :b a 1 3 :c a : 1 a +1 : 1 a +2 : 1 a +3 : 1 a +4 : 1 a +5 : 1 + a c k1 + b 5 k2 * a c k3 * k1 k2 k4 + k3 k4 k5 drukuj k5 - - :k1 :k2 :k3 :k4 :k5
40 Model obliczeniowy sterowany przepływem danych W modelu obliczeniowym sterowanym przepływem danych kolejność wykonania instrukcji programu nie jest wyznaczana przez programistę, lecz przez gotowość wszystkich danych wejściowych instrukcji. Wszystkie instrukcje gotowe do wykonania, w sensie dostępności ich danych wejściowych, powinny wykonać się równolegle. Po wykonaniu tych instrukcji, wytworzone przez nich wyniki częściowe są rozprowadzane do wszystkich instrukcji programu, które z nich korzystają. W ten sposób przepływ obliczonych wyników (danych dla innych instrukcji) zapewnia gotowość instrukcji i wyznacza kolejność ich wykonania w programie.
41 Model architekturalny komputera sterowanego przepływem danych zakłada, że dla każdej instrukcji gotowej do wykonania będzie dostępny odrębny procesor. Model ten zapewnia równoległy przepływ danych między tymi procesorami. W praktyce takie założenia mogą być spełnione tylko dla ograniczonej liczby instrukcji w programie. W związku z tym, w praktyce, model architekturalny sterowany przepływem danych jest realizowany w oparciu o ograniczoną liczbę procesorów typu von Neumana. W systemie takim istnieje blok przeglądania instrukcji programu pod względem ich gotowości do wykonania. Spośród instrukcji gotowych, kieruje się do równoległego wykonania tylko liczbę odpowiadającą faktycznej liczbie dostępnych procesorów. Po ich wykonaniu, rozsyła się wyniki między instrukcjami. Następnie, wyznacza się instrukcje gotowe do wykonania i znów kieruje się do wykonania ich liczbę ograniczoną faktyczną dostępnością procesorów wykonawczych.
42 Językiem programowania w modelu obliczeniowym sterowanym przepływem danych jest graf instrukcji programu połączonych krawędziami, które są określone przez wskaźniki rozpływu wyników obliczeń między instrukcjami. Inną formą języka programowania w tym modelu są tzw. języki pojedyńczych przypisań (ang. single assignment languages), gdzie wykorzystuje się zmienne, reprezentujące dane i wyniki obliczeń, którym nadaje się wartości tylko raz w trakcie wykonywania programu. Obydwie formy języka programowania określają jakie obliczenia mają być wykonane, nie określając dokładnie ich kolejności. Takie języki programowania nazywamy językami deklaratywnymi.
43 Przykład Obliczenie: y := (a+c)*(b+5)+a*c drukuj y dla a=1, b=2, c=3. Budowa instrukcji komputera: operacja pole argumentu 1 pole argumentu 2 adres przesłania wyniku
44 Ilustracja modelu obliczeniowego sterowanego przepływem danych Dane wejściowe: Instrukcje: a: 1 b: 2 c: 3 i : + P P i (1) 1 4 i : + P 5 i (2) 2 4 i : * P P i (2) 3 5 i 4 : * P P i 5 (1) i 5 : * P P i 6 (1) i 6 : drukuj P - -
45 W powyższym przykładzie, a, b, c, symbolizują adresy komórek pamięci komputera, w których przechowuje się wartości danych wejściowych dla zmiennych a, b, c, użytych w formule obliczania wartości y. i 1,...,i 6 są to adresy pod którymi zapisano w pamięci komputera instrukcje programu. Wewnątrz instrukcji znajdują się pola do wpisania danych początkowych dla programu lub wyników wykonania innych instrukcji. Są one oznaczone literą P. Polom tym są przypisane identyfikatory1 i 2. Na początku następuje wpisanie danych wejściowych do wszystkich instrukcji, które z nich korzystają. Wykonują się równolegle wszystkie instrukcje, które mają gotowe (wpisane) wszystkie dane wejściowe. Po wykonaniu każdej instrukcji, jej wynik jest rozsyłany do wszystkich instrukcji wskazanych w prawym skrajnym polu instrukcji podany jest adres instrukcji w pamięci oraz numer pola (w nawiasie). Obliczenie zostaje zakończone po wykonaniu instrukcji spod adresu i 6.
46 Model obliczeniowy sterowany żądaniami obliczeń Jest to model obliczeniowy, w którym kolejność wykonywania obliczeń w programie nie jest określona przez programistę i nie zależy od ich porządku w programie. W modelu tym instrukcja (pakiet obliczeniowy) jest aktywowana do wykonania, o ile jej wyniki są potrzebne dla wykonania innej instrukcji. Instrukcja zostaje wykonana o ile ma dostarczone wszystkie potrzebne argumenty w postaci liczbowej. Wykonanie instrukcji zamienia ją na wartość wytworzonego przez nią wyniku (redukuje do wyniku), który staje się wtedy dostępny dla innych instrukcji. Stąd taki model obliczeniowy nazywamy również modelem redukcyjnym (ang. graph reduction model).
47 Inna odmiana modelu sterowanego żądaniami obliczeń, powoduje przepisywanie potrzebnych formuł obliczeniowych z aktywowanych pakietów instrukcji do pakietów instrukcji aktywujących, dotąd aż w rozszerzonym aktywującym pakiecie zawarte będą wszystkie niezbędne formuły do obliczenia żądanej wartości. Przepisywanie formuł jest równoważne przykładaniu (ang. application) formuł (funkcji) z pakietów aktywujących do formuł (funkcji) z pakietów aktywowanych. Dlatego taki model obliczeniowy nazywamy również modelem aplikacyjnym (ang. applicative model) lub modelem funkcyjnym (ang. functional model). Do zapisu programu używamy w tym przypadku deklaratywnych języków programowania nazywanych językami funkcyjnymi (ang. functional languages).
48 Przykład Obliczenie: y := (a+c)*(b+5)+a*c drukuj y dla a=1, b=2, c=3. Budowa pakietu instrukcji komputera: operacja adres pakietu dostarczającego argument 1 adres pakietu dostarczającego argument 2 pole wyniku
49 Ilustracja modelu obliczeniowego sterowanego przepływem żądań obliczeń Dane wejściowe: a: 1 b: 2 c: 3 Instrukcje: i 1 : + P i 2 : + 5 P i 3 : * P i 4 : * P i 5 : * P i 6 : drukuj - P
50 W powyższym przykładzie, a, b, c, symbolizują adresy komórek pamięci komputera, w których przechowuje się wartości danych wejściowych dla zmiennych a, b, c, użytych w formule obliczania wartości y. i 1,...,i 6 są to adresy pod którymi zapisano w pamięci komputera pakiety instrukcji programu. Wewnątrz każdej instrukcji znajdują się pola wskazujące instrukcje, które mają wytworzyć argumenty dla tej instrukcji. Istnieje też pole do wpisania wyniku wykonania tej instrukcji, oznaczone literą P. Na początku następuje próba wykonania aktywacja instrukcji spod adresu i 6. Instrukcja, która jest aktywowana może się wykonać, jeśli są gotowe wszystkie potrzebne jej dane wejściowe. O ile dane te nie są gotowe, następuje aktywacja wyliczających je instrukcji. Instrukcja spod adresu i 6 aktywuje instrukcję spod i 5. Ta z kolei aktywuje instrukcje spod i 3, i 4., itd. Instrukcje spod i 1, i 2, i 3 pobierają dane wejściowe i wykonują się jako pierwsze, zapełniając swoje pola P. Ich wyniki w polach P są dostarczone do instrukcji, które ich potrzebują. Obliczenie zostaje zakończone po wykonaniu instrukcji spod adresu i 6.
51 Model obliczeniowy Turinga. Ten model obliczeniowy został zaproponowany w 1937 r przez A. Turinga z Uniwersytetu Cambridge w Anglii jako pierwszy uniwersalny model obliczeniowy. Służył dla porównywania własności różnych algorytmów i programów pochodzących z różnych komputerów, metodą przedstawienia ich w tym modelu obliczeniowym. Jest używany do dzisiaj w tym celu przez teoretyków informatyki. Model Turinga obejmuje model architekturalny maszynę Turinga oraz odpowiedni dla tego modelu specjalny język programowania.
52 Następujące elementy składają się na model architekturalny Turinga: 1. Skończony alfabet symboli: a, b, c,, m. 2. Skończony zbiór stanów: stan początkowy S0, stan S1, stan S2,, stan końcowy Sk. 3. Nieskończona taśma z polami na zapis symboli z alfabetu. 4. Głowica czytająco/pisząca na taśmie, która może przesuwać się o jedno pole w zadanym kierunku, 5. Diagram przejść między stanami tablica przejść, określająca następny stan, zapis symbolu pod głowicą i kierunek następnego ruchu.
53 6. Działanie mechanizmu sterowania maszyna w stanie i czyta znak z pod głowicą, dla stanu i oraz znaku z maszyna określa z tabeli przejść: stan, do którego ma przejść, znak, który ma być wpisany w polu pod głowicą, kierunek ruchu głowicy o 1 miejsce, głowica wpisuje nowy znak i przesuwa się w zadanym kierunku. 7. Instrukcje to znak, stan, kierunek. Język programowania w tym modelu obliczeniowym stanowi alfabet symboli i tablica przejść stanów maszyny.
54 Schemat maszyny Turinga
55 Przykład Dodawanie liczb całkowitych (model obliczeniowy takiego dodawania) w maszynie Turinga: Notacja zapisu składników i wyniku: jednorodne ciągi znaków 1 w liczbie równej wartości składnika lub wyniku, zapisane w polach odseparowanych znakami X. Na taśmie zapisane są dane sześcio-pozycyjne: 4 oraz 5 XX001111X111110XX Program startuje z lewego X przesuwa głowicę w prawo aż do pierwszego X po ciągu zer i jedynek, zastępuje to X przez 1, następnie przesuwa się w prawo do ostatniej jedynki, zastępuje tę jedynkę przez O. Taśma po wykonaniu operacji zawiera kod liczby 9: XX XX.
56
Sprzęt komputera - zespół układów wykonujących programy wprowadzone do pamięci komputera (ang. hardware) Oprogramowanie komputera - zespół programów
Sprzęt komputera - zespół układów wykonujących programy wprowadzone do pamięci komputera (ang. hardware) Oprogramowanie komputera - zespół programów przeznaczonych do wykonania w komputerze (ang. software).
Bardziej szczegółowoPodstawy Informatyki Systemy sterowane przepływem argumentów
Podstawy Informatyki alina.momot@polsl.pl http://zti.polsl.pl/amomot/pi Plan wykładu 1 Komputer i jego architektura Taksonomia Flynna 2 Komputer i jego architektura Taksonomia Flynna Komputer Komputer
Bardziej szczegółowoLEKCJA TEMAT: Zasada działania komputera.
LEKCJA TEMAT: Zasada działania komputera. 1. Ogólna budowa komputera Rys. Ogólna budowa komputera. 2. Komputer składa się z czterech głównych składników: procesor (jednostka centralna, CPU) steruje działaniem
Bardziej szczegółowoWykład I. Podstawowe pojęcia. Studia Podyplomowe INFORMATYKA Architektura komputerów
Studia Podyplomowe INFORMATYKA Architektura komputerów Wykład I Podstawowe pojęcia 1, Cyfrowe dane 2 Wewnątrz komputera informacja ma postać fizycznych sygnałów dwuwartościowych (np. dwa poziomy napięcia,
Bardziej szczegółowoLogiczny model komputera i działanie procesora. Część 1.
Logiczny model komputera i działanie procesora. Część 1. Klasyczny komputer o architekturze podanej przez von Neumana składa się z trzech podstawowych bloków: procesora pamięci operacyjnej urządzeń wejścia/wyjścia.
Bardziej szczegółowoAlgorytm. Krótka historia algorytmów
Algorytm znaczenie cybernetyczne Jest to dokładny przepis wykonania w określonym porządku skończonej liczby operacji, pozwalający na rozwiązanie zbliżonych do siebie klas problemów. znaczenie matematyczne
Bardziej szczegółowoOrganizacja typowego mikroprocesora
Organizacja typowego mikroprocesora 1 Architektura procesora 8086 2 Architektura współczesnego procesora 3 Schemat blokowy procesora AVR Mega o architekturze harwardzkiej Wszystkie mikroprocesory zawierają
Bardziej szczegółowoBudowa komputera Komputer computer computare
11. Budowa komputera Komputer (z ang. computer od łac. computare obliczać) urządzenie elektroniczne służące do przetwarzania wszelkich informacji, które da się zapisać w formie ciągu cyfr albo sygnału
Bardziej szczegółowoPrzykładowe pytania DSP 1
Przykładowe pytania SP Przykładowe pytania Systemy liczbowe. Przedstawić liczby; -, - w kodzie binarnym i hexadecymalnym uzupełnionym do dwóch (liczba 6 bitowa).. odać dwie liczby binarne w kodzie U +..
Bardziej szczegółowoTechnologie informacyjne - wykład 12 -
Zakład Fizyki Budowli i Komputerowych Metod Projektowania Instytut Budownictwa Wydział Budownictwa Lądowego i Wodnego Politechnika Wrocławska Technologie informacyjne - wykład 12 - Prowadzący: Dmochowski
Bardziej szczegółowoPROGRAMOWALNE STEROWNIKI LOGICZNE
PROGRAMOWALNE STEROWNIKI LOGICZNE I. Wprowadzenie Klasyczna synteza kombinacyjnych i sekwencyjnych układów sterowania stosowana do automatyzacji dyskretnych procesów produkcyjnych polega na zaprojektowaniu
Bardziej szczegółowoBudowa i zasada działania komputera. dr Artur Bartoszewski
Budowa i zasada działania komputera 1 dr Artur Bartoszewski Jednostka arytmetyczno-logiczna 2 Pojęcie systemu mikroprocesorowego Układ cyfrowy: Układy cyfrowe służą do przetwarzania informacji. Do układu
Bardziej szczegółowoProjektowanie. Projektowanie mikroprocesorów
WYKŁAD Projektowanie mikroprocesorów Projektowanie układ adów w cyfrowych - podsumowanie Algebra Boole a Bramki logiczne i przerzutniki Automat skończony System binarny i reprezentacja danych Synteza logiczna
Bardziej szczegółowoAlgorytm. Krótka historia algorytmów
Algorytm znaczenie cybernetyczne Jest to dokładny przepis wykonania w określonym porządku skończonej liczby operacji, pozwalający na rozwiązanie zbliżonych do siebie klas problemów. znaczenie matematyczne
Bardziej szczegółowoWstęp do informatyki. Architektura co to jest? Architektura Model komputera. Od układów logicznych do CPU. Automat skończony. Maszyny Turinga (1936)
Wstęp doinformatyki Architektura co to jest? Architektura Model komputera Dr inż Ignacy Pardyka Slajd 1 Slajd 2 Od układów logicznych do CPU Automat skończony Slajd 3 Slajd 4 Ile jest automatów skończonych?
Bardziej szczegółowoAlgorytm. Słowo algorytm pochodzi od perskiego matematyka Mohammed ibn Musa al-kowarizimi (Algorismus - łacina) z IX w. ne.
Algorytm znaczenie cybernetyczne Jest to dokładny przepis wykonania w określonym porządku skończonej liczby operacji, pozwalający na rozwiązanie zbliżonych do siebie klas problemów. znaczenie matematyczne
Bardziej szczegółowoMikroprocesor Operacje wejścia / wyjścia
Definicja Mikroprocesor Operacje wejścia / wyjścia Opracował: Andrzej Nowak Bibliografia: Urządzenia techniki komputerowej, K. Wojtuszkiewicz Operacjami wejścia/wyjścia nazywamy całokształt działań potrzebnych
Bardziej szczegółowoWprowadzenie do informatyki i użytkowania komputerów. Kodowanie informacji System komputerowy
1 Wprowadzenie do informatyki i użytkowania komputerów Kodowanie informacji System komputerowy Kodowanie informacji 2 Co to jest? bit, bajt, kod ASCII. Jak działa system komputerowy? Co to jest? pamięć
Bardziej szczegółowoArchitektura systemów komputerowych
Studia stacjonarne inżynierskie, kierunek INFORMATYKA Architektura systemów komputerowych Architektura systemów komputerowych dr Artur Bartoszewski Procesor część I 1. ALU 2. Cykl rozkazowy 3. Schemat
Bardziej szczegółowoALGORYTMY. 1. Podstawowe definicje Schemat blokowy
ALGORYTMY 1. Podstawowe definicje Algorytm (definicja nieformalna) to sposób postępowania (przepis) umożliwiający rozwiązanie określonego zadania (klasy zadań), podany w postaci skończonego zestawu czynności
Bardziej szczegółowoWprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera
Dariusz Wawrzyniak Plan wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działania systemu operacyjnego (2) Definicja systemu operacyjnego (1) Miejsce,
Bardziej szczegółowoWykład z Technologii Informacyjnych. Piotr Mika
Wykład z Technologii Informacyjnych Piotr Mika Uniwersalna forma graficznego zapisu algorytmów Schemat blokowy zbiór bloków, powiązanych ze sobą liniami zorientowanymi. Jest to rodzaj grafu, którego węzły
Bardziej szczegółowoBudowa komputera. Magistrala. Procesor Pamięć Układy I/O
Budowa komputera Magistrala Procesor Pamięć Układy I/O 1 Procesor to CPU (Central Processing Unit) centralny układ elektroniczny realizujący przetwarzanie informacji Zmiana stanu tranzystorów wewnątrz
Bardziej szczegółowoWprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera
Dariusz Wawrzyniak Plan wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działania systemu operacyjnego (2) Miejsce, rola i zadania systemu operacyjnego
Bardziej szczegółowoSystemy operacyjne i sieci komputerowe Szymon Wilk Superkomputery 1
i sieci komputerowe Szymon Wilk Superkomputery 1 1. Superkomputery to komputery o bardzo dużej mocy obliczeniowej. Przeznaczone są do symulacji zjawisk fizycznych prowadzonych głównie w instytucjach badawczych:
Bardziej szczegółowoSterowniki Programowalne (SP)
Sterowniki Programowalne (SP) Wybrane aspekty procesu tworzenia oprogramowania dla sterownika PLC Podstawy języka funkcjonalnych schematów blokowych (FBD) Politechnika Gdańska Wydział Elektrotechniki i
Bardziej szczegółowoSystemy operacyjne. Wprowadzenie. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak
Wprowadzenie Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Plan wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działania systemu operacyjnego
Bardziej szczegółowoPodstawy Projektowania Przyrządów Wirtualnych. Wykład 9. Wprowadzenie do standardu magistrali VMEbus. mgr inż. Paweł Kogut
Podstawy Projektowania Przyrządów Wirtualnych Wykład 9 Wprowadzenie do standardu magistrali VMEbus mgr inż. Paweł Kogut VMEbus VMEbus (Versa Module Eurocard bus) jest to standard magistrali komputerowej
Bardziej szczegółowoBudowa Mikrokomputera
Budowa Mikrokomputera Wykład z Podstaw Informatyki dla I roku BO Piotr Mika Podstawowe elementy komputera Procesor Pamięć Magistrala (2/16) Płyta główna (ang. mainboard, motherboard) płyta drukowana komputera,
Bardziej szczegółowoArchitektura komputerów Wykład 2
Architektura komputerów Wykład 2 Jan Kazimirski 1 Elementy techniki cyfrowej 2 Plan wykładu Algebra Boole'a Podstawowe układy cyfrowe bramki Układy kombinacyjne Układy sekwencyjne 3 Algebra Boole'a Stosowana
Bardziej szczegółowoPAMIĘĆ RAM. Rysunek 1. Blokowy schemat pamięci
PAMIĘĆ RAM Pamięć służy do przechowania bitów. Do pamięci musi istnieć możliwość wpisania i odczytania danych. Bity, które są przechowywane pamięci pogrupowane są na komórki, z których każda przechowuje
Bardziej szczegółowoDefinicje. Algorytm to:
Algorytmy Definicje Algorytm to: skończony ciąg operacji na obiektach, ze ściśle ustalonym porządkiem wykonania, dający możliwość realizacji zadania określonej klasy pewien ciąg czynności, który prowadzi
Bardziej szczegółowoProgramowanie sterowników PLC wprowadzenie
Programowanie sterowników PLC wprowadzenie Zakład Teorii Maszyn i Automatyki Katedra Podstaw Techniki Felin p.110 http://ztmia.ar.lublin.pl/sips waldemar.samociuk@up.lublin,pl Sterowniki programowalne
Bardziej szczegółowoALGORYTMY. 1. Podstawowe definicje Schemat blokowy
ALGORYTMY 1. Podstawowe definicje Algorytm (definicja nieformalna) to sposób postępowania (przepis) umożliwiający rozwiązanie określonego zadania (klasy zadań), podany w postaci skończonego zestawu czynności
Bardziej szczegółowoTechnika mikroprocesorowa
Technika mikroprocesorowa zajmuje się przetwarzaniem danych w oparciu o cyfrowe programowalne układy scalone. Systemy przetwarzające dane w oparciu o takie układy nazywane są systemami mikroprocesorowymi
Bardziej szczegółowoAlgorytmy i schematy blokowe
Algorytmy i schematy blokowe Algorytm dokładny przepis podający sposób rozwiązania określonego zadania w skończonej liczbie kroków; zbiór poleceń odnoszących się do pewnych obiektów, ze wskazaniem porządku,
Bardziej szczegółowoJĘZYKI PROGRAMOWANIA STEROWNIKÓW
JĘZYKI PROGRAMOWANIA STEROWNIKÓW dr inż. Wiesław Madej Wstęp Języki programowania sterowników 15 h wykład 15 h dwiczenia Konsultacje: - pokój 325A - środa 11 14 - piątek 11-14 Literatura Tadeusz Legierski,
Bardziej szczegółowoArchitektura komputera
Architektura komputera Architektura systemu komputerowego O tym w jaki sposób komputer wykonuje program i uzyskuje dostęp do pamięci i danych, decyduje architektura systemu komputerowego. Określa ona sposób
Bardziej szczegółowoMOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW
MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW Projektowanie urządzeń cyfrowych przy użyciu układów TTL polegało na opracowaniu algorytmu i odpowiednim doborze i zestawieniu układów realizujących różnorodne funkcje
Bardziej szczegółowoSpis treœci. Co to jest mikrokontroler? Kody i liczby stosowane w systemach komputerowych. Podstawowe elementy logiczne
Spis treści 5 Spis treœci Co to jest mikrokontroler? Wprowadzenie... 11 Budowa systemu komputerowego... 12 Wejścia systemu komputerowego... 12 Wyjścia systemu komputerowego... 13 Jednostka centralna (CPU)...
Bardziej szczegółowoLEKCJA TEMAT: Współczesne procesory.
LEKCJA TEMAT: Współczesne procesory. 1. Wymagania dla ucznia: zna pojęcia: procesor, CPU, ALU, potrafi podać typowe rozkazy; potrafi omówić uproszczony i rozszerzony schemat mikroprocesora; potraf omówić
Bardziej szczegółowo4. Procesy pojęcia podstawowe
4. Procesy pojęcia podstawowe 4.1 Czym jest proces? Proces jest czymś innym niż program. Program jest zapisem algorytmu wraz ze strukturami danych na których algorytm ten operuje. Algorytm zapisany bywa
Bardziej szczegółowoWstęp do informatyki. Maszyna RAM. Schemat logiczny komputera. Maszyna RAM. RAM: szczegóły. Realizacja algorytmu przez komputer
Realizacja algorytmu przez komputer Wstęp do informatyki Wykład UniwersytetWrocławski 0 Tydzień temu: opis algorytmu w języku zrozumiałym dla człowieka: schemat blokowy, pseudokod. Dziś: schemat logiczny
Bardziej szczegółowoStruktura i działanie jednostki centralnej
Struktura i działanie jednostki centralnej ALU Jednostka sterująca Rejestry Zadania procesora: Pobieranie rozkazów; Interpretowanie rozkazów; Pobieranie danych Przetwarzanie danych Zapisywanie danych magistrala
Bardziej szczegółowoUKŁADY MIKROPROGRAMOWALNE
UKŁAD MIKROPROGRAMOWALNE Układy sterujące mogą pracować samodzielnie, jednakże w przypadku bardziej złożonych układów (zwanych zespołami funkcjonalnymi) układ sterujący jest tylko jednym z układów drugim
Bardziej szczegółowoUniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2010/2011
SYLLABUS na rok akademicki 010/011 Tryb studiów Studia stacjonarne Kierunek studiów Informatyka Poziom studiów Pierwszego stopnia Rok studiów/ semestr 1(rok)/1(sem) Specjalność Bez specjalności Kod katedry/zakładu
Bardziej szczegółowoArchitektura systemów komputerowych. dr Artur Bartoszewski
Architektura systemów komputerowych 1 dr Artur Bartoszewski Procesor część I 1. ALU 2. Cykl rozkazowy 3. Schemat blokowy CPU 4. Architektura CISC i RISC 2 Jednostka arytmetyczno-logiczna 3 Schemat blokowy
Bardziej szczegółowo16. Taksonomia Flynn'a.
16. Taksonomia Flynn'a. Taksonomia systemów komputerowych według Flynna jest klasyfikacją architektur komputerowych, zaproponowaną w latach sześćdziesiątych XX wieku przez Michaela Flynna, opierająca się
Bardziej szczegółowoProgramowanie sterowników przemysłowych / Jerzy Kasprzyk. wyd. 2 1 dodr. (PWN). Warszawa, Spis treści
Programowanie sterowników przemysłowych / Jerzy Kasprzyk. wyd. 2 1 dodr. (PWN). Warszawa, 2017 Spis treści Przedmowa 11 ROZDZIAŁ 1 Wstęp 13 1.1. Rys historyczny 14 1.2. Norma IEC 61131 19 1.2.1. Cele i
Bardziej szczegółowoAlgorytm. a programowanie -
Algorytm a programowanie - Program komputerowy: Program komputerowy można rozumieć jako: kod źródłowy - program komputerowy zapisany w pewnym języku programowania, zestaw poszczególnych instrukcji, plik
Bardziej szczegółowoPodstawy Informatyki Maszyna Turinga
Podstawy Informatyki alina.momot@polsl.pl http://zti.polsl.pl/amomot/pi Plan wykładu 1 Czym jest Programowanie maszyny Turinga Teza Churcha-Turinga 2 3 4 Czym jest Programowanie maszyny Turinga Teza Churcha-Turinga,
Bardziej szczegółowoDodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych
Dodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych B.1. Dostęp do urządzeń komunikacyjnych Sterowniki urządzeń zewnętrznych widziane są przez procesor jako zestawy rejestrów
Bardziej szczegółowoUTK Można stwierdzić, że wszystkie działania i operacje zachodzące w systemie są sterowane bądź inicjowane przez mikroprocesor.
Zadaniem centralnej jednostki przetwarzającej CPU (ang. Central Processing Unit), oprócz przetwarzania informacji jest sterowanie pracą pozostałych układów systemu. W skład CPU wchodzą mikroprocesor oraz
Bardziej szczegółowo11. Blok ten jest blokiem: a. decyzyjnym b. końcowym c. operacyjnym
1. Instrukcja warunkowa a. słuŝy do wprowadzania danych oraz wprowadzania wyników b. to instrukcja decyzyjna c. to sposób przedstawienia algorytmu 2. Instrukcja, która opisuje wykonanie róŝnych czynności
Bardziej szczegółowodr inż. Konrad Sobolewski Politechnika Warszawska Informatyka 1
dr inż. Konrad Sobolewski Politechnika Warszawska Informatyka 1 Cel wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działanie systemu operacyjnego
Bardziej szczegółowoBudowa komputera. Magistrala. Procesor Pamięć Układy I/O
Budowa komputera Magistrala Procesor Pamięć Układy I/O 1 Procesor to CPU (Central Processing Unit) centralny układ elektroniczny realizujący przetwarzanie informacji Zmiana stanu tranzystorów wewnątrz
Bardziej szczegółowoArchitektura komputerów
Architektura komputerów Wykład 3 Jan Kazimirski 1 Podstawowe elementy komputera. Procesor (CPU) 2 Plan wykładu Podstawowe komponenty komputera Procesor CPU Cykl rozkazowy Typy instrukcji Stos Tryby adresowania
Bardziej szczegółowoProgramowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat
Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Program, to lista poleceń zapisana w jednym języku programowania zgodnie z obowiązującymi w nim zasadami. Celem programu jest przetwarzanie
Bardziej szczegółowoArchitektura komputerów. Układy wejścia-wyjścia komputera
Architektura komputerów Układy wejścia-wyjścia komputera Wspópraca komputera z urządzeniami zewnętrznymi Integracja urządzeń w systemach: sprzętowa - interfejs programowa - protokół sterujący Interfejs
Bardziej szczegółowoOpracował: Jan Front
Opracował: Jan Front Sterownik PLC PLC (Programowalny Sterownik Logiczny) (ang. Programmable Logic Controller) mikroprocesorowe urządzenie sterujące układami automatyki. PLC wykonuje w sposób cykliczny
Bardziej szczegółowoSYSTEMY OPERACYJNE: STRUKTURY I FUNKCJE (opracowano na podstawie skryptu PP: Królikowski Z., Sajkowski M. 1992: Użytkowanie systemu operacyjnego UNIX)
(opracowano na podstawie skryptu PP: Królikowski Z., Sajkowski M. 1992: Użytkowanie systemu operacyjnego UNIX) W informatyce występują ściśle obok siebie dwa pojęcia: sprzęt (ang. hardware) i oprogramowanie
Bardziej szczegółowoSprzęt komputerowy 2. Autor prezentacji: 1 prof. dr hab. Maria Hilczer
Sprzęt komputerowy 2 Autor prezentacji: 1 prof. dr hab. Maria Hilczer Budowa komputera Magistrala Procesor Pamięć Układy I/O 2 Procesor to CPU (Central Processing Unit) centralny układ elektroniczny realizujący
Bardziej szczegółowoUkłady arytmetyczne. Joanna Ledzińska III rok EiT AGH 2011
Układy arytmetyczne Joanna Ledzińska III rok EiT AGH 2011 Plan prezentacji Metody zapisu liczb ze znakiem Układy arytmetyczne: Układy dodające Półsumator Pełny sumator Półsubtraktor Pełny subtraktor Układy
Bardziej szczegółowoPodstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1
Podstawy programowania. Wykład Funkcje Krzysztof Banaś Podstawy programowania 1 Programowanie proceduralne Pojęcie procedury (funkcji) programowanie proceduralne realizacja określonego zadania specyfikacja
Bardziej szczegółowoArchitektura komputerów
Architektura komputerów Tydzień 5 Jednostka Centralna Zadania realizowane przez procesor Pobieranie rozkazów Interpretowanie rozkazów Pobieranie danych Przetwarzanie danych Zapisanie danych Główne zespoły
Bardziej szczegółowoParadygmaty programowania
Paradygmaty programowania Jacek Michałowski, Piotr Latanowicz 15 kwietnia 2014 Jacek Michałowski, Piotr Latanowicz () Paradygmaty programowania 15 kwietnia 2014 1 / 12 Zadanie 1 Zadanie 1 Rachunek predykatów
Bardziej szczegółowoKurs Zaawansowany S7. Spis treści. Dzień 1
Spis treści Dzień 1 I Konfiguracja sprzętowa i parametryzacja stacji SIMATIC S7 (wersja 1211) I-3 Dlaczego powinna zostać stworzona konfiguracja sprzętowa? I-4 Zadanie Konfiguracja sprzętowa I-5 Konfiguracja
Bardziej szczegółowoALGORYTMY I PROGRAMY
ALGORYTMY I PROGRAMY Program to ciąg instrukcji, zapisanych w języku zrozumiałym dla komputera. Ten ciąg instrukcji realizuje jakiś algorytm. Algorytm jest opisem krok po kroku jak rozwiązać problem, czy
Bardziej szczegółowoWstęp do informatyki- wykład 2
MATEMATYKA 1 Wstęp do informatyki- wykład 2 Systemy liczbowe Treści prezentowane w wykładzie zostały oparte o: S. Prata, Język C++. Szkoła programowania. Wydanie VI, Helion, 2012 www.cplusplus.com Jerzy
Bardziej szczegółowoProgramowanie współbieżne Wykład 2. Iwona Kochańska
Programowanie współbieżne Wykład 2 Iwona Kochańska Miary skalowalności algorytmu równoległego Przyspieszenie Stały rozmiar danych N T(1) - czas obliczeń dla najlepszego algorytmu sekwencyjnego T(p) - czas
Bardziej szczegółowoUkład sterowania, magistrale i organizacja pamięci. Dariusz Chaberski
Układ sterowania, magistrale i organizacja pamięci Dariusz Chaberski Jednostka centralna szyna sygnałow sterowania sygnały sterujące układ sterowania sygnały stanu wewnętrzna szyna danych układ wykonawczy
Bardziej szczegółowoTranzystor JFET i MOSFET zas. działania
Tranzystor JFET i MOSFET zas. działania brak kanału v GS =v t (cutoff ) kanał otwarty brak kanału kanał otwarty kanał zamknięty w.2, p. kanał zamknięty Co było na ostatnim wykładzie? Układy cyfrowe Najczęściej
Bardziej szczegółowoUTK ARCHITEKTURA PROCESORÓW 80386/ Budowa procesora Struktura wewnętrzna logiczna procesora 80386
Budowa procesora 80386 Struktura wewnętrzna logiczna procesora 80386 Pierwszy prawdziwy procesor 32-bitowy. Zawiera wewnętrzne 32-bitowe rejestry (omówione zostaną w modułach następnych), pozwalające przetwarzać
Bardziej szczegółowoAdresowanie obiektów. Adresowanie bitów. Adresowanie bajtów i słów. Adresowanie bajtów i słów. Adresowanie timerów i liczników. Adresowanie timerów
Adresowanie obiektów Bit - stan pojedynczego sygnału - wejście lub wyjście dyskretne, bit pamięci Bajt - 8 bitów - wartość od -128 do +127 Słowo - 16 bitów - wartość od -32768 do 32767 -wejście lub wyjście
Bardziej szczegółowo4. Procesy pojęcia podstawowe
4. Procesy pojęcia podstawowe 4.1 Czym jest proces? Proces jest czymś innym niż program. Program jest zapisem algorytmu wraz ze strukturami danych na których algorytm ten operuje. Algorytm zapisany bywa
Bardziej szczegółowoAlgorytmy dla maszyny PRAM
Instytut Informatyki 21 listopada 2015 PRAM Podstawowym modelem służącym do badań algorytmów równoległych jest maszyna typu PRAM. Jej głównymi składnikami są globalna pamięć oraz zbiór procesorów. Do rozważań
Bardziej szczegółowoSTART. Wprowadź (v, t) S:=v*t. Wyprowadź (S) KONIEC
GRUPA I Co to jest algorytm, a czym jest program komputerowy? Algorytm: uporządkowany i uściślony sposób rozwiązywania problemu, zawierający szczegółowy opis wykonywanych czynności. Program komputerowy:
Bardziej szczegółowoLiteratura. adów w cyfrowych. Projektowanie układ. Technika cyfrowa. Technika cyfrowa. Bramki logiczne i przerzutniki.
Literatura 1. D. Gajski, Principles of Digital Design, Prentice- Hall, 1997 2. C. Zieliński, Podstawy projektowania układów cyfrowych, PWN, Warszawa 2003 3. G. de Micheli, Synteza i optymalizacja układów
Bardziej szczegółowoArchitektura komputera. Cezary Bolek. Uniwersytet Łódzki. Wydział Zarządzania. Katedra Informatyki. System komputerowy
Wstęp do informatyki Architektura komputera Cezary Bolek cbolek@ki.uni.lodz.pl Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki System komputerowy systemowa (System Bus) Pamięć operacyjna ROM,
Bardziej szczegółowoWstęp do informatyki- wykład 1
MATEMATYKA 1 Wstęp do informatyki- wykład 1 Systemy liczbowe Treści prezentowane w wykładzie zostały oparte o: S. Prata, Język C++. Szkoła programowania. Wydanie VI, Helion, 2012 www.cplusplus.com Jerzy
Bardziej szczegółowoSterowniki Programowalne (SP) Wykład 11
Sterowniki Programowalne (SP) Wykład 11 Podstawy metody sekwencyjnych schematów funkcjonalnych (SFC) SP 2016 WYDZIAŁ ELEKTROTECHNIKI I AUTOMATYKI KATEDRA INŻYNIERII SYSTEMÓW STEROWANIA Kierunek: Automatyka
Bardziej szczegółowoHistoria modeli programowania
Języki Programowania na Platformie.NET http://kaims.eti.pg.edu.pl/ goluch/ goluch@eti.pg.edu.pl Maszyny z wbudowanym oprogramowaniem Maszyny z wbudowanym oprogramowaniem automatyczne rozwiązywanie problemu
Bardziej szczegółowoProgramowanie komputerów
Programowanie komputerów Wykład 1-2. Podstawowe pojęcia Plan wykładu Omówienie programu wykładów, laboratoriów oraz egzaminu Etapy rozwiązywania problemów dr Helena Dudycz Katedra Technologii Informacyjnych
Bardziej szczegółowoAlgorytmy, reprezentacja algorytmów.
Algorytmy, reprezentacja algorytmów. Wprowadzenie do algorytmów Najważniejszym pojęciem algorytmiki jest algorytm (ang. algorithm). Nazwa pochodzi od nazwiska perskiego astronoma, astrologa, matematyka
Bardziej szczegółowoLista tematów na kolokwium z wykładu z Techniki Cyfrowej w roku ak. 2013/2014
Lista tematów na kolokwium z wykładu z Techniki Cyfrowej w roku ak. 2013/2014 Temat 1. Algebra Boole a i bramki 1). Podać przykład dowolnego prawa lub tożsamości, które jest spełnione w algebrze Boole
Bardziej szczegółowoSprzęt komputerowy 2. Autor prezentacji: 1 prof. dr hab. Maria Hilczer
Sprzęt komputerowy 2 Autor prezentacji: 1 prof. dr hab. Maria Hilczer Budowa komputera Magistrala Procesor Pamięć Układy I/O 2 Procesor to CPU (Central Processing Unit) centralny układ elektroniczny realizujący
Bardziej szczegółowowagi cyfry 7 5 8 2 pozycje 3 2 1 0
Wartość liczby pozycyjnej System dziesiętny W rozdziale opiszemy pozycyjne systemy liczbowe. Wiedza ta znakomicie ułatwi nam zrozumienie sposobu przechowywania liczb w pamięci komputerów. Na pierwszy ogień
Bardziej szczegółowoPodział układów cyfrowych. rkijanka
Podział układów cyfrowych rkijanka W zależności od przyjętego kryterium możemy wyróżnić kilka sposobów podziału układów cyfrowych. Poniżej podam dwa z nich związane ze sposobem funkcjonowania układów cyfrowych
Bardziej szczegółowoRok akademicki: 2013/2014 Kod: EEL s Punkty ECTS: 2. Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne
Nazwa modułu: Technika mikroprocesorowa Rok akademicki: 2013/2014 Kod: EEL-1-616-s Punkty ECTS: 2 Wydział: Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej Kierunek: Elektrotechnika Specjalność:
Bardziej szczegółowoJęzyki programowania zasady ich tworzenia
Strona 1 z 18 Języki programowania zasady ich tworzenia Definicja 5 Językami formalnymi nazywamy każdy system, w którym stosując dobrze określone reguły należące do ustalonego zbioru, możemy uzyskać wszystkie
Bardziej szczegółowoEGZAMIN MATURALNY Z INFORMATYKI MAJ 2013 POZIOM PODSTAWOWY CZĘŚĆ I WYBRANE: Czas pracy: 75 minut. Liczba punktów do uzyskania: 20 WPISUJE ZDAJĄCY
Centralna Komisja Egzaminacyjna Arkusz zawiera informacje prawnie chronione do momentu rozpoczęcia egzaminu. Układ graficzny CKE 2011 KOD WPISUJE ZDAJĄCY PESEL Miejsce na naklejkę z kodem EGZAMIN MATURALNY
Bardziej szczegółowoZapisywanie algorytmów w języku programowania
Temat C5 Zapisywanie algorytmów w języku programowania Cele edukacyjne Zrozumienie, na czym polega programowanie. Poznanie sposobu zapisu algorytmu w postaci programu komputerowego. Zrozumienie, na czym
Bardziej szczegółowoArchitektura Systemów Komputerowych. Jednostka ALU Przestrzeń adresowa Tryby adresowania
Architektura Systemów Komputerowych Jednostka ALU Przestrzeń adresowa Tryby adresowania 1 Jednostka arytmetyczno- logiczna ALU ALU ang: Arythmetic Logic Unit Argument A Argument B A B Ci Bit przeniesienia
Bardziej szczegółowoProcesory. Schemat budowy procesora
Procesory Procesor jednostka centralna (CPU Central Processing Unit) to sekwencyjne urządzenie cyfrowe którego zadaniem jest wykonywanie rozkazów i sterowanie pracą wszystkich pozostałych bloków systemu
Bardziej szczegółowoProgramowanie Niskopoziomowe
Programowanie Niskopoziomowe Wykład 2: Reprezentacja danych Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie Plan Kilka ciekawostek Zapisy binarny, oktalny, decymalny
Bardziej szczegółowoArchitektura komputerów
Architektura komputerów Tydzień 11 Wejście - wyjście Urządzenia zewnętrzne Wyjściowe monitor drukarka Wejściowe klawiatura, mysz dyski, skanery Komunikacyjne karta sieciowa, modem Urządzenie zewnętrzne
Bardziej szczegółowoAlgorytm. Słowo algorytm pochodzi od perskiego matematyka Mohammed ibn Musa al-kowarizimi (Algorismus - łacina) z IX w. ne.
Algorytm znaczenie informatyczne Jest to dokładny przepis wykonania w określonym porządku skończonej liczby operacji, pozwalający na rozwiązanie zbliżonych do siebie klas problemów. znaczenie matematyczne
Bardziej szczegółowoWstęp do informatyki. System komputerowy. Magistrala systemowa. Architektura komputera. Cezary Bolek
Wstęp do informatyki Architektura komputera Cezary Bolek cbolek@ki.uni.lodz.pl Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki System komputerowy systemowa (System Bus) Pamięć operacyjna ROM,
Bardziej szczegółowoPOLITECHNIKA OPOLSKA
POLITECHNIKA OPOLSKA WYDZIAŁ MECHANICZNY Katedra Technologii Maszyn i Automatyzacji Produkcji Laboratorium Podstaw Inżynierii Jakości Ćwiczenie nr 2 Temat: Schemat blokowy (algorytm) procesu selekcji wymiarowej
Bardziej szczegółowo