x86-64 相关问题

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

检测字符串是否以“A”汇编(HLA)程序结尾

我试图找出为什么我的程序不输出 1 如果字符串以 A。 例如,这就是它的输出 请输入要处理的字符串 sfrA ----> 这是您输入的字符串...

回答 1 投票 0

ms_abi如何在c和assembely之间传递

我正在使用 ms_abi 使用 EFI 开发操作系统,并且想知道它如何传递参数,因为我正在将一些系统表信息移动到寄存器中,但是当我尝试使用 c 调用函数时...

回答 1 投票 0

哪些 x86 CPU(如果有)仍然具有 MOVDIRI 或 MOVDIR64b 指令?

我最近一直在检查我可以访问的英特尔CPU。 它们(它们都是 Xeon)都没有 MOVDIRI 或 MOVDIR64b 指令,这些指令是绕过缓存的存储指令。是

回答 1 投票 0

通过内联汇编实现零成本整数向上转型

是否可以通过内联汇编作为宏制造一种零成本整数向上转型? 在许多情况下,我想传递 32 位整数,这些整数已经“就位”......

回答 2 投票 0

通过内联汇编进行零成本整数转换

是否可以通过内联汇编作为宏来制造一种零成本整数转换? 在许多情况下,我想传递 32 位整数,这些整数已经“就位”......

回答 2 投票 0

通过内联组装实现零成本铸造

作为宏,是否可以通过内联组装制造一种零成本铸件? 在许多情况下,我想传递 32 位整数,这些整数已经通过 inte“就位”...

回答 1 投票 0

如何强制 clang 汇编器发出 `rex.W` 前缀?

编写内联汇编时,有没有办法强制使用 rex.W 前缀? 所以而不是 “psllq $12,%%xmm1 ” 生成 66 0f 73 f1 0c,我想要 66 48 0f 73 f1 0c,还有额外的...

回答 1 投票 0

如何强制 GNU 汇编器发出 `rex.W` 前缀?

编写内联汇编时,有没有办法强制使用 rex.W 前缀? 所以而不是 “psllq $12,%%xmm1 ” 生成 66 0f 73 f1 0c,我想要 66 48 0f 73 f1 0c,还有额外的...

回答 1 投票 0

强制 amd64 rex.W 前缀

编写内联汇编程序时,有没有办法强制使用 rex.W 前缀? 所以而不是 “psllq $12,%%xmm1 ” 生成 66 0f x73 f1 0c 我想 66 48 0f x73 f1 0c 加上额外的...

回答 1 投票 0

如何限制PROMELA使用的内存?

我试图通过使用 -DMEMLIMIT 标志来限制 PROMELA 使用的最大内存,如下所示。 ./spin -a -DMEMLIMIT=1024 代码.pml 但是,记忆仍然在不断增加。任何想法,为什么......

回答 1 投票 0

基本汇编功能出现内存错误

我是组装初学者,正在参加在线速成课程。本课程的最后挑战之一是函数编写和调用。我的想法是重新创建这个功能......

回答 1 投票 0

将较小的操作数移至较大的操作数

我在想象数据如何移入 RAX 寄存器时遇到了一些麻烦。 这是汇编语言: 。数据 dwordVal DWORD 94326732h 。代码 mov rax, 0FFFFFFFF00000000h mov rax, dwordVa...

回答 2 投票 0

无需调试即可查找哪个汇编指令导致了非法指令错误

运行我用汇编语言编写的程序时,出现非法指令错误。有没有办法知道哪条指令导致错误,而无需调试,因为我的机器

回答 7 投票 0

通过LEA加载绝对指针进行注册

如何通过lea加载绝对地址进行注册? 我尝试了这段代码: asm.lea(asmjit::x86::rax, (uint64_t) (地址)); 我尝试使用这段代码 asm.lea(asmjit::x86::rax, asmjit::x86::ptr((uint...

回答 1 投票 0

为什么我的代码不能对大于 128 的数字进行排序?

_开始: mov rdx, len ;存储 rdx 中的元素数量 (len - 1) 十二月 rdx ;减 1 得到最后一个元素的索引 移动RSI,0;存储...

回答 1 投票 0

在x86-64中,如何打印数组的所有元素?

节.data 数分贝 240, 40, 80, 90, 30, 40 .bss 节 数字转换 1 %宏打印编号1 移动eax,%1 %%打印整数: mov rcx, digital ;将 rcx 设置为数字内存 a...

回答 1 投票 0

[[假设]] 属性对代码没有影响

我希望下面的multiply_by_pow_of_2函数有一个更优化的乘法代码,因为我使用了[[假设(std::has_single_bit(multiplier))]];这应该告诉

回答 1 投票 0

truncate 不支持创建大小大于 2^63-1 的文件

显然,我的 x86_64 系统上的 gnu truncate 不支持创建大小 >= 8EiB (= 2^63 字节 = 9223372036854775808 字节)的文件。 /usr/bin/truncate:ELF 64 位 LSB 饼可执行文件...

回答 1 投票 0

如何使用 nasm、x86_64、linux 函数修改堆栈(使用 `ret` 关键字)?

TL;博士 如何在使用 ret 时修改堆栈或在使用其他东西时实现类似的效果? 你好世界, 我正在尝试为我的语言制作一个编译器, 目前一切都已内联...

回答 1 投票 0

有没有办法确定缓冲区的长度?

假设我有一个这样声明的缓冲区: .bss 节 .lcomm 缓冲区,33 我将其压入堆栈,并将其作为参数传递给另一个需要 44 字节长度缓冲区的函数。 难道是……

回答 1 投票 0

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.