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]中的任何一个

如何从x86汇编代码调用C语言函数?

我最近正在尝试自学操作系统并玩弄xv6操作系统进行教学。我使用的版本是 GitHub 上的 x86 版本。 我一直在做的是在启动时尝试使用2级分页...

回答 1 投票 0

QEMU 中的 MS-DOS 在 GDB 中运行 while 循环后中断

使用 qemu 使用命令 qemu-system-i386 -fda ./images/disk01.img 运行 MS-DOS 3.20 似乎工作正常。附加 GDB(使用命令 qemu-system-i386 -fda ./images/disk01.img -S -s for qemu...

回答 1 投票 0

为什么我的 fputc 调用继续导致分段错误?

我正在尝试创建一个程序,该程序创建一个新文件并将现有文件的内容复制到其中。我能够打开读取原始文件的内容并将其写入内存,但是当它...

回答 1 投票 0

堆栈寄存器保存0x7c00的用途

我在理解代码的幕布部分、它是如何工作的以及操作堆栈寄存器背后的内容时遇到问题。 ;我指的是那部分 mov SS, 斧头 移动sp,0x7c00 我需要一个

回答 1 投票 0

在装配中对此进行评估 (A % B) % (C % D)

包括 Irvine32.inc 包含 Irvine32.lib INCLUDELIB kernel32.lib INCLUDELIB user32.lib 。数据 一个SBYTE 10d; A 是一个 8 位有符号整数 B 字节 2d ; B 是一个 8 位有符号整数 ...

回答 1 投票 0

了解 x86 汇编中 mov 和 lea 指令之间的差异

我试图理解 x86 汇编语言中 mov 和 lea 指令之间的差异。我写了一个简单的汇编代码片段,并添加了注释来解释我的理解......

回答 1 投票 0

主题标签“#”可以用作汇编 (NASM) 中的注释吗?

我出于学习目的正在关注此汇编源代码,并遇到以下几行: # 将磁盘区加载到高端内存中 # eax - 扇区地址 # ecx - 扇区数 # edi - 目的地...

回答 2 投票 0

通过 EBP 和 ESP 清理了解 STDCALL 与 CDECL 的概念

我相信我理解 STDCALL 和 CDECL 之间的区别,但我想知道是否可以在这段代码中找到一些说明。 我知道在 STDCALL 中,CALLEE 负责清理...

回答 1 投票 0

为什么 LLVM-MCA 会测量执行停顿?

考虑 LLVM MCA 文档中的以下说明 vmulps %xmm0、%xmm1、%xmm2 vhaddps %xmm2、%xmm2、%xmm3 vhaddps %xmm3、%xmm3、%xmm4 这些文档包含令人着迷的内容

回答 1 投票 0

为什么 shr eax, 32 没有做任何事情?

运行此汇编代码(nasm)时 移动eax,0x12345678 shr eax, 32 我注意到 eax 寄存器中没有 0,我很困惑为什么会这样? 我尝试按其他数字进行转换,然后...

回答 1 投票 0

了解 simd sum 实现 x86 的吞吐量

我在asm中有以下循环: .LBB5_5: vaddpd ymm0, ymm0, ymmword, ptr, [rdi, +, 8*rcx] vaddpd ymm1, ymm1, ymmword, ptr, [rdi, +, 8*rcx, +, 32] vaddpd ymm2, ymm2, ymmword, ptr, [rdi, +, 8...

回答 1 投票 0

如何摆脱 TASM 警告操作数大小冲突

编译以下汇编源文件TASM 4.1(tasm file.asm)时: 理想的 p386n 样板间 堆叠100小时;假人,安抚 TASM。 代码段 开始: cmp bx,启动后 后: 分贝 66h、81h、0fbh dw

回答 1 投票 0

使用 TASM+TLINK 创建具有非零组织的 32 位二进制文件

我正在寻找与 TASM 等效的以下汇编程序,即使用非零 org.以下是它与 NASM 的配合方式: ; $ nasm -O0 -f bin -o id.bin id.nas...

回答 1 投票 0

扇区 1 无 BIOS 输出

我需要有关设计的知识和进一步的说明(要么是写在文档中,我很难通过在 Google 搜索中输入或使用 GitHub 存储库来找到)...

回答 1 投票 0

汇编语言代码中的未知错误,乘法运算的结果始终是随机符号

我刚刚开始学习汇编语言,我尝试用notepad++和dosbox模拟器自己编写一个程序来进行乘法运算。然而,结果总是随机符号...

回答 1 投票 0

CMP ESI,-20。这部分代码对我来说毫无意义。这个魔法是如何运作的? [重复]

76EB750D 83FE E0 CMP ESI,-20 76EB7510 0F87 AD000000 JA msvcrt.76EB75C3 我根本不明白这部分代码。 为什么双字 ESI 与字节相比?! 如果 ESI 等于 FFFFFFF0 t...

回答 1 投票 0

为什么x86-64(或其他架构)不实现除以10?

我熟悉编译器将除法和取模替换为常量(例如x/10),并乘以幻数(x * 0xcccccccd)>>(32 + 3)。编译器示例在这里。 移动$

回答 1 投票 0

AVX512 对 512 位 8 位字符执行 AND 操作

我想对两个包含 8 位元素的 512 位向量进行 AND 运算。 查看 Intel Intrinsics Guide,我可以看到一些 512 位 AND 运算: __m512i _mm512_and_epi32(__m512i a,__m512i b) __m512i

回答 1 投票 0

在汇编语言中,“movl”中的“l”代表什么? [重复]

我理解movb是移动字节,movw是移动字,movq是移动四字。 movl 是移动双字,但是 l 代表什么?

回答 1 投票 0

如何在LLVM x86机器函数pass中使用buildmi插入JNE指令(跳转不等于)

我正在编写一个 LLVM 机器函数传递,需要在每个基本块的开头插入一些指令。这些指令的作用是从某个位置加载一个值并将其与

回答 1 投票 0

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