cost 423 ms
通过64位常数检查乘法参数 - Checking parameters of multiplication by constant in 64 bit

对于我的BigInteger代码,对于非常大的BigIntegers而言,输出速度很慢。 因此,现在我使用递归分治算法,该算法仍需要2'30“才能将当前最大的素数转换为超过2200万个数字的十进制字符串(但仅需135毫秒即可将其转换为十六进制字符串) 。 我仍然想减少时间,因此我需要一个 ...

FPC BASM32 MUL bug? - FPC BASM32 MUL bug?

我在将Delphi BASM32代码移植到FPC时遇到了一个问题: 上面的代码在Delphi XE中编译并按预期工作; FPC在MUL EAX,EDX线上输出编译时错误: 错误:Asm:[mul reg32,reg32]操作码和操作数的无效组合 我正在使用Lazaru ...

Delphi汇编器:了解结果寄存器 - Delphi assembler: understanding the Result register

我在Delphi中搞乱了ASM。 据我了解,EAX持有结果。 在下文中,我必须将RET放在最后,否则Result不正确(如果输入为0,则正确)。 我在做什么错,或者我应该说,对此我不了解吗? 如果我说以下内容: 然后我得到以下编译: 但是,我上面的代码具有以下后记: ...

如何获取内部System.pas函数的地址? - How can I obtain the address of internal System.pas functions?

我正在研究JIT编译器,并试图找出如何为托管类型(如字符串)输出正确的清理块。 对于具有一个类型为string局部变量的函数,清理块的反汇编如下所示: 不幸的是,我没有任何好的方法来获取@UStrClr和@HandleFinally的地址,所以我的JITter可以插入它们。 它们 ...

程序集调用FreePascal x64上的系统单元功能 - Assembly calls to System unit functions on FreePascal x64

我有一些Delphi /汇编代码为Win32,Win64和OSX 32编译和工作正常(XE2)。但是,因为我需要它在Linux上工作,我一直在寻找它的FPC版本(到目前为止,Win32) / 64,Linux32 / 64)。 总的来说,它运行良好,但我无法工作的一件事是调用/跳转到Del ...

FLD指令x64位 - FLD instruction x64 bit

我在x64位中的FLD指令有一点问题...想要将st0加载到st0寄存器中的堆栈指针FPU,但它似乎是不可能的。 在Delphi x32中,我可以使用以下代码: 不幸的是,在x64中,相同的代码不起作用。 ...

Delphi XE3中的64位内联汇编 - 64 bit inline assembly in Delphi XE3

我在我不理解的Delphi XE3中使用64位嵌入式汇编程序遇到了这个问题。 我试过了,它可以在32位和64位上使用 但是,这仅适用于32位而不适用于64位,它可以在64位进行编译,但不能返回两个整数之和的正确结果。 我知道以前的FPU代码(例如FLD,STP)可在32位上 ...

Delphi Assembler / RTTI-gurus:我可以获取函数中隐含的Result变量的内存地址和类型信息吗? - Delphi Assembler/RTTI-gurus: Can I obtain the memory address and type info of the implied Result variable in a function?

考虑这种典型的方法跟踪代码(简化说明): 这是按预期工作的。 输出是: 进入F1 做一些事...... 离开F1 - 结果= Booyah! 我现在正在寻找一种方法来最小化调用TraceMethod()所需的参数数量,理想情况下允许我完全跳过与Result相关 ...


 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM