Najpierw liczby całkowite są konwertowane na liczby binarne. Na przykład liczba całkowita 2 jest konwertowana na 0010.
Procesor korzysta z komparatora cyfrowego :
Cyfrowy komparator lub wielkość komparator jest elektroniczne urządzenie, które trwa dwa numery jako wsad w postaci binarnej i określa, czy jedna liczba jest większa lub mniejsza lub równa drugiej liczbie.
Komparatory są stosowane w jednostkach centralnych (CPU) i mikrokontrolerach.
Źródło: https://en.wikipedia.org/wiki/Digital_comparator
W sprzęcie komparatora stosowane są niektóre bramki (AND, OR, NAND, NOR, XOR itp.). Te bramki pobierają dane binarne i dają wynik w postaci binarnej. Dane wyjściowe można zobaczyć z tabeli prawdy.
Inputs Outputs
A B A>B A=B A<B
0 0 0 1 0
0 1 0 0 1
1 0 1 0 0
1 1 0 1 0
Oto 0
i 1
są napięcia elektryczne dla bramy.
1
- Reprezentuje pewne napięcie progowe, które wskazuje pewne napięcie dodatnie.
0
- Reprezentuje napięcie poniżej progu.
Załóżmy na przykład, że komparator działa na 5 woltów (należy to wyjaśnić), a następnie:
Napięcie powyżej 3 woltów można uznać za binary-1
.
Napięcie poniżej 3 woltów należy traktować jakobinary-0
Jeśli bramka otrzymuje jedno wejście jako 3,5 wolta, a drugie wejście jako 2 wolty, wówczas uważa, że przyjmuje jedno wejście jako binarne 1, a drugie wejście jako binarne 0.
Te sekwencje zer i jedynek są dostarczane bardzo szybko przez obwód przełączający.
Działanie dwubitowego komparatora cyfrowego można wyrazić jako tabelę prawdy:
Inputs Outputs
A1 A0 B1 B0 A>B A=B A<B
0 0 0 0 0 1 0
0 0 0 1 1 0 0
0 0 1 0 1 0 0
0 0 1 1 1 0 0
0 1 0 0 0 0 1
0 1 0 1 0 1 0
0 1 1 0 1 0 0
0 1 1 1 1 0 0
1 0 0 0 0 0 1
1 0 0 1 0 0 1
1 0 1 0 0 1 0
1 0 1 1 1 0 0
1 1 0 0 0 0 1
1 1 0 1 0 0 1
1 1 1 0 0 0 1
1 1 1 1 0 1 0
Cytat z Wikipedii :
Przykłady: Rozważ dwie 4-bitowe liczby binarne A i B, tak że
tutaj każdy indeks dolny reprezentuje jedną z cyfr liczb.
Równość
Liczby binarne A i B będą równe, jeśli wszystkie pary cyfr znaczących obu liczb będą równe, tj
. . .
Ponieważ liczby są binarne, cyfry mają wartość 0 lub 1, a funkcja boolowska dla równości dowolnych dwóch cyfr i> może być wyrażona jako
1 jest tylko wtedy, gdy i są równe.
Aby uzyskać równość A i B, wszystkie zmienne (dla i = 0,1,2,3) muszą wynosić 1. Zatem warunek jakości A i B można zaimplementować za pomocą operacji AND jako
zmiennej binarnej (A = B) wynosi 1 tylko wtedy, gdy wszystkie pary cyfr dwóch liczb są równe.
Nierówność
Aby ręcznie określić większą z dwóch liczb binarnych, sprawdzamy względne wielkości par cyfr znaczących, zaczynając od najbardziej znaczącego bitu, stopniowo przechodząc w kierunku niższych znaczących bitów, aż do znalezienia nierówności. Gdy zostanie znaleziona nierówność, jeśli odpowiedni bit A wynosi 1, a bit B wynosi 0, wówczas wnioskujemy, że A> B. To sekwencyjne porównanie można wyrazić logicznie jako: