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]中的任何一个
我正在进行Linux汇编,我知道它有一个平坦的内存模型。令我困惑的是NEAR和FAR JMP。 NEAR属于同一部分,而FAR是另一部分。从我...
我有代码段和偏移值存储在两个寄存器中,分别是AX和BX。在NASM中,如何编码远程调用AX:BX?我试过打电话给AX:BX,但我的错误无效......
问题是即使dl和bl相等,它也不会跳到doi。谁知道为什么?假设cs:代码,ds:数据数据段sir1 db“abc”l1 equ $ -sir1 sir2 db“a”l2 equ $ -sir2 bunbun db“Este!$”...
是否有任何仍然相关的CPU(Intel / AMD / Atom)不支持SSSE3指令?没有SSSE3的最新CPU是什么?
当CPU处于内核模式时,它是否可以读写任何寄存器,或者是否存在一些即使在内核模式下也无法访问的寄存器?
我反汇编了编译非常简单的源文件test.c的代码,它看起来像这样:void main(){}我运行这些命令将main函数链接到一个静态可执行文件(...
这个二次方程代码中的fld qword [EBP + 8]是什么?fadd ST0只用一个参数做什么?
; roots.asm段; gcc.text全局-c rootsc._roots _roots:输入0, 0;为过程参数创建堆栈帧xor EAX,EAX; EAX = 0 fld ...
当我试图编译这个ASM时,我遇到了一个错误。编写一个汇编程序来实现以下内容。而X> 0,如果X!= 3 AND(X> A OR X.
我有一个需要AVX2正常工作的应用程序。如果CPU具有AVX2指令,则执行检查以在应用程序启动期间进行检查。我想检查它是否正常工作,但我......
我想通过x86_64二进制文件,反汇编指令来了解有关ptrace函数的更多信息。目标是检查字节是否是指令前缀之一。我在英特尔®中找到了一些信息......
我正在查看英特尔提供的RDRAND指令的参考实现。该页面是英特尔数字随机数发生器(DRNG)软件实施指南,代码来自......
我正在使用一个代码来分割带分隔符的字符串,但它保存了“右侧”,我需要单词的“左侧”。例如,如果输入是15,20,x,则输出应为:15 20 ...
程序集:使用.bss部分中的存储而不是#stack来存储文件描述符(练习题)[重复]
我从这本书中解决了练习部分。我的问题是关于本书中的toupper示例。问题:重写程序,使其在.bss部分使用存储而不是...
Windows(x86)程序集将Null终结符附加到输入的字符串
我目前正在尝试将空终止符附加到(a?)用户输入的字符串:.386 .model flat,stdcall WriteFile PROTO STDCALL:DWORD,:PTR,:DWORD,:PTR DWORD,:PTR OVERLAPPED ReadFile PROTO ...
英特尔PMU可用于测量每核读/写内存带宽使用情况吗?这里“存储器”意味着DRAM(即,不在任何高速缓存级别中命中)。
我有一个程序,它接受一个字符串作为输入,并输出表示字符串中的字符数,十六进制值和字符串本身的十进制数。我遇到的问题是,如果使用......
当CS寄存器的CPL值等于0时,x86 CPU是否处于内核模式?
CS寄存器的最后两位包含当前特权级别(CPL),它可以包含值0或1或2或3.如果CPL的值为0,这是否意味着CPU处于内核模式。 。
我正在使用x86 NASM学习汇编语言。我想编写一个简单的递归阶乘函数,我使用EAX寄存器传递一个参数。在那之后,我想打印我的结果......
此代码将字符串(位于ebp + arg_0)的每个字符与不同的常量(ASCII字符)(如“I”,“o”和“S”)进行比较。我想,基于其他代码部分,这段代码最初用C编写。...