腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
2
回答
基指针和堆栈指针
、
、
、
给定这段代码: mov
ebp
,
esp
+8] ; address of the first parameter ret (这只是方法。我得到的事实是,它们是双字的,所以它们中的每一个都是从<e
浏览 8
提问于2012-04-22
得票数 34
回答已采纳
2
回答
使用带参数函数的堆栈中
ebp
和
esp
的行为
、
、
、
、
特别是当
调用
带参数的函数时会发生什么。, and
esp
, -16 mov DWORD PTR[
esp
+28], 5现在,关于我的第二个问题,求和函数的部分。下面是它的汇编代码: push <
浏览 1
提问于2013-12-20
得票数 2
2
回答
理解汇编中的c++函数
、
我用"gcc代码.c
栈
保护器代码-S -fno- -m32 - -o“编译了下面的c程序。movl %
esp
, %
ebp
movl 16(%
ebp
), %eax movl %
esp
, %
ebp
movl $1,
浏览 0
提问于2013-03-05
得票数 0
回答已采纳
3
回答
为什么在linux上,gcc 4.x在
调用
方法时会默认保留8个字节给
栈
?
、
、
、
为什么在
调用
方法时,gcc 4.x默认会保留8个字节给
栈
? _func18: movl %
esp
, %
ebp
.t
浏览 0
提问于2010-03-08
得票数 7
2
回答
使用C代码和汇编代码帮助绘制堆栈
、
、
、
我正在尝试绘制基础(
ebp
)和
栈
(
esp
)指针的位置,就像它们在
调用
下一个函数之前在每个堆栈帧中一样。movl %
esp
, %
ebp
movl $6, 8(%
esp
) call write movl %eax, -12(%
ebp<
浏览 0
提问于2011-10-12
得票数 2
回答已采纳
1
回答
理解递归IA32程序集
调用
、
、
他们给了我们一个提示,即代码中的所有函数只提供一个参数,但我对IA32堆
栈
的理解仍然有点差。.globl barbar:movl %
esp
, %
ebp
addl $10, %eaxret .type foo, @functionpushl %
ebp
movl %
esp
, %
ebp</e
浏览 2
提问于2015-04-06
得票数 2
回答已采纳
2
回答
x86函数
调用
:保存
EBP
和通用寄存器的最佳方法(EAX,EBX,.)
、
我想知道除了
EBP
之外,保存公共寄存器(EAX、EBX等)的最佳方法是什么。这是我的代码样本。它只是
调用
我的写函数,传递字符串入口和长度参数(参数放在堆栈中)。在写函数中,我保存
EBP
,给它新的值,返回参数并
调用
写syscall。我看到了三种保存公共寄存器的方法: 首先,将它们保存在写函数中,在"mov %
esp
,%
ebp
“之前(在为
ebp
分配新的入口之前)。其次,将它们保存在写函数中,在"mov %
esp
,%
ebp</
浏览 1
提问于2014-05-18
得票数 2
回答已采纳
2
回答
nasm程序:递归分段错误
、
、
、
、
push word 0call fibo mov eax, 1 int 80h mov
ebp
,
esp
mov eax, 4 ; print numbermov ebx, 1 mov edx, 1 i
浏览 3
提问于2012-10-02
得票数 0
2
回答
我有一个关于堆栈框架结构的问题?
、
movl %
esp
, %
ebp
movl $0, -4(%
ebp
) movl 8(%
ebp
), %eax movl %eax, -4(%
ebp
-max .typ
浏览 0
提问于2011-04-11
得票数 2
回答已采纳
1
回答
在asm中传递参数时,字符串的长度是多少?
、
、
然后我将它们从
栈
移到ecx和edx。我如何才能确切地知道它们的长度?像c中的strlen(string)?push
ebp
mov ecx,[
ebp
+8] mov edx,[
ebp
+12]
浏览 1
提问于2010-10-19
得票数 0
回答已采纳
3
回答
如何在汇编器x86函数
调用
中传递参数?
、
、
、
看看这段汇编程序代码。它是为32位x86设计的,将由nasm编译 my_function: ... push 0x08我很久以前就知道,我们可以使用堆栈在主程序和函数之间传递参数。我应该如何获取我的函数参数?
浏览 1
提问于2016-06-23
得票数 15
2
回答
我的stdcall汇编程序代码不平衡堆栈
、
除此之外,我没有更多的信息,这只是我的第二段汇编代码(我的第一段是模拟cdecl函数
调用
的测试.exe )。; push EAX ; mov EAX, [
ebp
+8] ; add EAX, EBX ;
浏览 1
提问于2013-03-10
得票数 0
回答已采纳
2
回答
我可以从堆栈中弹出一个值,但在中却不放?
、
、
、
、
NASM大会,Ubuntu,32位程序.POP somewherePOP解决方法之一是创建一个根本不使用的4字节变量,并将POP转储到其中。是否有更好的方法来实现这一点?
浏览 2
提问于2013-10-17
得票数 6
回答已采纳
1
回答
x86过程
调用
内存分配
、
、
、
、
3 movl %
esp
, %
ebp
5 movl 8(%
ebp
), %eax7 movl 16(%
ebp
), %edx1 prod:3 movl %
esp
, %
ebp
5 leal 12(%
ebp
), %edx 6 leal -8(%
ebp
),%e
浏览 0
提问于2015-04-26
得票数 1
回答已采纳
4
回答
了解empty main()到程序集的转换
、
、
、
endef.globl _main_main: subl $8, %
esp
movl $0, %eax addl $15, %eax sal
浏览 0
提问于2009-05-05
得票数 14
回答已采纳
2
回答
缓冲区溢出出现在预期之前
、
、
、
main() GetInput();}0x08048455 <+0>: push
ebp
0x08048456 <+1>: mov
ebp
,
esp
0x0804845b <+6>: lea eax,[
ebp
-0x10] 在这里我们可以看到sub,0
浏览 0
提问于2013-03-13
得票数 11
回答已采纳
3
回答
在x86组合中,“推动
ebp
”是什么意思?
、
push
ebp
它与pop命令有任何关系吗?即使我在拆卸中没有看到它!
浏览 0
提问于2010-07-31
得票数 8
回答已采纳
1
回答
函数
调用
如何在Linux上的x86 32位程序集中工作?
、
、
、
、
在讨论函数
调用
和堆栈的主题时,我无法理解它的工作原理。函数的每个参数都被推到堆栈上,最后返回地址在那里。现在,这个函数本身有一些工作要做。它所做的第一件事是通过执行pushl %
ebp
来保存当前的基
浏览 2
提问于2017-11-23
得票数 2
3
回答
C编译器如何实现返回大型结构的函数?
、
、
、
、
函数的返回值通常存储在堆栈或寄存器中。但对于大型结构,它必须在堆栈上。在一个真正的编译器中需要对这段代码进行多少复制?或者它已经被优化了?struct Data {}; { // initialize data values...}
浏览 2
提问于2010-01-28
得票数 26
回答已采纳
2
回答
在气体x86组件中传递参数时,我遇到了问题
、
、
我设置参数并
调用
如下函数:movl $10, 8(%
esp
)这是一个函数,它返回1如果x==y,0如果x!=y pushl %
ebp
movl (%
ebp
), %eax movl $1, %eax j
浏览 1
提问于2018-12-02
得票数 1
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
栈溢出原理浅析
C语言/C加加编程新手入门基础学习之函数调用规则
关于编程语言的思考—编译型和解释型
函数调用时栈是如何变化的?
无聊的时候PWN一下
热门
标签
更多标签
云服务器
ICP备案
对象存储
实时音视频
即时通信 IM
活动推荐
运营活动
广告
关闭
领券