Pojęcia podstawowe 1/40
|
|
- Krzysztof Pawlak
- 7 lat temu
- Przeglądów:
Transkrypt
1 1/40 Pojęcia podstawowe Informatyka dziedzina wiedzy i działalności zajmująca się gromadzeniem, przetwarzaniem i wykorzystywaniem informacji z zastosowaniem środków technicznych (komputerów). Dane wartości określonego typu, opisujące wybrane własności obiektów lub procesów Informacje wyniki gromadzenia i przetwarzania danych, które prowadzą do rozszerzenia wiedzy posiadanej przez odbiorcę Wśród zagadnień składających się na dziedzinę informatyki można wyróżnić: sprzęt służący do obliczeń [1], [2] Literatura: J.Lobur L.Null. The essentials of computer organization and architecture. 3 Ed. Jones and Bartlett Publishers, W.Stallings. Organizacja i architektura systemu komputerowego. WNT, metody przetwarzania danych (algorytmy) implementacja tych metod (programowanie) W literaturze zachodniej na określenie tej dziedziny używa się często terminu Computer Science lub Information Technology.
2 2/40 Pojęcia podstawowe Informatyka jako dziedzina - definicja Computer Science Curricula 2013 Informatyka jest dziedziną nauki i techniki złożoną z czternastu obszarów wyodrębnionych w standardzie nauczania zwanym Computer Science Curricula 2013, opracowanym wspólnie przez IEEE Computer Society i ACM.
3 Pojęcia podstawowe Informatyka jako dziedzina - definicja Computer Science Curricula /40
4 Przykładowe systemy Mikrokontrolery z rodziny Arduino 4/40
5 Przykładowe systemy Mini-komputery - Raspberry Pi i BeagleBone 5/40
6 Historia rozwoju Generacja zero: mechaniczne maszyny kalkulacyjne ( ) Wilhelm Schickard ( ) jest uważany za twórcę pierwszego mechanicznego kalkulatora, nazwanego Calculating Clock. Mógł on dodawać i odejmować liczby o maksymalnie 6 cyfrach. W 1642 r. Blaise Pascal ( ) zbudował mechaniczny kalkulator nazwany Pascaline aby pomóc swemu ojcu w obliczeniach podatkowych. Pascaline mógł realizować dodawanie z przeniesieniem i odejmowanie. Gottfried Wilhelm von Leibniz ( ), znany matematyk, wynalazł kalkulator o nazwie Stepped Reckoner, który mógł realizować dodawanie, odejmowanie, mnożenie i dzielenie. Charles Babbage ( ) zbudował maszynę różnicową Difference Engine w 1822, która mechanizowała rozwiązywanie wielomianów i właściwie była kalkulatorem, nie komputerem. Babbage zaprojektował też w 1833 r. uniwersalną maszynę liczącą, nazwaną maszyną analityczną (Analytical Engine), która mogła realizować dowolne operacje matematyczne. Analytical Engine posiadała wiele cech wiązanych z nowoczesnymi komputerami: jednostkę arytmetyczno-logiczną do wykonywania obliczeń (Babbage nazywał ją młynem - mill), pamięć (store) i urządzenia wejścia-wyjścia. Babbage zaprojektował też możliwość warunkowego rozgałęzienia programu. Ada Lovelace, córka poety Lorda Byrona, zasugerowała aby Babbage napisał program (plan działania) dla tej maszyny w celu obliczeń liczbowych. Ten fakt jest pierwszym znanym przykładem programu komputerowego, a Ada jest uważana za pierwszego programistę komputerów. Babbage zaprojektował użycie kart perforowanych jako nośnika danych we/wy i programu. Użycie kart dla sterowania działaniem nie pochodziło od Babbage a, ale od Joseph-Marie Jacquard a ( ), konstruktora maszyn tkackich. 6/40
7 7/40 Historia rozwoju Generacja 1: komputery lampowe ( ) W latach 1930-tych, Konrad Zuse ( ) kontynuując prace Babbage a, zastosował układy elektryczne do budowy urządzenia wg projektu Babbage a. Komputer Zuse go, nazwany Z1, był zbudowany na przekaźnikach elektromechanicznych zamiast ręcznie napędzanych tarcz stosowanych przez Babbage a. Komputer Z1 był programowalny i posiadał pamięć, jednostkę arytmetyczną i jednostkę sterującą. Z powodu braku funduszy w Niemczech czasu II wojny światowej, Zuse używał taśmy filmowej w miejsce kart perforowanych jako nośnika danych wejściowych. John Mauchly ( ) i J. Presper Eckert ( ) byli głównymi twórcami komputera ENIAC, wprowadzonego do użytku w 1946 r. ENIAC jest uważany za pierwszy całkowicie elektroniczny, uniwersalny komputer cyfrowy. Maszyna ta używała 17,468 lamp elektronowych, zajmowała 1,800 stóp kw. powierzchni, ważyła 30 ton i zużywała 174 kilowatów mocy. ENIAC miał pamięć o pojemności około 1000 bitów (około cyfrowych liczb dziesiętnych) i używał kart perforowanych do zapisu danych. ENIAC był przeznaczony do przyspieszenia procesu obliczenia tablic balistycznych dla artylerii w końcu II wojny światowej. ENIAC był maszyną pracującą w systemie dziesiętnym, nie dwójkowym. To znaczy, że liczby były reprezentowane w formie dziesiętnej i działania arytmetyczne były wykonywane w systemie dziesiętnym. Pamięć składała się z 20 akumulatorów, z których każdy mógł przechowywać 10-cio cyfrową liczbę dziesiętną. Główną wadą ENIAC-a była konieczność programowania ręcznego poprzez przełączniki i połączenia przewodami.
8 Historia rozwoju ENIAC, /40
9 9/40 Historia rozwoju Główne kategorie sprzętu obliczeniowego: Proste maszyny liczące (program sprzętowy), np. maszyna szyfrująca Enigma, używająca wirujących tarcz kodujących, kalkulatory elektroniczne) Uniwersalne komputery, (program ładowany do pamięci). Proces programowania jest ułatwiony przez fakt, że program jest reprezentowany w formie pozwalającej na przechowywanie go w pamięci obok danych. Komputer może pobierać kolejne instrukcje programu z pamięci do wykonania, ponadto program może być modyfikowany przez zmianę wartości zawartych w pamięci. Figure: Sprzętowe i programowe podejście do obliczeń [2]
10 Historia rozwoju Architektura von Neumann a Koncepcja tej architektury (opublikowana przez von Neumann a w 1945 r.), była oparta na pracach Johna Mauchly i J. Presper Eckert, twórców ENIAC a. Komputer von Neumann a składa się z: pamięci przechowującej dane i instrukcje programu jednostki sterującej, która pobiera rozkazy z pamięci, interpretuje je i powoduje ich wykonanie w sposób zależny od wartości danych jednostki arytmetyczno-logicznej (ALU), która wykonuje działania arytmetyczne i inne (logiczne, przesunięcia, itd.) na danych układów wejścia-wyjścia, działających pod kontrolą jednostki sterującej Figure: Architektura von Neumann a [1] Taki system przesyła wszystkie dane przez jednostkę arytmetyczno-logiczną (dokładnie - przez akumulator, który jest częścią ALU), co jest powodem wąskiego gardła (von Neumann bottleneck). 10/40
11 11/40 Historia rozwoju Zmodyfikowana architektura von Neumann a Opisana architektura została zoptymalizowana przez wprowadzenie magistral (system bus model). Magistrala danych (data bus) przesyła dane między pamięcią główną a rejestrami procesora (CPU). Magistrala adresowa (address bus) utrzymuje adres danej, która jest przesyłana. Magistrala sterująca (control bus) rozprowadza sygnały sterujące przepływem danych w systemie. Inne ulepszenia podstawowej architektury von Neumann a to: wykorzystanie rejestrów indeksowych (index registers) do adresowania, obsługa danych zmiennoprzecinkowych (floating point data), użycie przerwań (interrupts) i asynchronicznych operacji wejścia/wyjścia (asynchronous I/O), wprowadzenie pamięci wirtualnej (virtual memory) i rejestrów ogólnego przeznaczenia (general registers).
12 Komputer IAS - pierwszy przykład architektury von Neumann a Zbudowany w Princeton Institute for Advanced Studies, IAS działa powtarzając wykonywanie cyklu rozkazu. Każdy cykl rozkazu składa się z dwu części: Cyklu pobrania (fetch cycle), w którym kod operacji następnej instrukcji jest ładowany do rejestru IR a pole adresu jest ładowane do rejestru MAR. Instrukcja może być pobrana z rejestru IBR, lub z pamięci poprzez załadowanie słowa do rejestru MBR, a potem do IBR, IR i MAR. Cyklu wykonania, który zaczyna się gdy kod operacji jest w rejestrze IR. Jednostka sterująca interpretuje kod operacji i wykonuje instrukcję, wysyłając odpowiednie sygnały sterujące tak aby przesłać dane lub wykonać działania arytmetyczne w ALU. 12/40
13 13/40 Komputer IAS Zbiór rejestrów Jednostka sterująca i ALU zawierają specjalne komórki pamięci, nazywane rejestrami, o następującym przeznaczeniu: Rejestr buforowy pamięci (Memory buffer register) (MBR): przechowuje słowo, które ma być zapisane do pamięci lub układu wyjścia, lub słowo które ma być odczytane z pamięci lub układu wejścia. Rejestr adresowy pamięci (Memory address register) (MAR): przechowuje adres w pamięci słowa, które ma być zapisane z lub odczytane do rejestru MBR. Rejestr rozkazu (Instruction register) (IR): zawiera 8-bitowy kod operacji instrukcji właśnie wykonywanej. Rejestr buforowy rozkazu (Instruction buffer register) (IBR): przechowuje tymczasowo prawostronną instrukcję z bieżącego słowa pamięci. Licznik programu (Program counter) (PC): zawiera adres następnej pary instrukcji przeznaczonej do pobrania z pamięci. Akumulator (Accumulator) (AC) i multiplier quotient (MQ): przechowuje tymczasowo argumenty i rezultaty operacji ALU. Na przykład, rezultat mnożenia dwu liczb 40-bitowych jest liczbą 80-bitową; najbardziej znaczące 40 bitów są zapisywane we AC, a najmniej znaczące w MQ.
14 14/40 Komputer IAS Organizacja pamięci Pamięć komputera IAS składała się z 1000 komórek, zwanych słowami, każde o długości 40 liczb binarnych (bitów). Zarówno program jak i dane były przechowywane w tej pamięci. Liczby i instrukcje były reprezentowane w formie binarnej. Liczby były reprezentowane z użyciem bitu znaku i 39-bitów kodujących wartość. Słowo mogło też przechowywać dwie 20-bitowe instrukcje. Każda z nich składała się z 8-bitowego kodu operacji (opcode) określającego operację do wykonania i 12-bitowego adresu określającego jedno ze słów w pamięci (numerowanych do 0 do 999). Figure: Organizacja pamięci komputera IAS [2]
15 15/40 Komputer IAS Zbiór instrukcji Komputer IAS miał 21 instrukcji, w 5 grupach: Przesyłanie danych: między pamięcią a rejestrami ALU lub między dwoma rejestrami ALU. Skok bezwarunkowy: Normalnie, jednostka sterująca wykonuje instrukcje kolejno. Aby to zmienić, wykonuje się skok bezwarunkowy (realizacja pętli). Skok warunkowy: rozgałęzienie oparte o warunek, pozwala realizować decyzje. Arytmetyczne: operacje wykonywane przez ALU. Modyfikacja adresu: umożliwia obliczenie nowego adresu i wstawienie go do instrukcji w pamięci.
16 16/40 Model warstwowy systemu komputerowego Figure: Model warstwowy systemu komputerowego [1]
17 17/40 Arytmetyka komputerów Dwójkowy system liczbowy - przedstawienie liczb naturalnych System dwójkowy jest systemem pozycyjnym (tak jak dziesiętny), co oznacza, że waga danej cyfry zależy od jej pozycji w liczbie. Liczby naturalne Dla liczby naturalnej A, jej reprezentacja (zwana inaczej rozwinięciem) dana jest zależnością: A = b n 1 2 n b b gdzie b i jest i-tym bitem (cyfrą binarną), a n jest ilością bitów rozwinięcia. Na przykład: liczba dwójkowa oznacza liczbę dziesiętną 25 =
18 18/40 Dwójkowy system liczbowy Liczby całkowite ujemne - reprezentacja znak-moduł Bit znaku poprzedza właściwe bity liczby - jest bitem najbardziej znaczącym. Gdy najbardziej znaczący bit jest równy 0, to liczba jest dodatnia i jej wartość oblicza się ze wzoru: A = b n 2 2 n b b Gdy najbardziej znaczący bit jest równy 1, to liczba jest ujemna i jej wartość oblicza się ze wzoru: A = (b n 2 2 n b b ) Na przykład: = = = ( ) = Wady tej reprezentacji: Dodawanie i odejmowanie wymagają rozważania zarówno znaków jak i modułów liczb Istnieją dwie reprezentacje liczby 0 ( i )
19 19/40 Liczby całkowite ujemne Reprezentacja U2 (uzupełnienia do dwóch, czyli podstawy systemu liczbowego) Podobnie jak w reprezentacji znak-moduł, najbardziej znaczący bit jest bitem znaku, tutaj jednak ma wagę 2 n 1 i znak ujemny. Dla liczby całkowitej jej przedstawienie w tym kodzie jest dane wzorem: A = b n 1 2 n 1 + b n 2 2 n b b Jeśli A jest dodatnie, to bit znaku b n 1 jest zerem. Pozostałe bity reprezentują moduł liczby w identyczny sposób jak w reprezentacji znak-moduł Zero jest traktowane jak wartość dodatnia i dlatego ma bit znaku 0 i moduł złożony z samych zer. Stąd zakres dodatnich liczb całkowitych to [0, 2 n 1 1], czyli dla n=8 zakres ten to [0, 127] (z wartością maksymalną gdy wszystkie bity modułu są 1). Większe liczby wymagają więcej bitów w słowie Dla liczb ujemnych bit znaku b n 1 jest 1. Pozostałe n-1 bity określają dowolną z 2 n 1 wartości, stąd zakres tych liczb to [ 2 n 1, 1], czyli dla n=8 zakres ten to [ 128, 1] Zalety reprezentacji U2: zapewnia jednolitą realizację dodawania i odejmowania, dlatego jest powszechnie używana jako reprezentacja liczb całkowitych w większości procesorów brak podwójnej reprezentacji zera, stąd zwiększony o 1 zakres liczb możliwych do przedstawienia
20 20/40 Liczby całkowite ujemne U2 - przykład, Konwersja liczb binarnych dla różnych długości słów Na przykład: = = = = Konwersja liczb binarnych dla różnych długości słów Jeśli należy rozszerzyć ilość bitów liczby z n do m, (przy czym n < m) to: Dla reprezentacji znak-moduł należy przesunąć bit znaku do najdalszej lewej pozycji, a pozostałe wolne bity wypełnić zerami Dla reprezentacji uzupełnienia do dwóch należy przesunąć bit znaku do najdalszej lewej pozycji, a pozostałe wolne bity wypełnić kopiami bitu znaku (dla liczb dodatnich wypełnia się zerami, dla liczb ujemnych jedynkami).
21 21/40 Konwersja między systemami dziesiętnym i binarnym Konwersja dziesiętnej liczby całkowitej dodatniej Konwersja z postaci binarnej na dziesiętną jest prosta i wynika bezpośrednio z rozwinięcia Konwersja liczby całkowitej dodatniej z postaci dziesiętnej na binarną jest wykonywana metodą dzielenia przez 2. Jeśli mamy liczbę dziesiętną N to po podzieleniu jej przez 2 otrzymujemy iloraz N 1 oraz resztę r 1, zgodnie z zależnością: N = 2 N 1 + r 1, gdzie r 1 jest 0 lub 1 Następnie dzielimy iloraz N 1 przez 2, otrzymując nowy iloraz N 2 oraz resztę r 2 : N 1 = 2 N 2 + r 2, gdzie r 2 jest 0 lub 1 Stąd: N = 2 (2 N 2 + r 2 ) + r1 = 2 2 N r r 1 Ponieważ N > N 1 > N 2..., postępujemy tak dalej aż do otrzymania ilorazu N k = 1 i reszty r k równej 0 lub 1. Algorytm konwersji z postaci dziesiętnej na binarną Konwersja jest wykonywana metodą dzielenia przez 2. Kolejne reszty r k i ostatni iloraz N k = 1 dają cyfry binarne w kolejności rosnącego znaczenia. Czy to znaczy, że zawsze MSB (najbardziej znaczący bit) jest równy 1? NIE, to zależy od przyjętej długości słowa: kiedy jest dłuższe niż trzeba dla danej liczby, pozostałe bity będą zerami.
22 22/40 Konwersja między systemami dziesiętnym i binarnym Konwersja dziesiętnej liczby całkowitej dodatniej - przykłady = : 2 = 6 r 1 6 : 2 = 3 r 0 3 : 2 = 1 r = : 2 = 8 r 0 8 : 2 = 4 r 0 4 : 2 = 2 r 0 2 : 2 = 1 r 0
23 Konwersja między systemami dziesiętnym i binarnym Konwersja dziesiętnej liczby całkowitej ujemnej Aby przekształcić liczbę całkowitą ujemną do postaci binarnej należy: 1 wykonać konwersję liczby dodatniej o tym samym module 2 zanegować ją (patrz poniżej): Dla reprezentacji znak-moduł negowanie sprowadza się do odwrócenia bitu znaku. Dla reprezentacji uzupełnienia do dwóch należy wziąć uzupełnienie Boole a każdego bitu liczby (łącznie z bitem znaku) i traktując wynik jako liczbę całkowitą bez znaku dodać 1. UWAGA: występują tu dwa przypadki szczególne, które muszą być odpowiednio traktowane: 1 A = 0. Wtedy A = w reprezentacji U2. Uzupełnienie bitowe Po dodaniu do niego 1 otrzymujemy przeniesienie, które jest ignorowane, tak więc w rezultacie otrzymujemy poprawny wynik negacji zera równy zero. 2 Negowanie wzoru bitowego złożonego z 1 z następującymi n - 1 zerami daje w wyniku tę samą liczbę. Na przykład: = Uzupełnienie bitowe = Po dodaniu do niego 1 otrzymujemy = Problem powstaje, ponieważ nie może być reprezentowane na 8 bitach. 23/40
24 24/40 Arytmetyka liczb całkowitych Dodawanie Przy przyjętej długości słowa, możemy otrzymać wynik większy niż dopuszczalny występuje wtedy tzw. przepełnienie. Taki przypadek jest odpowiednio sygnalizowany przez ALU i wynik operacji jest odrzucany. Reguła przepełnienia Jeśli są dodawane dwie liczby dodatnie lub dwie ujemne, to przepełnienie występuje wtedy i tylko wtedy, gdy wynik ma znak przeciwny W pewnych warunkach może wystąpić tzw. przeniesienie - poza końcem słowa pojawia się bit, który musi być ignorowany.
25 25/40 Dwójkowy system liczbowy Dodawanie liczb całkowitych - przykłady (-7) + (+5) = (-2) = -2 (+4) + (+5) = (?) przepełnienie, zgodnie z regułą: wynik jest ujemny, a oba argumenty dodatnie (-4) + (+4) = (0) przeniesienie, bit ignorowany 0000 = 0 (-4) + (-1) = (-5) przeniesienie, bit ignorowany 1011 = -5
26 26/40 Arytmetyka liczb całkowitych Odejmowanie Reguła odejmowania W celu realizacji odjęcia od jednej liczby (odjemnej) drugiej liczby (odjemnika) należy dodać do odjemnej uzupełnienie do dwóch odjemnika.
27 27/40 Arytmetyka liczb całkowitych Odejmowanie - przykłady (2) - (7) = (-5) M = 2 10 = S = 7 10 = > 7 10 = = -5 (-6) - (4) = (?) M = 6 10 = S = 4 10 = > 4 10 = przeniesienie, bit ignorowany 0110 przepełnienie (5) - (2) = (3) M = 5 10 = S = 2 10 = > 2 10 = przeniesienie, bit ignorowany 0011 = 3 (-5) - (2) = (-7) M = 5 10 = S = 2 10 = > 2 10 = przeniesienie, bit ignorowany 1001 = -7
28 28/40 Arytmetyka liczb całkowitych Podsumowanie Reprezentacje analizowane dotąd można nazwać stało-pozycyjnymi - położenie przecinka pozycyjnego (binarnego) jest ustalone i z założenia znajduje się on na prawo od cyfry położonej najdalej na prawo. Można używać tej samej reprezentacji dla ułamków binarnych, posługując się skalowaniem liczb, tak że przecinek binarny znajdzie się w innym, wybranym położeniu.
29 29/40 Liczby ułamkowe i rzeczywiste Wymagają one reprezentacji bardziej rozbudowanej. Istnieją dwie jej odmiany: stałoprzecinkowa, gdzie ustala się położenie przecinka binarnego w pewnym miejscu, a więc przeznacza się ustaloną liczbę bitów na część całkowitą i ułamkową liczby. Np., jeśli na część całkowitą przeznaczy się n+1 bitów, a na część ułamkową k bitów, to reprezentacja jest dana zależnością: A = ( 2 b n + 1) (b n 1 2 n b b b b k 2 k ) Podejście to ma ograniczenia: nie mogą być reprezentowane ani bardzo duże liczby, ani bardzo małe ułamki. Ponadto, ułamkowe składniki ilorazu przy dzieleniu dużych liczb mogą być utracone. zmiennoprzecinkowa, gdzie używa się notacji naukowej w formie: ±S B E gdzie S jest mantysą, B jest podstawą systemu liczbowego (10 dla dziesiętnego, 2 dla binarnego), a E jest wykładnikiem. Na przykład, systemie dziesiętnym: może być reprezentowane jako może być reprezentowane jako W tym podejściu przesuwa się przecinek dziesiętny do zadanego położenia i używa wykładnika do pamiętania położenia tego przecinka.
30 30/40 Liczby ułamkowe i rzeczywiste Notacja zmiennoprzecinkowa Takie samo podejście może być stosowane do liczb binarnych. Mogą one być przechowywane w postaci słowa binarnego o trzech polach zawierających: znak (plus lub minus), mantysę S i wykładnik E (podstawa jest ustalona i nie musi być przechowywana). Typowy 32-bitowy format zmiennoprzecinkowy: Lewy bit reprezentuje znak liczby (0 dodatnia, 1 ujemna). Wartość wykładnika jest przechowywana w bitach 23-30, w postaci reprezentacji przesuniętej (ustalona wartość przesunięcia jest odejmowana od pola w celu otrzymania prawdziwej wartości wykładnika). Tu na 8 bitach przechowuje się liczby z zakresu 0-255; po odjęciu przesunięcia równego 128, prawdziwe wartości wykładnika mieszczą się w zakresie 128 do Mantysa jest zwykle tak obliczona, że cała liczba jest znormalizowana, co upraszcza operacje. Liczba znormalizowana ma postać: ±0.1bbb...b 2 E, gdzie b jest dowolną cyfrą binarną. Wynika z tego, że lewy bit mantysy ma zawsze wartość 1, w związku z tym nie trzeba go przechowywać, a mantysa ma wartość z przedziału [0.5, 1.0).
31 31/40 Liczby ułamkowe i rzeczywiste Notacja zmiennoprzecinkowa Opisany format pozwala na przedstawienie liczb z zakresów: ujemnych ( ( ) 2 127, ) ( , ) dodatnich ( , ( ) ) ( , ) Powyższe zakresy nie obejmują pięciu obszarów: liczb ujemnych < ( ) (przepełnienie ujemne) liczb ujemnych > liczb dodatnich < liczb dodatnich > ( ) (niedomiar ujemny) (niedomiar dodatni) zera, które jest opisywane specjalnym wzorem bitowym. (przepełnienie dodatnie) Przepełnienie pojawia się, gdy wynik operacji arytmetycznej przekracza co do modułu wartość, która może być wyrażona przez wykładnik równy 127. Niedomiar pojawia się, gdy moduł części ułamkowej jest za mały. Niedomiar jest mniejszym problemem, ponieważ rezultat może być zwykle przybliżony zerem. Dodatkowo, liczby zmiennoprzecinkowe nie są równomiernie rozłożone na osi liczbowej (jak stałoprzecinkowe). Ich gęstość jest największa w okolicy początku osi, a dalej maleje. Dlatego w wielu przypadkach obliczenia są obarczone błędami zaokrągleń.
32 Liczby ułamkowe i rzeczywiste Standard IEEE dla liczb zmiennoprzecinkowych Najważniejszy standard reprezentacji liczb zmiennoprzecinkowych - norma IEEE 754. Została ona stworzona by: Ułatwić przenoszenie programów między różnymi procesorami Umożliwić rozwój oprogramowania wymagającego intensywnych obliczeń numerycznych. Standard ten definiuje format 32-bitowy (pojedyncza precyzja) i 64-bitowy (podwójna precyzja), odpowiednio przy 8 i 11 bitowych wykładnikach. Dodatkowo, standard definiuje 2 formaty rozszerzone (też pojedynczej i podwójnej precyzji), których format jest zależny od implementacji. Formaty rozszerzone wprowadzają dodatkowe bity dla wykładnika i mantysy (zwanej fraction). UWAGA: nie wszystkie wzory bitowe są interpretowane w zwykły sposób niektóre z nich oznaczają specjalne wartości: zerowy wykładnik wraz z zerowym ułamkiem oznacza dodatnie lub ujemne zero, zależnie od bitu znaku zerowy wykładnik wraz z niezerowym ułamkiem oznacza liczbę nienormalizowaną wykładnik o samych jedynkach wraz z zerowym ułamkiem oznacza dodatnią lub ujemną nieskończoność, zależnie od bitu znaku wykładnik o samych jedynkach wraz z niezerowym ułamkiem oznacza NaN (not a number), wartość używaną do sygnalizacji różnych sytuacji wyjątkowych napotkanych w obliczeniach. 32/40
33 33/40 Liczby ułamkowe i rzeczywiste Konwersja z postaci dziesiętnej na binarną stałoprzecinkową Dla reprezentacji stałoprzecinkowej konwersja jest wykonywana oddzielnie dla części całkowitej i ułamkowej liczby: 1 Konwersja dla części całkowitej jest wykonywana jak dla liczby całkowitej w reprezentacji znak-moduł 2 Konwersja dla części ułamkowej polega na wykonywaniu mnożenia przez 2. W kolejnych krokach ułamkowa część liczby dziesiętnej jest mnożona przez 2 i cyfra znajdująca się na lewo od przecinka w iloczynie (równa 0 lub 1) wchodzi w skład reprezentacji binarnej począwszy od najbardziej znaczącego bitu. Część ułamkowa iloczynu jest używana jako mnożna w następnym kroku. Na przykład: 0, = 00, 01 2 Obliczanie: 1 0,25 * 2 = 0,5 ->.0 2 0,5 * 2 = 1,0 ->.01 UWAGA: Proces ten nie zawsze jest dokładny; ułamek dziesiętny o skończonej liczbie cyfr może wymagać ułamka binarnego o nieskończonej lub większej niż dopuszczalna liczbie cyfr.
34 34/40 Liczby ułamkowe i rzeczywiste Konwersja z postaci dziesiętnej na binarną stałoprzecinkową Na przykład: 0, = 00, Obliczanie: 1 0,255 * 2 = 0,510 ->.0 2 0,510 * 2 = 1,020 -> ,020 * 2 = 0,040 -> ,040 * 2 = 0,080 -> ,080 * 2 = 0,160 -> ,160 * 2 = 0,320 -> ,320 * 2 = 0,640 -> ,640 * 2 = 1,280 -> Jaki jest błąd reprezentacji tej liczby? Wartość = = 0, , 0039 = 0, 2539 Błąd = 0,255-0,2539 = 0,0011 = 0,43 %
35 35/40 Liczby ułamkowe i rzeczywiste Konwersja z postaci dziesiętnej na 32-bitową zmiennoprzecinkową Na przykład: 0, = Ustawić wartość wykładnika E na 0. 2 Sprowadzić metodą dzielenia lub mnożenia przez 2, liczbę do zakresu [0.5, 1.0). Po każdej operacji dzielenia zwiększać wartość E o 1, przy każdej operacji mnożenia zmniejszać wartość E o 1. W wyniku tego otrzymuje się wartość mantysy, którą należy zakodować bitami 0-22, pamiętając że bit na prawo od przecinka binarnego nie jest zapisywany. 3 Dokonać konwersji mantysy obliczonej w kroku 2 z postaci dziesiętnej do binarnej jak dla reprezentacji stałoprzecinkowej o zerowej liczbie cyfr binarnych przed przecinkiem binarnym i 24 bitami po przecinku. 4 W celu otrzymania wykładnika w reprezentacji przesuniętej, dodać do jego wartości obliczonej w kroku 2 wartość Jeśli wartość liczby jest ujemna, ustawić bit numer 31 na 1, w przeciwnym razie na 0. Obliczanie: 1 E = 0 2 0, = 0, 510 E = E 1 3 S = E = E = = b 31 = 0 6 Wynik:
36 36/40 Notacja szesnastkowa Jest ona używana w celu bardziej wygodnej reprezentacji zewnętrznej liczb binarnych, tzn. poza systemem komputerowym (wyświetlania lub drukowania zawartości pamięci, plików, itp). W tej notacji, liczby binarne są grupowane czwórkami. Dla każdej możliwej kombinacji 4 bitów istnieje symbol, począwszy od 0 do 9 i od A do F. Te 16 symboli to cyfry szesnastkowe. Stąd ciąg cyfr szesnastkowych można traktować jako wartość całkowitą przy podstawie równej 16. Ciąg ten jest zapisywany z literą H na końcu dla zaznaczenia podstawy stosowanego systemu liczbowego. Na przykład: 2F 16 = F = = 47 Notacja szesnastkowa jest używana nie tylko do wygodnego przedstawiania liczb całkowitych, ale również innych danych binarnych (tekstowych, liczbowych, itp.). Powody jej stosowania: Bardziej zwarta niż binarna Większość komputerów używa słów o długości będącej wielokrotnością 4 bitów Łatwość konwersji między systemem binarnym i szesnastkowym.
37 37/40 Inne reprezentacje danych dziesiętnych BCD, Packed decimal Pomimo że wewnątrz komputera operacje realizuje się w systemie binarnym, zwykli użytkownicy preferują zapis dziesiętny. W związku z tym istnieje potrzeba przekształcenia na wejściu z postaci dziesiętnej na binarną, a na wyjściu - odwrotnie. Dla aplikacji wymagających dużego nakładu operacji we/wy i stosunkowo małego udziału obliczeń, właściwe jest stosowanie systemu dziesiętnego dla zapisu, odczytu i przetwarzania. Podstawową reprezentacją jest BCD (binary-coded decimal), która jest klasą binarnych sposobów kodowania danych dziesiętnych, w której każda cyfra dziesiętna jest zapisana przy użyciu 4 bitów. Więc 0 = 0000, 1 = 0001, 8 = 1000, a 9 = Specjalne ciągi bitów są stosowane dla zapisu znaku (używa się cyfry znaku równej 1100 dla dodatnich wartości i 1101 dla ujemnych). Zapis BCD jest dość rozrzutny, ponieważ wykorzystuje tylko 10 z 16 możliwych wartości 4-bitowego słowa. Typową reprezentacją jest packed decimal, w której dwie cyfry dziesiętne liczby upakowuje się w bajcie. Aby zapisać liczby wielocyfrowe, łączy się odpowiednią ilość bajtów. Tak więc, kod liczby 246 to Znacząco mniejsza gęstość zapisu niż osiągana w systemie binarnym jest kompensowana przez brak konieczności konwersji i - co czasami ważniejsze - brak zaokrągleń. Np. wartość 0.2 może być reprezentowana dokładnie w kodzie BCD (jako ), ale ma nieskończone rozwinięcie binarne ( ). Wiele maszyn (starsze: VAX, microvax, nowsze: Intel x86 (32-bit), IBM POWER7) zapewnia specjalne instrukcje arytmetyczne wykonujące operacje bezpośrednio na danych dziesiętnych upakowanych. Algorytmy są bardzo podobne do wcześniej dyskutowanych, ale muszą obsługiwać przeniesienie dziesiętne. Implementacje programowe: Intel Decimal Floating-Point Math Library (2011)
38 38/40 Reprezentacja znaków ASCII Dotąd dyskutowane reprezentacje stosowane są do działań na liczbach wewnątrz komputera. W celu prezentacji ich w postaci zrozumiałej dla człowieka, należy dokonać ich przekształcenia do postaci tekstowej lub graficznej. Stosuje się w tym celu standardy takie jak: ASCII i UNICODE. ISO opracowała 7-bitowy schemat kodowania zwany International Alphabet Number 5. W 1967 r. wprowadzono standard pochodny, nazwany ASCII. American Standard Code for Information Interchange ASCII definiuje kody dla 32 znaków sterującyh, 10 liczb, 52 liter (małych i wielkich), 32 znaków specjalnych (jak i znaku odstępu. Najstarszy (ósmy) bit był przeznaczony do kontroli parzystości. Parzystość jest najprostszym ze sposobów detekcji błędów. Bit parzystości jest zerem lub jedynką w zależności od tego czy wartość sumy pozostałych bitów jest parzysta/nieparzysta. Na przykład, jeśli stosuje się kontrolę parzystości (even parity) przesyłając znak ASCII A, najniższe 7 bitów to Ponieważ ich suma jest parzysta, bit parzystości będzie równy 0 i cały kod ASCII będzie równy Podobnie, przy transmisji znaku ASCII C, , bit parzystości będzie równy 1, stąd przesyłana wartość to Parzystość może być używana tylko do detekcji błędów pojedynczych bitów.
39 39/40 Reprezentacja znaków ASCII W miarę jak komputery stawały się bardziej stabilne, potrzeba stosowania bitu parzystości malała. W początkach lat 1980-tych, producenci mikrokomputerów zaczęli używać bitu parzystości do rozszerzenia zakresu reprezentowanych znaków (extended character set) przez kody z zakresu do W zależności od standardu, rozszerzone zestawy znaków mogą reprezentować symbole matematyczne, znaki alfabetów narodowych lub inne symbole. ISO/IEC , również znane jako Latin-2, bądź "środkowo " i "wschodnioeuropejskie", jest drugą częścią standardu kodowania znaków zdefiniowanego przez organizację ISO. Tablica kodów ISO/IEC , zawierająca m.in. polskie znaki diakrytyczne.
40 40/40 Reprezentacja znaków Unicode Unicode jest 16-bitowym alfabetem, który jest zgodny wstecznie z ASCII i Latin-1. Jest też zgodny z definicją międzynarodowego alfabetu ISO/IEC Ponieważ podstawowe kodowanie w Unicode jest 16 bitowe, ma on wystarczającą pojemność dla zapisu większości znaków spotykanych we wszystkich językach świata. Dodatkowo, Unicode definiuje mechanizm rozszerzania, który pozwala zakodować milion innych znaków. Jest to wystarczające do reprezentowania znaków wszystkich języków używanych w historii cywilizacji. Unicode jest domyślnym systemem kodowania w języku programowania Java, XML i pochodnych. Cytat ze strony internetowej Unicode Consortium: Zasadniczo, komputery operują na liczbach. Przechowują one litery i inne znaki, poprzez przypisaną do nich liczbę (kod znaku). Przed wprowadzeniem systemu kodowania Unicode, istniały setki różnych systemów kodowania, przyporządkowujących kod do znaku. Nie istniał system kodowania, wystarczająco pojemny dla wszystkich potrzebnych znaków: na przykład, Unia Europejska potrzebuje wielu różnych systemów kodowania do obsługi wszystkich oficjalnych języków. Nawet dla samego języka angielskiego potrzebnych było kilku systemów kodowania dla zapisu liter, interpunkcji i symboli technicznych będących w użyciu. Te systemy kodowania często kolidowały ze sobą, tzn. dwa systemy używały tego samego kodu znaku dla dwu różnych znaków, lub różnych kodów dla tego samego znaku. W tej sytuacji komputery (w szczególności serwery) musiały obsługiwać wszystkie te systemy; a w czasie przenoszenia danych dochodziło do ich przekłamania.
Podstawy Informatyki. Inżynieria Ciepła, I rok. Wykład 5 Liczby w komputerze
Podstawy Informatyki Inżynieria Ciepła, I rok Wykład 5 Liczby w komputerze Jednostki informacji Bit (ang. bit) (Shannon, 948) Najmniejsza ilość informacji potrzebna do określenia, który z dwóch równie
Bardziej szczegółowoSystemy liczbowe. 1. Przedstawić w postaci sumy wag poszczególnych cyfr liczbę rzeczywistą R = (10).
Wprowadzenie do inżynierii przetwarzania informacji. Ćwiczenie 1. Systemy liczbowe Cel dydaktyczny: Poznanie zasad reprezentacji liczb w systemach pozycyjnych o różnych podstawach. Kodowanie liczb dziesiętnych
Bardziej szczegółowoWprowadzenie do architektury komputerów systemy liczbowe, operacje arytmetyczne i logiczne
Wprowadzenie do architektury komputerów systemy liczbowe, operacje arytmetyczne i logiczne 1. Bit Pozycja rejestru lub komórki pamięci służąca do przedstawiania (pamiętania) cyfry w systemie (liczbowym)
Bardziej szczegółowoArytmetyka binarna - wykład 6
SWB - Arytmetyka binarna - wykład 6 asz 1 Arytmetyka binarna - wykład 6 Adam Szmigielski aszmigie@pjwstk.edu.pl SWB - Arytmetyka binarna - wykład 6 asz 2 Naturalny kod binarny (NKB) pozycja 7 6 5 4 3 2
Bardziej szczegółowoTechnologie Informacyjne
System binarny Szkoła Główna Służby Pożarniczej Zakład Informatyki i Łączności October 7, 26 Pojęcie bitu 2 Systemy liczbowe 3 Potęgi dwójki 4 System szesnastkowy 5 Kodowanie informacji 6 Liczby ujemne
Bardziej szczegółowoARYTMETYKA BINARNA. Dziesiątkowy system pozycyjny nie jest jedynym sposobem kodowania liczb z jakim mamy na co dzień do czynienia.
ARYTMETYKA BINARNA ROZWINIĘCIE DWÓJKOWE Jednym z najlepiej znanych sposobów kodowania informacji zawartej w liczbach jest kodowanie w dziesiątkowym systemie pozycyjnym, w którym dla przedstawienia liczb
Bardziej szczegółowoTeoretyczne Podstawy Informatyki
Teoretyczne Podstawy Informatyki cel zajęć Celem kształcenia jest uzyskanie umiejętności i kompetencji w zakresie budowy schematów blokowych algor ytmów oraz ocenę ich złożoności obliczeniowej w celu optymizacji
Bardziej szczegółowoPodstawy Informatyki
Podstawy Informatyki Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 5 Bożena Woźna-Szcześniak (AJD) Podstawy Informatyki Wykład 5 1 / 23 LICZBY RZECZYWISTE - Algorytm Hornera
Bardziej szczegółowoDla człowieka naturalnym sposobem liczenia jest korzystanie z systemu dziesiętnego, dla komputera natomiast korzystanie z zapisu dwójkowego
Arytmetyka cyfrowa Dla człowieka naturalnym sposobem liczenia jest korzystanie z systemu dziesiętnego, dla komputera natomiast korzystanie z zapisu dwójkowego (binarnego). Zapis binarny - to system liczenia
Bardziej szczegółowoMetody numeryczne Technika obliczeniowa i symulacyjna Sem. 2, EiT, 2014/2015
Metody numeryczne Technika obliczeniowa i symulacyjna Sem. 2, EiT, 2014/2015 1 Metody numeryczne Dział matematyki Metody rozwiązywania problemów matematycznych za pomocą operacji na liczbach. Otrzymywane
Bardziej szczegółowoLABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Zasady arytmetyki stałoprzecinkowej oraz operacji arytmetycznych w formatach Q
LABORAORIUM PROCESORY SYGAŁOWE W AUOMAYCE PRZEMYSŁOWEJ Zasady arytmetyki stałoprzecinkowej oraz operacji arytmetycznych w formatach Q 1. Zasady arytmetyki stałoprzecinkowej. Kody stałopozycyjne mają ustalone
Bardziej szczegółowoArchitektura komputerów
Wykład jest przygotowany dla IV semestru kierunku Elektronika i Telekomunikacja. Studia I stopnia Dr inż. Małgorzata Langer Architektura komputerów Prezentacja multimedialna współfinansowana przez Unię
Bardziej szczegółowoNaturalny kod binarny (NKB)
SWB - Arytmetyka binarna - wykład 6 asz 1 Naturalny kod binarny (NKB) pozycja 7 6 5 4 3 2 1 0 wartość 2 7 2 6 2 5 2 4 2 3 2 2 2 1 2 0 wartość 128 64 32 16 8 4 2 1 bity b 7 b 6 b 5 b 4 b 3 b 2 b 1 b 0 System
Bardziej szczegółowoDane, informacja, programy. Kodowanie danych, kompresja stratna i bezstratna
Dane, informacja, programy Kodowanie danych, kompresja stratna i bezstratna DANE Uporządkowane, zorganizowane fakty. Główne grupy danych: tekstowe (znaki alfanumeryczne, znaki specjalne) graficzne (ilustracje,
Bardziej szczegółowoPracownia Komputerowa wykład VI
Pracownia Komputerowa wykład VI dr Magdalena Posiadała-Zezula http://www.fuw.edu.pl/~mposiada 1 Przypomnienie 125 (10) =? (2) Liczby całkowite : Operacja modulo % reszta z dzielenia: 125%2=62 reszta 1
Bardziej szczegółowoTechniki multimedialne
Techniki multimedialne Digitalizacja podstawą rozwoju systemów multimedialnych. Digitalizacja czyli obróbka cyfrowa oznacza przetwarzanie wszystkich typów informacji - słów, dźwięków, ilustracji, wideo
Bardziej szczegółowoJęzyki i metodyka programowania. Reprezentacja danych w systemach komputerowych
Reprezentacja danych w systemach komputerowych Kod (łac. codex - spis), ciąg składników sygnału (kombinacji sygnałów elementarnych, np. kropek i kresek, impulsów prądu, symboli) oraz reguła ich przyporządkowania
Bardziej szczegółowoDr inż. Grażyna KRUPIŃSKA. D-10 pokój 227 WYKŁAD 2 WSTĘP DO INFORMATYKI
Dr inż. Grażyna KRUPIŃSKA Grazyna.Krupinska@fis.agh.edu.pl D-10 pokój 227 WYKŁAD 2 WSTĘP DO INFORMATYKI Ćwiczenia i laboratorium 2 Kolokwia zaliczeniowe - 1 termin - poniedziałek, 29 stycznia 2018 11:30
Bardziej szczegółowoStan wysoki (H) i stan niski (L)
PODSTAWY Przez układy cyfrowe rozumiemy układy, w których w każdej chwili występują tylko dwa (zwykle) możliwe stany, np. tranzystor, jako element układu cyfrowego, może być albo w stanie nasycenia, albo
Bardziej szczegółowoLiczby rzeczywiste są reprezentowane w komputerze przez liczby zmiennopozycyjne. Liczbę k można przedstawid w postaci:
Reprezentacja liczb rzeczywistych w komputerze. Liczby rzeczywiste są reprezentowane w komputerze przez liczby zmiennopozycyjne. Liczbę k można przedstawid w postaci: k = m * 2 c gdzie: m częśd ułamkowa,
Bardziej szczegółowoARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH
ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH reprezentacja danych ASK.RD.01 c Dr inż. Ignacy Pardyka UNIWERSYTET JANA KOCHANOWSKIEGO w Kielcach Rok akad. 2011/2012 c Dr inż. Ignacy Pardyka (Inf.UJK) ASK.RD.01 Rok
Bardziej szczegółowo12. Wprowadzenie Sygnały techniki cyfrowej Systemy liczbowe. Matematyka: Elektronika:
PRZYPOMNIJ SOBIE! Matematyka: Dodawanie i odejmowanie "pod kreską". Elektronika: Sygnały cyfrowe. Zasadę pracy tranzystorów bipolarnych i unipolarnych. 12. Wprowadzenie 12.1. Sygnały techniki cyfrowej
Bardziej szczegółowoArchitektura komputerów
Architektura komputerów Wykład 4 Jan Kazimirski 1 Reprezentacja danych 2 Plan wykładu Systemy liczbowe Zapis dwójkowy liczb całkowitych Działania arytmetyczne Liczby rzeczywiste Znaki i łańcuchy znaków
Bardziej szczegółowoPodstawowe operacje arytmetyczne i logiczne dla liczb binarnych
1 Podstawowe operacje arytmetyczne i logiczne dla liczb binarnych 1. Podstawowe operacje logiczne dla cyfr binarnych Jeśli cyfry 0 i 1 potraktujemy tak, jak wartości logiczne fałsz i prawda, to działanie
Bardziej szczegółowoPodstawy Informatyki
Podstawy Informatyki Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 3 Bożena Woźna-Szcześniak (AJD) Podstawy Informatyki Wykład 3 1 / 42 Reprezentacja liczb całkowitych
Bardziej szczegółowoSamodzielnie wykonaj następujące operacje: 13 / 2 = 30 / 5 = 73 / 15 = 15 / 23 = 13 % 2 = 30 % 5 = 73 % 15 = 15 % 23 =
Systemy liczbowe Dla każdej liczby naturalnej x Î N oraz liczby naturalnej p >= 2 istnieją jednoznacznie wyznaczone: liczba n Î N oraz ciąg cyfr c 0, c 1,..., c n-1 (gdzie ck Î {0, 1,..., p - 1}) taki,
Bardziej szczegółowoWstęp do programowania. Reprezentacje liczb. Liczby naturalne, całkowite i rzeczywiste w układzie binarnym
Wstęp do programowania Reprezentacje liczb Liczby naturalne, całkowite i rzeczywiste w układzie binarnym System dwójkowy W komputerach stosuje się dwójkowy system pozycyjny do reprezentowania zarówno liczb
Bardziej szczegółowoRODZAJE INFORMACJI. Informacje analogowe. Informacje cyfrowe. U(t) U(t) Umax. Umax. R=(0,Umax) nieskończony zbiór możliwych wartości. Umax.
RODZAJE INFORMACJI Informacje analogowe U(t) Umax Umax 0 0 R=(0,Umax) nieskończony zbiór możliwych wartości WE MASZYNA ANALOGOWA WY Informacje cyfrowe U(t) Umaxq Umax R=(U, 2U, 3U, 4U) # # MASZYNA # CYFROWA
Bardziej szczegółowoKod uzupełnień do dwóch jest najczęściej stosowanym systemem zapisu liczb ujemnych wśród systemów binarnych.
Kod uzupełnień do dwóch jest najczęściej stosowanym systemem zapisu liczb ujemnych wśród systemów binarnych. Jeśli bit znaku przyjmie wartość 0 to liczba jest dodatnia lub posiada wartość 0. Jeśli bit
Bardziej szczegółowoArchitektura komputerów
Wykład jest przygotowany dla IV semestru kierunku Elektronika i Telekomunikacja. Studia I stopnia Dr inż. Małgorzata Langer Architektura komputerów Prezentacja multimedialna współfinansowana przez Unię
Bardziej szczegółowoPrzedmiot: Urządzenia techniki komputerowej Nauczyciel: Mirosław Ruciński
Przedmiot: Urządzenia techniki komputerowej Nauczyciel: Mirosław Ruciński Temat: Systemy zapisu liczb. Cele kształcenia: Zapoznanie z systemami zapisu liczb: dziesiętny, dwójkowy, ósemkowy, szesnastkowy.
Bardziej szczegółowoKodowanie informacji. Przygotował: Ryszard Kijanka
Kodowanie informacji Przygotował: Ryszard Kijanka Komputer jest urządzeniem służącym do przetwarzania informacji. Informacją są liczby, ale także inne obiekty, takie jak litery, wartości logiczne, obrazy
Bardziej szczegółowoINFORMATYKA. Zajęcia organizacyjne. Arytmetyka komputerowa.
INFORMATYKA Zajęcia organizacyjne Arytmetyka komputerowa http://www.infoceram.agh.edu.pl http://home.agh.edu.pl/~grzesik/ KONSULTACJE Zbigniew Grzesik środa, 9 ; A-3, p. 2 tel.: 67-249 e-mail: grzesik@agh.edu.pl
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ół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ółowoKod znak-moduł. Wartość liczby wynosi. Reprezentacja liczb w kodzie ZM w 8-bitowym formacie:
Wykład 3 3-1 Reprezentacja liczb całkowitych ze znakiem Do przedstawienia liczb całkowitych ze znakiem stosowane są następujące kody: - ZM (znak-moduł) - U1 (uzupełnienie do 1) - U2 (uzupełnienie do 2)
Bardziej szczegółowoPracownia Komputerowa wykład IV
Pracownia Komputerowa wykład IV dr Magdalena Posiadała-Zezula http://www.fuw.edu.pl/~mposiada/pk16 1 Reprezentacje liczb i znaków! Liczby:! Reprezentacja naturalna nieujemne liczby całkowite naturalny
Bardziej szczegółowoWstęp do Informatyki
Wstęp do Informatyki Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bożena Woźna-Szcześniak (AJD) Wstęp do Informatyki Wykład 4 1 / 1 DZIELENIE LICZB BINARNYCH Dzielenie
Bardziej szczegółowoLICZBY ZMIENNOPRZECINKOWE
LICZBY ZMIENNOPRZECINKOWE Liczby zmiennoprzecinkowe są komputerową reprezentacją liczb rzeczywistych zapisanych w formie wykładniczej (naukowej). Aby uprościć arytmetykę na nich, przyjęto ograniczenia
Bardziej szczegółowoKodowanie informacji. Kody liczbowe
Wykład 2 2-1 Kodowanie informacji PoniewaŜ komputer jest urządzeniem zbudowanym z układów cyfrowych, informacja przetwarzana przez niego musi być reprezentowana przy pomocy dwóch stanów - wysokiego i niskiego,
Bardziej szczegółowoPodstawy Informatyki. Metalurgia, I rok. Wykład 3 Liczby w komputerze
Podstawy Informatyki Metalurgia, I rok Wykład 3 Liczby w komputerze Jednostki informacji Bit (ang. bit) (Shannon, 1948) Najmniejsza ilość informacji potrzebna do określenia, który z dwóch równie prawdopodobnych
Bardziej szczegółowoKod IEEE754. IEEE754 (1985) - norma dotycząca zapisu binarnego liczb zmiennopozycyjnych (pojedynczej precyzji) Liczbę binarną o postaci
Kod IEEE754 IEEE Institute of Electrical and Electronics Engineers IEEE754 (1985) - norma dotycząca zapisu binarnego liczb zmiennopozycyjnych (pojedynczej precyzji) Liczbę binarną o postaci (-1) s 1.f
Bardziej szczegółowoPracownia Komputerowa wyk ad VI
Pracownia Komputerowa wyk ad VI dr Magdalena Posiada a-zezula Magdalena.Posiadala@fuw.edu.pl http://www.fuw.edu.pl/~mposiada Magdalena.Posiadala@fuw.edu.pl 1 Przypomnienie 125 (10) =? (2) Liczby ca kowite
Bardziej szczegółowoArytmetyka komputera. Na podstawie podręcznika Urządzenia techniki komputerowej Tomasza Marciniuka. Opracował: Kamil Kowalski klasa III TI
Arytmetyka komputera Na podstawie podręcznika Urządzenia techniki komputerowej Tomasza Marciniuka Opracował: Kamil Kowalski klasa III TI Spis treści 1. Jednostki informacyjne 2. Systemy liczbowe 2.1. System
Bardziej szczegółowoSystem liczbowy jest zbiorem reguł określających jednolity sposób zapisu i nazewnictwa liczb.
2. Arytmetyka komputera. Systemy zapisu liczb: dziesietny, dwójkowy (binarny), ósemkowy, szesnatskowy. Podstawowe operacje arytmetyczne na liczbach binarnych. Zapis liczby binarnej ze znakiem. Reprezentacja
Bardziej szczegółowo3.3.1. Metoda znak-moduł (ZM)
3.3. Zapis liczb binarnych ze znakiem 1 0-1 0 1 : 1 0 0 1 1 0 1 1 0 1 0 0 0 0 1 0 0 0 1 reszta 0 0 0 0 0 0 0 1 3.3. Zapis liczb binarnych ze znakiem W systemie dziesiętnym liczby ujemne opatrzone są specjalnym
Bardziej szczegółowoArytmetyka liczb binarnych
Wartość dwójkowej liczby stałoprzecinkowej Wartość dziesiętna stałoprzecinkowej liczby binarnej Arytmetyka liczb binarnych b n-1...b 1 b 0,b -1 b -2...b -m = b n-1 2 n-1 +... + b 1 2 1 + b 0 2 0 + b -1
Bardziej szczegółowoKod U2 Opracował: Andrzej Nowak
PODSTAWY TEORII UKŁADÓW CYFROWYCH Kod U2 Opracował: Andrzej Nowak Bibliografia: Urządzenia techniki komputerowej, K. Wojtuszkiewicz http://pl.wikipedia.org/ System zapisu liczb ze znakiem opisany w poprzednim
Bardziej szczegółowo1.1. Pozycyjne systemy liczbowe
1.1. Pozycyjne systemy liczbowe Systemami liczenia nazywa się sposób tworzenia liczb ze znaków cyfrowych oraz zbiór reguł umożliwiających wykonywanie operacji arytmetycznych na liczbach. Dla dowolnego
Bardziej szczegółowoDane, informacja, programy. Kodowanie danych, kompresja stratna i bezstratna
Dane, informacja, programy Kodowanie danych, kompresja stratna i bezstratna DANE Uporządkowane, zorganizowane fakty. Główne grupy danych: tekstowe (znaki alfanumeryczne, znaki specjalne) graficzne (ilustracje,
Bardziej szczegółowoWielkości liczbowe. Wykład z Podstaw Informatyki dla I roku BO. Piotr Mika
Wielkości liczbowe Wykład z Podstaw Informatyki dla I roku BO Piotr Mika Wprowadzenie, liczby naturalne Komputer to podstawowe narzędzie do wykonywania obliczeń Jeden bajt reprezentuje 0 oraz liczby naturalne
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ół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ółowo1259 (10) = 1 * * * * 100 = 1 * * * *1
Zamiana liczba zapisanych w dowolnym systemie na system dziesiętny: W systemie pozycyjnym o podstawie 10 wartości kolejnych cyfr odpowiadają kolejnym potęgom liczby 10 licząc od strony prawej i numerując
Bardziej szczegółowoArchitektura komputerów wer. 7
Architektura komputerów wer. 7 Wojciech Myszka 2013-10-29 19:47:07 +0100 Karty perforowane Kalkulator IBM 601, 1931 IBM 601 kalkulator Maszyna czytała dwie liczby z karty, mnożyła je przez siebie i wynik
Bardziej szczegółowoalgorytm przepis rozwiązania przedstawionego zadania komputer urządzenie, za pomocą którego wykonywane są algorytmy
Podstawowe pojęcia związane z informatyką: informatyka dziedzina wiedzy i działalności zajmująca się gromadzeniem, przetwarzaniem i wykorzystywaniem informacji, czyli różnego rodzaju danych o otaczającej
Bardziej szczegółowoWstęp do informatyki- wykład 1 Systemy liczbowe
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 Grębosz,
Bardziej szczegółowoArchitektura komputerów Reprezentacja liczb. Kodowanie rozkazów.
Architektura komputerów Reprezentacja liczb. Kodowanie rozkazów. Prezentacja jest współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego w projekcie pt. Innowacyjna dydaktyka
Bardziej szczegółowoWielkości liczbowe. Wykład z Podstaw Informatyki. Piotr Mika
Wielkości liczbowe Wykład z Podstaw Informatyki Piotr Mika Wprowadzenie, liczby naturalne Komputer to podstawowe narzędzie do wykonywania obliczeń Jeden bajt reprezentuje oraz liczby naturalne od do 255
Bardziej szczegółowoPozycyjny system liczbowy
Arytmetyka binarna Pozycyjny system liczbowy w pozycyjnych systemach liczbowych wkład danego symbolu do wartości liczby jest określony zarówno przez sam symbol, jak i jego pozycję w liczbie i tak np. w
Bardziej szczegółowoArytmetyka stałopozycyjna
Wprowadzenie do inżynierii przetwarzania informacji. Ćwiczenie 3. Arytmetyka stałopozycyjna Cel dydaktyczny: Nabycie umiejętności wykonywania podstawowych operacji arytmetycznych na liczbach stałopozycyjnych.
Bardziej szczegółowoWstęp do Informatyki. Reprezentacja liczb w komputerze Arytmetyka stało- i zmiennoprzecinkowa Przechowywanie danych pliki i foldery
Wstęp do Informatyki Reprezentacja liczb w komputerze Arytmetyka stało- i zmiennoprzecinkowa Przechowywanie danych pliki i foldery Pozycyjne systemy liczbowe Dziesiętny system liczbowy (o podstawie 10):
Bardziej szczegółowoZwykle liczby rzeczywiste przedstawia się w notacji naukowej :
Arytmetyka zmiennoprzecinkowa a procesory cyfrowe Prawa algebry stosują się wyłącznie do arytmetyki o nieograniczonej precyzji x=x+1 dla x będącego liczbą całkowitą jest zgodne z algebrą, dopóki nie przekroczymy
Bardziej szczegółowoSystemy liczenia. 333= 3*100+3*10+3*1
Systemy liczenia. System dziesiętny jest systemem pozycyjnym, co oznacza, Ŝe wartość liczby zaleŝy od pozycji na której się ona znajduje np. w liczbie 333 kaŝda cyfra oznacza inną wartość bowiem: 333=
Bardziej szczegółowoArchitektura komputera. Dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt
Architektura komputera Architektura von Neumanna: Dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt Zawartośd tej pamięci jest adresowana przez wskazanie miejsca, bez względu
Bardziej szczegółowoTechnologie Informacyjne Wykład 4
Technologie Informacyjne Wykład 4 Arytmetyka komputerów Wojciech Myszka Jakub Słowiński Katedra Mechaniki i Inżynierii Materiałowej Wydział Mechaniczny Politechnika Wrocławska 30 października 2014 Część
Bardziej szczegółowoPODSTAWY INFORMATYKI. Informatyka? - definicja
PODSTAWY INFORMATYKI Informatyka? - definicja Definicja opracowana przez ACM (Association for Computing Machinery) w 1989 roku: Informatyka to systematyczne badanie procesów algorytmicznych, które charakteryzują
Bardziej szczegółowoZestaw 3. - Zapis liczb binarnych ze znakiem 1
Zestaw 3. - Zapis liczb binarnych ze znakiem 1 Zapis znak - moduł (ZM) Zapis liczb w systemie Znak - moduł Znak liczby o n bitach zależy od najstarszego bitu b n 1 (tzn. cyfry o najwyższej pozycji): b
Bardziej szczegółowoSYSTEMY LICZBOWE. SYSTEMY POZYCYJNE: dziesiętny (arabski): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 rzymski: I, II, III, V, C, M
SYSTEMY LICZBOWE SYSTEMY POZYCYJNE: dziesiętny (arabski):,, 2, 3, 4, 5, 6, 7, 8, 9 rzymski: I, II, III, V, C, M System pozycyjno wagowy: na przykład liczba 444 4 4 4 4 4 4 Wagi systemu dziesiętnego:,,,,...
Bardziej szczegółowoReprezentacja stałoprzecinkowa. Reprezentacja zmiennoprzecinkowa zapis zmiennoprzecinkowy liczby rzeczywistej
Informatyka, studia niestacjonarne I stopnia Rok akademicki /, Wykład nr 4 /6 Plan wykładu nr 4 Informatyka Politechnika Białostocka - Wydział lektryczny lektrotechnika, semestr II, studia niestacjonarne
Bardziej szczegółowoMet Me ody numer yczne Wykład ykład Dr inż. Mic hał ha Łan Łan zon Instyt Ins ut Elektr Elektr echn iki echn i Elektrot Elektr echn olo echn
Metody numeryczne Wykład 2 Dr inż. Michał Łanczont Instytut Elektrotechniki i Elektrotechnologii E419, tel. 4293, m.lanczont@pollub.pl, http://m.lanczont.pollub.pl Zakres wykładu Arytmetyka zmiennopozycyjna
Bardziej szczegółowoWprowadzenie do informatyki - ć wiczenia
Kod uzupełnień do 2 (U2) dr inż. Izabela Szczęch WSNHiD Ćwiczenia z wprowadzenia do informatyki Reprezentacja liczb całkowitych Jak kodowany jest znak liczby? Omó wimy dwa sposoby kodowania liczb ze znakiem:
Bardziej szczegółowoSystemy zapisu liczb.
Systemy zapisu liczb. Cele kształcenia: Zapoznanie z systemami zapisu liczb: dziesiętny, dwójkowy, ósemkowy, szesnastkowy. Zdobycie umiejętności wykonywania działań na liczbach w różnych systemach. Zagadnienia:
Bardziej szczegółowoL6.1 Systemy liczenia stosowane w informatyce
L6.1 Systemy liczenia stosowane w informatyce Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego Publikacja jest dystrybuowana bezpłatnie Program Operacyjny Kapitał
Bardziej szczegółowoPracownia Komputerowa wyk ad IV
Pracownia Komputerowa wykad IV dr Magdalena Posiadaa-Zezula Magdalena.Posiadala@fuw.edu.pl http://www.fuw.edu.pl/~mposiada Magdalena.Posiadala@fuw.edu.pl 1 Reprezentacje liczb i znaków Liczby: Reprezentacja
Bardziej szczegółowoDZIESIĘTNY SYSTEM LICZBOWY
DZIESIĘTNY SYSTEM LICZBOWY Do zapisu dowolnej liczby system wykorzystuje dziesięć symboli (cyfr): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 Dowolną liczbę w systemie dziesiętnym możemy przedstawić jako następująca
Bardziej szczegółowoAdam Korzeniewski p Katedra Systemów Multimedialnych
Adam Korzeniewski adamkorz@sound.eti.pg.gda.pl p. 732 - Katedra Systemów Multimedialnych Sygnały dyskretne są z reguły przetwarzane w komputerach (zwykłych lub wyspecjalizowanych, takich jak procesory
Bardziej szczegółowoZapis liczb binarnych ze znakiem
Zapis liczb binarnych ze znakiem W tej prezentacji: Zapis Znak-Moduł (ZM) Zapis uzupełnień do 1 (U1) Zapis uzupełnień do 2 (U2) Zapis Znak-Moduł (ZM) Koncepcyjnie zapis znak - moduł (w skrócie ZM - ang.
Bardziej szczegółowoWstęp do Informatyki. dr inż. Paweł Pełczyński ppelczynski@swspiz.pl
Wstęp do Informatyki dr inż. Paweł Pełczyński ppelczynski@swspiz.pl Literatura 1. Brookshear, J. G. (2003). Informatyka w ogólnym zarysie. WNT, Warszawa. 3. Małecki, R. Arendt D. Bryszewski A. Krasiukianis
Bardziej szczegółowoArytmetyka komputera
Arytmetyka komputera Systemy zapisu liczb System dziesiętny Podstawą układu dziesiętnego jest liczba 10, a wszystkie liczby można zapisywać dziesięcioma cyframi: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Jednostka
Bardziej szczegółowoInformatyka kodowanie liczb. dr hab. inż. Mikołaj Morzy
Informatyka kodowanie liczb dr hab. inż. Mikołaj Morzy plan wykładu definicja informacji sposoby kodowania reprezentacja liczb naturalnych i całkowitych arytmetyka binarna arytmetyka oktalna arytmetyka
Bardziej szczegółowoWykład I: Kodowanie liczb w systemach binarnych. Studia Podyplomowe INFORMATYKA Podstawy Informatyki
Studia Podyplomowe INFORMATYKA Podstawy Informatyki Wykład I: Kodowanie liczb w systemach binarnych 1 Część 1 Dlaczego system binarny? 2 I. Dlaczego system binarny? Pojęcie bitu Bit jednostka informacji
Bardziej szczegółowoAdam Korzeniewski p Katedra Systemów Multimedialnych
Adam Korzeniewski adamkorz@sound.eti.pg.gda.pl p. 732 - Katedra Systemów Multimedialnych Sygnały dyskretne są z reguły przetwarzane w komputerach (zwykłych lub wyspecjalizowanych, takich jak procesory
Bardziej szczegółowoWstęp do informatyki. Pojęcie liczebności. Zapis liczb. Liczenie bez liczebników. Podstawy arytmetyki komputerowej. Cezary Bolek
Pojęcie liczebności Wstęp do informatyki Podstawy arytmetyki komputerowej Cezary Bolek cbolek@ki.uni.lodz.pl Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki Naturalna zdolność człowieka do postrzegania
Bardziej szczegółowoPodstawy Informatyki. Wykład 2. Reprezentacja liczb w komputerze
Podstawy Informatyki Wykład 2 Reprezentacja liczb w komputerze Jednostki informacji Bit (ang. bit) (Shannon, 948) Najmniejsza ilość informacji potrzebna do określenia, który z dwóch równie prawdopodobnych
Bardziej szczegółowoARCHITEKRURA KOMPUTERÓW Kodowanie liczb ze znakiem 27.10.2010
ARCHITEKRURA KOMPUTERÓW Kodowanie liczb ze znakiem 27.10.2010 Do zapisu liczby ze znakiem mamy tylko 8 bitów, pierwszy od lewej bit to bit znakowy, a pozostałem 7 to bity na liczbę. bit znakowy 1 0 1 1
Bardziej szczegółowoCyfrowy zapis informacji
F1-1 Cyfrowy zapis informacji Alfabet: uporządkowany zbiór znaków, np. A = {a,b,..., z} Słowa (ciągi) informacyjne: łańcuchy znakowe, np. A i = gdtr Długość słowa n : liczba znaków słowa, np. n(sbdy) =
Bardziej szczegółowoProcesor i jego architektura (CISC, RISC, 32/64 bity). Systemy wieloprocesorowe. wer Wojciech Myszka 16 pa«zdziernika 2008
Procesor i jego architektura (CISC, RISC, 32/64 bity). Systemy wieloprocesorowe. wer. 1.4 Wojciech Myszka 16 pa«zdziernika 2008 CISC I Complex Instruction Set Computers nazwa architektury mikroprocesorów
Bardziej szczegółowoPodstawy informatyki (2)
Podstawy informatyki (2) dr inż. Sebastian Pluta pluta@icis.pcz.pl Instytut Informatyki Teoretycznej i Stosowanej Informacje informatyka to nauka o przetwarzaniu i przechowywaniu informacji informacja
Bardziej szczegółowoSYSTEMY LICZBOWE. Zapis w systemie dziesiętnym
SYSTEMY LICZBOWE 1. Systemy liczbowe Najpopularniejszym systemem liczenia jest system dziesiętny, który doskonale sprawdza się w życiu codziennym. Jednak jego praktyczna realizacja w elektronice cyfrowej
Bardziej szczegółowoCyfrowy zapis informacji. 5 grudnia 2013 Wojciech Kucewicz 2
Cyfrowy zapis informacji 5 grudnia 2013 Wojciech Kucewicz 2 Bit, Bajt, Słowo 5 grudnia 2013 Wojciech Kucewicz 3 Cyfrowy zapis informacji Bit [ang. binary digit] jest elementem zbioru dwuelementowego używanym
Bardziej szczegółowoArytmetyka stało i zmiennoprzecinkowa
Arytmetyka stało i zmiennoprzecinkowa Michał Rudowicz 171047 Łukasz Sidorkiewicz 170991 Piotr Lemański 171009 Wydział Elektroniki Politechnika Wrocławska 26 października 2011 Spis Treści 1 Reprezentacja
Bardziej szczegółowoOperacje arytmetyczne
PODSTAWY TEORII UKŁADÓW CYFROWYCH Operacje arytmetyczne Bibliografia: Urządzenia techniki komputerowej, K. Wojtuszkiewicz http://pl.wikipedia.org/ Dodawanie dwójkowe Opracował: Andrzej Nowak Ostatni wynik
Bardziej szczegółowoArchitektura komputerów wer. 3
Architektura komputerów wer. 3 Wojciech Myszka, Maciej Panek listopad 2014 r. Karty perforowane Kalkulator IBM 601, 1931 IBM 601 kalkulator Maszyna czytała dwie liczby z karty, mnożyła je przez siebie
Bardziej szczegółowoSYSTEMY LICZBOWE 275,538 =
SYSTEMY LICZBOWE 1. Systemy liczbowe Najpopularniejszym systemem liczenia jest system dziesiętny, który doskonale sprawdza się w życiu codziennym. Jednak jego praktyczna realizacja w elektronice cyfrowej
Bardziej szczegółowoModuł 2 Zastosowanie systemów liczbowych w informacji cyfrowej
Moduł 2 Zastosowanie systemów liczbowych w informacji cyfrowej 1. Pozycyjne systemy liczbowe 2. Zasady zapisu liczb w pozycyjnych systemach liczbowych 3. Podstawowe działania na liczbach binarnych 4. Liczby
Bardziej szczegółowoPrefiksy binarne. kibibit (Kibit) mebibit (Mibit) gibibit (Gibit) tebibit (Tibit) pebibit (Pibit) exbibit (Eibit) zebibit (Zibit) yobibit (Yibit)
Podstawy Informatyki Wykład 2 Reprezentacja liczb w komputerze Jednostki informacji Bit (ang. bit) (Shannon, 948) Najmniejsza ilość informacji potrzebna do określenia, który z dwóch równie prawdopodobnych
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ółowoDr inż. Grażyna KRUPIŃSKA. D-10 pokój 227 WYKŁAD 1 WSTĘP DO INFORMATYKI
Dr inż. Grażyna KRUPIŃSKA Grazyna.Krupinska@fis.agh.edu.pl http://orion.fis.agh.edu.pl/~grazyna/ D-10 pokój 227 WYKŁAD 1 WSTĘP DO INFORMATYKI Plan wykładu 2 Wprowadzenie, trochę historii, systemy liczbowe
Bardziej szczegółowoDYDAKTYKA ZAGADNIENIA CYFROWE ZAGADNIENIA CYFROWE
ZAGADNIENIA CYFROWE ZAGADNIENIA CYFROWE @KEMOR SPIS TREŚCI. SYSTEMY LICZBOWE...3.. SYSTEM DZIESIĘTNY...3.2. SYSTEM DWÓJKOWY...3.3. SYSTEM SZESNASTKOWY...4 2. PODSTAWOWE OPERACJE NA LICZBACH BINARNYCH...5
Bardziej szczegółowo