Gast
#1731403
Hallo, ich wollte mal fragen ob einer mal mein Programm kontrollieren
kann.
Aber zuerst hab ich noch ne andere Kleinigkeit. in einem 16 Bit Register
steht der Wert 90C7. Der entspricht ja dezimal 37063 wenn sf nicht
gesetzt ist aber wie sieht es aus wenn sf gesetzt ist?
So nun zu meinem Prog.: Ich habe eine Gleichung mit z= ((x*2+y)/20).
Für x und y sol ich jeweils eine Byte Variable mit vorzeichenbehafteten
Initialwert und für Z eine Byte Variable für den Quotienten und eine für
den Divisionsrest.Beide sollen keinen bestimmten Initialwert haben. Weil
vorzeichenbehaftet muss imul und idiv benutzt werden.
Jetzt hab ich das raus:
.data x DB 12
y DB 6
Z DB ?;?;? ;1Byte Quotient
;2Byte Rest
;-------------------------------------------
.stack 16 ;16Byte stack reserviert
;-------------------------------------------
.code
.startup
mov al, x
mov bl, 2
imul bl
mov bl, y
add bl
mov bh, 20
idivbh
mov z[0], ah
mov z[1], al
.exit
ist das soweit ok oder hab ich da nen Fehler drin?
Hoffe Ihr könnt kurz helfen. Danke!