Opis programu do wizualizacji algorytmów z zakresu arytmetyki komputerowej

Podobne dokumenty
Podstawowe działania w rachunku macierzowym

WYKŁAD 8. Postacie obrazów na różnych etapach procesu przetwarzania

INSTRUKCJA DO PROGRAMU LICZARKA 2000 v 2.56

14.Rozwiązywanie zadań tekstowych wykorzystujących równania i nierówności kwadratowe.

1. Podstawy budowania wyra e regularnych (Regex)

Zaawansowana adresacja IPv4

RZECZPOSPOLITA POLSKA. Prezydent Miasta na Prawach Powiatu Zarząd Powiatu. wszystkie

Dr inż. Andrzej Tatarek. Siłownie cieplne

XIII KONKURS MATEMATYCZNY

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

PODSTAWY METROLOGII ĆWICZENIE 4 PRZETWORNIKI AC/CA Międzywydziałowa Szkoła Inżynierii Biomedycznej 2009/2010 SEMESTR 3

Nowe funkcjonalności

Harmonogramowanie projektów Zarządzanie czasem

Objaśnienia do Wieloletniej Prognozy Finansowej na lata

Rozdział 6. Pakowanie plecaka. 6.1 Postawienie problemu

Instrukcja obsługi Norton Commander (NC) wersja 4.0. Autor: mgr inż. Tomasz Staniszewski

Umowa kredytu. zawarta w dniu. zwanym dalej Kredytobiorcą, przy kontrasygnacie Skarbnika Powiatu.

Podstawy Informatyki

Spis treści. Dokument pochodzi ze strony LICZBY NATURALNE I UŁAMKI

Pracownia Komputerowa wyk ad V

2.Prawo zachowania masy

DE-WZP JJ.3 Warszawa,

Regulamin Obrad Walnego Zebrania Członków Stowarzyszenia Lokalna Grupa Działania Ziemia Bielska

Technologie Informacyjne

Warszawska Giełda Towarowa S.A.

Instalacja. Zawartość. Wyszukiwarka. Instalacja Konfiguracja Uruchomienie i praca z raportem Metody wyszukiwania...

OBCIĄŻENIE WIATREM WYBRANYCH POŁACI DACHOWYCH

enova Workflow Obieg faktury kosztowej

Metoda LBL (ang. Layer by Layer, pol. Warstwa Po Warstwie). Jest ona metodą najprostszą.

Logowanie do systemu Faktura elektroniczna

INSTRUKCJA TESTOWANIA USŁUG NA PLATFORMIE ELA-ENT

Zarządzanie Zasobami by CTI. Instrukcja

Zintegrowane Systemy Zarządzania Biblioteką SOWA1 i SOWA2 SKONTRUM

Audyt SEO. Elementy oraz proces przygotowania audytu. strona

Ogólna charakterystyka kontraktów terminowych

EGZAMIN MATURALNY Z MATEMATYKI CZERWIEC 2012 POZIOM PODSTAWOWY. Czas pracy: 170 minut. Liczba punktów do uzyskania: 50 WPISUJE ZDAJĄCY

1. Od kiedy i gdzie należy złożyć wniosek?

Opis modułu analitycznego do śledzenia rotacji towaru oraz planowania dostaw dla programu WF-Mag dla Windows.

Wskaźniki oparte na wolumenie

Wiedza niepewna i wnioskowanie (c.d.)

Wojewódzki Konkurs Matematyczny dla uczniów gimnazjów województwa wielkopolskiego

Kategoria środka technicznego

REGULAMIN OBRAD WALNEGO ZEBRANIA CZŁONKÓW STOWARZYSZENIA LOKALNA GRUPA DZIAŁANIA STOLEM

9. Dynamiczne generowanie grafiki, cz. 3

REGULAMIN WSPARCIA FINANSOWEGO CZŁONKÓW. OIPiP BĘDĄCYCH PRZEDSTAWICIELAMI USTAWOWYMI DZIECKA NIEPEŁNOSPRAWNEGO LUB PRZEWLEKLE CHOREGO

