English
In these tables I summarize the registers that used in MUl, DIV/IDIV operations in x86 assembly.
DIV/IDIV registers Table
| Section
Divisor Size |
Dividend | Quotient | Remainder | Math. Formula |
| 1 byte | AX | AL | AH | AX/Divisor = AL+AH |
| 1 word | DX:AX | AX | DX | DX:AX/Divisor = AX+DX |
| 1 double word | EDX:EAX | EAX | EDX | EDX:EAX/Divisor = EAX+EDX |
MUL registers Table
| Section
Multiplier Size |
2nd Multiplier | Multiplicand | Math |
| 1 byte | AL | AX | AX = Multiplier*AL |
| 1 word | AX | DX:AX | DX:AX = Multiplier*AX |
| 1 double word | EAX | EDX:EAX | EDX:EAX = Multiplier*EAX |
Türkçe
Bu tablolarda, x86 assembly ‘de MUL, DIV/IDIV operasyonlarında kullanılan register’ları özetledim.
DIV/IDIV’de kullanılan registerler Tablosu
| #
Bölen Boyutu |
Bölünen | Bölüm | Kalan | Formül |
| 1 byte | AX | AL | AH | AX/Bölen = AL+AH |
| 1 word | DX:AX | AX | DX | DX:AX/Bölen = AX+DX |
| 1 double word | EDX:EAX | EAX | EDX | EDX:EAX/Bölen = EAX+EDX |
MUL’da kullanılan registerler tablosu
| #
Çarpan Boyutu |
2. Çarpan | Çarpım | Formül |
| 1 byte | AL | AX | AX = Çarpan*AL |
| 1 word | AX | DX:AX | DX:AX = Çarpan*AX |
| 1 double word | EAX | EDX:EAX | EDX:EAX = Çarpan*EAX |