Arytmetyka stałopozycyjna

Wielkość: px
Rozpocząć pokaz od strony:

Download "Arytmetyka stałopozycyjna"

Transkrypt

1 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. Algorytmy dodawania, odejmowania, mnożenia i dzielenia pisemnego w kodzie NKB. Wykonywanie operacji arytmetycznych w systemach cyfrowych. Operacje arytmetyczne w kodzie BCD i kodach uzupełnieniowych. Algorytmy mnożenia i dzielenia w systemach cyfrowych. 1. Odjąć pisemnie liczby binarne w kodzie NKB o wartościach A = 14.5 i B = Pomnożyć pisemnie liczby binarne w kodzie NKB o wartościach A = i B = Podzielić pisemnie liczby binarne w kodzie NKB o wartościach A = i B = Wyznaczyć iloraz i resztę. 4. Dodać w kodzie NKB oraz kodzie BCD następujące liczby binarne 8-bitowe o wartościach A = 94 i B = Odjąć w kodzie ZM liczby binarne 8-bitowe o wartościach A = +12 i B = Dodać w kodzie U1 liczby binarne 8-bitowe o wartościach A = -13 i B = Dodać w kodzie U1 liczby binarne 8-bitowe o wartościach A = -25 i B = Dodać w kodzie U2 liczby binarne 9-bitowe o wartościach A = -35 i B = Wykonać mnożenie w kodzie NKB za pomocą algorytmu przeznaczonego dla układów cyfrowych. Pomnożyć 5-bitowe liczby binarne A = = +13 i B = = +9. Przyjąć wynik 10-bitowy. 10. Wykonać dzielenie w kodzie NKB za pomocą algorytmu przeznaczonego dla układów cyfrowych. Podzielić liczbę 8-bitową A = = +56 przez liczbę 4-bitową B = 0110 = +6.

2 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. Algorytmy dodawania, odejmowania, mnożenia i dzielenia pisemnego w kodzie NKB. Wykonywanie operacji arytmetycznych w systemach cyfrowych. Operacje arytmetyczne w kodzie BCD i kodach uzupełnieniowych. Algorytmy mnożenia i dzielenia w systemach cyfrowych. 3. Operacje na liczbach stałopozycyjnych Wprowadzenie teoretyczne Na liczbach rzeczywistych zapisanych w układzie binarnym można wykonywać podstawowe operacje arytmetyki stałopozycyjnej podobnie jak w układzie dziesiętnym Reguły działań arytmetycznych w układzie dziesiętnym Dodawanie Operacja dodawania dwóch liczb S = A+B w układzie dziesiętnym rozpoczyna się od cyfr najmniej znaczących a i oraz b i obu liczb. Jeśli suma cyfr przekroczy 9 pojawia się przeniesienie c i+1 =1 na następną pozycję, a jeśli nie to otrzymana suma stanowi najmniej znaczącą cyfrę wyniku. Wynika stąd, że w przypadku dodawania cyfr a i oraz b i należy uwzględnić przeniesienie wchodzące c i z pozycji mniej znaczącej oraz przeniesienie wychodzące c i+1 na pozycję bardziej znaczącą. W przypadku dodawania wartość przeniesienia nie może przekroczyć jedynki. Reguły dodawania cyfr w układzie dziesiętnym mogą być zapisane w postaci: s i = (a i + b i + c i ) mod 10, c i+1 = (a i + b i + c i ) div 10, gdzie mod operator reszta z dzielenia, div operator część całkowita z dzielenia. W wyniku dodawania liczb n-cyfrowych może pojawić się wynik co najwyżej (n+1) cyfrowy. Przykład Dodać pisemnie liczby dziesiętne A = 244 i B = Suma S = A + B = = 302.

3 Odejmowanie Wyznaczanie różnicy cyfr a i - b i może wymagać pobrania pożyczki z pozycji bardziej znaczącej (i+1). Jeśli między dwoma odejmowanymi cyframi zachodzi relacja a i < b i, to pobierana jest pożyczka z pozycji (i+1). Jej wartość na pozycji i wynosi 10. Stąd, d i = (10 + a i ) - b i, natomiast cyfra a i+1 > 0 przyjmuje wartość równą (a i+1-1). W przypadku odejmowania można przyjąć, że A B. Wówczas różnica jest dodatnia i wynosi D = A-B. W przeciwnym przypadku należy obliczyć D = B-A i wynik wziąć ze znakiem przeciwnym. Przykład Odjąć pisemnie liczby dziesiętne A = 143 i B = Różnica D = A - B = = 46. Mnożenie W przypadku mnożenia dwóch cyfr a i oraz b i może pojawić się przeniesienie wychodzące c i+1 na pozycję bardziej znaczącą o wartości większej niż jeden. Uwzględniając przeniesienie z pozycji mniej znaczącej reguły obliczania iloczynu M = A*B w układzie dziesiętnym można zapisać w postaci: m i = (a i * b i + c i ) mod 10, c i+1 = (a i * b i + c i ) div 10. W wyniku mnożenia liczby k-cyfrowej przez liczbę n-cyfrową może pojawić się iloczyn złożony z co najwyżej (k+n) cyfr. Przykład Pomnożyć pisemnie liczby dziesiętne A = 453 i B = * Iloczyn M = A * B = 453 * 37 = W wyniku mnożenia liczby 3-cyfrowej przez liczbę 2-cyfrową otrzymano 5-cyfrowy iloczyn.

4 Dzielenie Operacja dzielenia dwóch liczb E = A : B jest równoważna odejmowaniu A B. Jeśli A B, to można wyznaczyć część całkowitą z dzielenia oraz resztę lub część całkowitą i część ułamkową z zadaną dokładnością (ustalona liczba cyfr po przecinku ilorazu). Wynika stąd, że iloraz można obliczyć jedynie z zadaną dokładnością lub podać wynik w postaci ułamka. Przykład Podzielić pisemnie liczby dziesiętne A = 1121 i B = : Iloraz E = A : B = 1121 : 37 = 30 i 11/37, tj. iloraz wynosi trzydzieści i jedenaście trzydziestych siódmych. Dzielenie można wykonywać z uwzględnieniem zadanej liczby miejsc po przecinku : W wyniku dzielenia E = (297) Operacje arytmetyczne w naturalnym kodzie binarnym (NKB) Reguły działań arytmetycznych w układzie binarnym są podobne do reguł stosowanych w układzie dziesiętnym. Różnica polega na tym, że operacje dodawania cyfr wykonuje się modulo dwa, a w przypadku odejmowania pożyczka z pozycji bardziej znaczącej ma wartość dwa na pozycji mniej znaczącej. Poniżej są przedstawione reguły pisemnego dodawania, odejmowania, mnożenia i dzielenia dla liczb jednobitowych w kodzie NKB.

5 Dodawanie binarne W przypadku dodawania składników jednobitowych a i + b i są możliwe cztery przypadki. Cyfra a i może być równa 0 lub 1 i podobnie cyfra b i. Prowadzi to do następujących reguł dodawania składników jednobitowych. Przeniesienie c i Składnik a i Składnik b i Suma s i Przykład Dodać pisemnie liczby binarne A = = i B = = S = A + B = = = Sprawdzenie: = Odejmowanie binarne Operacja odejmowania binarnego liczb jednobitowych a i - b i może wymagać zaciągnięcia pożyczki z pozycji bardziej znaczącej. Uwzględniając dopuszczalne wartości bitów oraz to, że pożyczka ma wartość dwa, reguły odejmowania binarnego liczb jednobitowych mają następującą postać: Pożyczka p i Odjemna a i Odjemnik b i Różnica d i W przypadku odejmowania 0 1 pobierana jest pożyczka o wartości jeden z pozycji (i+1). Wartość pożyczki na pozycji o numerze (i) wynosi 2. Stąd, różnica a i - b i = = 1. Podczas odejmowania liczb binarnych A B wystarczy zakładać, że A B, gdyż w przeciwnym przypadku można wykonać odejmowanie B A i następnie wynik końcowy wziąć ze znakiem przeciwnym. Przykład Odjąć pisemnie liczby binarne A = = 9.25 i B = =

