Piotr Kawalec
Wykład II - 1
Wykład II
Arytmetyka systemów
cyfrowych
c.d.
Technika cyfrowa
Piotr Kawalec
Wykład II - 2
Technika cyfrowa
Kody stosowane w technice cyfrowej
Kodami nazywamy ciągi binarne nie mające
cech pozycyjnych systemów liczbowych
Kody stosowane do zapisu liczb względnych
kod U1 (zapis odwrotny)
kod U2 (zapis dopełniający)
Kody stosowane w arytmetyce dwójkowo-
dziesiętnej (
kod BCD
)
Piotr Kawalec
Wykład II - 3
Technika cyfrowa
Kody stosowane w technice
cyfrowej (2)
Kody wykorzystywane w syntezie
układów
cyfrowych
kod Gray’a
Kody stosowane w transmisji danych
kody detekcyjne
kody korekcyjne
Piotr Kawalec
Wykład II - 4
Technika cyfrowa
Zapis znaku liczby
pozycja znakowa liczby binarnej
.
liczba w NKB
dla liczb
dodatnich
- pozycja znakowa
0.
dla liczb
ujemnych
- pozycja znakowa
1.
Piotr Kawalec
Wykład II - 5
Technika cyfrowa
Zapis liczb względnych (1)
1
.
zapis znak - moduł
znak.
moduł liczby w NKB
dla liczb
dodatnich
- pozycja znakowa
0.
dla liczb
ujemnych
- pozycja znakowa
1.
Piotr Kawalec
Wykład II - 6
Technika cyfrowa
Zapis liczb względnych (2)
2
.
zapis odwrotny (uzupełnienie do jedności,
kod
U1
)
dla liczb
dodatnich
- taki jak zapis modułowy
znak.
moduł liczby w NKB
dla liczb
ujemnych:
zanegować bity modułu
na pozycji znakowej umieścić
1.
Piotr Kawalec
Wykład II - 7
Technika cyfrowa
Zapis liczb względnych (3)
3
.
zapis dopełniający (uzupełnienie do
dwóch,
kod
U2
)
dla liczb
dodatnich
- taki jak zapis modułowy
znak.
moduł liczby w NKB
dla liczb
ujemnych:
zanegować bity modułu
dodać jedynkę
na pozycji znakowej umieścić
1.
Piotr Kawalec
Wykład II - 8
Technika cyfrowa
Wykonywanie operacji
arytmetycznych
w zapisie modułowym
operacje
wykonuje się na modułach liczb;
oddzielne bloki do dodawania (sumatory) i odejmowania
(subtraktory);
konieczność wstępnego porównywania liczb, aby przy
odejmowaniu zawsze odejmować od liczby o większej
wartości
bezwzględnej liczbę o mniejszej wartości bezwzględnej
(
znak wyniku taki jak znak liczby o większej wartości
bezwzględnej
)
Piotr Kawalec
Wykład II - 9
Technika cyfrowa
Wykonywanie operacji
arytmetycznych
w kodzie U1 (1)
wykonywane jest tylko sumowanie;
kolejność czynności:
po wyznaczeniu NKB liczb należy wyrównać
pozycyjność;
liczby zapisać w kodzie U1;
wykonać sumowanie na wszystkich bitach łącznie z
bitami
znaku;
ewentualną jedynkę przeniesienia lub pożyczki
dodać do
najmniej znaczącego bitu wyniku;
Piotr Kawalec
Wykład II -
10
Technika cyfrowa
Wykonywanie operacji arytmetycznych
w kodzie U1 (2)
przy operacjach na liczbach o tym samym znaku
sprawdzić
możliwość przekroczenia zakresu i przeprowadzić
ewentualną korektę;
jeśli na pozycji znakowej wyniku występuje
1.
uzyskać
NKB
wyniku negując bity modułu i umieszczając przed nim
znak
-
.
Cechy charakterystyczne:
podwójna reprezentacja zera;
konieczność zarezerwowania czasu na dwukrotne
sumowanie
Piotr Kawalec
Wykład II -
11
Technika cyfrowa
Wykonywanie operacji
arytmetycznych
w kodzie U2 (1)
wykonywane jest tylko sumowanie;
kolejność czynności:
po wyznaczeniu NKB liczb należy wyrównać
pozycyjność;
liczby zapisać w kodzie U2;
wykonać sumowanie na wszystkich bitach łącznie z
bitami
znaku;
ewentualną jedynkę przeniesienia lub pożyczki
pominąć !!!
Piotr Kawalec
Wykład II -
12
Technika cyfrowa
Wykonywanie operacji
arytmetycznych
w kodzie U2 (2)
przy operacjach na liczbach o tym samym znaku
sprawdzić
możliwość przekroczenia zakresu i przeprowadzić
ewentualną korektę;
jeśli na pozycji znakowej wyniku występuje
1.
uzyskać
NKB
wyniku negując bity modułu,
dodając 1
i
umieszczając
przed NKB znak
-
.
Cechy charakterystyczne:
jednoznaczna reprezentacja liczb;
jednokrotne sumowanie
Piotr Kawalec
Wykład II -
13
Technika cyfrowa
Arytmetyka dwójkowo-dziesiętna
zamienić
moduł liczby dziesiętnej na kod BCD;
wykonać sumowanie bitów zaznaczając
*
tetrady z
których
nastąpiło przeniesienie;
do tetrad z których nastąpiło przeniesienie dodać
korekcyjną
wartość
110
(6);
do tetrad w których został przekroczony zakres kodu
BCD
dodać korekcyjną wartość
110
(6)
Piotr Kawalec
Wykład II -
14
Technika cyfrowa
Wykonywanie operacji mnożenia
przy pomocy specjalnych układów mnożących
(multiplikatorów);
metodą wielokrotnego sumowania mnożnej i
przesuwania
tworzonych sum cząstkowych:
liczba sumowań zależy od ilości jedynek mnożnika;
liczba przesunięć zależy od ilości bitów mnożnika