Czy wiecie może w jaki sposób sprawdzić czy zadana liczba 8 bitowa ma parzystą liczbę zer?
- posted
20 years ago
Czy wiecie może w jaki sposób sprawdzić czy zadana liczba 8 bitowa ma parzystą liczbę zer?
Policzyc sobie zera.
Bez okreslenia problemu nie uzyskasz konkretnej odpowiedzi. System binarny czy dziesietny? Realizacja w C++, assemblerze mikrokontrolera czy bramki logiczne?
TP.
Zostałem zmylony przez nazwę grupy :) W C++ to by było zbyt banalne ;) Chodzi o realizację na bramkach (no chyba że trzeba jakiś liczników przerzutników etc ale chyba nie) a liczba jest podawana w naturalnym dwójkowym.
Na szybko.
mamy bity od 0 do 7. bity 0 i 1 wchodza na bramke XOR_01 (daje na wy. 1, gdy na we. sa rozne bity, a zero gdy takie same). bity 2 i 3 wchodza na bramke XOR_23 bity 4 i 5 wchodza na bramke XOR_45 bity 6 i 7 wchodza na bramke XOR_67
teraz wyjscie XOR_01 i XOR_23 wchodzi na bramke XOR_A wejscie XOR_45 i XOR_67 na bramke XOR_B
teraz wyjscia XOR_A i XOR_B wchodza na XOR_C.
Jesli jest nieparzysta liczba zer to na XOR_C mamy 1 i na odwrot.
Rozwiazanie na szybko. Dziala?
Trix.
Tak też to rozwiązałem na kolosie :) ale to chyba nie jest poprawne rozwiązanie... daj sobie np same zera a potem np same jedynki z wyjątkiem zerowego i pierwszego bitu...
Sprawdzic parzystosc jedynek. A to swietnie robia bramki XOR.
J.
parzysta liczba zer oznacza parzystą liczbę jedynek; ergo: użyj XOR
Czy chodzi o taki układzik:
0 1 2 3 4 5 6 7 | | | | | | | | xor xor xor xor \ / \ / | | | | xor xor \ / \__ __/ | | xor | Bo już sam nie wiem czy to dobrze jest.. wcześniej jak liczyłem to źle wychodziło ale teraz patrzę niby dobrze...
IMHO tak
Wyjdzie 0 na wyjściu i to jest OK
No i nie wyjdzie bo jezeli damy
0-1 1-1 2-0 3-0 4-1 5-1 6-0 7-0 to mamy parzyste zera i na wyjsciach: 01-0 23-0 45-0 67-0 bo na wejsciach sa te same stany czyli na wyjsciu calego XOR-a 0 a ma byc jeden bo parzyste :)) czyli uklad musi byc bardziej rozbudowany. Pozdr JanuszZatem z kolosa szykuje sie piateczka. A co to za szkola?
Trix.
Politechnika Częstochowska.
O jeden negator na wyjsciu .
J.
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.