6 D = A - B = = = Sprawdzenie: = Mnożenie binarne Mnożenie cyfr binarnych a i * b i nie prowadzi do powstania przeniesienia na pozycję bardziej znaczącą. Stąd, reguły mnożenia mają następującą postać: Mnożna a i Mnożnik b i Iloczyn m i W przypadku mnożenia liczb w układzie binarnym zachodzi konieczność sumowania iloczynów cząstkowych. W wyniku mnożenia może pojawić się iloczyn zajmujący tyle bitów ile wynosi suma bitów zajmowanych przez mnożną i mnożnik. Jeśli mnożone liczby są ułamkami, to podczas mnożenia można pominąć przecinki w mnożnej i mnożniku, a następnie wstawić przecinek w otrzymanym iloczynie. Liczba bitów po przecinku w iloczynie jest równa łącznej liczbie bitów po przecinku w mnożnej i mnożniku. Przykład Pomnożyć pisemnie liczby binarne A = = 7.25 i B = = * Uwzględniając trzy miejsca po przecinku uzyskuje się M = A * B = * = = Sprawdzenie: 7.25 * 6.5 = Przykład Pomnożyć pisemnie liczby binarne A = = 7.5 i B = = * przeniesienie

7 Uwzględniając dwa miejsca po przecinku uzyskuje się M = A * B = * = = Sprawdzenie: 7.5 * 7.5 = Dzielenie binarne Operacja dzielenia binarnego jest związana z odejmowaniem dzielnika od dzielnej. W przypadku dzielenia cyfr binarnych a i : b i wystarczy rozważyć tylko dzielenie przez jeden. Stąd, reguły dzielenia mają następującą postać: Dzielna a i 1 0 Dzielnik b i Iloraz e i 1 0 Dzielenie można zakończyć w momencie, gdy pojawi się reszta lub kontynuować dzielenie, aż do uzyskania zadanej liczby miejsc po przecinku. Najlepiej przed dzieleniem przesunąć przecinek w dzielnej i dzielniku o taką samą ilość pozycji tak, aby w dzielniku nie występowały bity po przecinku. Przykład Podzielić pisemnie liczby binarne A = = i B = 10.1 = 2.5. Przesunięcie przecinka A = oraz B = : reszta Można kontynuować dzielenie i w rezultacie otrzymać część ułamkową.

8 : W wyniku dzielenia otrzymano iloraz E = A : B = : 10.1 = 1011 reszta 11.1/101 = 11 reszta 3.5/5. Sprawdzenie: : 2.5 = 11.7 = (1100) Realizacja operacji arytmetycznych w systemach cyfrowych W systemach cyfrowych operacje arytmetyczne są wykonywane na liczbach o określonej liczbie bitów. W wyniku realizacji działań arytmetycznych pojawia się wynik, który jest zapamiętywany na określonej liczbie bitów. Na przykład w przypadku dodawania liczb n-bitowych często przyjmuje się, że wynik również zajmuje n bitów. Można zauważyć, że wykonanie określonej operacji arytmetycznej na liczbach o określonej liczbie bitów może dać wynik, który wykracza poza zakres wartości liczbowych reprezentowanych w danym kodzie na danej liczbie bitów. Wówczas powstaje nadmiar (ang. overflow), który musi być zasygnalizowany użytkownikowi układu cyfrowego. Powstawanie nadmiaru podczas dodawania liczb dodatnich w kodzie NKB ilustruje następujący przykład. Przykład Dodać dwie liczby 4-bitowe w kodzie NKB. Wynik sumowania zapamiętać na 4 bitach. Liczba A = 1100 = 12. Liczba B = 1010 = C= C - przeniesienie S = A + B = = = 22. Sprawdzenie = 22.

9 W wyniku operacji sumowania pojawia się przeniesienie c=1 na pozycję numer cztery. Oznacza to, że zakres wyniku został przekroczony. Rozwiązaniem tego problemu jest wyposażenie układu cyfrowego w sygnalizację przeniesienia lub zwiększenie zakresu wyniku o jeden bit. W praktyce cyfrowe układy arytmetyczne wykonujące podstawowe działania są wyposażone w sygnał wyjściowy sygnalizujący nadmiar (np. jednostka arytmetyczno-logiczna procesora). Układy te sygnalizują także inne cechy wyniku jak: znak, wynik jest równy zero, wynik zawiera parzystą liczbę jedynek, itp. Bity te są nazywane w układach cyfrowych znacznikami (flagami, ang. flags) Dodawanie liczb stałopozycyjnych Liczby dodatnie w kodach ZM, U1 i U2 są reprezentowane tak jak w kodzie NKB. Dodawanie takich liczb wykonuje się w sposób identyczny dla wszystkich kodów. W przypadku liczb A i B dodając bity z pozycji i-tej uwzględnia się również przeniesienie z pozycji mniej znaczącej. Dlatego w czasie sumowania na i-tej pozycji dodawane są trzy bity: dwa bity a i oraz b i należące do obu składników oraz przeniesienie c i z pozycji mniej znaczącej (i-1). Suma a i + b i + c i daje wynik s i oraz przeniesienie wychodzące c i+1. Zasadę obliczania sumy s i oraz przeniesienia c i+1 w przypadku sumatora jednobitowego pokazano poniżej. a i b i c i+1 c i Łącząc szeregowo n sumatorów jednobitowych powstanie sumator n-bitowy. s i a i b i c i s i c i Sumowanie dwóch liczb o określonej liczbie bitów może dać wynik, który wykracza poza zakres wartości liczbowych reprezentowanych w danym kodzie na określonej liczbie bitów. Powstaje wówczas nadmiar, który musi być zasygnalizowany przez odpowiedni bit znacznikowy układu cyfrowego.

10 Przykład Dodać dwie, dodatnie liczby 8-bitowe A=48 i B=58 w kodach NKB, ZM, U1, U2 oraz kodzie BCD. Wynik sumowania zapamiętać na 8 bitach NKB,ZM,U1,U W przypadku kodu BCD otrzymuje się: 1 przeniesienie = (10)(0) nie jest cyfrą dziesiętną Otrzymany wynik nie jest prawidłowy. Na młodszej tetradzie pojawiło się 0 oraz przeniesienie na starszą tetradę. Natomiast na starszej tetradzie pojawiło się słowo nie należące do kodu BCD (liczba 10). W takich przypadkach proces sumowania rozszerza się o krok korekcyjny. Jeśli na i-tej tetradzie powstało przeniesienie lub wynik sumowania nie jest cyfrą dziesiętną, to do wyniku dodaje się 6 oraz ewentualne przeniesienie powstające na (i-1)-ej tetradzie. Dla rozpatrywanego przykładu 3.11 korekcja wyniku dla kodu BCD przebiega w sposób następujący: = (10)(0) = (6)(6) - C= = (0)(6) W wyniku korekcji wyniku pojawiło się przeniesienie na trzecią tetradę. Otrzymana liczba ma więc w kodzie BCD następującą postać: = 106 Jest to poprawny wynik dodawania liczb A=48 i B=58. Przykład Dodać dwie, dodatnie liczby 8-bitowe A=78 i B=57 w kodach NKB, ZM, U1, U2 oraz kodzie BCD. Wynik sumowania zapamiętać na 8 bitach NKB,ZM,U1,U W kodzie NKB otrzymana suma jest równa 135, a więc wynik jest poprawny. Natomiast w kodach ZM, U1 i U2, ze względu na ustawiony bit znaku na najstarszej pozycji, otrzymany wynik jest ujemny. Rzeczywiście liczby 135 nie da się przedstawić na 7 bitach. Prawidłowe dodawanie takich liczb można wykonać jedynie na większej liczbie bitów. W rozpatrywanym przypadku wystarczy wykonać dodawanie na słowach 9-bitowych.

