Difference between revisions of "83Plus:BCALLs:4084"

From WikiTI
Jump to: navigation, search
 
(Registers Destroyed)
 
(3 intermediate revisions by the same user not shown)
Line 5: Line 5:
 
'''BCALL Address:''' 4084
 
'''BCALL Address:''' 4084
  
Multiplies the floating point number in [[83Plus:RAM:8483|OP1]] by the floating point number in [[83Plus:RAM:8478|OP2]] and stores the result in [[83Plus:RAM:8478|OP1]].
+
Multiplies the floating point number in [[83Plus:RAM:8478|OP1]] by the floating point number in [[83Plus:RAM:8483|OP2]] and stores the result in [[83Plus:RAM:8478|OP1]].
  
 
=== Inputs ===
 
=== Inputs ===
Line 16: Line 16:
 
=== Registers Destroyed ===
 
=== Registers Destroyed ===
 
* AF, BC, DE, HL, OP3
 
* AF, BC, DE, HL, OP3
 +
* Approx. TStates: 
 +
** worst case
 +
*** 11,000
 +
** if insignificant digits of op2 are filled with zeros
 +
*** 3,000 (where op2 is a single digit number)
  
 
== Example ==
 
== Example ==
 
  <nowiki>B_CALL OP1Set3  ;OP1=floating point 3
 
  <nowiki>B_CALL OP1Set3  ;OP1=floating point 3
 
B_CALL OP2Set2  ;OP2=floating point 2
 
B_CALL OP2Set2  ;OP2=floating point 2
B_CALL FPAdd ;returns with OP1=floating point 6
+
B_CALL FPMult ;returns with OP1=floating point 6
 
</nowiki>
 
</nowiki>

Latest revision as of 07:11, 3 August 2005

Synopsis

Official Name: FPMult

BCALL Address: 4084

Multiplies the floating point number in OP1 by the floating point number in OP2 and stores the result in OP1.

Inputs

  • OP1 = floating point number
  • OP2 = floating point number

Outputs

  • OP1 = OP1 * OP2

Registers Destroyed

  • AF, BC, DE, HL, OP3
  • Approx. TStates:
    • worst case
      • 11,000
    • if insignificant digits of op2 are filled with zeros
      • 3,000 (where op2 is a single digit number)

Example

B_CALL OP1Set3  ;OP1=floating point 3
B_CALL OP2Set2  ;OP2=floating point 2
B_CALL FPMult  ;returns with OP1=floating point 6