A što ne bi moglo

. Inače, ovo bi trebalo da znaju svi koji se ozbiljnije bave računarima, programiranjem itd, a ne samo matematičari ...
Interesantno je reći da se operacije plus i puta, sa stanovišta modernih računara, svode na jednu jedinu operaciju SHIFT po registru (premeštanje bajtova po registru).
Nego da se vratim na priču. Da bi shvatio množenje binarnih brojeva moraš znati sabiranje, tako da podrazumevam da to znaš.
Postoji, koliko ja znam, tri pristupa:
1. Repeated addition
2. Treat as a multi-line addition
3. Repeated shift and add
Ja ću objasniti ovo pod 1, a ukoliko nekog zanimaju ostali metodi može pogledati
ovde.
Inače, ukoliko nekog zanimaju sistemi za predstavljanje brojeva: binarni, hexadecimalni, oktalni, dekadni može baciti pogled
ovde.
Konačno, evo odgovora na tvoje pitanje:
Metoda se sastoji iz nekoliko koraka i petlje, da tako kažem:
Pretpostavimo da treba pomnožiti sledeća dva binarna broja: 1) 1001 2) 100100, odnosno u dekadnom: 1) 9 2) 36
Prvi korak je da podesiš rezultat na nulu:
1001 X
100100
0
Drugi je: dodati drugi broj kao rezultat, dakle:
1001 X
100100
100100
Treći: zatim se prvi broj smanji za 1:
1000 X
100100
100100
Četvrti: proveriš da li je prvi broj sada nula. Ako jeste, onda je poslednji rezultat ono što traziš, a ukoliko nije, onda ponoviš postupak: dodavanje drugog trenutnom rezultatu (znači sabiranje je u pitanju), smanjivanje prvog za jedan, pa opet test ... To bi u ovom slučaju izgledalo ovako, korak po korak:
1000 X
100100
1001000
111 X
100100
1001000
111 X
100100
1101100
110 X
100100
1101100
.
.
.
i da ne pišem sve, konačno kada prvi bude dogurao do nule, onda je poslednji rezultat proizvod ona dva broja ( 1), 2) ), u ovom slučaju to je 101000100, odnosno 324 u dekadnom, a kad se proveri to zaista i jeste 9 X 36.
To bi bio neki algoritam. Nadam se da nema nejasnoća, ako ima pitaj.
Hm, a šta mislite o ovome:
1001 X 100100
0000
0000
1001
0000
0000
1001
------------------
101000100
Napominjem da je ove četvorobitne brojke elitesecurity formatirao tako što ih je sve dogurao do leve margine, a jasno je da, kao kod običnog množenja, svaki viši broj je pomeren za jedan u desno više od onog ispod njega.
Ajmo podpitanje: deljenje !?!
poz.