Om en instruktion "div %bx" exekveras av en i386 processor. Är det ekvalient med:
EAX = int( EAX / EBX )
EDX = EAX % EBX
Dvs EAX lika med heltalsdelen av divisionen och EDX lika med decimaldelen. Men då den senare är med heltal så uttrycks den i modulo istället.
80386 instruktionen DIV, ekvalient formel?
Re: 80386 instruktionen DIV, ekvalient formel?
BX är väl 16 bit så det bör vara DX/AX som är inblandade, inte EAX/EDX.
Det borde bli :
AX = DX:AX / BX
DX = DX:AX % BX
http://download.intel.com/design/intarc ... 319101.pdf
Sid 3-148.
Men igentligen så vat jag inte alls, jag vet inte ett smack om
den arkiekturen...
Det borde bli :
AX = DX:AX / BX
DX = DX:AX % BX
http://download.intel.com/design/intarc ... 319101.pdf
Sid 3-148.
Men igentligen så vat jag inte alls, jag vet inte ett smack om
den arkiekturen...

Re: 80386 instruktionen DIV, ekvalient formel?
"div %ebx" skulle det vara förstås.
Tja.. x86 arkitekturen är tragisk. Och något man vill undvika
(nödvändligt ont)
Tja.. x86 arkitekturen är tragisk. Och något man vill undvika

(nödvändligt ont)
Re: 80386 instruktionen DIV, ekvalient formel?
Blir det inte då :
EAX = int(EAX:EDX / EBX)
EDX = EAX:EDX % EBX
Eller så läste jag helt galet...
EAX = int(EAX:EDX / EBX)
EDX = EAX:EDX % EBX
Eller så läste jag helt galet...
