Hallihallo,
ich versuche hier gerade ein Programm zu schreiben, dass den Wert eines Registers ausgeben soll. Zumindest war das der ursprüngliche Gedanke. Auch wenn ich versuche, einen Wert in einer Variablen oder ähnlichem abzuspeichern, funktioniert das leider noch nicht ganz.
Hier mal mein Programm, wo ich versuche, Platz auf dem Stack zu machen, dort einen Wert zu schreiben (C++: int a = 1
und diesen dann ausgeben:
Leider funktioniert mein Code nicht so ganz wie ich das möchte. Kann mir jemand vielleicht sagen, woran es liegt?
ich versuche hier gerade ein Programm zu schreiben, dass den Wert eines Registers ausgeben soll. Zumindest war das der ursprüngliche Gedanke. Auch wenn ich versuche, einen Wert in einer Variablen oder ähnlichem abzuspeichern, funktioniert das leider noch nicht ganz.
Hier mal mein Programm, wo ich versuche, Platz auf dem Stack zu machen, dort einen Wert zu schreiben (C++: int a = 1

Code:
.section .data
.section .text
.globl _start
_start:
# save the old base pointer
push %ebp
mov %esp, %ebp
# Make space on the stack
# should be at least one byte
sub $0x10, %esp
# Write to Stack
movl $1, -0x4(%ebp)
# Write something to stdout
movl $4, %edx
movl -0x4(%ebp), %ecx
movl $1, %ebx
movl $4, %eax
int $0x80
# end exit
movl $0, %ebx
movl $1, %eax
int $0x80
Leider funktioniert mein Code nicht so ganz wie ich das möchte. Kann mir jemand vielleicht sagen, woran es liegt?