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]中的任何一个
[x64] 是否有一些通用算法可以用来确定 rex 字节的相关寄存器?我对带有 VEX 前缀的指令的 REX 计算特别感兴趣(所以...
在 Windows CE 上使用 X86 编译的 DLL 是绝对不可能的吗?
我正在研究在 Windows CE7 上对安全加密狗进行编程的可能性。生产加密狗的公司没有明确声明支持 Windows CE,但根据他们的销售情况...
我尝试在切换到保护模式后打印字符“C”,但它不起作用,我不知道为什么。我正在使用汇编 AT&T/GAS 语法 这是代码: .code16 ....
我正在尝试完全用 Rust 编写 x86 引导加载程序和操作系统(没有单独的汇编文件,只有 Rust 中的内联汇编)。 我的引导加载程序完全按照 Q 中的预期工作...
为什么每次添加都会得到多个 ASM 指令? (Visual Studio 2022 社区)
这是C程序,我使用带有MSVC编译器的Visual Studio Community 2022。所有这些 mov 指令是什么,我不使用任何编译器优化标志。 #包括 int main(voi...
我在 80x86 汇编中有这行代码: 。数据 字符串 BYTE 22 DUP (?) 。代码 输入字符串,22 lea EBX,字符串 我想比较字符串的字节。我该怎么做?
我正在尝试完全用 Rust 编写 x86 引导加载程序和操作系统(没有单独的汇编文件,只有 Rust 中的内联汇编)。 我的引导加载程序完全按照 Q 中的预期工作...
在 x86 处理器上,系统开机后,处理器通常执行的第一条指令位于 0xFFFFFFF0,称为复位向量。通常该地址位于 BIOS 或闪存中...
在哪里可以找到有关 x86 处理器上三角函数指令(例如 fsincos)的错误范围的信息?
嘿,我在加载内核时遇到问题,引导加载程序和保护模式工作正常,但当我尝试调用 KERNEL_OFFSET 时,出现故障或加载问题,我无法弄清楚。 有问题
使用 TD 在 8086 模拟器 (DOS) 上进行加法/减法后未设置零标志
我正在使用 Turbo Debugger (TD) 为 8086 模拟器 (DOS) 编写一个简单的汇编程序。我的任务是使用加法/减法将零标志 (ZF) 设置为 1。然而,无论我如何尝试,...
我有一个 x86 asm 程序,可以将小写字母转换为大写字母。我在一个汇编 pdf 中找到了它,并且正在研究它来学习。程序可以这样调用 ./大写>...
我正在阅读英特尔手册,我看到提到“处理器的线性地址空间”。 我对线性地址空间实际上在哪里或什么感到困惑。在处理器的哪个位置...
如何对近、绝对间接调用指令进行编码? 呼叫 r/m32 它的操作码是 FF /2,我知道 /2 是什么意思,但是,它如何影响二进制形式的编码?这是否意味着我们看到...
为什么 ptrace(PTRACE_PEEKDATA, ...) 返回看似反向的数据流?
这几乎肯定源于我对 x86 二进制布局的误解,但我使用 ptrace(PTRACE_PEEKDATA, ...) 来检查正在运行的二进制文件,并遇到了以下情况: 这是正文部分...
为什么在 Assembly x86 MASM 上使用“int 21h”会导致我的程序崩溃?
我试图让我的程序接受输入,而用户不必按 Enter 键,所以我尝试了以下操作: 移动啊,01h 21小时内 但它只是因为未处理的异常而导致我的程序崩溃。这……
以下问题涉及 x86 汇编和小字节序。 假设我有以下 C 代码: 无符号字符 myID[10] = "211866744"; 这个数组如何保存在内存中...
这是按esc退出的程序 每当按下 esc 时,我试图从这个过程跳到退出以停止游戏。但它说 escpressed 超出范围 过程被压缩 移动啊,...
我想创建一个程序来获取有关操作系统的信息。我尝试使用系统调用,但认为从系统文件读取会更快(直接)。所以,我写了一个简单的程序......
时隔很长一段时间我不得不再次使用GNU汇编器。自从我对“$”遇到麻烦以来。 手册只是说: 3.6.2.1 整数 十进制整数以非零数字开头,后跟 ze...