Tytuł. Autor. Dział. Innowacyjne cele edukacyjne. Czas. Przebieg. Etap 1 - Wprowadzenie z rysem historycznym i dyskusją

Komentarz do prac egzaminacyjnych w zawodzie technik administracji 343[01] ETAP PRAKTYCZNY EGZAMINU POTWIERDZAJĄCEGO KWALIFIKACJE ZAWODOWE

Zasady rekrutacji dzieci do I klasy Szkoły Podstawowej im. hm. Janka Bytnara Rudego w Lubieniu Kujawskim na rok szkolny 2014/2015*

2 Zarządzenie wchodzi w życie z dniem podpisania.

Podstawy informatyki (2)

Temat: Co to jest optymalizacja? Maksymalizacja objętości naczynia prostopadłościennego za pomocą arkusza kalkulacyjngo.

Wprowadzenie do informatyki - ć wiczenia

Kurs wyrównawczy dla kandydatów i studentów UTP

Praca na wielu bazach danych część 2. (Wersja 8.1)

INSTRUKCJA DO INTERNETOWEGO ROZKŁADU JAZDY

III. GOSPODARSTWA DOMOWE, RODZINY I GOSPODARSTWA ZBIOROWE

Oprogramowanie klawiatury matrycowej i alfanumerycznego wyświetlacza LCD

1. Korzyści z zakupu nowej wersji Poprawiono Zmiany w słowniku Stawki VAT Zmiana stawki VAT w kartotece Towary...

Umowa o pracę zawarta na czas nieokreślony

Regulamin Egzaminów i Zawodów Psów Towarzyszących 1,2,3 stopnia 2010 (po korekcie 20.10)

3. BADA IE WYDAJ OŚCI SPRĘŻARKI TŁOKOWEJ

Zapytanie ofertowe. (do niniejszego trybu nie stosuje się przepisów Ustawy Prawo Zamówień Publicznych)

1. Rozwiązać układ równań { x 2 = 2y 1

Kategoria środka technicznego

ZASADY WYPEŁNIANIA ANKIETY 2. ZATRUDNIENIE NA CZĘŚĆ ETATU LUB PRZEZ CZĘŚĆ OKRESU OCENY

EGZAMIN MATURALNY Z INFORMATYKI 19 MAJA 2015

System zarządzania bazą danych (SZBD) Proces przechodzenia od świata rzeczywistego do jego informacyjnej reprezentacji w komputerze nazywać będziemy

tel/fax lub NIP Regon

PRZEDMIOTOWY SYSTEM OCENIANIA Z MATEMATYKI DLA KLAS IV VI

Instrukcja dotycząca generowania klucza dostępowego do Sidoma v8

Aneks nr 8 z dnia r. do Regulaminu Świadczenia Krajowych Usług Przewozu Drogowego Przesyłek Towarowych przez Raben Polska sp. z o.o.

UCHWAŁA... Rady Miejskiej w Słupsku z dnia...

Regulamin szkolnego konkursu matematycznego dla uczniów klasy II i III: Mały Matematyk

REGULAMIN TURNIEJU SPORTOWEJ GRY KARCIANEJ KANASTA W RAMACH I OGÓLNOPOLSKIEGO FESTIWALU GIER UMYSŁOWYCH 55+ GORZÓW WLKP R.

Projektowanie bazy danych

Promocja i identyfikacja wizualna projektów współfinansowanych ze środków Europejskiego Funduszu Społecznego

Programowanie obrabiarek CNC. Nr H8

Miejski System Zarządzania - Katowicka Infrastruktura Informacji Przestrzennej

Założenia prognostyczne Wieloletniej Prognozy Finansowej

PX319. Driver LED 1x2A/48V INSTRUKCJA OBSŁUGI

INSTRUKCJA KORZYSTANIA Z ELEKTRONICZNEJ ŚCIEŻKI WYKAZÓW

REGULAMIN WALNEGO ZJAZDU DELEGATÓW STOWARZYSZENIA MENEDŻERÓW OPIEKI ZDROWOTNEJ

UMOWA NA USŁUGI PRZEWOZOWE TRASA NR

WYMAGANIA EDUKACYJNE I KRYTERIA OCENIANIA Z MATEMATYKI W KLASACH IV-VI

Wyjaśnienie nr 1 i Zmiana nr 2 treści specyfikacji istotnych warunków zamówienia

Szczegółowe Warunki Konkursu Ofert na wykonywanie usług kierowcy ambulansu ratownictwa medycznego

STRONA GŁÓWNA SPIS TREŚCI. Zarządzanie zawartością stron... 2 Tworzenie nowej strony... 4 Zakładka... 4 Prawa kolumna... 9

REGULAMIN ZARZĄDU Stowarzyszenia Dolina Karpia

2) Drugim Roku Programu rozumie się przez to okres od 1 stycznia 2017 roku do 31 grudnia 2017 roku.

