腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
3
回答
从中断返回时是否必须使用IRET?
、
、
、
、
IRET可以从堆栈中恢复
寄存器
,包括EFLAGS、
ESP
、EIP等,但我们也可以自己恢复所有的
寄存器
。例如,"movl“可用于恢复%
esp
寄存器
,"jmp”可跳转指向堆栈中存储的EIP的地址。
linux
内核通过IRET从所有中断中返回,这是一个权重指令。IRET不是一种浪费吗?
浏览 1
提问于2012-05-05
得票数 4
回答已采纳
1
回答
对%
esp
引起SIGSEGV的一种改进
、
、
、
、
int main() static const int _STACK_SIZE = MAXN*10; __asm__ __volatile__ "movl %%
esp
, %0\n" "=g"(_
ESP
): (
浏览 2
提问于2013-03-27
得票数 2
回答已采纳
1
回答
在执行这些指令之后,
esp
的值是多少?
如果
esp
寄存器
在这个指令序列开始时的值为0xbffafi 34,那么在执行这些指令后
esp
的值是多少?假设我们使用的是标准32位x86
linux
调用约定。8049860: add $0x44, %
esp
8049866: ret
浏览 1
提问于2017-06-02
得票数 0
回答已采纳
3
回答
如何使用GDB查看堆栈的内容?
、
、
示例:要查看
寄存器
的内容,我输入info registers。对于堆栈,应该是什么?如何查看$0x4(%
esp
)的内容?当我输入print /d $0x4(%
esp
)时,GDB会给出一个错误.平台:
Linux
和GDB
浏览 16
提问于2011-10-21
得票数 132
回答已采纳
3
回答
调用堆栈地址
、
、
有没有人知道我是否可以/如何从特定地址读取callstack?假设我有一个偏移量地址,从调用堆栈的基地址,我如何获得基地址?
浏览 1
提问于2010-09-25
得票数 1
1
回答
x86汇编器32位程序卡住如何完成main
、
、
、
add ebx, eax call squarey mov eax,
esp
add ebx, eax call cubey mov eax,
esp
mov edx, OFFSET total call WriteString
浏览 1
提问于2014-07-18
得票数 0
1
回答
在
Linux
2.6中用switch_to()保存通用
寄存器
、
、
、
我在链接switch_to中的文章“
Linux
中x86上下文切换的演变”中看到了的代码。大多数版本的switch_to只保存/恢复
ESP
/RSP和/或EBP/RBP,而不是内联asm中其他保持调用的
寄存器
。但是
Linux
2.2.0版本确实将它们保存在这个函数中,因为它使用的是软件上下文切换,而不是依赖于硬件TSS。后来的
Linux
版本仍然进行软件上下文切换,但是没有这些push / pop指令。
寄存器
是否保存在其他函数中(可能保存在sch
浏览 1
提问于2019-05-31
得票数 3
回答已采纳
1
回答
为什么这些
寄存器
被推送到堆栈?
push %ebppush edipush ebx为什么这些
寄存器
被推送到堆栈?
浏览 2
提问于2012-03-21
得票数 6
回答已采纳
1
回答
pushl/popl %
esp
的汇编级表示是什么?
、
、
、
、
我正在尝试理解推送和弹出堆栈指针
寄存器
的行为。在AT&T:和请注意,它们将计算出的值存储回%
esp
。movl %
esp
, %edx 1. save value o
浏览 5
提问于2013-02-20
得票数 9
回答已采纳
2
回答
如何知道登记册是否“一般用途登记册”?
、
、
我认为通用
寄存器
是一种可以用于任何事情的
寄存器
(用于计算,用于将数据移动到/从它,等等)。是一个没有特殊用途的登记簿。那么,这是否意味着
ESP
寄存器
是一个特殊用途
寄存器
?
浏览 6
提问于2017-08-07
得票数 4
1
回答
如何在程序集中创建dumpRegisters PROC?
、
、
、
、
我正在创建一个程序来显示名为dumpRegisters的
寄存器
。
寄存器
需要匹配调试器(使用Visual )的registers窗口中显示的内容。调试器窗口中的
寄存器
是: EAX、EBX、ECX、EDX、ESI、EDI、EBP、
ESP
、EIP、EFL。共有10次登记。 我知道欧文库已经有了这个过程,但是我正在从头开始创建它。然而,我正在挣扎如何显示
ESP
(扩展堆栈指针)
寄存器
?我在整个程序中使用push和pop,所以当我调用一个showRegister过程时,它会在那个时候输出
E
浏览 7
提问于2022-05-20
得票数 0
回答已采纳
1
回答
当内核堆栈的
esp
被存储到TSS以中断返回时,iret?
、
、
、
、
、CS和EIP 的当前内容--新堆栈(即被调用的特权级别的堆栈)的段选择器和堆栈指针,从保存到SS和
ESP
寄存器
,并切换到新堆栈。将临时保存的SS、
ESP
、EFLAGS、CS,和中断过程堆栈的EIP值到新堆栈上。appropriate).Loads 将一个错误代码推入新堆栈上(如果respectively.If是新代码段的段选择器和新指令指针(从中断门或陷阱门)到CS和EIP
寄存器
,respectively.IfSS和
ESP
寄存器
到它们的值,从而导致堆栈切换回中断过程的procedure
浏览 4
提问于2022-01-11
得票数 1
回答已采纳
2
回答
为什么在调用printf时EDX的值会被覆盖?
、
、
、
section .datasection .textextern exitmain: PUSH EAXCALL printfMOV EAX, EDXPUSHstr_outSUB
ESP
, 8 ; cleanup stack CALL exit
浏览 7
提问于2015-12-05
得票数 6
回答已采纳
1
回答
具有相同堆栈指针的两个进程。为什么?
、
使用以下代码打印
ESP
寄存器
:#include <stdlib.h> __asm__("movl %
esp
, %eax"); sleep(5); return/get_spStack p
浏览 0
提问于2013-02-09
得票数 0
回答已采纳
1
回答
为什么printf要覆盖ECX
寄存器
?
、
、
、
为什么printf将
寄存器
ECX更改为0?我的代码片段:push intFormatadd
esp
,8 我正在64位
Linux
发行版上运行我的代码。
浏览 2
提问于2016-04-26
得票数 1
1
回答
在
linux
中
esp
寄存器
是什么时候设置的?
在执行程序之前,何时将
esp
寄存器
设置为指向有效地址?在打给exec的电话里?还是在用户空间本身?我已经看过内核代码了,似乎哪儿都找不到它。
浏览 0
提问于2017-07-16
得票数 4
回答已采纳
3
回答
gdb 'x‘命令是做什么的?
、
、
、
该命令及其结果如下:0xbffff7e0: 0xb8000ce0 0x08048510 0xbffff848 0xb7eafebc 0xbffff7f0:**Note:**我知道我询问
esp
寄存器
,但我不完全理解$在前面做了什么。当我尝试不使用它时,我会得到一个缺失的符号错误,所以我得到它与引用/去引用有关吗?因为我正在检查一个
寄存器
,它的大小是32位,难道我不应该只得到32位,或者4字节(上面只有1行)吗?如果我的假设是正确的,那么我们是否找到了其余的数据?
浏览 8
提问于2012-08-09
得票数 4
回答已采纳
1
回答
在x86 32位保护模式下,当使用PUSH/POP指令时,我们是否仍然可以使用SP而不是
ESP
寄存器
?
、
、
我不知道什么时候使用SP
寄存器
,什么时候使用
ESP
寄存器
,另外,我想知道当使用
ESP
寄存器
时,它总是减4而不能减2吗?
浏览 9
提问于2021-03-31
得票数 1
2
回答
需要帮助理解程序集与堆栈的交互
、
、
好吧,事情是这样的。据我所知,你可以用汇编中的堆栈来做类似的事情:push 6所以将6放入eax会正确吗?但是,如果我们想要抓取5或者在6或者5之前推入堆栈的一些值,该如何抓取呢?(不会弹出最高值)
浏览 0
提问于2011-09-22
得票数 2
回答已采纳
1
回答
pushl %(特别是在存储之前还是之后更新
ESP
)?
、
pushl Y86指令将堆栈指针减少4,并将
寄存器
值写入内存。因此,不清楚处理器在执行指令pushl %
esp
时应该做什么,因为被推送的
寄存器
正在被同一条指令更改。可能发生两个可能的事件:subl $4,%
esp
Decrements
浏览 1
提问于2018-02-28
得票数 2
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
在win10的linux子系统中安装esp32开发环境
寄存器基本原理(下篇)
MicroPython–MQTT与ESP32/ESP8266
单片机寄存器是什么?单片机寄存器有哪些分类?
ESP32开发-ESP-IDF+VSCode-HelloWorld和项目结构
热门
标签
更多标签
云服务器
ICP备案
腾讯会议
云直播
对象存储
活动推荐
运营活动
广告
关闭
领券