0

我正在编写一个与“C”非常相似的脚本语言解释器,不同之处在于数字变量的数据类型较少,只有int(表示 int 数据类型)和real(显然是实数......)。

解释器是一种“虚拟机”(是的,脚本语言被编译成字节码流),现在我需要决定C在虚拟机中为脚本语言数字数据类型使用哪种数据类型。现在我打算使用int64_tfor ints 和long doublefor reals,但是如果您考虑这两个,我想听听您的意见,相当“大”会有任何性能问题,如果我需要它是否会有问题在只有 32 位架构的嵌入式硬件上运行解释器。

4

1 回答 1

1

嗯,是的,当然,使用非常大的类型会对您的语言的执行成本产生(巨大的)影响。

许多嵌入式平台在硬件中没有浮点运算,而那些通常只有float,甚至没有double。整数通常也一样,许多平台仍然只有 32 位。

您将不得不回退到这些功能的软件仿真,这将使执行成本非常高,无论是在速度方面还是在所需的代码量方面。

于 2013-02-18T08:55:21.380 回答