首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将ebp/esp与edi/esi结合使用

将ebp/esp与edi/esi结合使用
EN

Stack Overflow用户
提问于 2013-04-12 22:55:12
回答 1查看 402关注 0票数 1

我正在做一个在汇编中实现函数并在C中调用它们的项目。为此,需要使用EBP和ESP。[EBP + 8]指向我想要在汇编函数中反转的字符串的开头。我打算这么做:

代码语言:javascript
运行
复制
cmp     esi, edi
jge     reversed
mov     al, [esi]
mov     bl, [edi]
mov     [esi], bl
mov     [edi], al
inc     esi
dec     edi
jmp     reverse_string

如果我可以使用esi和edi指针,我可以很好地找到以null结尾的字符串的结尾。我需要使用不同的方式吗?是否所有内容都必须是索引偏移量?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-12 23:06:37

如果[EBP + 8]持有字符串指针,您只需将其移动到ESI并从那里继续。

代码语言:javascript
运行
复制
mov esi,[ebp+8]
mov edi,esi
mov al,0
mov ecx,-1
cld
repne scasb   ; find the NULL terminator
dec edi
.... your original code follows
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15974579

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档