Tag: assembly

Assembler (asm) Fragen zur Programmierung. WERDEN Sie SICHER, dass AUCH der TAG mit dem Prozessor und/oder Anweisungen, die Sie verwenden, sowie assembler. WARNUNG: Für .NET-assemblies, die mit dem tag [.net-assembly] statt. Für Java, ASM, verwenden Sie den tag [java-bytecode-asm] statt.

Carry-flag Abzug

Anzahl der Antworten 2 Antworten
Bin ich mit MASM32. Mit diesem code: mov eax,5 sub eax,10 CF-status-flag wird gesetzt. Aber mit meinem Bleistift und Papier, die ich eigentlich sehen, dass es keine carry vom MSB. Ja, ich weiß, dass aus der Subtraktion

Probleme kompilieren von assembly-Datei - Fehler: undefined reference to `Funktion name'

Anzahl der Antworten 1 Antworten
Ich versuche, einen Blick auf test-Programm, mein professor hat uns, aber ich habe Probleme beim kompilieren. Ich bin auf Ubuntu 14.04. Ich bin kompilieren Sie es mit gcc -Wall test.c AssemblyFunction.S -m32 -o test Hatte ich Probleme

Äquivalent für GCC nackt Attribut

Anzahl der Antworten 3 Antworten
Ich habe eine Anwendung geschrieben in reines C, gemischt mit einigen Funktionen, die enthalten reines ASM. Nackt-Attribut ist nicht verfügbar für x86 (warum? warum?!) und meine asm Funktionen nicht wie bei Prolog und Epilog ist messing mit

GDB : änderung der Assembler-code, der von einem Laufenden Programm

Anzahl der Antworten 1 Antworten
Ich erfolgreich geändert, wird eine Anweisung an ein NOP da ist es ziemlich einfach: set *0x08048e3a = 0x90 Aber ich versuche, dies zu ändern, Adresse 0x08048e3a die je 0x8048e52. Ich möchte es ändern, um je 0x8048ea8. Aber

Komma, Doppelpunkt, Dekorateur oder Ende der Zeile erwartet, nachdem Operanden

Anzahl der Antworten 2 Antworten
Ich bin Programmierung in c und ich kompiliert ein c-code Assembler-code, aber wenn ich re-kompilieren Sie den code mit NASM assembler , es ist mir ein Fehler Erwartet, Komma , Doppelpunkt , Dekorateur oder Ende der Zeile

Die Verwendung von DUP in assembly-Sprache

Anzahl der Antworten 1 Antworten
PASSWORD DB 20 DUP(0) INPUTSTR DB 20 DUP(0) Ging ich durch einen code, und ich kam in dieses, was macht DUP in diesem Fall bedeuten? Kann jemand mir erklären. Bitte! Dank Es gibt viele verschiedene Montage-Sprachen; Woher

Wie kann Montierer Anzeigen x86 Instruction Mnemonics in Binäre Maschinenbefehle?

Anzahl der Antworten 3 Antworten
Ich bin daran interessiert, das schreiben einer x86-assembler. Ich Frage mich, was ist ein guter Weg, um die Karte x86 assembly mnemonische Anweisungen (Intel-syntax) in das entsprechende binäre Maschinencode-Anweisungen. Lesen Sie auch stackoverflow.com/questions/2546715/... InformationsquelleAutor mudge | 2010-05-03

JNB nach Vergleich mit 0 (x86)

Anzahl der Antworten 2 Antworten
Habe ich diese x86-Assembler-code: mov [ebp+var_8], 0 mov eax, Str_len cmp [ebp+var_8], eax jnb short loc_4018C4 Wenn Str_len ist immer Verschieden von 0, was bedeutet dies JNB durchführen ? Meine Argumentation ist, dass wenn Str_len variable wird

MIPS syscall-Instruktion

Anzahl der Antworten 5 Antworten
Zerlegt ich einige MIPS-Maschinen-code und ich hab folgenden code-snippet. 00 00 00 0C syscall 0 # System Call 00 00 00 00 nop 03 E0 00 08 jr $ra # Jump Register 00 00 00 00 nop

LC3 LEA-Anweisung und der Wert gespeichert

Anzahl der Antworten 1 Antworten
Ich bin verwirrt von dieser Frage: Was ist der gespeicherte Wert in register 0 nach Anweisung “LEA R0,A" ausgeführt wird? Wie kommen die Antwort ist x370C ? Ich denke, es soll zum laden der Adresse von A

Erforderliche Werkzeuge um zu erfahren, ARM-linux-x86-Plattform

Anzahl der Antworten 3 Antworten
Ich habe ein x86-linux-Rechner. während des Lesens einige verschiedene Informationen auf den ARM, ich wurde neugierig und ich denke jetzt ist zu verbringen einige Zeit das lernen dieser Architektur. Mein Ziel nun ist, um schreiben zu können,

QWORD Speichern / Umsetzung 32-bit-REGs.?

Anzahl der Antworten 2 Antworten
Gegeben, dass die variable I ist definiert als Qword, die Gleichung I = 2*I umgesetzt werden können, mit minimal die folgenden Anweisungen: die Lösung : MOV EAX, DWORD PTR I ADD DWORD PTR I, EAX was ich

Assembler-Registern

Anzahl der Antworten 3 Antworten
Ich lernte, Montage-Programmierung, und ich auf einige Fehler gestoßen, mit Register. Zum Beispiel stieß ich auf dieses: mov ax, 3000 mov ds, ax mov si, 200 mov ax, [si] add si, 2 add ax, [si] add si,

Ein Programm zu schreiben, berechnen Sie die Fakultät einer ganzen Zahl, in ARM-Assembler

Anzahl der Antworten 2 Antworten
Gegeben eine ganze Zahl muss ich eine Funktion schreiben, gibt die Fakultät Wert. Hier ist mein code für die Fakultät-Funktion: bl getnum move r3, r0 mov r1, #1 -- counter mov r4, r0 loop: sub r0, r0,

mips Speicher-management

Anzahl der Antworten 1 Antworten
wie Sie manuell verwalten heap in mips assembly, die speziell den SPIM-simulator? den Haufen, die ich gefunden habe, beginnt bei 0x10040000, wenn mit dem Systemaufruf sbrk, z.B. li $t0, 1 li $s0, 9 syscall sw $t0, ($s0)

Was ist der Unterschied zwischen retq und ret?

Anzahl der Antworten 1 Antworten
Betrachten wir das folgende Programm, das berechnet ein unsigned Quadrat des Arguments: .global foo .text foo: mov %rdi, %rax mul %rdi ret Dies ist richtig, zusammengestellt von as, sondern zerlegt Sie zu 0000000000000000 <foo>: 0: 48 89

Drucken Dezimalzahl in Assembler?

Anzahl der Antworten 1 Antworten
Ich versuche, die Ausgabe in dezimaler form. Bitte sagen Sie mir, was ich tun kann, um die gleiche variable im dezimal anstelle von ASCII. .model small .stack 100h .data msg_1 db 'Number Is = $' var_1 db

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]

ADDC Vergleich HINZUFÜGEN

Anzahl der Antworten 2 Antworten
Ich versuche, herauszufinden, den Unterschied zwischen ADDC und FÜGEN Sie Anweisungen für die 8051-mikrocontroller. Beschreibung: Beschreibung: ADD und ADDC beide addieren der Werte der Operanden zum Wert des Akkumulators, verlassen der resultierende Wert in den Akkumulator. Der

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

Unterschied zwischen LEA und BEWEGEN.L?

Anzahl der Antworten 4 Antworten
Gibt es irgendwelche Unterschiede zwischen LEA $1000,A0 und MOVE #$1000,A0 setzen einer Adresse in die Adress-Registrierung? InformationsquelleAutor dynamic | 2012-05-24

Wie man Einstiegspunkt mit windbg

Anzahl der Antworten 2 Antworten
Hallo ich habe einige Schwierigkeiten zu verstehen, wie arbeitet man mit windbg. Bisher habe ich nur verwendet, IDA pro free und ollydbg für das Lesen von Montage-produziert von cl.exe der visual studio compiler, der das, was ich

was ist die Verwendung von ori-in diesem Teil von MIPS-code?

Anzahl der Antworten 1 Antworten
Kann jemand erklären, die Verwendung von "ori" hier? Ich weiß, es ist Bitweises ODER, aber ich weiß nicht, wie es funktioniert oder warum es hier notwendig. #objective of the program is to add 5 and 7 .data

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

stray '\222 " im Programm

Anzahl der Antworten 2 Antworten
C aber ich bin mit dem folgenden Fehler, wenn ich dies ausführen: stray '\222 " im Programm unsigned long *new_intel_stack(unsigned long *sp, lwpfun func, void *arg) { unsigned long *ebp; push(sp,arg); /* argument */ push(sp,lwp_exit); /* for

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

Aufbau eines assembler

Anzahl der Antworten 4 Antworten
Ich brauchen, um zu bauen ein assembler für eine CPU-Architektur, die ich aufgebaut habe. Die Architektur ist ähnlich wie MIPS, aber das ist nicht von Bedeutung. Begann ich mit C#, obwohl C++ wäre eher angebracht. (C# bedeutet

Die Verwendung von globalen Variablen in C deklariert, im Arm assembly

Anzahl der Antworten 3 Antworten
Ich habe eine C-Datei die Deklaration einer globalen Variablen. Diese Datei wird kompiliert werden, zusammen mit einigen ARM-assembly-Dateien. int foo; void call_asm(void); int main(void) { call_asm(); return foo; } call_asm: ... Ich habe versucht mit der link

MWAIT vs STILLSTAND in Bezug auf die Effizienz

Anzahl der Antworten 3 Antworten
Ich aufgreife, ein Wunder in Bezug auf MONITOR-MWAIT vs HLT Anweisungen. Beide hält der Prozessor, beide wacht auf verschiedenen externen Trigger (interrupts, etc). In meinen versuchen, HLT und MWAIT-Funktion fast die gleiche ist, wenn dabei berücksichtigt :

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

Wenn die Register sind so unglaublich schnell, warum wir nicht mehr von Ihnen?

Anzahl der Antworten 4 Antworten
In 32bit, hatten wir 8 "general purpose" - Register. Mit 64-bit, die Menge verdoppelt, aber es scheint unabhängig von der 64bit ändern sich. Nun, wenn die Register sind so schnell (kein memory access), warum gibt es nicht

Einfache Inkrement in assembler

Anzahl der Antworten 2 Antworten
Bin ich fest mit dieser. Ich bin selbst studiert assenbler und übersetzen einige grundlegende Anweisungen. Aber ich kann nicht mit dieser. Kann mir jemand helfen, bitte? int secuencia ( int n, EXPRESION * * o ) {

Pufferüberlauf - Programm beendet mit signal SIGSEGV

Anzahl der Antworten 1 Antworten
Ich Lerne Pufferüberlauf ausnutzen. Ich schrieb eine verwundbare Programm wie diesem: #include <stdio.h> #include <string.h> main(int argc, char *argv) { char buffer[80]; strcpy(buffer, argv[1]); return 1; } Sehr einfaches Programm. Die Idee ist, die Rücksprungadresse zu überschreiben,

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]

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

Ändern Sie die Hintergrundfarbe der dosbox-Konsole beim ausführen einer tasm-Programm

Anzahl der Antworten 4 Antworten
Ich versuche, display x in die Mitte des Bildschirms, und ändern Sie dann die Hintergrundfarbe der Konsole zu blau. Ich habe den folgenden code, führt alles außer zum ändern der Hintergrundfarbe: TITLE screen1.ASM .MODEL SMALL .STACK 0100h

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.

Wie kann ich die Quellcode-Zeilen-inline-mit der Montage-Ausgang mit GCC?

Anzahl der Antworten 3 Antworten
Ich würde gerne den C-source-Zeilen-inline-mit der Montage-Ausgang zu sehen, welcher code generiert wird. Ich habe versucht GCC-Optionen wie -S -Wa,-ahlms (und auch -Wa,--gstabs weil ich es irgendwo gelesen). Oh! BTW, ich bin auf einem Mac, so dass

"global main" in Assembler

Anzahl der Antworten 1 Antworten
Stieß ich auf dieses code-snippet: section .text global main ;must be declared for linker (gcc) und dann gibt es eine Funktion namens main nach dieser Zeile: main: ;tell linker entry point aber ich scheine nicht zu verstehen,

Warum würden wir addiu statt addi?

Anzahl der Antworten 1 Antworten
In MIPS assembly, was ist der Vorteil der Verwendung von addiu über addi? Nicht addiu unsigned (und ruinieren unsere Berechnungen?) InformationsquelleAutor qaispak | 2016-03-29

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,

Montage: Wie store-string im inneren .asciiz?

Anzahl der Antworten 1 Antworten
In der Montage, gibt es eine Möglichkeit, das speichern einer Eingabe des Benutzers als string in eine .asciiz statt .Wort? Ich weiß, sw-und lw-aber wie es zu tun mit .asciiz? Dank UPDATE: Musste ich entfernen, mein code-snippet,

Newbie asm: wo ist der code aufrufen?

Anzahl der Antworten 1 Antworten
Schrieb ich dieses einfache kernel-Modul: #include <linux/module.h> //for printk() int init( void ) { printk( "n Kello, everybody! nn" ); return 0; } void exit( void ) { printk( "n Goodbye now... nn" ); } MODULE_LICENSE("GPL"); module_init(init);

Assembly-Sprache, Die Neue Linie

Anzahl der Antworten 2 Antworten
Ich bin ganz neu in Assembler-Programmierung, und ich möchte, dass meine Ausgabe auf separaten Zeilen, so dass es leichter zu Lesen, aber ich schrieb meinen code und es hatte funktioniert, wurde dann aber informiert, dass ich konnte