Nasobení, dělení ve ve dvojkový....soustavě

Místo pro témata a příspěvky spadající MIMO počítačovou problematiku (tedy např. sport, zdraví, vtipy, škola...).

Moderátoři: Mods_junior, Mods_senior

Uživatelský avatar
faraon
Master Level 8.5
Master Level 8.5
Příspěvky: 7398
Registrován: prosinec 10
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Nasobení, dělení ve ve dvojkový....soustavě

Příspěvekod faraon » 13 zář 2011 22:23

POZOR! Ten doplněk už sčítáš, takže to bude vypadat takhle:

Kód: Vybrat vše

' 1 0 1 1 1 1
+ 1 1 1 0 1 0
----*-*-*----
' 1 0 1 0 0 1 <- tady jsi měla chybu, musíš přičíst i tu třetí jedničku z přenosu,
+           1      piš si jí tam někam, třeba jako ty hvězdičky nebo jinou značku
-------------
' ? ? ? ? ? ?

Tu přebytečnou jedničku vlevo při prvním sčítání můžeš zahodit, dokud nebudeš počítat i se zápornými čísly. Kdyby ti tam vyšla nula, mělo by tě to upozornit že výsledek bude potřeba převést na kladné číslo - úplně stejně jako se převádí na záporné, negací a přičtením jedničky.



Pro násobení je potřeba umět násobit jen dvěma, což se provede stejně jako násobení deseti v desítkové soustavě - posunem desetinné čárky neboli přidáním nuly na konec:

110101101 * 2 = 1101011010

Dělení dvěma probíhá přesně opačně:

110101101 / 2 = 11010110

Počítá se celočíselně, takže co se dostane za tu desetinnou čárku vpravo, prostě zmizí. Navždy.

Pro vynásobení dvou čísel je nejlepší udělat jednoduchou tabulku:
1110 * 110101101 =

Kód: Vybrat vše

0 |       1 1 0 1 0 1 1 0 1 - původní číslo
1 |     1 1 0 1 0 1 1 0 1   - dvounásobek
1 |   1 1 0 1 0 1 1 0 1     - čtyřnásobek
1 | 1 1 0 1 0 1 1 0 1       - osminásobek

Pokud je na některém místě v násobku nula, vynuluje se celý řádek a zůstanou jen ty jedničkové. Ale pozor na sloupce, musí zůstat zachován jejich počet!

Kód: Vybrat vše

0 |       0 0 0 0 0 0 0 0 0
1 |     1 1 0 1 0 1 1 0 1
1 |   1 1 0 1 0 1 1 0 1
1 | 1 1 0 1 0 1 1 0 1
---------------------------
    ? ? ? ? ? ? ? ? ? ? ? ?

A teď se sečtou jednotlivé sloupce. Když ti vyjde větší číslo na přenos, provede se následující: je-li liché, zůstává ve sloupci jednička, v opačném případě nula. Do vyššího řádu se přenese poloviční hodnota onoho čísla.
"Král Lávra má dlouhé oslí uši, král je ušatec!

(pravil K. H. Borovský o cenzuře internetu)

Reklama

Zpět na “Vše ostatní (Off topic)”

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 13 hostů