Hi! Ich soll 2 16 Bit Zahlen multiplizieren. Ich hab hier eine Formel:(x1 * F + x0) * (y1 * F + y0) x=16 Bit-zahl y=26 Bit-zahl x1=High-Byte x0=Low-Byte y1=High-Byte y0=Low-Byte F=256(0....255) Ich verstehe einfach nicht wie man auf die Formel da kommt. Kann mir das einer Bitte erklären? Und warum mann gerade das High-Byte mit 256 multiplizieren muss. mfg Mr Gast
Mr Gast schrieb: > Ich hab hier eine Formel:(x1 * F + x0) * (y1 * F + y0) Und was soll die bedeuten? Da ist ja nichtmal ein Gleichheitszeichen enthalten. Wenn man alles mit Gleichheitszeichen hinschreibt, wird es ganz einfach: x = x1 * 256 + x0 y = y1 * 256 + y0 -> x * y = (x1 * 256 + x0) * (y1 * 256 + y0) u.s.w.
Mr Gast schrieb: > Und warum mann gerade das High-Byte mit 256 multiplizieren muss. weil eine Multiplikation mit 256 genau einer Shift-Operation um 8 Bit nach links entspricht !!!
Mr Gast schrieb: > Ich soll 2 16 Bit Zahlen multiplizieren. Na dann tu es doch einfach! ich nehme aber mal an, daß dein Lehrer erwartet, daß du dir Gedanken darüber machst, wie man in der digitalen Welt Zahlen multipliziert. Mein Tip: Es geht ganz genau so wie bei Adam Ries, bloß nicht mit 10 als Basis, sondern mit 2 als Basis. Also Erg := a * b; zerlegt sich zu: Erg = aaaaaaa * b(n) + aaaaaaa * b(n-1) + aaaaaaa * b(n-2) ... usw. W.S.
W.S. schrieb: > Mein Tip: Es geht ganz genau so wie bei Adam Ries, bloß nicht mit 10 als > Basis, sondern mit 2 als Basis. Bei der Formel ... Mr Gast schrieb: > Ich hab hier eine Formel:(x1 * F + x0) * (y1 * F + y0) ... sozusagen zur Basis 256.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.