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

Podobne dokumenty
Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Systemy liczbowe. System dziesiętny

Techniki multimedialne

Arytmetyka komputera. Na podstawie podręcznika Urządzenia techniki komputerowej Tomasza Marciniuka. Opracował: Kamil Kowalski klasa III TI

Dane, informacja, programy. Kodowanie danych, kompresja stratna i bezstratna

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

Wprowadzenie do informatyki i użytkowania komputerów. Kodowanie informacji System komputerowy

SYSTEMY LICZBOWE 275,538 =

SYSTEMY LICZBOWE. Zapis w systemie dziesiętnym

Systemy liczbowe używane w technice komputerowej

Dane, informacja, programy. Kodowanie danych, kompresja stratna i bezstratna

ARCHITEKRURA KOMPUTERÓW Kodowanie liczb ze znakiem

Urządzenia Techniki. Klasa I TI. System dwójkowy (binarny) -> BIN. Przykład zamiany liczby dziesiętnej na binarną (DEC -> BIN):

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

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

Systemy liczenia. 333= 3*100+3*10+3*1

ARCHITEKTURA KOMPUTERÓW Systemy liczbowe

1.1. Pozycyjne systemy liczbowe

Teoretyczne Podstawy Informatyki

Arytmetyka komputera

Arytmetyka. Arytmetyka. Magdalena Lemańska. Magdalena Lemańska,

System Liczbowe. Szesnastkowy ( heksadecymalny)

Wstęp do informatyki. Pojęcie liczebności. Zapis liczb. Liczenie bez liczebników. Podstawy arytmetyki komputerowej. Cezary Bolek

Wstęp do informatyki- wykład 1

PODSTAWY INFORMATYKI. Informatyka? - definicja

Jednostki informacji. Bajt moŝna podzielić na dwie połówki 4-bitowe nazywane tetradami (ang. nibbles).

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

Znaki w tym systemie odpowiadają następującym liczbom: I=1, V=5, X=10, L=50, C=100, D=500, M=1000

Wstęp do informatyki. Pojęcie liczebności. Liczenie bez liczebników. Podstawy arytmetyki komputerowej. Cezary Bolek

Cyfrowy zapis informacji. 5 grudnia 2013 Wojciech Kucewicz 2

Ćwiczenie nr 1: Systemy liczbowe

Jednostki miar stosowane w sieciach komputerowych. mgr inż. Krzysztof Szałajko

Systemy liczbowe. 1. System liczbowy dziesiętny

Technologie Informacyjne

Wstęp do programowania. Reprezentacje liczb. Liczby naturalne, całkowite i rzeczywiste w układzie binarnym

Architektura komputerów

INFORMATYKA. Zajęcia organizacyjne. Arytmetyka komputerowa.

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

Systemy zapisu liczb.

ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH

Kodowanie informacji. Przygotował: Ryszard Kijanka

Stan wysoki (H) i stan niski (L)

Języki i metodyka programowania. Reprezentacja danych w systemach komputerowych

Pracownia Komputerowa wykład VI

Podstawy Informatyki. Inżynieria Ciepła, I rok. Wykład 5 Liczby w komputerze

Kodowanie informacji. Kody liczbowe

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

Architektura systemów komputerowych Laboratorium 5 Kodowanie liczb i tekstów

Pracownia Komputerowa wykład V

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

Wstęp do Informatyki

SYSTEMY LICZBOWE. SYSTEMY POZYCYJNE: dziesiętny (arabski): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 rzymski: I, II, III, V, C, M

Podstawy informatyki. Reprezentacja danych w systemach cyfrowych

Zapis liczb binarnych ze znakiem

Pracownia Komputerowa wyk ad VI

Krótka wycieczka do wnętrza komputera

Pracownia Komputerowa wykład IV

DZIESIĘTNY SYSTEM LICZBOWY

Metoda znak-moduł (ZM)

L6.1 Systemy liczenia stosowane w informatyce

Podstawy Informatyki dla Nauczyciela

Kod U2 Opracował: Andrzej Nowak

Podstawą w systemie dwójkowym jest liczba 2 a w systemie dziesiętnym liczba 10.

Pracownia Komputerowa wyk ad IV

Wykład I: Kodowanie liczb w systemach binarnych. Studia Podyplomowe INFORMATYKA Podstawy Informatyki

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

