我目前正在尝试在汇编中初始化数组,其大小由寄存器中的数字定义。我也在使用NASM,并进行了32位编译。
我已经尝试使用时间来定义字节数,但是它不起作用,因为时间需要一个常量而不是一个寄存器。
mov bl, bh
mul bl, 512
sectors times bl db 0
bh是我正在使用的功能的输入寄存器。
组装时,NASM输出错误:
错误:提供给TIMES的非恒定参数
有人知道我如何使用寄存器作为大小来创建0数组吗?
编辑:我决定直接将数据写入内存,而不是随时间初始化。
编辑2:这是我写的驱动程序:https://pastebin.com/JKdUaeH5