Jak wykonać w poniższym przykładzie dodawanie binarne? 11101 10111 11111 11011 Jezeli np wyjdą, potocznie mówiąc, jak już w pierwszym działaniu od prawej, 4 jedynki, to co trzeba przenieść a co wpisać pod spodem? Proszę o sposob na liczenie tego inny niż wykorzystując dzielenie przez 2 i resztę. Pilne. Dam naj
Dodawanie binarne odbywa się na podobnej zasadzie jak dodawanie w systemie dziesiętnym. Zasada jest prosta, dodajesz do siebie bity znajdujące się pod sobą (w podanym przykładzie suma bitów w pierwszym działaniu to 4) następnie dzielisz tą sumę bitów przez 2 (ponieważ działasz w systemie dwójkowym - zatem w przykładzie wspomniane 4/2) i reszta z dzielenia trafia do wyniku, a cześć całkowita z dzielenia jest przeniesieniem. Następnie wykonujemy identyczne działanie w kolejnym słupku uwzględniając w dodawaniu bitów również przeniesienie itd.
Twój przykład
11101
10111
11 111
11011
-------
1. kolumna od prawej 1+1+1+1 = 4 -> 4/2 -> reszta 0 (trafia do wyniku) część całkowita 2 (jest to przeniesienie)
2. kolumna (0+1+1+1+2przeniesienia) = 5 -> 5/2 -> reszta 1 (trafia do wyniku) część całkowita 2 (jest to przeniesienie)
3. kolumna (1+1+1+0+2przeniesienia) = 5 -> 5/2 -> reszta 1 (trafia do wyniku) część całkowita 2 (jest to przeniesienie)
4. kolumna (1+0+1+1+2przeniesienia) = 5 -> 5/2 -> reszta 1 (trafia do wyniku) część całkowita 2 (jest to przeniesienie)
5. kolumna (1+1+1+1+2przeniesienia) = 6 -> 6/2 -> reszta 0 (trafia do wyniku) część całkowita 3 (jest to przeniesienie)
Uwaga pojawia się kolumna nr 6 do której trafia tylko przeniesienie 3. W tej kolumnie suma bitów to 3 -> 3/2 -> reszta 1 (trafia do wyniku) część całkowita 1 (jest to przeniesienie)
Uwaga pojawia się kolumna nr 7 do której trafia tylko przeniesienie 1. W tej kolumnie suma bitów to 1 -> 1/2 -> reszta 1 (trafia do wyniku) część całkowita 0 (jest to przeniesienie)
Ponieważ nie ma już przeniesienia oraz "wyczerpaliśmy" już bity ze wszystkich liczb to działanie jest zakończone, a wynik wynosi
Odpowiedź:
Dodawanie binarne odbywa się na podobnej zasadzie jak dodawanie w systemie dziesiętnym. Zasada jest prosta, dodajesz do siebie bity znajdujące się pod sobą (w podanym przykładzie suma bitów w pierwszym działaniu to 4) następnie dzielisz tą sumę bitów przez 2 (ponieważ działasz w systemie dwójkowym - zatem w przykładzie wspomniane 4/2) i reszta z dzielenia trafia do wyniku, a cześć całkowita z dzielenia jest przeniesieniem. Następnie wykonujemy identyczne działanie w kolejnym słupku uwzględniając w dodawaniu bitów również przeniesienie itd.
Twój przykład
11101
10111
11 111
11011
-------
1. kolumna od prawej 1+1+1+1 = 4 -> 4/2 -> reszta 0 (trafia do wyniku) część całkowita 2 (jest to przeniesienie)
2. kolumna (0+1+1+1+2przeniesienia) = 5 -> 5/2 -> reszta 1 (trafia do wyniku) część całkowita 2 (jest to przeniesienie)
3. kolumna (1+1+1+0+2przeniesienia) = 5 -> 5/2 -> reszta 1 (trafia do wyniku) część całkowita 2 (jest to przeniesienie)
4. kolumna (1+0+1+1+2przeniesienia) = 5 -> 5/2 -> reszta 1 (trafia do wyniku) część całkowita 2 (jest to przeniesienie)
5. kolumna (1+1+1+1+2przeniesienia) = 6 -> 6/2 -> reszta 0 (trafia do wyniku) część całkowita 3 (jest to przeniesienie)
Uwaga pojawia się kolumna nr 6 do której trafia tylko przeniesienie 3. W tej kolumnie suma bitów to 3 -> 3/2 -> reszta 1 (trafia do wyniku) część całkowita 1 (jest to przeniesienie)
Uwaga pojawia się kolumna nr 7 do której trafia tylko przeniesienie 1. W tej kolumnie suma bitów to 1 -> 1/2 -> reszta 1 (trafia do wyniku) część całkowita 0 (jest to przeniesienie)
Ponieważ nie ma już przeniesienia oraz "wyczerpaliśmy" już bity ze wszystkich liczb to działanie jest zakończone, a wynik wynosi
1101110 oczywiście zapisane w systemie binarnym
Wyjaśnienie: