Tag: 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]

Speichern und Inkrementieren integer-Variablen in x86 Assembler MASM

Anzahl der Antworten 2 Antworten
Ich versuche zu verstehen Versammlung. Das heutige Thema ist: "Speichern und Inkrementieren int-Variablen und drucken von zahlen" 🙂 So, hier ist mein code dane segment count db 0 dane ends code segment start: inc byte ptr ds:[count]

Wie test-Zeichen in einem string [Montage]

Anzahl der Antworten 2 Antworten
Schreibe ich ein Programm, um die Suche für die Vokale in einem string, aber ich habe Probleme beim testen der einzelnen Zeichen innerhalb der Zeichenfolge, ich habe das grundlegende Konzept ab und ich habe dies getan, bevor

Ändern Sie die target-zu x86 in VS2010

Anzahl der Antworten 1 Antworten
Ich habe eine VS2010 solution mit mehreren Projekten in der it. Diese Projekte sind winforms-apps und Bibliotheken. Nun MUSS ich ändern-Plattform für alle Projekte, die auf X86-von jeder CPU, aber ich kann es nicht tun, in einigen

Wenn anderes makro in MASM

Anzahl der Antworten 1 Antworten
In MASM, ist es möglich, erstellen Sie ein, wenn...ekse makro (ähnlich denen in der high-level-Programmiersprachen)? Ich habe noch nicht gefunden, jede Art von if-else-Anweisung makro für MASM, aber ich denke, dass ein makro für diesen Zweck sehr

Montage-A86 - Anzeige Zeit

Anzahl der Antworten 1 Antworten
Arbeite ich an ein Assembler-Programm, um das system Zeit und Datum, wandle in ASCII und zeigt Sie auf dem monitor. Ich habe Mühe, es korrekt angezeigt werden und Sie nicht finden, wo ich schief gegangen ist. Dies

rdtsc, zu viele Zyklen

Anzahl der Antworten 5 Antworten
#include <stdio.h> static inline unsigned long long tick() { unsigned long long d; __asm__ __volatile__ ("rdtsc" : "=A" (d) ); return d; } int main() { long long res; res=tick(); res=tick()-res; printf("%d",res); return 0; } Habe ich

Arbeiten mit arrays assembler 8086

Anzahl der Antworten 1 Antworten
Definieren Sie ein array mit zehn 16-bit-Worten. Lesen Sie die Werte ein string, der keine Zeichen aus der Tastatur. Danach sollte der string umgewandelt werden, so dass es bleiben nur Elemente, sind Kleinbuchstaben (a - z). Anschließend

Assembler springen im Geschützten Modus mit GDT

Anzahl der Antworten 2 Antworten
Ich bin derzeit rund um das Spiel mit x86-Assember, um zu schärfen, meine low-level-Programmierkenntnisse. Derzeit stehe ich vor einem kleinen problem mit der Adressierung in 32-Bit-Protected-Modus. Die situation ist folgende: Ich habe ein Programm geladen 0x7e0 die

Verständnis cmp-Anweisung

Anzahl der Antworten 2 Antworten
Ich bin sehr neu auf Montage und jetzt versuche ich, zu verstehen, wie cmp funktioniert. Hier ist, was geschrieben steht wiki: cmp arg2, arg1 Führt eine Vergleichs-operation von arg1 und arg2. Der Vergleich erfolgt durch eine (signierte)

Assembly programming : NASM VS MASM-code

Anzahl der Antworten 2 Antworten
Ich bin gerade angefangen zu lernen, Assembly programming. So weit ich weiß, NASM ist der beste assembler für linux. Und die 32-bit-assembler. Auf der anderen Seite, MASM ist eine DOS-assembler und 16-bit. Nun möchte ich wissen, wie

Was bedeutet movl $_start, %eax bedeuten?

Anzahl der Antworten 2 Antworten
Was bedeutet"$", gefolgt von einem Bezeichner bedeuten? x86 assembly, AT&T-syntax. Exakt diese Frage ist eine der übungen für die Programmierung aus dem Boden nach Oben. InformationsquelleAutor Qian | 2011-02-03

Finden Zahl ist gerade/Ungerade-in Montage

Anzahl der Antworten 3 Antworten
Ich versuche zu finden, ob eine gegebene Zahl (Eingabe durch Anwender) gerade oder ungerade ist. Ich bin einfach die Anwendung AND operation auf binären Ziffern ein Nein. mit 1, Wenn die Zahl ungerade ist, dann wird der

Was bedeutet push dword ptr [eax+22] bedeuten?

Anzahl der Antworten 2 Antworten
Ich weiß, dass z.B. push eax speichern würde, eax auf dem stack und dekrementiert esp um 4. Und die push dword ptr bedeutet, es muss drücken 4 bytes, aber dann bin ich verwirrt. Auch wenn es [esi+22]

Gibt es eine Möglichkeit, neu zu kompilieren, Programme von x86-zu ARM-linux?

Anzahl der Antworten 4 Antworten
Ich würde gerne sammeln, einige Ideen über die Lösung des folgenden Problems. Ich habe eine TOF-Kamera, und seine Treiber für linux x86/64. Es funktioniert einwandfrei. Aber in der Tat, die Kamera wäre auf einem ARM-basierten embedded-Gerät, wenn

Divide overflow in Assembler

Anzahl der Antworten 3 Antworten
Habe ich eine einfache Assembler-Programm, wo ich will, dividieren von zwei zahlen (zwei-byte-Format) und ausdrucken Rest. Hier ist mein code .model small .stack 256 .data ten dw 10 .code main proc mov ax, @data mov ds, ax

Was sind einige Tipps für die Optimierung des Assembler-code, der vom compiler erzeugt?

Anzahl der Antworten 5 Antworten
Ich bin derzeit in den Prozess des Schreibens ein compiler und ich scheinen zu haben, in einige Probleme laufen, wie es den Ausgabe-code, der ausgeführt wird, in einem anständigen Zeitrahmen. Einen kurzen überblick über den compiler: 7Basic

Kompilieren eines Programms für Windows XP x86

Anzahl der Antworten 4 Antworten
Schrieb ich eine windows forms Anwendung mit VS2012 auf computer mit windows 8 (x64) und ich möchte es auf Windows XP x86. Wenn ich versuche das Programm auszuführen, bekomme ich Fehler "... ist keine gültige windows 32

Einfachste Weg, um entfernen Sie etwas von dem FPU-stack

Anzahl der Antworten 4 Antworten
Habe ich einige Probleme in letzter Zeit mit FPU-stack-overflows. Ich es geschafft, es zu verfolgen zurück zu einem buggy-Bibliothek-Funktion, schiebt sich eine Müll Wert auf den FPU-stack jedes mal, wenn es aufgerufen wird und niemals reinigt es.

x86 JMP opcode-Struktur

Anzahl der Antworten 1 Antworten
Ich bin gerade auf der Suche auf die .text-Abschnitt, der eine einfache exe-Datei habe ich in C, und ich versuche nur, um herauszufinden, wie einige x86 Befehle strukturiert sind. Von dem, was ich gelesen habe, es scheint,

Kann jemand erklären, diese direkt montiert x86 JMP-opcode?

Anzahl der Antworten 3 Antworten
In der Schule haben wir ein bootstrap-Programm zum ausführen von stand-alone-Programme, die ohne Betriebssystem. Ich studiere seit diesem Programm und wenn der geschützte Modus aktiviert ist, gibt es eine weit springen, ausgeführt durch die direkte Montage der

GCC-Inline-Assembly: Sprung zu label außerhalb block

Anzahl der Antworten 2 Antworten
Bei der Verwendung von inline-assembly unter MSVC, erlaubt zu springen, außerhalb der Montage-block referenzieren ein label in der C/C++ - code, wie bereits erläutert,in diesem MSDN-Artikel. Kann so etwas geschehen, wenn die Verwendung von inline-assembly unter GCC?

Die Entwicklung eines Betriebssystems für die x86-Architektur

Anzahl der Antworten 13 Antworten
Ich bin Planung zu entwickeln, die ein Betriebssystem für die x86-Architektur. Welche Möglichkeiten von Programmiersprachen habe ich? Welche Arten von Compilern gibt es, vorzugsweise in einer Windows-Umgebung? Gibt es irgendwelche gute Quellen, die mir helfen, erfahren Sie

Das erstellen und aufrufen-Funktion in x86 Assembler (AT&T-syntax)

Anzahl der Antworten 1 Antworten
Bitte geben Sie mir ein sehr einfaches Beispiel von erstellen einer Funktion und Aufruf in x86 Assembler (AT&T-syntax). Actaully, ich bin versucht, zu erstellen eine Funktion, die berechnet factorial einer Zahl. Dies ist, was ich getan habe

warum ist ROL-Befehl benutzt wird?

Anzahl der Antworten 2 Antworten
Ich bin etwas neu auf Assembler-Programmierung, so verzeihen Sie mir, wenn diese Frage scheint irrelevant. Ich versuche zu verstehen, was ein 32-bit-Zusatz-Programm-und das folgende ist eines der Verfahren verwendet werden, um das Ergebnis der addition (gespeichert in

Schreiben Sie Grafiken Pixel in 16-bit-Montage

Anzahl der Antworten 2 Antworten
Ich versuche, mich zu entwickeln, mein eigenes, sehr grundlegende Betriebssystem für pädagogische Zwecke. Während die Kodierung der kernel, ich habe versucht, legen Sie Farbe auf einige Pixel auf dem Bildschirm, um es besser Aussehen, aber ich nicht.

assembly-Sprache, die Hilfe bei der Suche nach agrv[1][0]

Anzahl der Antworten 2 Antworten
Ich versuche, das erste element von dem, was gespeichert ist in argv[1] in x86-Assembler. Ich knallte den Stapel zweimal, um eax zunächst, weil ich will argc so kann ich die Anzahl der argc. Dann knallte argv zu

Ist x86 assembler über .NET möglich?

Anzahl der Antworten 8 Antworten
Gibt es so etwas wie eine x86-assembler, dass ich anrufen kann, durch C#? Ich möchte in der Lage sein, um pass x86-Anweisungen als string und erhalten Sie ein byte-array zurück. Wenn man nicht existiert, wie kann ich

Kann nicht laden Sie die 64-bit SWT libraries on 32-bit-JVM (auch wenn ich die heruntergeladenen 32-bit SWT)

Anzahl der Antworten 3 Antworten
Ich bin derzeit an der Entwicklung auf einem 64-bit-Windows-7-Maschine. Ich habe JRE7 64-bit-und JRE7 32-bit auf meinem Rechner installiert. Ich bin mit Eclipse 64-bit-version und konfiguriert Window - Preferences - Java - Installed JREs verwenden JRE7 32-bit-mein

Farbige Hello World in TASM

Anzahl der Antworten 3 Antworten
Guten Tag. Ich bin neu in der Assembler-und ich bin versucht zu drucken eines farbigen "Hallo Welt" in TASM. Hier ist mein code bisher. Es druckt nur "Hallo Welt", ohne eine Farbe. .model small .stack 100h .data

Pushfd und Pushad: Was ist der Punkt?

Anzahl der Antworten 1 Antworten
Ich weiß, dass pushad drückt alle 32-bit-Register auf dem stack, sondern nur registrieren, dass die enden, die oben auf dem stack gespeichert werden, ist EDI. Flag-Werte sind nicht betroffen, also was ist der Punkt, der mit pushad?

Die Assembly 'call' vs 'jmp'

Anzahl der Antworten 1 Antworten
Ich habe gesagt, um zu versuchen und verwenden Sie 'jmp eher als 'Anruf', sondern 'jmp' ist nicht gefällt mir .. wenn ich springen, es nicht mehr zurück (so dass es nie beendet und nicht glückliche Tage ),

x86 assembly multiplizieren und dividieren-Anweisung Operanden, 16-bit und höher

Anzahl der Antworten 1 Antworten
Ich bin ziemlich verwirrt, wie das multiplizieren und dividieren Operationen in x86-assembly. Zum Beispiel, der folgende code scheint nicht allzu schwierig, da die Angebote mit 8-bit. 8-Bit-Multiplikation: ; User Input: ; [num1], 20 ; [num2] , 15

Assembly-Sprache, die wie das Inkrementieren des multi-stellige dezimale ASCII-strings?

Anzahl der Antworten 2 Antworten
so, ich habe diesen Teil des Codes mov SI, 0002 mov ah, INPUT[SI] INC SI mov al, INPUT[SI] sub AX, 3030h aad inc al cmp byte ptr INPUT[0002], 39h jne OTHER OTHER: aam add ax, 3030h mov

SSE (SIMD): Multiplikation Vektor mit skalaren

Anzahl der Antworten 3 Antworten
Einen gemeinsamen Betrieb, die ich tun in meinem Programm ist die Skalierung der Vektoren durch Skalare (V*s, z.B. [1,2,3,4]*2 == [2,4,6,8]). Gibt es eine SSE (oder AVX) die Anweisung, etwas zu tun, als der erste laden der

SAR-Befehl in X86-assembly mit einem parameter

Anzahl der Antworten 2 Antworten
Im zerlegten Programm, das ich zu analysieren, ich fand den Befehl sar %eax Was macht das? Ich weiß, dass sar mit zwei Argumenten führt eine shift-rechts, aber ich kann nicht herausfinden, was es bedeutet, mit nur einem

Wie um zu überprüfen, ob eine Ganzzahl ist neg oder pos?

Anzahl der Antworten 3 Antworten
Ich bin neu in x86-Assembler geschrieben, ich habe eine vorzeichenbehaftete Ganzzahl gespeichert in register eax, und ich möchte, um zu überprüfen, ob die Zahl negativ oder positiv. Zu tun, dass ich verwendet bt Anweisung zu überprüfen, wird

Wo ist der x86-64-System V ABI dokumentiert?

Anzahl der Antworten 2 Antworten
Die x86-64-System V ABI (auf alles außer Windows) verwendet, um live bei http://x86-64.org/documentation/abi.pdf, aber diese site hat jetzt gefallen aus dem internet. Gibt es eine neue maßgebliche Hause für das Dokument? Die 0.99.6 Entwurf ist die neueste

Wie funktioniert die GCC-Implementierung der modulo ( % ) - Arbeit, und warum tut Sie es nicht verwenden die div-Anweisung?

Anzahl der Antworten 2 Antworten
War ich versucht, herauszufinden, wie die Berechnung mit modulo 10 mit Montage-so habe ich kompiliert den folgenden c-code in gcc zu sehen, was es kam mit. unsigned int i=999; unsigned int j=i%10; Zu meiner überraschung bekam ich

Macht es keinen Sinn, die LFENCE Anweisung auf x86/x86_64-Prozessoren?

Anzahl der Antworten 3 Antworten
Oft im internet-ich finde, dass LFENCE keinen Sinn macht, in den Prozessoren x86, sprich es tut sich nix , also statt MFENCE wir können absolut schmerzfrei zu verwenden SFENCE, weil MFENCE = SFENCE + LFENCE = SFENCE

Was bedeutet das “.richten Sie" x86-Assembler-Richtlinie genau?

Anzahl der Antworten 4 Antworten
Werde ich eine Liste genau das, was ich nicht verstehe, und zeigen Sie die Teile, die ich nicht verstehen kann, wie gut. First off, Die .Richten Sie Die Richtlinie .richten integer, pad. Die .align-Direktive bewirkt, dass die

Erste Zeit mit dem lernen von Montage -, ist dies ein Wort zu sagen die Größe ist 8 Byte?

Anzahl der Antworten 1 Antworten
Wenn ich brechen, Hauptsache es sieht aus wie die Fette Linie ist, wo ich gerade erstellt und initialisiert. Ich denke, ich werde an dieser alles falsch, ich versuche zu prüfen, x86_64 Baugruppe aus einem Buch, das erklärt,

Wie man eine Atomare Inkrement-und fetch in C?

Anzahl der Antworten 2 Antworten
Ich bin auf der Suche nach einem Weg, um atomar Schrittweite eine kurze, und dann wieder, dass Wert. Ich brauche, um dies zu tun, sowohl im kernel-Modus und Benutzer-Modus, so ist es in C unter Linux auf

Schreiben C = (A+B)^2 in Assembler Umwandeln und der Maschinen-Sprache

Anzahl der Antworten 3 Antworten
Bitte, ich bin an einer Aufgabe arbeiten, die sagt : Übersetzen C = (A + B)^2 in Assembly-Sprache Maschinen-Sprache. Ich begann mit der recherche und dem schreiben des Assembler-Programm so : MOV AX, A ; Move A

Das, was funktioniert .comm bedeuten?

Anzahl der Antworten 2 Antworten
Ich habe gerade übersetzt das Programm, #include <stdio.h> int dam[1000][1000]; int main (int argc, const char * argv) { //insert code here... printf("Hello, World!\n"); return 0; } assembly mit gcc produziert, .cstring LC0: .ascii "Hello, World!\0" .text

Aufrufen von C-Funktionen, die von x86 assembly language

Anzahl der Antworten 2 Antworten
Ist es möglich, zum generieren von Assembler-Funktionen von C-Funktionen mit GCC, so dass Sie aufgerufen werden, aus der eine assembly-Sprache-Programm? Ich weiß, dass gcc kompiliert die C-zu-Maschine-code (die leicht zerlegt werden, in Assembler), und ich weiß schon,

Relative vs Absolute jmp-Montage

Anzahl der Antworten 2 Antworten
Wunderte ich mich über die folgenden. Ich habe bemerkt, beim schreiben von assembly-Sprache, die IA32 ist in einer solchen Weise zu fördern, die Nutzung von relative Sprünge, d.h. springen, eine Verschiebung der bytes vs die Verwendung von

Anzeigen der erweiterten ASCII-Zeichen

Anzahl der Antworten 4 Antworten
In Visual Studio 2005 auf 32-bit-Windows, warum nicht meine Konsole-Anzeige-Zeichen von 128 bis 255? Beispiel: cout << "¿" << endl; //inverted question mark Ausgabe: ┐ Press any key to continue . . . Scheint zu funktionieren, Ihre

Assembler-code für sin(x)

Anzahl der Antworten 3 Antworten
Ich würde gerne Assembler-code für die Berechnung sin(x) (mit "Taylor-Expansion") in Linux. habe das mal vor ein paar Jahren... nicht lustig InformationsquelleAutor Hamid | 2009-08-10

was bedeutet die cmpq Unterricht tun?

Anzahl der Antworten 1 Antworten
Las ich die folgende definition für syscall: .text .globl syscall .type syscall,%function .align 16 syscall: movq %rdi, %rax /* Syscall number -> rax. */ movq %rsi, %rdi /* shift arg1 - arg5. */ movq %rdx, %rsi movq

Wie erstellen Sie verschachtelte Schleifen in x86 Assembler

Anzahl der Antworten 1 Antworten
Ist es möglich, erstellen von verschachtelten Schleifen in x86-Assembler? Möchte ich übersetzen dieses psedocode in die richtige x86-Assembler-code (mit MASM syntax), aber ich bin mir nicht sicher, wie Sie initialisiert werden die einzelnen loop-counter hier. Ist es