ANALOGOWE UKŁADY SCALONE

Automatyczne przetwarzanie recenzji konsumenckich dla oceny użyteczności produktów i usług

Regulamin Zarządu Pogórzańskiego Stowarzyszenia Rozwoju

Mnożenie macierzy. Systemy z pamięcią współdzieloną Systemy z pamięcią rozproszoną Efektywność

Elementy cyfrowe i układy logiczne

PRAWA ZACHOWANIA. Podstawowe terminy. Cia a tworz ce uk ad mechaniczny oddzia ywuj mi dzy sob i z cia ami nie nale cymi do uk adu za pomoc

Mapa umiejętności czytania, interpretacji i posługiwania się mapą Polski.

Rozliczenia z NFZ. Ogólne założenia. Spis treści

UMOWA. Panią/Panem.. prowadzącą/ym działalność gospodarczą pod nazwą. REGON.. NIP. zwanym dalej Wykonawcą została zawarta umowa następującej treści :

Regulamin Obrad Walnego Zebrania Członków Stowarzyszenia Lokalna Grupa Rybacka Bielska Kraina Postanowienia Ogólne

Załącznik nr 4 WZÓR - UMOWA NR...

Transkrypt:

Opis programu do wizualizacji algorytmów z zakresu arytmetyki komputerowej 3.1 Informacje ogólne Program WAAK 1.0 służy do wizualizacji algorytmów arytmetyki komputerowej. Oczywiście istnieje wiele narzędzi typu konwertery formatu HEX na BIN, kalkulatory itp., ale moim celem było wizualne podejście do tematu arytmetyki komputerowej a dokładniej pokazaniu krok po kroku drogi, jaka jest pomiędzy wprowadzeniem np. dwóch liczb dziesiętnych a wynikiem powstałym np. z ich zsumowania. Program może pełnić role dydaktyczną dla studentów studiów dziennych i zaocznych uczelni krajowych kształcących się na kierunkach informatyka, elektrotechnika bądź elektronika i telekomunikacja. 3.2 Obsługa programu WAAK 1.0 Program WAAK 1.0 jest bardzo intuicyjny w obsłudze. Starałam się, by był bardzo przejrzysty w obsłudze, aby każdy mógł z niego korzystać. Po uruchomieniu programu WAAK 1.0 zobaczymy okno główne programu:

Rys 3.1 Okno główne programu WAAK 1.0 opracowanie własne Występują tu kolejno zakładki DEC->NKD, ZM i U2 HEX-> DEC Działania NKD Działania U2 Pomoc Każda z zakładek zostanie omówiona krok po kroku.

3.2.1 Zakładka DEC->NKD, ZM i U2 Rys 3.2 Zakładka DEC->NKD, ZM i U2 opracowanie własne Zakładka ta dotyczy konwersji: System dziesięty DEC na dwójkowy NKD Dwójkowy NKD na dziesiętny DEC Dwójkowy NKD na ZM znak moduł Dwójkowy NKD na U2 uzupełnień do dwójki DEC na NKD Program ten konwertuje zarówno liczby całkowite jak i ułamkowe. Konwersja ułamka z dziesiętnego systemu liczbowego na ułamek w naturalny kod dwójkowy polega na powtarzaniu mnożenia ułamka przez 2. Przy wyznaczaniu kolejnych bitów ułamka binarnego nie uwzględnia się części całkowitej (jedynki) wyniku mnożenia [3]. Konwersja licz całkowitych polega na tym, że- liczbę dzielimy przez 2 i jeżeli wynik będzie z resztą: zapisujemy 1, jeżeli nie - zapisujemy 0. Następnie znowu dzielimy przez 2 to, co zostało z liczby, ale bez reszty. Taki proces trwa, aż zostanie 0 (zero). Otrzymane zera i jedynki zapisujemy w odwrotnej kolejności.