11 NKB,ZM,U1,U = 135 W przypadku kodu BCD otrzymuje się: = (12)(15) W wyniku dodawania na obu tetradach pojawiły się słowa nie należące do kodu BCD (liczby 15 i 12). W celu otrzymania prawidłowego wyniku należy dokonać korekcji dodając do każdej tetrady = (12)(15) = (6) (6) = (3)(5) C=(1) (1) C=(1) nadmiar (przeniesienie na trzecią tetradę) W wyniku dodawania otrzymano przeniesienie na trzecią tetradę. Otrzymana suma ma w kodzie BCD następującą postać: = 135 Jest to poprawny wynik dodawania liczb A=78 i B= Odejmowanie liczb stałopozycyjnych Odejmowanie liczb w kodach uzupełnieniowych U1, U2 można sprowadzić do dodawania dwóch argumentów o przeciwnych znakach. W kodzie ZM odejmowanie dwóch liczb o przeciwnych znakach sprowadza się do porównania modułów liczb w celu ustalenia znaku wyniku jako znaku liczby o większym module. Następnie wyznacza się różnicę modułów przez odjęcie mniejszego modułu od większego modułu w sposób identyczny jak dla liczb w kodzie NKB. W przypadku odejmowania od a i = 0 wartości b i = 1 należy pobrać pożyczkę p i+1 = 1 wychodzącą z pozycji (i+1). Wartość tej pożyczki na pozycji (i) wynosi 2. Podczas odejmowania bitów na i-tej pozycji należy odjąć również pożyczkę p i wchodzącą z pozycji mniej znaczącej (i-1). Wzór na odejmowanie bitów z pozycji i-tej ma następującą postać: d i = a i - b i - p i + 2 p i+1.

12 Np. Odejmowanie A=2 i B=1. Różnica D=A-B=1. W tym przypadku p 0 =0, p 1 =1 i p 2 =0. W wyniku odejmowania d 0 = a 0 - b 0 - p p 1 = = 1 oraz d 1 = a 1 b 1 p p 2 = = (2) - 01 (1) (1) Poniżej przedstawiono sposób obliczania różnicy dwóch liczb d i = a i - b i - p i + 2 p i+1 z uwzględnieniem pożyczki. a i b i p i d i p i Przykład Odjąć w kodzie ZM dwie liczby 8-bitowe A=-28 i B=10. W kodzie ZM odejmowanie realizowane jest na modułach liczb a następnie uzupełniany jest znak wyniku. Porównanie modułów liczb prowadzi do przyjęcia ujemnego znaku wyniku. Odejmując od 28 liczbę 10 otrzymuje się: = = = 18 Uwzględniając znak wyniku otrzymana różnica w kodzie ZM ma wartość 18 = Odejmowanie w kodzie ZM wymaga ustalenia znaku wyniku na podstawie porównania modułów argumentów. Wynika stąd, że w kodzie ZM odejmowanie realizuje się inaczej niż dodawanie w tym kodzie, które nie wymaga takiego porównywania. Jest to wada kodu ZM, która powoduje, że jest on rzadko stosowany. W przypadku kodów uzupełnieniowych U1 i U2 przedstawiona wada kodu ZM nie występuje. Odejmowanie wykonuje się w tych kodach w taki sam sposób jak dodawanie z uwzględnieniem zakresu liczb dodatnich i ujemnych w obu typach kodów.

13 Odejmowanie w kodzie U1 W kodzie U1 wartość dziesiętną liczby całkowitej R = a n-1 a n-2...a 1 a 0 można obliczyć ze wzoru: n 2 n 1 k 1(2 1) + k 2 k= 0 R = a n a. Dla liczb dodatnich (a n-1 =0). Dla liczb ujemnych (a n-1 =1), natomiast na pozostałych (n-1) bitach znajduje się liczba dodatnia X będąca dopełnieniem modułu liczby R do 2 (n-1) 1 (suma R + X wynosi 2 (n-1) -1). Dla R ujemnego wartość (n-1)-bitowej liczby X można obliczyć ze wzoru: n 2 k n 1 X = ak 2 = (2 1) + R. k= 0 Sposób odejmowania zależy od wartości liczby X oraz znaków odejmowanych liczb. Przykład Przedstawić w 8-bitowym kodzie U1 liczbę R=-20. Podać wartość liczby X zdefiniowanej na pierwszych siedmiu bitach słowa kodowego. Obliczyć wartość W = R + X. -R = 20 = R = -20 = X = = ( 20) = 107 W = R + X = 127. Odejmowanie liczb o różnych znakach Dodając do ujemnej liczby A (X = 2 n A) dodatnią liczbę B (Y = B) obliczana jest suma bitów obu liczb z pozycji od 0 do n-2 (X + Y), która wynosi n 1 (2 1) + A + B. Jeśli moduł liczby ujemnej jest większy (równy) niż moduł liczby dodatniej, tj. A B, to suma A+B jest ujemna (równa zero) i wynik jest mniejszy (równy) od 2 (n-1) -1. W tym przypadku nie następuje przeniesienie na pozycję (n-1) o wadze 2 (n-1). Na najstarszej pozycji pozostaje bit znaku (a n-1 =1), a otrzymana liczba jest ujemna. Przedstawiony przypadek ilustruje następujący przykład. Przykład Dodać w 8-bitowym kodzie U1 liczby A=-20 i B= (-20) (+7) (-13) (+13) W tym przypadku A > B. Nie powstało przeniesienie na pozycję najbardziej znaczącą (n-1) i wynik jest poprawny. W przypadku dodawania w kodzie U1 liczb n-bitowych A i B o przeciwnych znakach nieprawidłowy wynik pojawi się, gdy moduł liczby dodatniej jest większy od modułu liczby ujemnej, tj. gdy B > A. W tym przypadku na (n-1) bitach liczby ujemnej A, zapisanej w kodzie U1, zakodowana jest liczba dodatnia X będąca dopełnieniem modułu liczby do 2 (n-1) -1, natomiast na odpowiednich (n-1) pozycjach liczby dodatniej B jest zakodowany jej moduł. Jeśli wartość modułu liczby B jest większa niż modułu A, to po dodaniu pierwszych (n-1)

14 bitów pojawi się liczba większa od 2 (n-1) 1. Spowoduje to pojawienie się przeniesienia na pozycję bitu znaku co prowadzi do zmiany bitu wyniku na 0 (wynik ma być dodatni). Wartość liczbowa wyniku jest równa sumie bitów obu liczb z pozycji od 0 do n-2, pomniejszonej o wartość przeniesienia na pozycję (n-1). Stąd, suma liczb ma wartość n 1 n 1 (2 1) + A + B 2 = A + B 1. Jest to wartość nieprawidłowa. W takim przypadku należy wykonać krok korekcyjny i dodać do wyniku 1. Przedstawione rozważania ilustruje następujący przykład. Przykład Dodać w 8-bitowym kodzie U1 liczby A=-20 i B= (-20) (+45) C= (+24) W tym przypadku B > A. Powstało przeniesienie na pozycję bitu znaku. W wyniku dodawania otrzymano liczbę +24 oraz przeniesienie. Krok korekcyjny polega na dodaniu jedynki do wyniku: (+24) (+1) korekcja (+25) Konieczność dokonywania korekcji wyniku w przypadkach powstawania przeniesienia na najbardziej znaczącą pozycję jest wadą kodu U1, gdyż wydłuża czas dodawania. W skrajnym przypadku dodanie jedynki w ramach korekcji wyniku może spowodować, że przeniesienie będzie propagować przez wszystkie pozycje wyniku. Może to prowadzić do dwukrotnego zwiększenia czasu dodawania. Wady tej nie ma kod U2, w którym nie jest wymagana korekcja podczas dodawania liczb z przeciwnym znakiem. Odejmowanie liczb ujemnych Dodawanie liczb ujemnych A i B w kodzie U1 zawsze da przeniesienie wychodzące z pozycji (n-1), gdyż oba bity znaku są jedynkami. Jeśli suma bitów pochodzących z pozycji od 0 do (n-2) (X + Y)obu liczb jest większa lub równa 2 (n-1) -1, to aby otrzymać prawidłowy wynik należy wykonać krok korekcyjny dodając do wyniku 1. Przykład Dodać w 8-bitowym kodzie U1 liczby A=-20 i B= (-20)(107) (-30) (97) C= (-51) (+1) korekcja (-50) (50)

