![]() |
|||
| HSG |
|
Cygwin scheint für Linux-Assembler-Entwicklung unter Windows ungeeignet!
Die C-Quelltext-Datei hello.c
#include <stdio.h>
int main(void) {
printf("Hello, world!\n");
return 0;
}
lässt sich zu der ausführbaren Datei helloc kompilieren. Eine Ausgabe war erst nach Eingabe von
set CYGWIN=tty
zu sehen.

Die Assemblerdatei hello.s
.section .data
msg: .ascii "Hallo Welt!\n"
.section .text
.globl _start
_start:
mov $4, %eax
mov $1, %ebx
mov $msg, %ecx
mov $12, %edx
int $0x80
mov $1, %eax
mov $0, %ebx
int $0x80
lässt sich scheinbar problemlos zu der ausführbaren Datei helloa übersetzen. Leider tut helloa nicht, was es soll.

Anscheinend lässt sich int0x80 nicht wie in Linux nutzen. In seinem Artikel geht José Brito ausführlich auf die Problematik ein.