Architektura komputerów

Moduł 2 Zastosowanie systemów liczbowych w informacji cyfrowej

DYDAKTYKA ZAGADNIENIA CYFROWE ZAGADNIENIA CYFROWE

wagi cyfry pozycje

Wstęp do informatyki- wykład 2

RODZAJE INFORMACJI. Informacje analogowe. Informacje cyfrowe. U(t) U(t) Umax. Umax. R=(0,Umax) nieskończony zbiór możliwych wartości. Umax.

Technika Cyfrowa i Mikroprocesorowa

Systemy liczbowe. Bibliografia: Urządzenia techniki komputerowej, K. Wojtuszkiewicz

Naturalny kod binarny (NKB)

Arytmetyka binarna - wykład 6

Arytmetyka liczb binarnych

Operacje arytmetyczne

Pracownia Komputerowa wyk ad V

Pracownia Komputerowa wyk ad VII

Laboratorium Wykorzystanie kalkulatora Windows do obliczania adresów sieciowych

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

Wydział Mechaniczny. Instrukcja do zajęć laboratoryjnych

1. Systemy liczbowe. addytywne systemy w których wartośd liczby jest sumą wartości jej znaków cyfrowych.

Kodowanie liczb całkowitych w systemach komputerowych

Podstawy Informatyki

Zestaw 3. - Zapis liczb binarnych ze znakiem 1

Wykład 2. Informatyka Stosowana. 9 października Informatyka Stosowana Wykład 2 9 października / 42

Kod uzupełnień do dwóch jest najczęściej stosowanym systemem zapisu liczb ujemnych wśród systemów binarnych.

Wykład 2. Informatyka Stosowana. 10 października Informatyka Stosowana Wykład 2 10 października / 42

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

1. Operacje logiczne A B A OR B

Podstawowe operacje arytmetyczne i logiczne dla liczb binarnych

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

Podstawy Systemów Liczbowych

SCENARIUSZ LEKCJI. Autorzy scenariusza: Krzysztof Sauter (informatyka), Marzena Wierzchowska (matematyka)

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

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

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

kodowanie informacji Autor prezentacji: 1 prof. dr hab. Maria Hilczer

Transkrypt:

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 oparty na podstawie dwóch liczb, w których cyframi binarnymi (bitami) są 0 i 1. We współczesnych komputerach arytmetyka binarna jest podstawową formą przechowywania informacji, ponieważ dwie cyfry mogą być reprezentowane przez dwa stany elektryczne lub magnetyczne, wyrażane przez przepływ lub brak przepływu prądu. Zapis binarny wynaleziony został przez żyjącego w XVII w. niemieckiego uczonego Gottfrieda Wilhelma Leibniza.

Komputer składa się z części elektronicznych. Wymiana informacji polega na odpowiednim przesyłaniem sygnałów. Podstawą elektroniki jest prąd elektryczny, który w układach elektronicznych albo płynie albo nie. Zatem, aby łatwiej było komputerowi rozpoznawać sygnały, interpretuje on płynący prąd jako "1" (jeden), a jego brak jako "0" (zero). Nie trudno się domyślić, że komputer operując odpowiednim ustawieniem, kiedy ma płynąc prąd, a kiedy nie ustawia różne wartości zer i jedynek. Procesor konwertuje je na liczby i w ten sposób powstają czytelne dla nas obrazy, teksty, dźwięk itd.

Nie tylko w postaci sygnałów elektrycznych reprezentowane mogą być zera lub jedynki. Również na wszelkich nośnikach, np. płyta CD, na której nagrywarka wypala malutkie wgłębienia. Właśnie te wgłębienia są jedynkami, a "równiny" zerami (albo i odwrotnie). System dziesiętny: 435 = 4*10 2 + 3*10 1 + 5*10 0 (10) 2 = 2 10 (dziesięć w systemie dwójkowym jest równe 2 w systemie dziesiętnym)

W zapisie dwójkowym pojedynczą cyfrę: 0 lub 1, reprezentuje bit, elementarna jednostka informacji. Bajt jest równy 8 bitom i stanowi podstawową jednostkę informacji w komputerach. Większe jednostki: Kilobajt (KB) = 2 10 B = 1024 bajty (B) Megabajt (MB) = 2 10 KB = 2 10 *2 10 B = = 1024 * 1024 bajty (B) = 1024 KB Gigabajt (GB) = 1024 MB

