Конференция "FreePascal" » не компилится fmod
 
  • @!!ex © (09.04.08 19:28) [0]
    {$ifdef FPC} //FPC do not have this function in its RTL
    const
     Default8087CW = $1332; //according to the FPC site it's the value used in the
                            //startup code.
    procedure Set8087CW( value :word ); Assembler;
    asm
      FLDCW  value
    end;
    {$endif}  



    Выделяет строчку асмовскую и говорит:
    FMOD.pas(769,11) Error: Asm: [fldcw reg16] invalid combination of opcode and operands
  • XProger © (11.04.08 02:56) [1]
    Попробуй вместо неё:
    MOV Default8087CW, AX
  • @!!ex © (11.04.08 08:12) [2]
    > [1] XProger ©   (11.04.08 02:56)
    > MOV Default8087CW, AX

    FMOD.pas(770,23) Error: Asm: [mov imm16,reg16] invalid combination of opcode and operands
  • Sapersky (11.04.08 19:30) [3]
    По аналогии с FPC-совместимыми asm-фукнциями из KOL:

    procedure Set8087CW( value :word );
    asm
     MOV AX, [value]
     FLDCW  AX
    end [ 'EAX' ];
  • @!!ex © (11.04.08 19:37) [4]
    А что эта ерундень вообще делает??
  • Sapersky (11.04.08 20:18) [5]
    Set8087CW?
    Устанавливает параметры FPU, такие как точность вычислений, реакция на исключения и т.д. Чем меньше точность, тем быстрее, хотя зависимость нелинейная и для разных операций разная. Здесь есть результаты тестов:
    http://dennishomepage.gugs-cats.dk/CodingForSpeedInDelphi.doc
 
Конференция "FreePascal" » не компилится fmod
Есть новые Нет новых   [118678   +70][b:0][p:0.001]