小编san*_*yio的帖子

如何在装配过程中使用缓冲区?

所以,我理解缓冲区的一般抽象概念:它是内存中的一种分配,用于在数据被处理之前保存数据。我正在尝试完成一个作业问题,该问题要求我将 ASCII 字符串写入过程中的缓冲区。所以,我知道我应该在调用它时将数组的地址传递给过程,例如......

main PROC
mov EAX, packed           ; pass a packed decimal to EAX
mov ESI, OFFSET ascArray  ; pass the offset of an empty array to ESI
call    PackedToAsc           ; call the function
Run Code Online (Sandbox Code Playgroud)

因此该函数应该返回“一个指向带有 ASCII 十进制字符串的缓冲区的指针”。我可能在这里很愚蠢,但我不太清楚在这种情况下缓冲区究竟是什么。是数组吗?我需要在 .data 部分声明它吗?如何在过程中声明指向 ASCII 字符串的指针?在这种情况下缓冲区是什么意思?更实际的是,我需要访问程序完成时数据放入的缓冲区,但我不知道该怎么做。对不起,如果我在这里不够清楚......让我知道我如何澄清这个问题。

编辑   ——我在 x86 中,我正在使用 MASM。

assembly buffer procedure

6
推荐指数
2
解决办法
2万
查看次数

标签 统计

assembly ×1

buffer ×1

procedure ×1