System szesnastkowy inaczej zwany heksadecymalnym. Jest on dość szeroko stosowany w dzisiejszej informatyce, zatem należało by go rozumieć. Podstawą tego systemu jest 16. Musi istnieć więc szesnaście cyfr. Są nimi odpowiednio: 0, 1, 2, 3, 4, 5, 6, 7, 8 oraz 9. W naszym systemie, kolejną liczbą jest 10, natomiast w systemie szesnastkowym jest ono reprezentowane przez A. Kolejne liczby to: 11 - B, 12 - C, 13 - D, 14 - E, 15 - F. Zatem, np. liczby w systemie dziesiętnym: 2, 6, 9, 11, 14, w systemie szesnastkowym wyglądają odpowiednio: 2, 6, 9, B, E. Widać od razu, że duże liczby zajmują w systemie szesnastkowym mało miejsca. Dlatego właśnie jest on tak przydatny.

Konwersja liczby szesnastkowej na dziesiętną Konwersja ta odbywa się podobnie jak w przypadku liczb binarnych, z tym, że podstawą jest nie 2 a 16. Weźmy dowolnie wymyśloną liczbę w zapisie szesnastkowym, na przykład AB12 (co czytamy: a b jeden dwa). Bierzemy cyfrę wysuniętą najbardziej w prawo i postępujemy tak samo jak w przypadku liczb dwójkowych, ale zamiast mnożnika 2 mamy 16. Zatem jest to: 2*16 0 + 1*16 1 + 11*16 2 + 10*16 3, a więc jest to 2 + 16 + 2816 + 40960, a więc jest to liczba 43794 w zapisie dziesiętnym.

Konwersja liczby dziesiętnej na szesnastkowy Najpierw musimy sobie napisać jakie są kolejne wielokrotności liczby 16. A są to: 1, 16, 256, 4096, 65536 itd. Nasza liczba w systemie dziesiętnym, czyli 43794 jest między liczbą 4096, a 65536. Bierzemy pod uwagę liczbę mniejszą od naszej, czyli 4096. Jest ona czwartą wielokrotnością, więc nasza liczba w systemie szesnastkowym będzie miała 4 cyfry. Teraz sprawdzamy, ile razy liczba 4096 mieści się w naszej liczbie konwertowanej, czyli 43794. Okazuje się, że mieści się 10 razy. 10 w systemie szesnastkowym to A, zatem pierwsza cyfra to A. Liczba 4096 zmieściła się dziesięć razy w 43794, i została reszta 2834 (43794-40960 = 2834). Następnie z resztą postępujemy tak samo, jak na początku konwersji. Sprawdzamy ile razy 256 mieści się w 2834. Mieści się 11 razy, zatem kolejna cyfra szukanego zapisu to B. Następnie znowu: obliczamy resztę, itd. Końcowy wynik powinien wynosić AB12.

Konwersja liczby dwójkowej na szesnastkowy Konwersja ta jest bardzo prosta i wcale nie wymaga skomplikowanych obliczeń. Maksymalna liczba w zapisie dwójkowym składająca się z 4 bitów, ma ona zatem postać: 1111. Po przeliczeniu, otrzymamy 15 w zapisie dziesiętnym. 15 jest to maksymalna cyfra w zapisie szesnastkowym, czyli F. Każda liczba składająca się z czterech cyfr w zapisie dwójkowym da się zapisać jako jedna cyfra w zapisie szesnastkowym. Zatem, kolejne liczby w zapisie dwójkowym i szesnastkowym to:

Weźmy liczbę 67 w systemie dziesiętnym. Przekształciliśmy ją na 1000011 w zapisie dwójkowym. Jak teraz z tego otrzymać zapis szesnastkowy? Otóż bardzo prosto. Dzielimy kod binarny na czterocyfrowe grupy od prawej strony zaczynając. Jeżeli z lewej strony nie będzie czterech cyfr - dopisujemy z przodu zera. Zatem, otrzymamy dwie grupy. Są to: 0100 oraz 0011. Teraz wystarczy zamienić je na odpowiednie cyfry z zapisu szesnastkowego (można się posłużyć powyższą tabelą). W efekcie otrzymamy: 43 w zapisie szesnastkowym. Warto by było jeszcze sprawdzić czy wynik się zgadza konwertując zapis szesnastkowy na dziesiętny. Zatem jest to: 3*160 + 4*161, czyli 3 + 64, czyli 67 w zapisie dziesiętnym. Jak widzimy, wszystko się zgadza.