15 Suma liczb (n-1)-bitowych jest większa niż 127 ( = 204). W celu otrzymania prawidłowej wartości do wyniku dodano jeden. Przykład Dodać w 8-bitowym kodzie U1 liczby A=-85 i B= (-85) (42) (-42) (85) C= (+127) (+1) korekcja (-127) Suma liczb (n-1)-bitowych jest równa 127 ( ). W celu otrzymania prawidłowej wartości do wyniku dodano jeden. Jeśli suma bitów pochodzących z pozycji od 0 do (n-2) (X+Y) obu liczb jest mniejsza niż 2 (n-1) -1, to dodawanie liczb, nawet po uwzględnieniu korekcji, prowadzi do nieprawidłowego wyniku. Przykład Dodać w 8-bitowym kodzie U1 liczby A=-30 i B= (-30) (97) (-98) (29) C= (+126) (+1) korekcja (+127) Suma liczb (n-1)-bitowych jest mniejsza niż 127 ( = 126). Nawet po dodaniu jedynki nie otrzymano prawidłowego wyniku (A+B = 128). Jeśli jednak wykona się to samo dodawanie dla liczb 9-bitowych (n=9), to otrzyma się przypadek, w którym suma liczba (n-1) bitowych przekroczy 2 (n-1) -1 = 255. Wówczas wynik będzie prawidłowy po dodaniu jedynki (-30) (225) (-98) (157) - C= (-129) (+1) korekcja (-128) Konieczność wykonywania kroku korekcyjnego w przypadku, gdy na pozycji najbardziej znaczącej (n-1) pojawia się przeniesienie, jest wadą kodu U1. Realizacja operacji odejmowania w kodzie U2 nie ma tej wady.

16 Odejmowanie w kodzie U2 W kodzie U2 wartość dziesiętną liczby całkowitej R = a n-1 a n-2...a 1 a 0 można obliczyć ze wzoru: n 2 n 1 k 1(2 ) + k 2 k= 0 R = a n a. Dodając do ujemnej liczby A dodatnią liczbę B obliczana jest suma bitów obu liczb z pozycji od 0 do n-2, która wynosi n 1 (2 ) + A + B. Jeśli suma ta przekroczy wartość 2 (n-1) 1, to pojawi się przeniesienie na pozycję bitu znaku (pozycja o numerze n-1). Znak wyniku będzie wówczas równy 0 a wartość sumy wyniesie n 1 n 1 ( 2 ) + A + B 2 = A + B. Wynika stąd, że dodawanie liczb z przeciwnym znakiem w kodzie U2 daje poprawny wynik bez kroku korekcyjnego. Przykład Dodać w 8-bitowym kodzie U2 liczby A=-20 i B= (-20) (+45) C= (+25) Wynik dodawania jest poprawny i wynosi = 25. Przykład Dodać w 8-bitowym kodzie U2 liczby A=20 i B= (+20) (-45) (-25) (+25) Wynik dodawania jest poprawny i wynosi = -25. Dodając dwie liczby ujemne można przekroczyć dopuszczalny zakres dla kodu U2 i wówczas na najbardziej znaczącej pozycji powstanie zero, co oznacza, że wynik jest dodatni. Nie jest to zgodne z prawdą, gdyż obie liczby są ujemne. W takim przypadku należy wykonać operacje na liczbach o większej liczbie bitów.

17 Przykład Dodać w 8-bitowym kodzie U2 liczby A=-20 i B= (-20) (-45) C= (-65) Wynik dodawania jest poprawny i wynosi = -65. Przykład Dodać w 8-bitowym kodzie U2 liczby A=-40 i B= (-40) (-120) C= (+96) W przypadku uwzględniania 8 bitów wynik nie jest prawidłowy. Jeśli uwzględni się liczby 9-bitowe, to otrzymany wynik będzie poprawny (-40) (-120) C= (-160) (+160) Mnożenie liczb stałopozycyjnych W systemie dwójkowym liczby A i B mnoży się w tylu krokach z ilu bitów składają się czynniki. Jeśli mnoży się pisemnie dwie liczby n-bitowe w kodzie NKB, to wykonuje się to w n krokach. W każdym kroku mnoży się jedną cyfrę mnożnika B przez mnożną A. W wyniku otrzymuje się iloczyn cząstkowy, który jest wpisywany z odpowiednim przesunięciem. Na końcu algorytmu sumowanych jest n iloczynów cząstkowych. Wynik mnożenia może być co najwyżej (n+n) bitowy. Przykład Pomnożyć pisemnie w kodzie NKB 4-bitowe liczby binarne A = 0101 = 5 i B = 0111 = 7. Iloczyn A * B = mnożna (+5) *0111 mnożnik (+7) przeniesienie iloczyn (+35)

18 W urządzeniach cyfrowych stosuje się zwykle sumatory dwuargumentowe. Należy więc tak zmodyfikować algorytm mnożenia, aby już w każdym kroku wykonywać sumowanie iloczynów cząstkowych, a nie sumowanie wielu składników na końcu algorytmu. Dlatego w każdym kroku algorytmu mnożenia liczb w kodzie NKB wykonuje się dodawanie iloczynów cząstkowych i przesunięcie wyniku o jedną pozycję w prawo. Jednym ze składników dodawania jest zawsze iloczyn cząstkowy, a drugi składnik zależy od aktualnej wartości najmniej znaczącego bitu mnożnika (najbardziej skrajny prawy bit mnożnika). Jeśli jest on równy 1, to składnik jest mnożną, a jeśli jest on równy 0, to składnik jest zerem (słowem dwójkowym reprezentującym liczbę 0). W celu ilustracji działania algorytmu zostanie rozpatrzone mnożenie liczb +7 i +5. Oba czynniki można zapisać w kodzie NKB na czterech bitach. Iloczyny cząstkowe i wynik mnożenia mogą być co najwyżej 8-bitowe. Algorytm rozpoczyna się od zapisania mnożnika +5 na młodszych bitach 8-bitowego słowa (druk wytłuszczony), w którym będą składowane iloczyny cząstkowe. Na starszych bitach słowa jest wpisywane 0. Następnie wykonywane są cztery kroki złożone z dodawania i przesunięcia w prawo. Jeśli wartość bitu na najmniej znaczącej pozycji 8-bitowego słowa wynosi 0, to do czterech najbardziej znaczących bitów słowa jest dodawane 0, a jeśli wartość tego bitu wynosi 1, to do czterech najbardziej znaczących bitów słowa jest dodawana mnożna. Przykład Wykonać mnożenie czynników w kodzie NKB za pomocą algorytmu przeznaczonego dla układów cyfrowych. Pomnożyć 4-bitowe liczby binarne A = 0111 = +7 i B = 0101 = +5. Przyjąć wynik 8-bitowy. Iloczyn A * B = +35. Bity mnożnika zostały wytłuszczone. mnożna (+7) 0111 mnożnik (+5) zapisanie argumentów Krok 1. Dodanie mnożnej do starszej części 8-bitowego słowa i przesunięcie wyniku w prawo o jeden bit Przesunięcie wyniku: Krok 2. Dodanie zera do starszej części 8-bitowego słowa i przesunięcie wyniku w prawo o jeden bit Przesunięcie wyniku:

19 Krok 3. Dodanie mnożnej do starszej części 8-bitowego słowa i przesunięcie wyniku w prawo o jeden bit Przesunięcie wyniku: Krok 4. Dodanie zera do starszej części 8-bitowego słowa i przesunięcie wyniku w prawo o jeden bit Przesunięcie wyniku: = (+35) Drukiem wytłuszczonym zaznaczono kolejne bity mnożnika. Są one zastępowane bitami wyników cząstkowych, aż po czwartym kroku 8-bitowe słowo zawiera wynik. W przykładzie jest to słowo reprezentujące wartość +35. Algorytm mnożenia liczb w kodzie NKB Schemat blokowy algorytmu mnożenia START RH = 0 RL = mnożnik M = mnożna N = licznik N R 0 = 1 T RH = RH + 0 RH = RH + M Przesunięcie R w prawo N = N - 1 N N = 0 T STOP