Rys 3.3 konwersja DEC na NKD przykład opracowanie własne NKD na DEC Rys 3.4 konwersja NKD na DEC przykład opracowanie własne

W systemie dziesiętnym używanych było dziesięć różnych cyfr do zapisu liczby o podstawie 10. W systemie dwójkowym do dyspozycji jest tylko dwie cyfry 1 i 0. Liczby w systemie binarnym mają podstawę 2. Znak dwójkowy (0 lub 1) nazywany jest bitem. Podobnie jak w przypadku innych systemów liczbowych każda cyfra w liczbie binarnej ma wartość zależną od jej pozycji. Kolejny przykłada pokazuje konwersje ułamka z systemu dwójkowego na dziesiętny. W przypadku ułamków stosuje się ujemne potęgi: Rys 3.5 konwersja ułamka NKD na DEC przykład opracowanie własne DEC na ZM Znak- moduł oznaczany ZM to sposób zapisu liczb całkowitych. W kodzie tym wszystkie bity poza najstarszym mają takie samo znacznie jak w naturalnym kodzie binarnym. Wyróżnionym bitem w tym zapisie jest znak moduł, wynosi on 0 dla liczb dodatnich lub 1 dla liczb ujemnych.

Rys 3.6 konwersja DEC na ZM przykład opracowanie własne DEC na U2 Rys 3.7 konwersja DEC na U2 przykład opracowanie własne

Jeśli liczba jest dodatnia to wygląda w U2 tak samo jak w systemie dwójkowym a bit znaku ma wartość 0. Jeśli natomiast bit znaku przyjmie wartość 1, to liczba jest ujemna. Liczbę przeciwną do danej liczby w U2 uzyskuje się najprościej przez dokonanie negacji wszystkich bitów zapisanych w U2 a następnie do wyniku dodanie 1. Rys 3.8 konwersja liczby ujemnej DEC na U2 przykład opracowanie własne 3.2.2 Zakładka HEX -> DEC Zakładka ta dotyczy konwersji: System dziesiętnego DEC na szesnastkowy HEX System szesnastkowy HEX na dziesiętny DEC

Rys. 3.9 Zakładka HEX -> DEC opracowanie własne DEC na HEX Rys 3.10 konwersja DEC na HEX przykład opracowanie własne

HEX na DEC Rys 3.11 konwersja HEX na DEC przykład opracowanie własne 3.2.3 Zakładka Działania NKD Rys. 3.12 Zakładka Działania NKD- opracowanie własne

Dodawanie NKD Rys 3.13 Dodawanie NKD przykład opracowanie własne Odejmowanie NKD Rys 3.14 Odejmowanie NKD przykład opracowanie własne

C oznacza przeniesienie w tym przypadku pożyczkę, która może przyjmować wartości 0 lub 1. Jeśli C=1 oznacz to, że wystąpiła pożyczka, jeśli C=0 nie wystąpiła pożyczki. Dzięki pożyczce bez problemu można odejmować większe liczy od mniejszych. Mnożenie w NKD Rys 3.15 Mnożenie NKD przykład opracowanie własne Mnożenie to polega na: 1. Wyzerowaniu starszej części wyniku i bitu przeniesienia. 2. Za młodszą cześć wyniku przyjęciu mnożnika. 3. Przesunięciu w prawo młodszej części wyniku/mnożnika. 4. Jeśli poprzedni (ostatnio występujący) najmłodszy bit mnożnika jest ustawiony, dodać mnożną do starszej części wyniku, zachować ewentualne przeniesienie po dodawaniu w bicie przeniesienia. 5. Przesunąć w prawo młodszą część wyniku/mnożnik. 6. Przesunąć w prawo starszą cześć wyniku z uwzględnieniem bitu przeniesienia jako najstarszego bitu wyniku, wychodzący bit jest wpisywany na pozycję najstarszego bitu młodszej części wyniku/mnożnika.

