腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
为什么这些
寄存器
被推送到堆栈?
push %ebppush edipush ebx为什么这些
寄存器
被推送到堆栈?但是,为什么只有'edi‘'
esi
’'ebx‘被推送?
浏览 2
提问于2012-03-21
得票数 6
回答已采纳
1
回答
将汇编NASM代码链接到GCC
、
、
、
、
在
Linux
(elf32)上,使用g++编译后它不会失败,但是当我尝试使用i686-w64-mingw32-g++ (针对Win32)构建它时,它失败了。#!strip --strip-unneeded wct.exe [bits 32] global wct mov edi,
esi
lods
浏览 10
提问于2017-02-11
得票数 1
1
回答
ds、es
寄存器
我反汇编了某个二进制文件(
Linux
elf)。我找到了这段代码:有两个
寄存器
'ds‘和'es’。我知道这些被命名为“段
寄存器
”。这些
寄存器
指向哪里?
浏览 0
提问于2012-03-20
得票数 4
回答已采纳
2
回答
NASM中的strlen
、
、
、
失陪了。我正在努力理解,学习汇编语言。不过,我有很多问题。我正尝试在NASM中处理字符串。我将字符串常量复制到string变量。最大尺寸是50。所以我要确认一下这个界限。然而,这个程序抛出一个分段错误。我在MASM中使用了一个示例,所以使用NASM语法可能存在一个使用错误。我的计划如下: MAXTEXTSIZE equ 50
浏览 1
提问于2013-11-05
得票数 5
回答已采纳
2
回答
在x86-64上mov %
esi
、%
esi
是无操作的吗?
、
、
我对
Linux
内核的一个头文件中的评论感到有点困惑。它说leal 0x00( %
esi
),%
esi
我想作者暗示的是机器指令(分别为‘89 F6’和'8D 76 00‘),而不是装配指令。根据英特尔软件开发人员手册第2A卷对LEA的描述,后者的指令(lea 0x00(%rsi), %
esi
)与前者mov %
esi
浏览 1
提问于2011-07-11
得票数 11
回答已采纳
1
回答
Win64和
Linux
-x86_64调用公约未使用的
寄存器
是否已修改
、
、
、
在
linux
-x86_64中,我们使用syscalls .RDI -> first parameterRDX(for all syscalls)现在,我对
linux
-x86_64的问题: 问题1:如果一个syscall (例如,'sys_write')接受3个参数(RDI,RSI,RDX),那么其他参数
寄存器
怎么办?我只是不再更新
ESI
了.因为
浏览 1
提问于2021-10-07
得票数 1
回答已采纳
1
回答
为什么gcc使用%
esi
寄存器
作为8字节函数参数
、
、
、
为了学习汇编,我正在查看由GCC使用-S命令为
Linux
上的一些简单C程序生成的汇编。下面是关于此函数的部分 movq %rdi, %rax movl %
esi
, %ecx ret 函数参数x使用
寄存器
%rdi,这是正常的。让我困惑的是为什么另一个参数n使用
寄存器
%
esi
而不是%rsi。我遗漏了什么?如果我
浏览 8
提问于2021-08-10
得票数 1
1
回答
装配方括号
我一直在想这两者之间的区别和曾经是。 任何帮助都是非常感谢的。
浏览 1
提问于2013-08-25
得票数 8
2
回答
打破堆栈的乐趣和利润,代码执行顺序
、
jmp 0x2a # 3 bytes movl%
esi
,0x8(%
esi
) # 3 bytes movl $0x0,0xc(%
esi
) # 7 bytes movl $0xb,%eax
浏览 0
提问于2012-08-07
得票数 0
回答已采纳
1
回答
movl教学与leal教学的区别
、
假设堆栈如下,其中字符串/bin/sh的地址为0x11: 在movl %
esi
, 0x8(%
esi
)之后,我认为从内存地址%
esi
加载的值将移动到0x8(%
esi
) (这就是movl的定义)。因此,字符串/bin/sh将放在地址0x8(%
esi
)处。但结果是11被放在这个地址上。
浏览 0
提问于2015-10-13
得票数 0
1
回答
x86上是否存在偏移量回写?
、
、
、
使用ARM,我可以像这样访问内存位置:这意味着我希望加载r1指向的值,偏移量为4个字节,而!意味着我希望在这条指令之后用新的值(即+4)更新r1的值。movl 4(%ebx), %eax谢谢。
浏览 0
提问于2013-07-03
得票数 2
回答已采纳
1
回答
在调用函数时,我要推举和弹出哪些
寄存器
?
、
考虑以下代码:; Receives:
ESI
points to an array of doublewords, ;----------------------------------------------------- pop
esi
ArraySum ENDP
浏览 2
提问于2014-03-28
得票数 0
回答已采纳
1
回答
C++编译器函数调用
、
、
、
// movl -36(%rbp), %edx // movl %edx, %
esi
// leaq -32(%rbp), %rdx // movl %eax, %
esi
浏览 4
提问于2014-06-20
得票数 0
回答已采纳
2
回答
eax ebx ecx在汇编方面有什么不同
、
我正在尝试学习一些汇编,但我很难理解一些基本的东西是做什么的。eax ebx ecx仅仅是变量,或者除了存储值之外,它们是否都有独特的特定用途?
浏览 9
提问于2019-11-14
得票数 4
回答已采纳
1
回答
从内存中的数据设置x86部分
寄存器
(EAX、AX、AH)
、
、
当从带有指针偏移的数组中读取数据时,我真的不明白它是如何工作的: arrayW WORD 1233h,2245h, 1176h mov
esi
, ptr2 mov ah, [
esi
+ 1] mov eax, [
esi
+ 2] mov,
esi
寄存器
另外,mov,
esi
+
浏览 3
提问于2016-09-26
得票数 0
回答已采纳
1
回答
使用gdb监视
esi
寄存器
有没有一种方法可以指示gdb监视
esi
寄存器
,或者在
esi
寄存器
的值发生变化时中断它?我有一个家庭作业,我需要确定十六进制的连续
ESI
值。
浏览 0
提问于2018-03-05
得票数 0
1
回答
这是用nasm编写幂函数和阶乘函数的严格方法吗?
、
例如,通过执行函数,我在
寄存器
中做了一些更改,我不知道是否必须将它们恢复到它们的原始值a--使用push和pop结束。这是我的代码:factorial_rec: sub eax, 1 jmp power_end
浏览 0
提问于2020-04-04
得票数 2
回答已采纳
2
回答
为什么下面的c函数与asm代码相同?
、
void arith1(){}mov ecx, DWORD PTR _bmov
esi
, DWORD PTR _e mov eax, 5idiv
esi
; $3 = 5 / -e add ecx, eax
浏览 1
提问于2011-12-11
得票数 3
1
回答
尝试理解x86程序集中的有效寻址
、
、
MOV ECX,[
ESI
][EDI]我也知道创建有效地址的一般格式是:“偏移量等于
ESI
寄存器
中添加到EDI
寄存器
中的值中的值。”
浏览 2
提问于2013-03-10
得票数 0
2
回答
汇编语言中的简单增量
、
我被困在这里了。我正在自学assenbler并翻译一些基本的说明。但我不能用这个。int{ for ( i = 0; i < n; i++ ){ __asm { mov ecx,dword ptr [eax] }
浏览 3
提问于2009-11-08
得票数 0
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
寄存器基本原理(下篇)
ESI GROUP助力未来工厂
单片机寄存器是什么?单片机寄存器有哪些分类?
ESI:Highly Cited and Hot Papers of RCR
深入分析POP/MOV SS漏洞
热门
标签
更多标签
云服务器
ICP备案
腾讯会议
云直播
对象存储
活动推荐
运营活动
广告
关闭
领券