20 Opis słowny algorytmu mnożenia 1. Na podstawie sumy liczby bitów mnożnej (A) i mnożnika (B) ustalić długość słowa wyniku R. 2. Na mniej znaczącej części słowa wyniku wpisać mnożnik, tj. RL = B. 3. Jeśli wartość najmniej znaczącego bitu wyniku wynosi 0, to do bardziej znaczącej części słowa wyniku dodać zero, tj. RH = RH + 0, w przeciwnym przypadku do bardziej znaczącej części słowa wyniku dodać mnożną, tj. RH = RH + A. 4. Przesunąć wynik cząstkowy o jedną pozycję w prawo (na najstarszą pozycję wchodzi 0 lub przeniesienie, jeśli powstało). 5. Jeśli wykonano liczbę kroków równą liczbie bitów mnożnika, to należy algorytm zakończyć, w przeciwnym wypadku należy przejść do wykonania kroku 3. W systemach cyfrowych czynniki oraz wyniki cząstkowe są przechowywane w rejestrach (np. w rejestrach procesora). Przedstawiony algorytm można zrealizować w układzie składającym się z dwóch rejestrów M i R oraz układu sumatora ALU (ang. arithmetic-logical unit). Na rysunku poniżej pokazano schemat układu. M RH ALU RL OV Sterowanie Rejestr R jest tzw. rejestrem przesuwającym, który umożliwia składowanie wyników cząstkowych oraz ich przesuwanie w prawo. Jest to rejestr o podwójnej długości słowa zawierającego czynnik. Składa się on z rejestru RH, zawierającego bardziej znaczącą połówkę rejestru R, oraz rejestru RL, zawierającego mniej znaczącą połówkę tego rejestru. Mnożna jest zapisywana do rejestru M. Układ sterowania jest odpowiedzialny za określenie liczby kroków algorytmu oraz kontrolę wartości najmniej znaczącego bitu rejestru RL. W każdym kroku dodawania wyników cząstkowych może pojawić się nadmiar. Jest on sygnalizowany za pomocą znacznika OV, którego stan jest analizowany przez układ sterowania. Jeśli w czasie mnożenia powstanie nadmiar, to system sterowania powinien podjąć odpowiednie kroki. Mogą one polegać na powiadomieniu operatora lub zwiększeniu długości słowa argumentów. Przedstawiony algorytm mnożenia liczb w kodzie NKB, po dokonaniu pewnych modyfikacji, może być również wykorzystywany do mnożenia liczb w kodzie ZM, U1 i U2.

21 W przypadku mnożenia liczb ujemnych można określić znak wyniku, a następnie pomnożyć liczby dodatnie albo można stosować algorytmy specyficzne dla danych kodów. Przykład Wykonać mnożenie czynników w kodzie NKB za pomocą algorytmu przeznaczonego dla układów cyfrowych. Pomnożyć 4-bitowe liczby binarne A = 0111 = +7 i B = 0110 = +6. Przyjąć wynik 8-bitowy. Iloczyn A * B = +42. mnożna (+7) 0111 mnożnik (+6) zapisanie argumentów Krok 1. Dodanie zera do starszej części 8-bitowego słowa i przesunięcie wyniku w prawo o jeden bit Przesunięcie wyniku: Krok 2. Dodanie mnożnej do starszej części 8-bitowego słowa i przesunięcie wyniku w prawo o jeden bit Przesunięcie wyniku: Krok 3. Dodanie mnożnej do starszej części 8-bitowego słowa i przesunięcie wyniku w prawo o jeden bit Przesunięcie wyniku: Krok 4. Dodanie zera do starszej części 8-bitowego słowa i przesunięcie wyniku w prawo o jeden bit Przesunięcie wyniku: (+42).

22 W przypadku, gdy dodawanie wyników cząstkowych daje przeniesienie należy zwiększyć długość słowa argumentów lub wprowadzić wartość przeniesienia na najstarszy bit Dzielenie liczb stałopozycyjnych W systemie dwójkowym dzielenie liczby A przez B można sprowadzić do odejmowania dzielnika B od dzielnej A. Operacja dzielenia pisemnego składa się z kilku kroków odejmowania. W wyniku dzielenia liczb dwójkowych w kodzie NKB otrzymuje się część całkowitą i resztę, którą można rozwinąć w ułamek z określoną dokładnością. Przykład Podzielić pisemnie w kodzie NKB liczbę binarną A = = 66 i B = 1100 = (+5) : (+6) reszta Wynik działania A : B = 66 : 12 = 5 reszta 6, gdyż 66 = W układach cyfrowych dzielenie jest działaniem bardziej skomplikowanym niż mnożenie. Wynika to z faktu, że wynik może być ułamkiem, który musi być zapisany na skończonej liczbie bitów. Oznacza to, że może on być zapamiętany tylko z pewną dokładnością. W praktyce większość algorytmów dzielenia daje w wyniku część całkowitą z dzielenia (iloraz) i resztę. W algorytmie dzielenia liczb w kodzie NKB przyjmuje się, że dzielna A jest wpisywana do rejestru o podwójnej długości słowa, natomiast dzielnik B, wynik dzielenia i reszta są wpisywane do rejestrów o pojedynczej długości słowa. Algorytm zostanie przedstawiony na przykładzie dzielenia liczby 8-bitowej A = +42 przez liczbę 4-bitową B = +6. Na początku dzielna jest wpisywana do rejestru R o podwójnej długości słowa, a dzielnik do rejestru M o pojedynczej długości. Każdy krok algorytmu składa się z przesunięcia w lewo zawartości rejestru R oraz odjęcia od bardziej znaczącej części tego rejestru (RH) wartości dzielnika. Jeśli wynik odejmowania jest dodatni (brak bitu znaku w RH), to na najmniej znaczącą pozycję rejestru R wpisuje się jedynkę, a w rejestrze R pozostaje otrzymana różnica. Jeśli natomiast wynik odejmowania jest ujemny, to na najmniej znaczącą pozycję rejestru R wpisuje się zero, a bardziej znaczącą część tego rejestru przywraca się do postaci sprzed odejmowania. Liczba kroków algorytmu jest równa liczbie bitów słowa. Po wykonaniu ostatniego kroku w mniej znaczącej części rejestru R jest część całkowita z dzielenia (iloraz), a w bardziej znaczącej części jest reszta.

23 Przykład Wykonać dzielenie w kodzie NKB za pomocą algorytmu przeznaczonego dla układów cyfrowych. Podzielić liczbę 8-bitową A = = +42 przez liczbę 4-bitową B = 0110 = +6. Wynik obliczeń A : B = 42 : 6 = 7 reszta 0. Bity wyniku (ilorazu) zostały wytłuszczone. dzielna (+42) dzielnik (+6) Krok 1. Przesunięcie 8-bitowej dzielnej w lewo i odjęcie od jej starszej części 4-bitowego dzielnika. Przesunięcie: _ Odejmowanie: wynik ujemny Przywrócenie: dopisanie 0 Krok 2. Przesunięcie dzielnej w lewo i odjęcie od jej starszej części dzielnika. Przesunięcie: _ Odejmowanie: wynik dodatni Dzielna: dopisanie 1 Krok 3. Przesunięcie dzielnej w lewo i odjęcie od jej starszej części dzielnika. Przesunięcie: _ Odejmowanie: wynik dodatni Dzielna: dopisanie 1 Krok 4. Przesunięcie dzielnej w lewo i odjęcie od jej starszej części dzielnika. Przesunięcie: _ Odejmowanie: wynik dodatni Dzielna: dopisanie 1 Drukiem wytłuszczonym zaznaczono kolejne bity wyniku. W starszej części rejestru zawierającego dzielną jest słowo reprezentujące resztę (wartość +0), a w młodszej części wartość reprezentująca wynik (wartość +7).

24 Algorytm dzielenia liczb w kodzie NKB Schemat blokowy algorytmu dzielenia START R = (RH, RL) = dzielna M = dzielnik N = licznik Przesunięcie R w lewo RH = RH - M N Czy RH ujemne? T R 0 = 1 R 0 = 0 RH = RH + M N = N - 1 N N = 0 T STOP Opis słowny algorytmu dzielenia 1. Wpisać dzielną (A) do rejestru R o podwójnej długości słowa oraz dzielnik (B) do rejestru M o pojedynczej długości słowa. Wpisać do licznika kroków długość słowa. 2. Przesunąć zawartość rejestru R o jedną pozycję w lewo. W rejestrze R wartość najmniej znaczącego bitu R 0 pozostawić nieokreśloną. 3. Obliczyć różnicę RH = RH - M. 4. Jeśli wartość rejestru RH jest ujemna (najstarszy bit równy 1), to podstawić R 0 = 0 i przywrócić wartość RH sprzed odejmowania, tj. RH = RH + M. 5. Jeśli wartość rejestru RH jest dodatnia (najstarszy bit równy 0), to podstawić R 0 = 1 i pozostawić zawartość rejestru R bez zmian. 6. Jeśli wykonano zadaną liczbę kroków, to zakończyć algorytm, w przeciwnym wypadku należy przejść do wykonania kroku 2.

