Assembly Language Help (alang.hlp) (
Table of Contents;
Topic list)
Important Notice
The pages on this site contain documentation for very old MS-DOS software,
purely for historical purposes.
If you're looking for up-to-date documentation, particularly for programming,
you should not rely on the information found here, as it will be woefully
out of date.
FMUL Instruction
◄Summary► ◄Example► ◄Up► ◄Contents► ◄Index► ◄Back►
────────────────┬────────────────────────┬──────────────────────────────────
FMUL [reg,reg] │ fmul st,st(2) │ 87 130-145 (90-105)*
│ fmul st(5),st │ 287 130-145 (90-105)*
│ fmul │ 387 to=46-54 (49),fr=29-57 (52)£
│ │ 486 16
────────────────┼────────────────────────┼──────────────────────────────────
FMULP reg,ST │ fmulp st(6),st │ 87 134-148 (94-108)*
│ │ 287 134-148 (94-108)*
│ │ 387 29-57 (52)£
│ │ 486 16
────────────────┼────────────────────────┼──────────────────────────────────
FMUL memreal │ fmul DWORD PTR [bx] │ 87 (s=110-125,l=154-168)+EA§
│ fmul shortreal[di+3] │ 287 s=110-125,l=154-168§
│ fmul longreal │ 387 s=27-35,l=32-57
│ │ 486 s=11,l=14
────────────────┼────────────────────────┼──────────────────────────────────
FIMUL memint │ fimul int16 │ 87 (w=124-138,d=130-144)+EA
│ fimul warray[di] │ 287 w=124-138,d=130-144
│ fimul double │ 387 w=76-87,d=61-82
│ │ 486 w=23-27,d=22-24
────────────────┴────────────────────────┴──────────────────────────────────
* The clocks in parentheses show times for short values──those with 40
trailing zeros in their fraction because they were loaded from a
short-real memory operand.
£ The clocks in parentheses show typical speeds.
§ If the register operand is a short value──having 40 trailing zeros
in its fraction because it was loaded from a short-real memory
operand──then the timing is (112-126)+EA on the 8087 or 112-126 on
the 80287.
-♦-