x86

x86 ist eine Architektur, die von der Intel 8086 CPU abgeleitet ist. Die x86-Familie umfasst die 32-Bit-Architektur IA-32 und 64-Bit x86-64 sowie 16-Bit-Legacy-Architekturen. Fragen zu letzterem sollten mit [x86-16] und / oder [emu8086] getaggt werden. Verwenden Sie das Tag [x86-64], wenn Ihre Frage für 64-Bit x86-64 spezifisch ist. Verwenden Sie für die x86-FPU das Tag [x87]. Für SSE1 / 2/3/4 / AVX * verwenden Sie auch [sse] und alle zutreffenden [avx] / [avx2] / [avx512]
1
Antwort

Hilfe anfordern, um das Inline-Montageproblem im D-Programm zu beheben

Hallo, ich versuche ASM in einem kleinen D-Programm zu benutzen: %Vor% Ich habe diese Nachricht: "Ende der Anweisung" von den zwei Zeilen in der Anweisung asm Ich kann das Problem nicht beheben, Deshalb bitte ich Sie um Hilfe. danke...
22.09.2011, 16:59
1
Antwort

Was ist der Nachteil der Mischung von EVEX und VEX-kodierten Schema?

Es ist ein bekanntes Problem , dass das Mischen von VEX-kodierten Anweisungen und Nicht-VEX-Anweisungen eine Strafe bedeutet und der Programmierer sich dessen bewusst sein muss. Es gibt einige Fragen und Antworten wie das . Die Lösungen hän...
06.09.2017, 16:35
3
Antworten

Intel-Maschinencode zu Assemblercode Frage

Experten, ich frage mich, die Intel x86 machineCode / AssemblyCode-Konvertierung ist singleSide oder bothSide? bedeutet: assemblyCode --- & gt; machineCode und machineCode --- & gt; assemblyCode sind beide verfügbar. da der x86 machineCode...
09.03.2010, 14:18
1
Antwort

Perf Überzählen einfacher CPU-gebundener Schleife: mysteriöser Kernel funktioniert?

Ich habe Linux perf schon seit einiger Zeit verwendet, um Anwendungsprofile zu erstellen. Normalerweise ist die profilierte Anwendung ziemlich komplex, sodass man die gemeldeten Zählerwerte einfach auf den Nennwert nimmt, solange keine grobe...
05.10.2016, 02:11
2
Antworten

SIMD-Anweisungen für Gleitkomma-Gleichheitsvergleich (mit NaN == NaN)

Welche Anweisungen würden für den Vergleich zweier 128-Bit-Vektoren aus 4 * 32-Bit-Fließkommawerten verwendet? Gibt es eine Anweisung, die einen NaN-Wert auf beiden Seiten als gleich betrachtet? Wenn nicht, wie groß wäre der Leistungseinfluss...
22.01.2016, 16:41
2
Antworten

Welche Register können in einer Funktion sicher verwendet werden (x86)

Laut Wikipedia erlaubt der Intel ABI die Verwendung von EAX , ECX und EDX , ohne sie zu schützen sie in einer Funktion. Ich bin mir nicht sicher, was "Intel ABI" bedeutet. Bedeutet dies, dass es von allen Compilern, die auf Intel-CPUs...
05.02.2013, 06:37
1
Antwort

Fließkommaausnahme beim Teilen in x86 nasm

Ich bin damit beschäftigt, Assembly zu lernen und habe versucht, mich zu trennen, aber ich stieß auf eine Beize mit der folgenden Aussage: %Vor% GDB: %Vor% Ich wollte 0x100000000 durch 0x00000002 teilen, also da die Spanne für die Divisi...
24.03.2013, 18:45
2
Antworten

x86 finde die Operandengröße des Befehls nur mit dem Hex-Maschinencode angegeben?

Beispiel für ein hex: 83 E4 F0 Wenn ich mir das Entwicklerhandbuch von Intel ansehe, kann ich feststellen, dass 83 für and steht und FO für -16 steht. Mit E4 kann ich decodieren, dass das Quell- / Zielregister entweder SP od...
19.02.2013, 16:47
2
Antworten

Wie schreibe ich das alles in Assembly

Ich habe zwei Makros, eines ist in Assembly und das andere in C geschrieben. Das zweite Makro verwendet das erste Makro. Allerdings möchte ich auch das zweite Makro in Assembly mit volatile schreiben, damit ich seine Platzierung im Code steuern...
25.11.2011, 16:33
1
Antwort

GCC kompiliert die Zählung der führenden Nullen schlecht, sofern nicht Haswell angegeben wurde

Der GCC unterstützt die __builtin_clz(int x) builtin, die die Anzahl der Anzahl der führenden Nullen (aufeinanderfolgende höchstwertige Nullen) im Argument zählt. Dies ist unter anderem 0 , um die Funktion lg(unsigned int x) effizie...
07.11.2016, 01:17