25 Przykład Wykonać dzielenie w kodzie NKB za pomocą algorytmu przeznaczonego dla układów cyfrowych. Podzielić liczbę 10-bitową A = = +70 przez liczbę 5-bitową B = = +12. Wynik obliczeń A : B = 70 : 12 = 5 reszta 10. Bity wyniku (ilorazu) zostały wytłuszczone. dzielna (+70) dzielnik (+12) Krok 1. Przesunięcie 10-bitowej dzielnej w lewo i odjęcie od jej starszej części 5-bitowego dzielnika. Przesunięcie: _ Odejmowanie: wynik ujemny Przywrócenie: dopisanie 0 Krok 2. Przesunięcie dzielnej w lewo i odjęcie od jej starszej części dzielnika. Przesunięcie: _ Odejmowanie: wynik ujemny Przywrócenie: dopisanie 0 Krok 3. Przesunięcie dzielnej w lewo i odjęcie od jej starszej części dzielnika. Przesunięcie: _ Odejmowanie: wynik dodatni Dzielna: dopisanie 1 Krok 4. Przesunięcie dzielnej w lewo i odjęcie od jej starszej części dzielnika. Przesunięcie: _ Odejmowanie: wynik ujemny Przywrócenie: dopisanie 0

26 Krok 5. Przesunięcie dzielnej w lewo i odjęcie od jej starszej części dzielnika. Przesunięcie: _ Odejmowanie: wynik dodatni Dzielna: dopisanie 1 W starszej części rejestru zawierającego dzielną jest słowo reprezentujące resztę (wartość +10), a w młodszej części wartość reprezentująca wynik (wartość +5). Wynik jest poprawny. Przedstawiony algorytm dzielenia liczb w kodzie NKB, po dokonaniu pewnych modyfikacji, może być również wykorzystywany do dzielenia liczb w kodzie ZM, U1 i U2. W przypadku dzielenia liczb ujemnych można określić znak wyniku, a następnie podzielić liczby dodatnie albo można stosować algorytmy specyficzne dla danych kodów.

LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Zasady arytmetyki stałoprzecinkowej oraz operacji arytmetycznych w formatach Q

LABORATORIUM 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ółowo

ARYTMETYKA BINARNA. Dziesiątkowy system pozycyjny nie jest jedynym sposobem kodowania liczb z jakim mamy na co dzień do czynienia.

ARYTMETYKA 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ółowo

Systemy liczbowe. 1. Przedstawić w postaci sumy wag poszczególnych cyfr liczbę rzeczywistą R = (10).

Systemy 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ółowo

Kod znak-moduł. Wartość liczby wynosi. Reprezentacja liczb w kodzie ZM w 8-bitowym formacie:

Kod 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ółowo

Operacje arytmetyczne

Operacje 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ółowo

Podstawy Informatyki

Podstawy 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ółowo

Arytmetyka 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 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ółowo

1. Operacje logiczne A B A OR B

1. Operacje logiczne A B A OR B 1. Operacje logiczne OR Operacje logiczne są operacjami działającymi na poszczególnych bitach, dzięki czemu można je całkowicie opisać przedstawiając jak oddziałują ze sobą dwa bity. Takie operacje logiczne

Bardziej szczegółowo

Systemy zapisu liczb.

Systemy 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ółowo

Arytmetyka binarna - wykład 6

Arytmetyka 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ółowo

B.B. 2. Sumowanie rozpoczynamy od ostatniej kolumny. Sumujemy cyfry w kolumnie zgodnie z podaną tabelką zapisując wynik pod kreską:

B.B. 2. Sumowanie rozpoczynamy od ostatniej kolumny. Sumujemy cyfry w kolumnie zgodnie z podaną tabelką zapisując wynik pod kreską: Dodawanie dwójkowe Do wykonywania dodawania niezbędna jest znajomość tabliczki dodawania, czyli wyników sumowania każdej cyfry z każdą inną. W systemie binarnym mamy tylko dwie cyfry 0 i 1, zatem tabliczka

Bardziej szczegółowo

Kod 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. 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ółowo

Dodawanie liczb binarnych

Dodawanie liczb binarnych 1.2. Działania na liczbach binarnych Liczby binarne umożliwiają wykonywanie operacji arytmetycznych (ang. arithmetic operations on binary numbers), takich jak suma, różnica, iloczyn i iloraz. Arytmetyką

Bardziej szczegółowo

ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH

ARCHITEKTURA 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ółowo

Wprowadzenie do architektury komputerów systemy liczbowe, operacje arytmetyczne i logiczne

Wprowadzenie 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ółowo

Samodzielnie wykonaj następujące operacje: 13 / 2 = 30 / 5 = 73 / 15 = 15 / 23 = 13 % 2 = 30 % 5 = 73 % 15 = 15 % 23 =

Samodzielnie 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ółowo

Podstawowe operacje arytmetyczne i logiczne dla liczb binarnych

Podstawowe 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ółowo

Zapis liczb binarnych ze znakiem

Zapis 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ółowo

Przedmiot: Urządzenia techniki komputerowej Nauczyciel: Mirosław Ruciński

Przedmiot: 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ółowo

Układy arytmetyczne. Joanna Ledzińska III rok EiT AGH 2011

Ukł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ółowo

Pracownia Komputerowa wykład V

Pracownia Komputerowa wykład V Pracownia Komputerowa wykład V 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 system

Bardziej szczegółowo

Arytmetyka liczb binarnych

Arytmetyka 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ółowo

Kod U2 Opracował: Andrzej Nowak

Kod 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ółowo

Naturalny kod binarny (NKB)

Naturalny 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ółowo

Wstę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 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ółowo

Wstęp do informatyki- wykład 1 Systemy liczbowe

Wstę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ółowo

Wprowadzenie do informatyki - ć wiczenia

Wprowadzenie 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ółowo

1.1. Pozycyjne systemy liczbowe

1.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ółowo

Zestaw 3. - Zapis liczb binarnych ze znakiem 1

Zestaw 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ółowo

1259 (10) = 1 * * * * 100 = 1 * * * *1

