Software > Coding

ASM: Ergebnis von divs aufteilen in 2x 16 Bit für die Ergebnisse.

<< < (2/3) > >>

laufkopf:
oder eine fallabfrage
move nach d0
bmi.s divsl
rts
divsl: ext.l d0
rts

guest3744:
ds%=SWAP(r%(0))\65535  > Ergebnis
ds1%=r%(0)\65535            > Rest der Divison

Gruss

laufkopf:
CARD() liefert die unteren 16 bit
SWAP() vertauscht obere und untere 16 bit

laufkopf:
Lese mal etwas über zweierkomplementdarstellung und signed und unsigned
8 bit
76543210 hoch2
10000001 gedeutet als unsigned = 129
10000001 gedeutet als signed = -1

guest3744:
Wenn ich ds&=Card(r%(0)) eingebe , kommt die Fehlermeldund: (siehe Bild).
Aber die unteren 16 Bit sind doch Wort : -32768..32767 !!!! (47 / -5 = -9 )weil divs ja das oberste Bit setzt, (Bit 15) . Macht Card daraus wieder eine vorzeichenlose Zahl?

Bei ds%=card(swap(r%(0))) kommt jedenfalls erstmal der richtige Restwert 2 raus.

Gruss

Navigation

[0] Themen-Index

[#] Nächste Seite

[*] Vorherige Sete

Zur normalen Ansicht wechseln