x86-64 相关问题

x86-64是Intel x86架构的64位扩展

将32位偏移量添加到x86-64 ABI的指针时是否需要符号或零扩展?

简介:我正在查看汇编代码来指导我的优化,并在将int32添加到指针时看到许多符号或零扩展。 void Test(int * out,int offset){out [offset] = 1; } ----...

回答 2 投票 14

gcc中有128位整数吗?

我想要一个128位整数,因为我想存储两个64位数的乘法结果。在gcc 4.4及以上版本中有没有这样的东西?

回答 3 投票 30

如何将优化的x86-64 asm循环转换回C for循环?

我有以下内容:foo:movl $ 0,%eax // result = 0 cmpq%rsi,%rdi // rdi = x,rsi = y? jle .L2 .L3:addq%rdi,%rax // ...

回答 2 投票 -1

为什么这个程序会分配以下金丝雀值和汇编代码?

所以在本书中编写的以下程序intlen()中,当我读取与该程序对应的汇编语言时,intlen()提供了受保护的Canary值,以及几个值......

回答 2 投票 -1

在先前调用string :: find之后添加内存分配和memset会导致它返回npos。为什么?

我正在逆向设计一个名为Monster Hunter World的游戏来添加一个更好的鼠标处理子程序,我的软件中会弹出一个非常奇怪的错误。我不知道究竟是什么导致它...

回答 1 投票 -2

如何在Linux AMD64中使用fs / gs寄存器?

在x86-64架构中,两个寄存器具有特殊用途:FS和GS。在linux 2.6。*中,FS寄存器似乎用于存储线程本地信息。那是对的吗?什么存储在fs:0?...

回答 3 投票 35

x86_64上的OSX gettimeofday系统调用似乎不起作用

我正在使用64位代码通过syscall指令调用gettimeofday。我无法得到任何结果,并通过Dtrace告诉我这个电话没有错误,但寄存器我......

回答 1 投票 1

理解程序集中的pop指令

我是第一次学习计算机系统的学生(有计算机系统:程序员的观点)。我们正在进行汇编,我开始理解x86_64的命令后缀...

回答 1 投票 0

为什么修改指令导致巨大的i-cache和i-TLB在x86上未命中?

以下代码片段仅使用一条RET指令创建一个函数(fun)。循环重复调用该函数并在返回后覆盖RET指令的内容。 #...

回答 1 投票 5

x86-64的条件跳转如何工作?

我在研究x86-64的时候对条件分支很困惑。 compq%rax,%rdi jl .L2哪一个是正确的理解?如果%rax <%rdi,如果%rax>%rdi则跳转到L2,跳转到L2

回答 1 投票 0

将数字转换为十四进制/ ASCII

[程序集x86-64]具体来说,我试图将137,799转换为十四进制,然后转换为ASCII值,应该是“3830B”,但我得到“3830;”,所以我的最后一个数字对某些人来说是错误的...

回答 1 投票 0

机器码中的sizeof()等价是多少?

我目前正在逆向工程游戏,我遇到了一个需要调用GetRawInputData的问题,它希望将pcbSize作为其参数之一。通常在C中我会写sizeof(...

回答 3 投票 1

为什么NOP的数量似乎会影响shellcode是否成功执行?

我正在学习缓冲区溢出(仅用于教育目的),并且在使用NOP滑动技术来执行shellcode时,出现了一些问题,为什么shellcode有时会......

回答 1 投票 2

为什么int 3以64位生成SIGSEGV而不是停止调试器?

在32位模式编程中,我曾经在我的程序中使用int 3,用于使用调试器在指定位置停止(将指令嵌入到源中)。现在64位似乎不是......

回答 4 投票 18

汇编 - 如何通过延迟和吞吐量对CPU指令进行评分

我正在寻找一种公式/方法来衡量一条指令的速度,或者更具体地说是通过CPU周期给出每条指令的“得分”。让我们采取以下装配计划......

回答 1 投票 2

针对不同缓冲区大小的不同内存对齐

我正在尝试教育自己关于堆栈溢出并使用这些-fno-stack-protector标志玩了一下,并尝试了解如何在进程中管理内存。我编译了......

回答 1 投票 1

尝试打印十进制数时的程序集“分段错误”

我正在尝试创建一个将为我打印十进制数的宏。我的想法是将数字除以10,将余数转换为ASCII并将其推入堆栈,直到比率为0.我......

回答 1 投票 1

在递归期间堆栈框架外观。 C vs汇编

我只是在学习汇编和堆栈框架中的函数等等,所以我一直在查看gdb中的堆栈框架,因为我运行递归算法来查看会发生什么。如果我运行一些递归...

回答 1 投票 0

linux x86_64 vm gcc错误的可执行输出架构,exec文件格式错误

我正在使用GNU / Linux 64位Oracle VM编译一个简单的c程序main.c:int main(){return 0; } gcc命令是:gcc -c main.c -o output当运行:./ output时,它会导致错误:“不能......

回答 1 投票 0

x86-64寄存器中传递参数的顺序

我对x86-64环境中的参数传递过程感到好奇,因此我编写了一段代码。 //a.c extern int shared; int main(){int a = 100;交换(&a,&shared); ...

回答 2 投票 3

© www.soinside.com 2019 - 2024. All rights reserved.