Forum: Mikrocontroller und Digitale Elektronik 8 Bit Multiplikation


von unknown (Gast)


Lesenswert?

Hallo, verstehe ich es korrekt, dass mein Mega8 zwei 8 Bit Zahlen 
miteinander multiplizieren kann und das Ergebnis dann im r0-r1 
erscheint?


Wie würdet ihr nach Ergebniserhalt vorgehen, um die Zahl irgendwo 
auszugeben?
Unter C würde man ja um an die Stellen zu kommen mit Modulo bzw. /1 /10 
/1000 arbeiten...

Schönes Wochenende noch!

von 3366 (Gast)


Lesenswert?

Das Word, als 4 HexZiffern ausgeben ... resp jeder der beiden bytes als 
2 Hexziffern

von unknown (Gast)


Lesenswert?

Ah ok.

Ich werde mir mal auf papier gedanken dazu machen und die hex methode 
ausprobieren!


Danke.

von unknown (Gast)


Lesenswert?

Ehm könntest du vielleicht mal ein Beispiel nennen?

Dez 5200 z.b.
ist 00010100 01010000 (binär)
und hexadezimal 1450 .


Wie soll ich nun weiter vorgehen?

Ich bräuche das Ergebnis quasi so:
5
2
0
0
jeweils in einzelnen Registern...
Alternativ ginge auch
52
00
Da keine Zahlen größer als 9999 auftreten.

von Peter D. (peda)


Lesenswert?

unknown wrote:
> Wie würdet ihr nach Ergebniserhalt vorgehen, um die Zahl irgendwo
> auszugeben?

http://www.mikrocontroller.net/attachment/292/BCD32b.asm


Peter

von MC (Gast)


Lesenswert?

Du musst einen Divisionsbefehl aus dem Befehlsvorat des AVRs generieren.

von unknown (Gast)


Lesenswert?

@Mc, ja das man da irgendwie "Tricksen" muss ist mir woh klar...



@peda:

Gibts das auch in 16 bit?

von unknown (Gast)


Lesenswert?

Also lässt sich festhalten, dass das Problem was ich zu lösen versuche 
sich mit Bin zu BCD beschreiben lässt?

von unknown (Gast)


Lesenswert?

ODer nutze ich einfach nur den unteren Teil des Programms Bin 16`?

von Peter D. (peda)


Lesenswert?

unknown wrote:
> ODer nutze ich einfach nur den unteren Teil des Programms Bin 16`?

Ja.
Benutze bin16_ascii.


Peter

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
Noch kein Account? Hier anmelden.