x86 相关问题

x86是一个源自Intel 8086 CPU的架构。 x86系列包括32位IA-32和64位x86-64架构,以及传统的16位架构。关于后者的问题应该标记为[x86-16]和/或[emu8086]。如果您的问题特定于64位x86-64,请使用[x86-64]标记。对于x86 FPU,请使用标记[x87]。对于SSE1 / 2/3/4 / AVX *,也可以使用[sse]和[avx] / [avx2] / [avx512]中的任何一个

从arm64 (ARMv8.5-A)指令中提取操作码

我需要想出一些通配符来匹配某些指令。 例如,在 x86 上,要匹配大多数 CALL 指令,以下模式就足够了: E8?? ?? ?? ?? 其中 E8 是操作码...

回答 1 投票 0

对于具有两个操作数的 MUL,NASM 表示“操作码和操作数的组合无效”

我刚刚开始学习汇编编程。我在 Linux 上使用 NASM。 我写的这段代码基本上是为了计算某物的幂,我知道它可能不完全是......

回答 1 投票 0

未定义符号:GetAsyncKeyState

我正在尝试利用汇编语言中的 GetAsyncKeyState 函数来检测键盘按键的状态。具体来说,我想在用户按下“W”k 时打印一条消息...

回答 1 投票 0

装配添加程序

我有以下代码 .bss 节 编号1 RESB 2 num2 RESB 2 RES1 RESB 2 RES2 RESB 2 .data 节 fir dw 'Ingrese el 引物编号:' lfir equ $ - 冷杉 秒 dw '安格尔...

回答 1 投票 0

是否可以在不使用条件跳转的情况下交换x86汇编中寄存器的最高有效位和最低有效位?

以下是 PicoBlaze 组件中的实现方式: ;这是一个由以下人员编写的示例程序 ;Agustin Izaguirre 在第 9 期中。它 ;切换最低有效位和 ;最高有效位没有...

回答 1 投票 0

显示在给定地址gdb找到的值

我正在gdb中调试二进制文件。它是由 gcc 在 Intel IA-32 上编译的 C 代码。我从 objdump 检索了此输出。我对这里的最后一行最感兴趣: 08048d9e 8048...

回答 2 投票 0

在 Android 智能手机上运行 Armv8 汇编代码

我最近一直在深入研究 Armv8 架构的汇编语言编程,我想练习我的语言技能。唯一的问题是,我有一台 Intel x86-64 机器,并且我...

回答 1 投票 0

在x86汇编中,为什么当分子来自RDRAND时DIV会抛出异常?

我多年来一直在编写 x86 汇编,但从未遇到过这个。我希望有人能给我指出正确的方向,这样我就可以“Doh!”片刻。 在伪代码中,当我写...

回答 1 投票 0

如何从 asm 列表中确定使用哪个 x86 内存操作数宽度和类型?

同一指令有多个版本:IDIV M32、IDIV R32、IDIV M64、IDIV R64 (https://www.felixcloutier.com/x86/idiv) 如何了解使用的是哪一个?比方说 vdiv(std::向量&l...

回答 1 投票 0

为什么linux对每个CPU使用不同的GDT?

我不明白在多处理器系统(在linux中)中为每个CPU使用不同的GDT背后的原因。 每个 CPU 的 TSS 描述符必须是唯一的,但我们可以为每个 CPU 创建一个描述符...

回答 1 投票 0

错误:‘asm’操作数具有不可能的约束

我想计算单词的长度,但有错误。我不明白为什么。 int new_strlen(字符* 字) { int 长度 = 0; __asm__(“mov ecx,100 ” ...

回答 1 投票 0

汇编中的 MOVZX (NASM) - 当未指定源大小且目标为 16 位时,它如何选择源大小?

我对下面示例中 movzx 的行为感到有点困惑。 (请注意,我假设我的代码示例中使用的 print_int 函数有效,问题不在那里,而是在我的

回答 1 投票 0

用于程序内容的快速伪随机数生成器

我正在寻找一个伪随机数生成器,当在生成每个数字之前给它一个种子时,它会专门快速工作。到目前为止我见过的大多数生成器都假设您设置了种子

回答 7 投票 0

std::sort、std::accumulate、std::memcpy 可以因为 -mavx / -mavx2 标志而向量化吗?

我有一个使用 Clang 编译器在 -mavx/-mavx2 标志下编译的 C++ 源文件。 有些函数有 AVX2 实现,但有些只是纯粹的 std 调用。 我想知道可以 std::

回答 1 投票 0

x86 ASM 代码不打印所需的数字输出,仅打印消息

我试图找到给定三个数字的最小和最大数字。 这是我目前的代码: 节.文本 global _start ;必须声明才能使用 gcc _开始:...

回答 1 投票 0

堆栈大小的使用上限有没有限制?

我正在使用x86指令集编写程序。为什么当我使用存储在大小为 40kb 的堆栈中的本地数组时它会崩溃。 我使用带有 i5 处理器的 windows7 操作系统并在 Visual C++ 中编译

回答 2 投票 0

有人可以帮我理解这段 x86 程序集吗?

我需要使用 intrincics 将一段代码转换为 SIMD。 所以我首先查看了当时非 SIMD 代码的反汇编。 我发现编译器似乎做了一些我不明白的技巧。 这...

回答 1 投票 0

Secugen 指纹 Windows .NET 异常

我使用Secugen Fingerprint U20模型,并开发.NET桌面应用程序,我们在应用程序中使用“Secugen.FDxSDKPro.Windows dll (ver 1.0.0)”,但有时我们无法验证指纹......

回答 1 投票 0

CPUID:为什么某些功能必须将 MISC_ENABLE.LCMV 设置为 0?可以暂时覆盖吗?

我正在尝试使用CPUID,但有一些附加条件。根据 sandpile.org 的 CPUID 页面,CPUID 标准函数 0000_0004h 及以上仅在设置 MISC_ENABLE.LCMV 标志时才起作用...

回答 2 投票 0

ASM 中的 isPrime 始终给出相同的输出

我一直在努力学习ASM,这是我一直在努力解决的问题之一。 该算法的目标是检查一个数字是否是素数。从我的脑海中可以看出,这应该......

回答 1 投票 0

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