x86-64是Intel x86架构的64位扩展
将fpatan汇编器函数的float值返回给c ++程序的麻烦[重复]
我有一个用AT&T汇编器编写的用于Linux x64处理器的小程序,并使用fpatan函数使用Gnu汇编器对其进行了编译。我知道我可以通过其他方式获得atan值。我不是...
如何确定x86-64程序集中是否输入了一个16字节对齐地址的循环?
我是x86-64的初学者,尤其是在性能优化方面,我试图做得更好。我已经阅读了agner优化手册第2卷的各个部分。它是...
我想将长度为4的第一个命令行参数放入缓冲区。我可以通过以下方式获取每个字符:.code64 .global _start .bss .lcomm mybuf,4 .text _start:mov 16(%rsp ),...
我正尝试使用Mac工具使jonesforth在最新的MacBook上运行。我开始将所有内容转换为64位,并使用mac汇编程序语法。我有东西要组装...
我正在尝试从第二版现代x86汇编语言编程中学习x64汇编语言的基础。第2章中的第五个示例程序介绍了如何执行简单的...
如何在Assembly(x64 / Linux)中使用动态分配的内存?
我正在尝试构建一种玩具语言编译器(可为NASM生成程序集),到目前为止还不错,但是我真的陷入了动态内存分配的话题。这是装配体上唯一的零件。...
i386 / x64 pop FS / GS指令支持一种变体,它将SP增加32位或64位而不是16位。它是做什么用的?
根据《英特尔®64位和IA-32体系结构软件开发人员手册》第2卷,pop fs支持3个变体(pop g同样如此):将堆栈顶部弹出到FS;通过...增加堆栈指针...
[好,所以我试图学习逆向工程和x64汇编。例如,我用C语言编写了这个小测试程序:#include int square(int num){return num * num; } ...
为什么偏移量运算符返回巨大的偏移量,而变量位于.data段的开头?
如果偏移量运算符应该返回变量到其封闭线段开头的距离,那么为什么返回的偏移量总是一个很大的数字?在下面的示例中,...
我知道每个内核都有自己的一组寄存器。是否包括AVX-512屏蔽寄存器k0-k7?我问是因为我的程序中存在随机数据错误;它广泛使用遮罩...
这是一个有据可查的事实,对于L1D来说L2是非唯一的,这意味着L2不必包含L1DCache具有的所有行。 L1d是否也错过L2(读取,RFO)是否填充L1d ...
如果我有一个这样声明的联合:union u1 {struct s1 * h;结构s2 * i; char j; };如何使用诸如IA32或任何程序集访问第一个,第二个或第三个元素?如果...
我正在尝试打印2-100000之间的质数。但是我的代码有问题。当它检测到非质数时,它应该转到下一个,但仍将其打印出来,因此...
Nasm具有除法运算符,但它们是整数除法。例如。 5/2 == 2吗? /和//都是除法运算符:/是无符号除法,//是有符号除法。同样,%和%%提供...
[当我尝试链接我的汇编程序时,ld链接器说未定义对printf的引用,我试图在代码中编写extern printf,但gnu汇编器未显示此类指令。我的代码是.section ....
Windows 10,x64,x86我的当前知识让我们说这是四核,将有4个单独的程序计数器,它们将指向4个不同的代码位置以并行执行。每个...
x86_64内联汇编;直接将64位寄存器复制到64位存储器位置
我正在运行下面的代码,并遇到两个问题:1)当我将movl(从寄存器中复制值)更改为movq时,我遇到gcc错误:错误:movq的操作数大小不匹配。在...
在大多数现代64位处理器上,“ mulq”的速度是否取决于操作数?
在大多数现代64位处理器(例如Intel Core 2 Duo或Intel i7系列)上,x86_64命令mulq及其变体的速度是否取决于操作数?例如,将乘以11 * ...
AT&T语法,x86-64:.text .globl _start _start:推送%rbp / *将基本指针压入堆栈* / mov%rsp,%rbp / *基本指针指向堆栈顶部* / sub $ 12,% ...
所以我的Visual Studio内核模式驱动程序中有这个.asm文件:.code DispatchHook proc添加rsp,8h mov rax,0DEADBEEFCAFEBEEFh jmp rax DispatchHook endp end但是,当我尝试...时]]