assembly - 为超过 4 字节的 x86 程序集 MASM 声明本地存储

标签 assembly x86 local

似乎没有一种方法可以声明 1 个变量,该变量可以在 x86 Assembly MASM 中获得分配给堆栈的超过 4 个字节的空间,我这样定位我的存储

;METHOD 1
method1 PROC stdcall uses eax ebx, val1:dword
     LOCAL tempString, dTemp

我尝试过像这样分配字节:

;METHOD 1
method1 PROC stdcall uses eax ebx, val1:dword
     LOCAL tempString byte 12 dup(?)
     LOCAL dTemp

但它会导致错误消息A2008:语法错误:字节 如何为一个分配给堆栈的字节数超过 4 个字节的变量分配存储空间?

就像..我不明白为什么我不能简单地分配一串字节?

最佳答案

您可以使用以下语法简单地分配多个字节:

strTemp[12]:byte

上述语句将向由标识符 strtemp 标识的堆栈分配 12 个字节。

关于assembly - 为超过 4 字节的 x86 程序集 MASM 声明本地存储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29713408/

相关文章:

facebook - 本地货币支付/重大更改不起作用/错误代码 : 1353028

assembly - 38 "D"D 位中的 6's "代表什么?

linux - Linux AMD64 中如何使用 fs/gs 寄存器?

组装正确使用字/字节/字 ptr

perl - 如何在 Perl 的上层范围内本地化变量?

c++ - 将抽象类实现为本地类?优点和缺点

assembly - Raspberry Pi 3 Model B ARM assembly 非法指令(Core Dumped)

assembly - 在指令周期内如何执行微码?

c++ - 获取用程序集调用的函数的返回值

debugging - 64位windows汇编器调试