【发布时间】:2011-10-07 01:57:11
【问题描述】:
我刚开始学习 ASM,我有 C 经验,但我想没关系。 无论如何,我怎样才能将 DT 的 12 元素数组初始化为 0,以及如何不初始化呢?
我使用 FASM。
【问题讨论】:
-
该语言称为“汇编”,将其转换为可执行文件的系统软件称为“汇编器”。
我刚开始学习 ASM,我有 C 经验,但我想没关系。 无论如何,我怎样才能将 DT 的 12 元素数组初始化为 0,以及如何不初始化呢?
我使用 FASM。
【问题讨论】:
由于数组只是一个连续的内存块,元素一个接一个,您可以在 NASM 中执行类似的操作(不确定 FASM 是否支持 times 指令,但您可以尝试):
my_array:
times 12 dt 0.0
当你的源代码被组装成:
my_array:
dt 0.0
dt 0.0
dt 0.0
dt 0.0
dt 0.0
dt 0.0
dt 0.0
dt 0.0
dt 0.0
dt 0.0
dt 0.0
dt 0.0
【讨论】:
只需使用 reserve data 指令并保留 12 tbytes:
array: rt 12
【讨论】: