Hi!
erstmal hallo! ich bin seit kurzem im forum angemeldet.
ich studiere an der FH Frankfurt Informatik und hab mir zu studienbeginn einen mac besorgt.
derzeit schreiben wir einiges in assembler, aber ich hab das problem, daß meine in assembler geschriebenen programme im terminal nicht ausgeführt werden. linken und assemblieren geht wunderbar, nachdem einige besonderheiten erücksichtigt wurden (z.B. .globl statt .global oder das man das symbol _start nicht nutzen kann. zumindest hat der as gemosert.)
wie kann ich meine in assembler geschriebenen programme im terminal aufrufen, um deren funktion zu prüfen? muß ich da bestimmte parameter setzen? oder sind da bestimmte datei endungen zu beachten?
als beispiel sei folgendes programm:
start:
.globl start
movl $3,%eax #systemaufruf read = eingabe
movl $0,%ebx #stdin
movl $ZK,%ecx #adresse Zeichenkette ZK
movl $80,%edx #80 zeichen können maximal gespeichert werden.
int $0x80 #interrupt
movl %eax,L_ZK #länge der eingabe als rückgabewert(?)
movl $4,%eax #systemaufruf write = ausgabe
movl $1,%ebx #stdout
movl $ZK,%ecx #Adresse der Zeichenkette ZK
movl L_ZK,%edx #länge der Zeichenkette
int $0x80 #interrupt
movl $1,%eax #programmende
movl $0,%ebx #
int $0x80 #
.data
ZK: .space 80
L_ZK: .long 0
es soll eine eingabe und eine ausgabe stattfinden.
danke im voraus für weiterführende hinweise.
die referenz zu assembler hab ich als pdf-file aber die half mir nicht weiter.
greez
Naph
erstmal hallo! ich bin seit kurzem im forum angemeldet.
ich studiere an der FH Frankfurt Informatik und hab mir zu studienbeginn einen mac besorgt.
derzeit schreiben wir einiges in assembler, aber ich hab das problem, daß meine in assembler geschriebenen programme im terminal nicht ausgeführt werden. linken und assemblieren geht wunderbar, nachdem einige besonderheiten erücksichtigt wurden (z.B. .globl statt .global oder das man das symbol _start nicht nutzen kann. zumindest hat der as gemosert.)
wie kann ich meine in assembler geschriebenen programme im terminal aufrufen, um deren funktion zu prüfen? muß ich da bestimmte parameter setzen? oder sind da bestimmte datei endungen zu beachten?
als beispiel sei folgendes programm:
start:
.globl start
movl $3,%eax #systemaufruf read = eingabe
movl $0,%ebx #stdin
movl $ZK,%ecx #adresse Zeichenkette ZK
movl $80,%edx #80 zeichen können maximal gespeichert werden.
int $0x80 #interrupt
movl %eax,L_ZK #länge der eingabe als rückgabewert(?)
movl $4,%eax #systemaufruf write = ausgabe
movl $1,%ebx #stdout
movl $ZK,%ecx #Adresse der Zeichenkette ZK
movl L_ZK,%edx #länge der Zeichenkette
int $0x80 #interrupt
movl $1,%eax #programmende
movl $0,%ebx #
int $0x80 #
.data
ZK: .space 80
L_ZK: .long 0
es soll eine eingabe und eine ausgabe stattfinden.
danke im voraus für weiterführende hinweise.
die referenz zu assembler hab ich als pdf-file aber die half mir nicht weiter.
greez
Naph