Problem mit 8086 Assembler!

Gast #1054950
Lesenswert?

Hallo, habe ein (wahrscheinlich klitzekleines) Problemchen mit einem 
Assembler Programm. Ich möchte die Gleichung z=(x*3+y)/20 in Assembler 
berechnen lassen. Hat auch alles ganz gut geklappt, aber wenn ich Werte 
einsetze, die ein nicht ganzzahliges Z verursachen, bekomme ich im 
AH-Register keinen Rest angezeigt... Weiß einer Rat?

Mein Code  lautet (für z=(x*3+y)/20):

.data
X db ...
Y db ...
Z db ?,?

.code
.startup
    mov AL,X
    mov AH,3
    mul AH
    mov BL,Y
    add AX,BX
    mov BX, 20
    div BX
    mov Z[0], AL
    mov Z[1], AH
end

Tja, falls dort Fehler auftreten, würde mich das brennend interessieren. 
Wie gesagt, das Programm läuft, sofern Z ganzzahlig wird, problemlos.

Danke im Voraus!
Gast #1055431
Lesenswert?

Ja, da sind eine Menge Fehler drin, aber den wichtigsten hat bis jetzt 
noch keiner gefunden. Wer sucht der findet..

>Hi
>'div' legt keinen Rest in AH ab. AX ist das (kleinste) Ergebnisregister.
>MfG Spess

Quatsch, - aber nah dran!

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren