assembly

Assemblersprache (asm) Programmierfragen. Achten Sie darauf, auch mit dem Prozessor und / oder Befehlssatz, die Sie verwenden, sowie den Assembler TAG. WARNUNG: Verwenden Sie für .NET-Assemblies stattdessen das Tag [.net-assembly]. Verwenden Sie für Java ASM stattdessen das Tag [java-bytecode-asm].
2
Antworten

Ich schreibe meinen eigenen JIT-Interpreter. Wie führe ich generierte Anweisungen aus?

Ich beabsichtige, meinen eigenen JIT-Interpreter als Teil eines Kurses über VMs zu schreiben. Ich habe viel Wissen über Hochsprachen, Compiler und Interpreter, aber wenig oder kein Wissen über x86 Assembly (oder C für diese Angelegenheit). Ei...
26.01.2012, 08:36
1
Antwort

Wie kann ich die Anzahl der Kerne in der x86-Baugruppe ermitteln?

Ich schreibe ein sehr einfaches Betriebssystem als Lernwerkzeug für mich. Meine aktuelle Aufgabe ist es, so viel über die Hardware wie möglich zu erkennen. Ich konnte bisher mit der CPUID-Anweisung eine Menge Informationen über die CPU finden...
26.05.2011, 22:58
3
Antworten

Was ist der Zweck von Segmentregistern im geschützten x86-Modus?

Ich muss einige DLLs ändern, aber ich weiß nicht, was genau die Segmentregister ( DS , SS , ...) im geschützten Modus macht. Ich habe in der Schule über den echten 16-Bit-Modus gelernt, bei dem die Segmentregister um 16 multipliziert werden...
11.03.2013, 09:27
5
Antworten

Optimierung der Umwandlung von RGBA8888 in RGB565 mit NEON

Ich versuche eine Bildformatkonvertierung unter iOS mit dem NEON-Vektor-Befehlssatz zu optimieren. Ich nahm an, dies würde gut darauf abbilden, weil es eine Menge ähnlicher Daten verarbeitet. Meine Versuche sind jedoch nicht so gut gelaufen u...
10.10.2011, 00:49
2
Antworten

Wie interpretiere ich die Segmentregisterzugriffe auf x86-64?

Mit dieser Funktion: %Vor% Wie interpretiere ich die zweite Anweisung und finde heraus, was zu RAX hinzugefügt wurde?     
21.10.2011, 04:25
1
Antwort

Ist vxorps-Zeroing auf AMD Jaguar / Bulldozer / Zen schneller mit xmm Registern als ymm?

AMD-CPUs verarbeiten 256b AVX-Befehle, indem sie in zwei 128-Bit-Operationen dekodieren. z.B. vaddps ymm0, ymm1,ymm1 auf AMD Steamroller dekodiert zu 2 Makro-Operationen, mit dem halben Durchsatz von vaddps xmm0, xmm1,xmm1 . XOR-Nullste...
01.05.2017, 01:53
12
Antworten

Borland x86 inline Assembler; die Adresse eines Labels erhalten?

Ich verwende Borland Turbo C ++ mit etwas eingebautem Assembler-Code, also vermutlich Assembler-Code im Turbo Assembler (TASM). Ich möchte Folgendes tun: %Vor% Also wird die Adresse von SomeLabel in EAX gelegt. Dies funktioniert nicht und de...
16.10.2008, 15:59
1
Antwort

Symbolname steht in neuen NASM-Versionen in Konflikt mit neuen Registernamen?

Stellen Sie sich vor, Sie hätten dies vor 10 Jahren geschrieben (vor Intel MPX und den bnd0 .. bnd3 Registern) sogar auf einer Roadmap): %Vor% Wie können Sie dies mit einer aktuellen Version von NASM zusammenstellen? . Ist NASM (ode...
25.08.2017, 23:42
3
Antworten

Unterschied zwischen "oder eax, eax" und "test eax, eax" [duplizieren]

Was ist der Unterschied zwischen or eax,eax und test eax,eax ? Ich habe gesehen, dass verschiedene Compiler beide für den gleichen Vergleich produzieren und soweit die Dokumentation geht, machen sie genau das Gleiche, also frage ich mich,...
16.05.2014, 03:05
1
Antwort

Ist NASM inkonsistent oder fehlt mir gerade eine offensichtliche Tatsache mit CMP von sofort?

Die "Warnung: signed dword sofort überschreitet Grenzen" ist der Fluch meiner Existenz im Moment, da es inkonsistent zu sein scheint oder ich sehe einfach kein offensichtliches Tatsache. Ich habe die folgende Struktur deklariert: %Vor%...
29.10.2016, 10:09