【发布时间】:2018-10-31 06:06:30
【问题描述】:
这是一个反转字符串的代码 我真的很难完成这段代码。我找不到它有什么问题,但是输出是错误的。
mov esi, OFFSET source
mov edi, OFFSET target
add edi, SIZEOF target-2
mov ecx, SIZEOF source-1
L1:
mov al, [esi]
mov [edi], al
inc esi
dec edi
loop L1
【问题讨论】:
-
你可以做
mov edi, OFFSET target + SIZEOF target - 2。或者只是在目标缓冲区的末尾放一个标签,然后执行mov edi, OFFSET end_target - 2。无论如何,这段代码与您想要发生的事情有什么不同?它是否写入target开头之前的 1 个字节或其他内容? -
@NgSharma,这个问题有很多,--unhelpful-- 至少可以说是答案。
标签: string loops assembly x86 masm