1259 (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ółowo

DZIESIĘTNY SYSTEM LICZBOWY

DZIESIĘ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ółowo

...o. 2. ZARYS ORGANIZACJI MASZYNY TYPOWEJ

...o. 2. ZARYS ORGANIZACJI MASZYNY TYPOWEJ 24 2 Zarys organizacji maszyny typowej 2 ZARYS ORGANIZACJI MASZYNY TYPOWEJ [2 Arytmetyka uzupełnieniowa; 22 Krótki opis maszyny typowcjj 23 Kod rozkazowy] 2 ARYTMETYKA UZUPEŁNIENIOWA 2 Zajmiemy się obecnie

Bardziej szczegółowo

przeniesienie pożyczka

przeniesienie pożyczka 1.4. Działania arytmetycznie 33 liter i znaków (jest tzw. kodem alfanumerycznym). Większość kombinacji kodowych może mieć dwa różne znaczenia; o wyborze właściwego decyduje to, który z symboli Litery",

Bardziej szczegółowo

System liczbowy jest zbiorem reguł określających jednolity sposób zapisu i nazewnictwa liczb.

System 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ółowo

Pracownia Komputerowa wykład IV

Pracownia 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ółowo

Stan wysoki (H) i stan niski (L)

Stan 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ółowo

Podstawy Informatyki

Podstawy 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ółowo

Operacje arytmetyczne w systemie dwójkowym

Operacje arytmetyczne w systemie dwójkowym Artykuł pobrano ze strony eioba.pl Operacje arytmetyczne w systemie dwójkowym Zasady arytmetyki w systemie binarnym są identyczne (prawie) jak w dobrze nam znanym systemie dziesiętnym. Zaletą arytmetyki

Bardziej szczegółowo

Wstęp do Informatyki

Wstę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ółowo

Architektura systemów komputerowych. Poziom układów logicznych. Układy mnoŝące i dzielące

Architektura systemów komputerowych. Poziom układów logicznych. Układy mnoŝące i dzielące Architektura systemów komputerowych Poziom układów logicznych. Układy mnoŝące i dzielące Cezary Bolek Katedra Informatyki Plan wykładu Układy mnoŝące liczby całkowite MnoŜenie liczb bez znaku MnoŜarka

Bardziej szczegółowo

DYDAKTYKA ZAGADNIENIA CYFROWE ZAGADNIENIA CYFROWE

DYDAKTYKA 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

Kodowanie informacji. Kody liczbowe

Kodowanie 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ółowo

Teoretyczne Podstawy Informatyki

Teoretyczne 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ółowo

Cyfrowy zapis informacji

Cyfrowy 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ółowo

Metody numeryczne Technika obliczeniowa i symulacyjna Sem. 2, EiT, 2014/2015

Metody 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ółowo

Pracownia Komputerowa wyk ad V

Pracownia Komputerowa wyk ad V Pracownia Komputerowa wyk ad V dr Magdalena Posiada a-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ółowo

Wstęp do informatyki- wykład 2

Wstę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ółowo

Informatyka kodowanie liczb. dr hab. inż. Mikołaj Morzy

Informatyka 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ółowo

SYSTEMY LICZBOWE. Zapis w systemie dziesiętnym

SYSTEMY 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ółowo

Wielkoś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 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ółowo

Pracownia Komputerowa wyk ad IV

Pracownia 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ółowo

Luty 2001 Algorytmy (7) 2000/2001 s-rg@siwy.il.pw.edu.pl

Luty 2001 Algorytmy (7) 2000/2001 s-rg@siwy.il.pw.edu.pl System dziesiętny 7 * 10 4 + 3 * 10 3 + 0 * 10 2 + 5 *10 1 + 1 * 10 0 = 73051 Liczba 10 w tym zapisie nazywa się podstawą systemu liczenia. Jeśli liczba 73051 byłaby zapisana w systemie ósemkowym, co powinniśmy

Bardziej szczegółowo

DZIAŁANIA NA UŁAMKACH DZIESIĘTNYCH.

DZIAŁANIA NA UŁAMKACH DZIESIĘTNYCH. DZIAŁANIA NA UŁAMKACH DZIESIĘTNYCH. Dodawanie,8 zwracamy uwagę aby podpisywać przecinek +, pod przecinkiem, nie musimy uzupełniać zerami z prawej strony w liczbie,8. Pamiętamy,że liczba to samo co,0, (

Bardziej szczegółowo

SYSTEMY LICZBOWE 275,538 =

SYSTEMY 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ółowo

ARCHITEKRURA KOMPUTERÓW Kodowanie liczb ze znakiem 27.10.2010

ARCHITEKRURA 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ółowo

Plan wykładu. Architektura systemów komputerowych. MnoŜenie realizacja sprzętowa (wersja 1) Układy mnoŝące liczby całkowite.

Plan wykładu. Architektura systemów komputerowych. MnoŜenie realizacja sprzętowa (wersja 1) Układy mnoŝące liczby całkowite. Plan wykładu rchitektura systemów komputerowych Poziom układów logicznych. Układy mnoŝące i dzielące Cezary Bolek Katedra Informatyki Układy mnoŝące liczby całkowite MnoŜenie liczb bez znaku MnoŜarka sekwencyjna

Bardziej szczegółowo

Architektura systemów komputerowych. Arytmetyka maszyn cyfrowych

Architektura systemów komputerowych. Arytmetyka maszyn cyfrowych Architektura systemów komputerowych Plan wykładu. Typy danych w komputerach. 2. Układ arytmetyczno-logiczny. 3. Instrukcje zależne od ALU. 4. Superskalarność. Cele Wiedza na temat arytmetyki maszyn cyfrowych.

Bardziej szczegółowo

Pozycyjny system liczbowy

Pozycyjny 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ółowo

2 Arytmetyka. d r 2 r + d r 1 2 r 1...d d 0 2 0,

2 Arytmetyka. d r 2 r + d r 1 2 r 1...d d 0 2 0, 2 Arytmetyka Niech b = d r d r 1 d 1 d 0 będzie zapisem liczby w systemie dwójkowym Zamiana zapisu liczby b na system dziesiętny odbywa się poprzez wykonanie dodawania d r 2 r + d r 1 2 r 1 d 1 2 1 + d

Bardziej szczegółowo

3.3.1. Metoda znak-moduł (ZM)

3.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ółowo

Kodowanie liczb całkowitych w systemach komputerowych

Kodowanie liczb całkowitych w systemach komputerowych Kodowanie liczb całkowitych w systemach komputerowych System pozycyjny Systemy addytywne znaczenie historyczne Systemy pozycyjne r podstawa systemu liczbowego (radix) A wartość liczby a - cyfra i pozycja

Bardziej szczegółowo

MNOŻENIE W SYSTEMACH UZUPEŁNIENIOWYCH PEŁNYCH (algorytm uniwersalny)

MNOŻENIE W SYSTEMACH UZUPEŁNIENIOWYCH PEŁNYCH (algorytm uniwersalny) MNOŻENIE W SYSTEMACH UZUPEŁNIENIOWYCH PEŁNYCH (algorytm uniwersalny) SPOSÓB 1 (z rozszerzeniem mnożnika): Algorytm jak zwykle jest prosty: lewostronne rozszerzenie mnożnej o kilka cyfr (na pewno wystarczy

Bardziej szczegółowo

Liczby rzeczywiste są reprezentowane w komputerze przez liczby zmiennopozycyjne. Liczbę k można przedstawid w postaci:

Liczby 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ółowo

Technologie Informacyjne

Technologie 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ółowo

Wielkości liczbowe. Wykład z Podstaw Informatyki. Piotr Mika

Wielkoś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ółowo

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 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ółowo

Adam Korzeniewski p Katedra Systemów Multimedialnych

Adam 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ółowo

Algorytmy i struktury danych. Wykład 4

Algorytmy i struktury danych. Wykład 4 Wykład 4 Różne algorytmy - obliczenia 1. Obliczanie wartości wielomianu 2. Szybkie potęgowanie 3. Algorytm Euklidesa, liczby pierwsze, faktoryzacja liczby naturalnej 2017-11-24 Algorytmy i struktury danych

Bardziej szczegółowo

12. Wprowadzenie Sygnały techniki cyfrowej Systemy liczbowe. Matematyka: Elektronika:

12. 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ółowo

RODZAJE 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. 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ółowo

Dr inż. Grażyna KRUPIŃSKA. D-10 pokój 227 WYKŁAD 2 WSTĘP DO INFORMATYKI

Dr 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ółowo

LICZBY ZMIENNOPRZECINKOWE

LICZBY 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ółowo

Liczby rzeczywiste. Działania w zbiorze liczb rzeczywistych. Robert Malenkowski 1

Liczby rzeczywiste. Działania w zbiorze liczb rzeczywistych. Robert Malenkowski 1 Robert Malenkowski 1 Liczby rzeczywiste. 1 Liczby naturalne. N {0, 1,, 3, 4, 5, 6, 7, 8...} Liczby naturalne to liczby używane powszechnie do liczenia i ustalania kolejności. Liczby naturalne można ustawić

Bardziej szczegółowo

Instrukcja do ćwiczeń nr 4 typy i rodzaje zmiennych w języku C dla AVR, oraz ich deklarowanie, oraz podstawowe operatory

Instrukcja do ćwiczeń nr 4 typy i rodzaje zmiennych w języku C dla AVR, oraz ich deklarowanie, oraz podstawowe operatory Instrukcja do ćwiczeń nr 4 typy i rodzaje zmiennych w języku C dla AVR, oraz ich deklarowanie, oraz podstawowe operatory Poniżej pozwoliłem sobie za cytować za wikipedią definicję zmiennej w informatyce.

Bardziej szczegółowo

Adam Korzeniewski p Katedra Systemów Multimedialnych

Adam 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ółowo

Systemem liczenia systemach addytywnych !!" Pozycyjny system liczbowy podstawą systemu pozycyjnego

Systemem liczenia systemach addytywnych !! Pozycyjny system liczbowy podstawą systemu pozycyjnego Systemem liczenia nazywa się sposób tworzenia liczb ze znaków cyfrowych oraz zbiór reguł umożliwiających wykonywanie operacji arytmetycznych na liczbach. Podstawą systemów liczenia są systemy liczbowe

Bardziej szczegółowo

System Liczbowe. Szesnastkowy ( heksadecymalny)

System Liczbowe. Szesnastkowy ( heksadecymalny) SYSTEMY LICZBOWE 1 System Liczbowe Dwójkowy ( binarny) Szesnastkowy ( heksadecymalny) Ósemkowy ( oktalny) Dziesiętny ( decymalny) 2 System dziesiętny Symbol Wartość w systemie Liczba 6 6 *10 0 sześć 65

Bardziej szczegółowo

Wprowadzenie do informatyki - ć wiczenia

Wprowadzenie do informatyki - ć wiczenia Stałoprzecinkowy zapis liczb wymiernych dr inż. Izabela Szczęch WSNHiD Ćwiczenia z wprowadzenia do informatyki Reprezentacja liczb wymiernych Stałoprzecinkowa bez znaku ze znakiem Zmiennoprzecinkowa pojedynczej

Bardziej szczegółowo

Systemy liczbowe używane w technice komputerowej

Systemy liczbowe używane w technice komputerowej Systemy liczbowe używane w technice komputerowej Systemem liczenia nazywa się sposób tworzenia liczb ze znaków cyfrowych oraz zbiór reguł umożliwiających wykonywanie operacji arytmetycznych na liczbach.

Bardziej szczegółowo

Reprezentacja stałoprzecinkowa. Reprezentacja zmiennoprzecinkowa zapis zmiennoprzecinkowy liczby rzeczywistej

Reprezentacja 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ółowo

Pracownia Komputerowa wykład VI

Pracownia 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ółowo

Architektura komputerów

Architektura 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ółowo

Podział sumatorów. Równoległe: Szeregowe (układy sekwencyjne) Z przeniesieniem szeregowym Z przeniesieniem równoległym. Zwykłe Akumulujące

Podział sumatorów. Równoległe: Szeregowe (układy sekwencyjne) Z przeniesieniem szeregowym Z przeniesieniem równoległym. Zwykłe Akumulujące Podział sumatorów Równoległe: Z przeniesieniem szeregowym Z przeniesieniem równoległym Szeregowe (układy sekwencyjne) Zwykłe Akumulujące 1 Sumator z przeniesieniami równoległymi G i - Warunek generacji

Bardziej szczegółowo

Dla człowieka naturalnym sposobem liczenia jest korzystanie z systemu dziesiętnego, dla komputera natomiast korzystanie z zapisu dwójkowego

Dla 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ółowo

Wydział Mechaniczny. Instrukcja do zajęć laboratoryjnych

Wydział Mechaniczny. Instrukcja do zajęć laboratoryjnych Politechnika Białostocka Wydział Mechaniczny Instrukcja do zajęć laboratoryjnych Temat ćwiczenia: Arytmetyka układów cyfrowych część 1 dodawanie i odejmowanie liczb binarnych Numer ćwiczenia: 1 Laboratorium

Bardziej szczegółowo

AKADEMIA MORSKA KATEDRA NAWIGACJI TECHNICZEJ

AKADEMIA MORSKA KATEDRA NAWIGACJI TECHNICZEJ KDEMI MORSK KTEDR NWIGCJI TECHNICZEJ ELEMETY ELEKTRONIKI LORTORIUM Kierunek NWIGCJ Specjalność Transport morski Semestr II Ćw. 4 Podstawy techniki cyfrowej Wersja opracowania Marzec 5 Opracowanie: mgr

Bardziej szczegółowo

4 Standardy reprezentacji znaków. 5 Przechowywanie danych w pamięci. 6 Literatura

4 Standardy reprezentacji znaków. 5 Przechowywanie danych w pamięci. 6 Literatura ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH reprezentacja danych ASK.RD.01 c Dr inż. Ignacy Pardyka UNIWERSYTET JANA KOCHANOWSKIEGO w Kielcach Rok akad. 2011/2012 1 2 Standardy reprezentacji wartości całkowitoliczbowych

Bardziej szczegółowo

Wprowadzenie do informatyki ćwiczenia

Wprowadzenie do informatyki ćwiczenia Podstawowe działania na liczbach binarnych dr inż. Izabela Szczęch WSNHiD 2010/2011 Ćwiczenia z wprowadzenia do informatyki Dodawanie Odejmowanie Mnoż enie Dzielenie Plan zajęć 2 Izabela Szczęch 1 Dodawanie

Bardziej szczegółowo

O systemach liczbowych

O systemach liczbowych O systemach liczbowych 1. Systemy liczbowe Literatura:Turski,Propedeutyka...;Skomorowski,... 1.1. Dwójkowy system pozycyjny W dziesiętnym systemie pozycyjnym ciąg cyfr 321.23 oznacza liczbę 3 10 2 +2 10

Bardziej szczegółowo

Podstawy Automatyki. Wykład 9 - Podstawy matematyczne automatyki procesów dyskretnych. dr inż. Jakub Możaryn. Instytut Automatyki i Robotyki

Podstawy Automatyki. Wykład 9 - Podstawy matematyczne automatyki procesów dyskretnych. dr inż. Jakub Możaryn. Instytut Automatyki i Robotyki Wykład 9 - Podstawy matematyczne automatyki procesów dyskretnych Instytut Automatyki i Robotyki Warszawa, 2015 Kody liczb całkowitych nieujemnych Kody liczbowe dzielimy na analityczne nieanalityczne (symboliczne)

Bardziej szczegółowo

Systemem liczenia systemach addytywnych !!" Pozycyjny system liczbowy podstawą systemu pozycyjnego

Systemem liczenia systemach addytywnych !! Pozycyjny system liczbowy podstawą systemu pozycyjnego Systemem liczenia nazywa się sposób tworzenia liczb ze znaków cyfrowych oraz zbiór reguł umożliwiających wykonywanie operacji arytmetycznych na liczbach. Podstawą systemów liczenia są systemy liczbowe

Bardziej szczegółowo

LISTA 1 ZADANIE 1 a) 41 x =5 podnosimy obustronnie do kwadratu i otrzymujemy: 41 x =5 x 5 x przechodzimy na system dziesiętny: 4x 1 1=25 4x =24

LISTA 1 ZADANIE 1 a) 41 x =5 podnosimy obustronnie do kwadratu i otrzymujemy: 41 x =5 x 5 x przechodzimy na system dziesiętny: 4x 1 1=25 4x =24 LISTA 1 ZADANIE 1 a) 41 x =5 podnosimy obustronnie do kwadratu i otrzymujemy: 41 x =5 x 5 x przechodzimy na system dziesiętny: 4x 1 1=25 4x =24 x=6 ODP: Podstawą (bazą), w której spełniona jest ta zależność

