
03.07.2008, 14:56
|
|
Познавший АНТИЧАТ
Регистрация: 16.04.2006
Сообщений: 1,488
С нами:
10562786
Репутация:
537
|
|
что значит "взять асм для линуха и винды сразу"?
я вот взял пример из той вики:
PHP код:
.data /* поместить следующее в сегмент данных */
hello_str: /* наша строка */
.string "Hello, world!\n"
/* длина строки */
.set hello_str_length, . - hello_str - 1
.text /* поместить следующее в сегмент кода */
.globl main /* main -- глобальный символ, видимый
за пределами текущего файла */
.type main, @function /* main -- функция (а не данные) */
main:
movl $4, %eax /* поместить номер системного вызова write = 4
в регистр %eax */
movl $1, %ebx /* первый параметр -- в регистр %ebx;
номер файлового дескриптора stdout -- 1 */
movl $hello_str, %ecx /* второй параметр -- в регистр %ecx;
указатель на строку */
movl $hello_str_length, %edx /* третий параметр -- в регистр %edx;
длина строки */
int $0x80 /* вызвать прерывание 0x80 */
movl $1, %eax /* номер системного вызова exit -- 1 */
movl $0, %ebx /* передать 0 как значение параметра */
int $0x80 /* вызвать exit(0) */
.size main, .-main /*
скомпилил с помощью gcc и получил рабочую прогу в линуксе.
а чем надо компилить и как писать, чтобы получился экзешник и для винды и для линукса? (чувствую ща жуткую херню спорол =\)
|
|
|