Dlaczego dodajemy 6 w dodatku BCD?

10

Czasami, jeśli suma dwóch cyfr wynosi <10, dodawanie BCD jest podobne do dodawania binarnego.

Ale czasami, jeśli suma> 9, wynik wymaga korekty. Ta korekta to + (0110).

Dlaczego dodajemy 6? Dlaczego nie jakiś inny numer? Przeszukałem internet, ale nie rozumiem.


Jeśli potrzebujesz linków do tego pytania, które były zadawane w przeszłości:

moje wwe
źródło
wyjaśnienie
phuclv

Odpowiedzi:

20

Cztery cyfry binarne liczą do 15 (1111), ale w BCD używamy tylko reprezentacji do 9 (1001). Różnica między 15 a 9 wynosi 6. Jeśli chcesz, aby 9 + 1 wytworzyło 10, czyli 1 0000, musisz dodać 6, aby 1010 zawinąć do 1 0000.

Jeśli dodajesz minuty, podobnie dodajesz 40 do czasu, który przekracza 59 minut. Przykład: 45 minut plus 35 minut to 80 minut. Korekta, dodaj 40, aby uzyskać 120. Teraz wstaw dwukropek: 1:20. Godzina, dwadzieścia minut. 40 to różnica między 100 a 1:00.

Kaz
źródło
2
Zbyt wiele głosów pozytywnych dla oczywistych i marginalnie aktualnych! Dlaczego nie znajdziecie trudnej odpowiedzi na projekt elektroniczny, która nie ma 11 głosów pozytywnych i nie udzielajcie jej jednego.
Kaz
2
Okej, ten nowy głos wyraźnie miał na celu złość mojego komentarza.
Kaz
1
Ludzie reagują na ciebie teraz, gdy idziesz drogą głupią LOL - odwet, głosując heh heh
Andy aka
1

Odnosi się do reprezentacji liczb uzupełniających dwa.

https://en.wikipedia.org/wiki/Two%27s_complement

Jeśli chcesz odjąć B od A (A - B), możemy dodać (-B) do A alternatywnie (A + (- B)).

Jeśli suma> 10, potrzebujemy 4 najmniej znaczących cyfr sumy do reprezentacji BCD, dlatego powinniśmy odjąć 10 od sumy.

Uzupełnienie 2 dla 10 na 5 bitów wynosi (Ten = 01010), dlatego gdy chcemy odjąć 10 od liczby, możemy dodać (-Ten) do liczby, która reprezentuje w 2 'uzupełnienie jako (10110).

Dodawanie BCD jest jak 4-bitowy sumator binarny, co oznacza, że ​​potrzebujemy 4 najmniej znaczących bitów (-Ten) {0110 = # 6}, aby dodać go do sumy.

Mohammad Moridi
źródło