Bardziej szczegółowo

Wprowadzenie do informatyki - ć wiczenia

Wprowadzenie do informatyki - ć wiczenia Kod znak-moduł (ZM) 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ółowo

Wstęp do informatyki- wykład 1

Wstę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ółowo

Podstawy programowania. 1. Operacje arytmetyczne Operacja arytmetyczna jest opisywana za pomocą znaku operacji i jednego lub dwóch wyrażeń.

Podstawy programowania. 1. Operacje arytmetyczne Operacja arytmetyczna jest opisywana za pomocą znaku operacji i jednego lub dwóch wyrażeń. Podstawy programowania Programowanie wyrażeń 1. Operacje arytmetyczne Operacja arytmetyczna jest opisywana za pomocą znaku operacji i jednego lub dwóch wyrażeń. W językach programowania są wykorzystywane

Bardziej szczegółowo

Arytmetyka stało i zmiennoprzecinkowa

Arytmetyka 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ółowo

Pracownia elektryczna i elektroniczna. Elektronika cyfrowa. Ćwiczenie nr 5.

Pracownia elektryczna i elektroniczna. Elektronika cyfrowa. Ćwiczenie nr 5. Pracownia elektryczna i elektroniczna. Elektronika cyfrowa. Ćwiczenie nr 5. Klasa III Opracuj projekt realizacji prac związanych z badaniem działania cyfrowych bloków arytmetycznych realizujących operacje

Bardziej szczegółowo

Kod IEEE754. IEEE754 (1985) - norma dotycząca zapisu binarnego liczb zmiennopozycyjnych (pojedynczej precyzji) Liczbę binarną o postaci

Kod 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ółowo

Ćwiczenie nr 3. Wyświetlanie i wczytywanie danych

Ćwiczenie nr 3. Wyświetlanie i wczytywanie danych Ćwiczenie nr 3 Wyświetlanie i wczytywanie danych 3.1 Wstęp Współczesne komputery przetwarzają dane zakodowane za pomocą ciągów zerojedynkowych. W szczególności przetwarzane liczby kodowane są w systemie

Bardziej szczegółowo

Układy kombinacyjne 1

Układy kombinacyjne 1 Układy kombinacyjne 1 Układy kombinacyjne są to układy cyfrowe, których stany wyjść są zawsze jednoznacznie określone przez stany wejść. Oznacza to, że doprowadzając na wejścia tych układów określoną kombinację

Bardziej szczegółowo