330 likes | 558 Views
Podstawy Techniki Cyfrowej. Wykład 3: Arytmetyka dwójkowa. Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie. Plan. Działania na liczbach bez znaku Działania na liczbach ze znakiem Działania na liczbach w kodzie BCD
E N D
PodstawyTechniki Cyfrowej Wykład 3: Arytmetyka dwójkowa Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie
Plan • Działania na liczbach bez znaku • Działania na liczbach ze znakiem • Działania na liczbach w kodzie BCD • Działania na liczbach zmiennoprzecinkowych
Działania na liczbach bez znaku • Dodawanie • Odejmowanie • Sumowanie modulo 2 • Mnożenie • Sprzętowa realizacja mnożenia • Dzielenie • Dzielenie metodą restytucyjną
Sumowanie modulo 2 • Sumowanie, które nie uwzględnia przeniesień (z pozycji niższej i na pozycję wyższą) • Symbol: ⊕ • Reguły
Odejmowanie przez dodanie liczby w kodzie uzupełnieniowym • U1 • występuje tzw. przeniesienie zwrotne, które należy dodać do wyniku • U2 • występujące przeniesienie oznacza liczbę dodatnią, należy je pominąć
Dzielenie – metoda restytucyjna • W każdym kroku odejmowany jest dzielnik (w kodzie U2) i badany jest znak różnicy, jeśli jest ujemny, to oznacza, że trzeba restytuować poprzednią postać reszty częściowej (dodać dzielnik w kodzie naturalnym) • W szybszej metodzie nierestytucyjnej unika się odtwarzania sumy częściowej
Działania na dużych liczbach stałoprzecinkowych • W realizacjach sprzętowych układy przeznaczone do wykonywania operacji mają często pojemność jednego bajta • Działania na liczbach wielobajtowych wymagają sekwencyjnego przetwarzania kolejnych bajtów • No przykład przy dodawaniu dodaje się parami bajty począwszy od najmniej znaczących i uwzględniając przeniesienia z poprzednich sum • Przeniesienie powstałe przy sumowaniu najstarszych bajtów nosi nazwę nadmiaru lub przepełnienia
Mnożenie i dzielenie liczb ze znakiem • Najprościej w kodzie ZM (mnożenie modułów, znak wyznaczany operacją sumowania modulo 2) • W kodzie ZU2 można zastosować metodę Bootha
Metoda Bootha • Bada się pary sąsiednich bitów począwszy od najmniej znaczącego bitu • Zależnie od wartości bitowej danej pary wykonuje się dodawanie, odejmowanie lub nic się nie robi • Następnie wykonuje się przesuniecie arytmetyczne w prawo i przechodzi się do następnej pary bitów • Reguły:
Odejmowanie w kodzie BCD 8421 • Zastępuje się dodawaniem uzupełnienia odjemnika (do 9 lub do 10)
Działania na liczbach zmiennoprzecinkowych (2) • Właściwości dodawania i odejmowania: • jeżeli w wyniku dodawania w mantysie sumy wystąpi przeniesienie na pozycję znaku, to należy go skorygować, przesuwając mantysę o jedną pozycję w prawo i zwiększenie wykładnika o 1 • jeżeli w wyniku odejmowania w mantysie różnicy wystąpi zero na najbardziej znaczącej pozycji to należy znormalizować mantysę przesuwając ją w lewo tak długo, aż na tej pozycji pojawi się 1 (nie dotyczy mantysy zerowej), a wykładnik należy zmniejszyć o liczbę odpowiadającą liczbie pozycji, o które została przesunięta mantysa