Konwersja liczby szesnastkowej na dwójkową Wykonuje się ją odwrotnie jak dwójkową na szesnastkową. Po prostu kolejne cyfry w zapisie szesnastkowym zapisujemy jako cztery cyfry w zapisie dwójkowym. Pamiętając, że każda cyfra w zapisie szesnastkowym odpowiada jako 4 cyfry w zapisie dwójkowym (nie więcej i nie mniej). Ewentualnie możemy pozbyć się zer znajdujących się na najbardziej w lewo wysuniętej pozycji, aż znajdziemy tam jedynkę, ponieważ kod binarny zawsze zaczyna się od 1 (np. jeśli wyjdzie 0001100101110 to można to zapisać jako 1100101110 pozbywając się zer z początku).

Komputery posługują się językiem opartym na liczbach. W jaki więc sposób komputer używa liter alfabetu do komunikowania się z programami i innymi komputerami? Jednym z możliwych rozwiązań tego problemu jest konwersja zestawu znaków na ich odpowiedniki liczbowe. (zestaw znaków: Grupa znaków alfabetycznych, numerycznych i innych, które mają pewne cechy wspólne. Na przykład standardowy zestaw znaków ASCII obejmuje litery, cyfry, symbole i kody sterujące, które tworzą schemat kodowania ASCII.)

W latach sześćdziesiątych XX wieku opracowano standard American Standard Code for Information Interchange ASCII Kod reprezentujący znaki języka angielskiego jako liczby. Każdemu znakowi przypisana jest liczba z zakresu od 0 do 127. Większość komputerów używa kodu ASCII do reprezentacji tekstu i do przesyłania danych między komputerami. Tablica znaków ASCII zawiera 128 liczb i odpowiadające im znaki (znak: Litera, cyfra, znak interpunkcyjny lub symbol.) Kod ASCII umożliwia komputerom przechowywanie danych i ich wymianę z innymi komputerami i programami.

Istnieje wiele przykładów urządzeń, w których zastosowanie czystego kodu dwójkowego jest nieekonomiczne z uwagi na ciągłą konieczność przeliczania liczb pomiędzy systemami dziesiętnym i dwójkowym. Są to różnego rodzaju liczniki, kasy sklepowe, kalkulatory, wagi itp. Dla nich opracowano specjalny kod zwany systemem dziesiętnym kodowanym dwójkowo - BCD (ang. Binary Coded Decimal). Idea kodu jest bardzo prosta - dwójkowo zapisujemy nie wartość liczby lecz jej cyfry dziesiętne. Każda cyfra dziesiętna może być przedstawiona w postaci wartości w naturalnym kodzie binarnym. Do tego celu potrzebne są 4 bity.

10000100 (BCD) = 1000 0100 = 84 (10) 010101110010 (BCD) = 0101 0111 0010 = 572 (10) 0011011110001001 (BCD) = 0011 0111 1000 1001 = 3789 (10) W odwrotną stronę jest również prosto - każdą cyfrę dziesiętną zastępujemy 4 bitami i otrzymujemy kod BCD: 72398015 (10) = 0111 0010 0011 1001 1000 0000 0001 0101 (BCD)

Zadania Oblicz wartość dziesiętną liczb podanych w postaci binarnej 11001100 2 =... 01010101 2 =... 00011011 2 =... 10010011 2 =... 10000011 2 =... 10101010 2 =... 01101000 2 =... 00010001 2 =...

Podaj na czterech bitach postać binarną liczb 11 10 =... 7 10 =... 5 10 =... 9 10 =... 14 10 =... 6 10 =... 4 10 =...

Uzupełnij: 11001111 2 = 16 = 10 10101001 2 = 16 = 10 01001010 2 = 16 = 10 11001111 2 = 16 = 10 11000001 2 = 16 = 10 11111001 2 = 16 = 10 10001010 2 = 16 = 10 01011011 2 = 16 = 10

Oblicz: A70 16 = 10 12F 16 = 10 C4 16 = 10 1E5 16 = 10