Suchergebnisse für Anfrage "assembly"
x86_64: ist IMUL schneller als 2x SHL + 2x ADD?
Beim Betrachten der von Visual Studio (2015U2) in @ erstellten Assemb/O2 (release) mode Ich habe gesehen, dass dieses 'handoptimierte' Stück C-Code wieder in eine Multiplikation übersetzt wird: int64_t calc(int64_t a) { return (a << 6) + (a << ...
Arm-Neon-Vergleichsoperationen erzeugen eine negative
Ich versuche den folgenden Assembler-Code: vclt.f32 q9,q0,#0 vst1.i32 q9,[r2:128]Aber wenn die Bedingung wahr ist, wird das entsprechende Element in q9 auf negativ anstatt auf positiv gesetzt. Was kann ich tun, um ein positives Ergebnis zu ...
Wie lernt man am besten, wie man Schaltkreise baut [closed]
Ich wollte schon immer besser verstehen, was auf Hardwareebene passiert. Praktischerweise ist alles, was nach dem Kompilieren steht, gleich 'Magie', und ich würde gerne Abhilfe schaffen. Ich möchte den Aufbau von Schaltkreisen untersuchen und ...
Warum benötigen wir die Stapelzuordnung, wenn wir eine rote Zone haben?
Ich habe folgende Zweifel: Wie wir wissen, gibt uns System V x86-64 ABI einen Bereich mit fester Größe (128 Byte) im Stack-Frame, die sogenannte Redzone. Aus diesem Grund müssen wir beispielsweise nicht @ verwendesub rsp, 12. Mach einfachmov ...
Wo ist VPERMB in AVX2?
AVX2 hat viele gute Sachen. Zum Beispiel enthält es viele Anweisungen, die strikt mächtiger sind als ihre Vorgänger. NehmenVPERMD [http://www.felixcloutier.com/x86/VPERMD.html]: Ermöglicht das beliebige Senden / Mischen / Permutieren von einem ...
Während eines x86-Software-Interrupts wird wann genau ein Kontextwechsel durchgeführt?
Ich frage dies, weil ich versuche, Interrupts in meinem Spielzeugkernel zu implementieren. Ich weiß also, dass die CPU beim Auftreten eines Interrupts verschiedene Informationsbits auf den Stapel schiebt. Überall, wo ich online suche, werden ...
RGBA zu ABGR: Inline Arm Neon Asm für iOS / Xcode
Dieser Code (sehr ähnlicher Code, habe @ nicht ausprobiegena this code) Kompiliert mit Android NDK, jedoch nicht mit Xcode / armv7 + arm64 / iOS Errors in Kommentaren: uint32_t *src; uint32_t *dst; #ifdef __ARM_NEON __asm__ volatile( "vld1.32 ...
CPU-Register und Multitasking
Ich lerne gerade Assembly und bin verwirrt darüber, wie die CPU-Register mit Multitasking funktionieren. Also in einem Multitasking-System. Die CPU kann die Ausführung eines bestimmten Programms jederzeit anhalten und ein anderes Programm ...
Weird MIPS Assembler Verhalten mit Sprung (und Link) Anweisung
So studieren wir MIPS-Architektur in der Schule und implementieren eine MIPS32-Architektur. Ich dachte, ich würde GNU Cross-Binutils als Assembler verwenden, aber ich bekomme seltsame Ausgaben, wenn ich mich mit jal, j und jr befasse. Der ...
Neue AVX-Befehlssyntax
Ich hatte einen C-Code mit einigen Intel-Intrinsincs geschrieben. Nachdem ich es zuerst mit avx und dann mit ssse3 Flags kompiliert hatte, bekam ich zwei recht unterschiedliche Assembler-Codes. Z.B AVX: vpunpckhbw %xmm0, %xmm1, %xmm2 ...