小编Omi*_*hed的帖子

如何优化DivMod的常数除数为10

在Delphi的math.pas单元中有一个DivMod程序,我希望将其转换为内联并优化它,除数总是为10.但我不知道五角大楼ASM的细节.波纹管程序的转换是什么?

 procedure DivMod(Dividend: Integer; Divisor: Word;
  var Result, Remainder: Word);
asm
        PUSH    EBX
        MOV     EBX,EDX
        MOV     EDX,EAX
        SHR     EDX,16
        DIV     BX
        MOV     EBX,Remainder
        MOV     [ECX],AX
        MOV     [EBX],DX
        POP     EBX
end;
Run Code Online (Sandbox Code Playgroud)

delphi x86 inline-assembly micro-optimization

5
推荐指数
2
解决办法
358
查看次数

标签 统计

delphi ×1

inline-assembly ×1

micro-optimization ×1

x86 ×1