7. Powtarzać czynności od punktu 4 dla wszystkich bitów mnożnika (liczba powtórzeń pętli jest równa liczbie bitów mnożnika)[3]. Dzielenie NKD Rys 3.16 Dzielenie NKD przykład opracowanie własne 3.2.4 Zakładka Działania U2 Rys 3.17 Zakładka Działania U2 - opracowanie własne

Zakładka ta obejmuje mnożenie liczb w systemie U2 metodą: Bootha Robertsona Powielonego znaku Mnożenie według algorytmu Bootha polega na: 1. Wyzerowaniu starszej części wyniku i bitu przeniesienia. 2. Za młodsza część wyniku przyjąć mnożnik. 3. a) Jeśli najmłodsza para jest kombinacja 10 to od iloczynu częściowego odejmuje się mnożną, wynik przesuwa się o jedno miejsce w prawo. b) Jeśli najmłodsza para jest kombinacja 01 to od iloczynu częściowego dodaje się mnożną, wynik przesuwa się o jedno miejsce w prawo. c) Jeżeli są to pary 00 lub 11 to nie wykonuje się żadnego działania,tylko przesuwa się o jedno miejsce w prawo. Przy przesunięci w prawo bierzemy pod uwagę bit przeniesienia wychodzący bit jest wpisywany do bitu przeniesienia. Należy powtórzyć tą czynność dla wszystkich bitów mnożnika. Algorytm ten ma jedno ograniczenie, mianowicie, zwraca nieprawidłowy wynik mnożenia dla mnożnej 100 000 U2 o czym należy bezwzględnie pamiętać. Rys 3.18 Mnożenie metodą Bootha- przykład - opracowanie własne

Sprawdzenie: Pierwsza podana liczba to 101 U2 czyli -3 DEC Druga 111 U2 czyli -1 DEC, po wymnożeniu daje to 000011 U2 czyli 3 DEC Mnożenie według algorytmu Robertsona W algorytmie Robertsona liczby traktowane są jak binarne z tym, że mnożnik pozbawia się najstarszego bitu. W wyniku mnożenia otrzymuje się pseudoiloczyn, od którego należy odjąć poprawkę. Rys 3.19 Mnożenie metodą Robertsona - przykład - opracowanie własne 1.Jeśli mnożnik jest dodatni a co za tym idzie najstarszy bit jest zerem wtedy poprawka wynosi 0, jednak, gdy mnożnik jest ujemny poprawka jest różna od zera. Ilości bitów poprawki jest tak sama jak pseudoiloczynu i stanowi on zaczynając od lewej mnożną pozostałe bity to zera.

2. Podkreślone bity to dopełnienia, stosuje się je przy dodawaniu przesuniętych względem siebie wyników iloczynów poszczególnych bitów mnożnika przez mnożną. Dopełniamy taką cyfrą, jaka występuje w najstarszym bicie w danym wierszu, jeśli jest to 1 to dopełniamy samymi jedynka, jeśli 0 to samymi zerami. Mnożenie metodą powielonego znaku Przed wykonaniem tej operacji arytmetycznej należy dwukrotnie zwiększyć długość słowa każdej z liczb. Jeśli te są różnej długości to przyjmuje się podwójną długość dłuższej liczby. Należy powielić bit znaku na wszystkie dodatkowe pozycje. Tak przygotowane dane mnoży się jak w naturalnym kodzie dwójkowym. Tylko młodsza cześć otrzymanego wyniku mnożenia niesie użyteczne informacje. Bierze się pod uwagę bity w liczbie równej sumie liczby bitów oryginalnej mnożnej i mnożnika. Pozostałe (starsze) bity należy pominąć, gdyż interpretacja wszystkich bitów może prowadzić do błędnego wyniku [3]. Rys 3.20 Mnożenie metodą powielonego znaku - przykład - opracowanie własne