Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: NASM. И с чем его едят  (Прочитано 7307 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Const@ntine

  • Автор темы
  • Новичок
  • *
  • Сообщений: 28
    • Просмотр профиля
NASM. И с чем его едят
« : 07 Апреля 2008, 22:31:48 »
Есть несколько файлов на асме написанные под MS-DOS.
Вопрос: Какие изменения нужно произвести чтобы корректно собрать их под Linux?

Или направьте на источник где это описывается.

Заранее благодарен!

Оффлайн 12d3

  • Активист
  • *
  • Сообщений: 674
  • Ubuntu 10.04
    • Просмотр профиля
Re: NASM. И с чем его едят
« Ответ #1 : 08 Апреля 2008, 01:04:02 »
nasm blah.asm -o blah.o
ld blah.o -o blah
./blah

Оффлайн Yurror

  • Старожил
  • *
  • Сообщений: 1966
    • Просмотр профиля
Re: NASM. И с чем его едят
« Ответ #2 : 08 Апреля 2008, 05:07:42 »
Ну ну... а там на всю пользуется DOS/BIOS вызовы  :) и после такого его надо запускать в dosbox

Оффлайн Const@ntine

  • Автор темы
  • Новичок
  • *
  • Сообщений: 28
    • Просмотр профиля
Re: NASM. И с чем его едят
« Ответ #3 : 08 Апреля 2008, 22:14:21 »
nasm blah.asm -o blah.o
ld blah.o -o blah
./blah
Цитировать
$ nasm 6.asm -o 6.o
6.asm:7: error: comma expected after operand 1
6.asm:11: error: symbol `data' redefined
6.asm:11: error: parser: instruction expected
6.asm:13: error: comma expected after operand 1
6.asm:14: error: symbol `stk' redefined
6.asm:14: error: parser: instruction expected
6.asm:18: error: parser: instruction expected
6.asm:19: error: parser: instruction expected
6.asm:26: error: comma or end of line expected
6.asm:29: error: comma or end of line expected
6.asm:30: error: comma or end of line expected
6.asm:30: error: invalid operand type
6.asm:32: error: comma or end of line expected
6.asm:32: error: comma or end of line expected
6.asm:34: error: comma or end of line expected
6.asm:34: error: comma or end of line expected
6.asm:36: error: expression syntax error
6.asm:45: error: comma or end of line expected
6.asm:48: error: comma or end of line expected
6.asm:56: error: comma or end of line expected
6.asm:68: error: comma or end of line expected
6.asm:69: error: comma or end of line expected
6.asm:79: error: comma or end of line expected
6.asm:95: error: comma or end of line expected
6.asm:102: error: comma or end of line expected
6.asm:108: error: comma or end of line expected
6.asm:115: error: symbol `main' redefined
6.asm:115: error: parser: instruction expected
6.asm:116: error: symbol `code' redefined
6.asm:116: error: parser: instruction expected
6.asm:117: error: parser: instruction expected
Если без -o 6.o - такая же борода

Оффлайн Yurror

  • Старожил
  • *
  • Сообщений: 1966
    • Просмотр профиля
Re: NASM. И с чем его едят
« Ответ #4 : 09 Апреля 2008, 08:32:42 »
От чего-то у меня такое подозрение что вам рановато заниматься ассемблером.
Почитайте http://www.linuxcenter.ru/lib/articles/programming/asm_linux.phtml для начала. Почитайте про архитектуру i386 (я имею в виду не рекламные буклетики а техническую документацию). Особое внимание уделить различным режимам работы микропроцессора (реальный, защищенный, виртуальный, в дебри аппаратной виртуализации пока не лезем).
И вот когда прочтете все это думаю у вас хватит духу выкинуть нафиг эту, честное слово, дурацкую идею скомпилить досовскую программулину под unix.

Оффлайн Const@ntine

  • Автор темы
  • Новичок
  • *
  • Сообщений: 28
    • Просмотр профиля
Re: NASM. И с чем его едят
« Ответ #5 : 09 Апреля 2008, 16:17:27 »
От чего-то у меня такое подозрение что вам рановато заниматься ассемблером.
Почитайте http://www.linuxcenter.ru/lib/articles/programming/asm_linux.phtml для начала. Почитайте про архитектуру i386 (я имею в виду не рекламные буклетики а техническую документацию). Особое внимание уделить различным режимам работы микропроцессора (реальный, защищенный, виртуальный, в дебри аппаратной виртуализации пока не лезем).
И вот когда прочтете все это думаю у вас хватит духу выкинуть нафиг эту, честное слово, дурацкую идею скомпилить досовскую программулину под unix.
Спасибо за инфу. Мне нужно было описание языка под Linux, нашел в нете статейку.
Кстати, чтобы узнать системные вызовы в терминале нужно набрать (например) man 2 exit. Ну малоли, мож пригодится))
Все равно спасибо за помощь!

Оффлайн Yurror

  • Старожил
  • *
  • Сообщений: 1966
    • Просмотр профиля
Re: NASM. И с чем его едят
« Ответ #6 : 10 Апреля 2008, 05:36:35 »
...
Кстати, чтобы узнать системные вызовы в терминале нужно набрать (например) man 2 exit. Ну малоли, мож пригодится))
...
О сколько еще открытий чудных тебе мир unix'а готовит! :)

Оффлайн Const@ntine

  • Автор темы
  • Новичок
  • *
  • Сообщений: 28
    • Просмотр профиля
Re: NASM. И с чем его едят
« Ответ #7 : 16 Апреля 2008, 23:10:53 »
...
Кстати, чтобы узнать системные вызовы в терминале нужно набрать (например) man 2 exit. Ну малоли, мож пригодится))
...
О сколько еще открытий чудных тебе мир unix'а готовит! :)
Думаю, что очень и очень много  :)

Оффлайн tempx77

  • Участник
  • *
  • Сообщений: 212
    • Просмотр профиля
Re: NASM. И с чем его едят
« Ответ #8 : 17 Апреля 2008, 11:50:51 »
может лучше освоить fasm?

Оффлайн Const@ntine

  • Автор темы
  • Новичок
  • *
  • Сообщений: 28
    • Просмотр профиля
Re: NASM. И с чем его едят
« Ответ #9 : 17 Апреля 2008, 23:12:10 »
может лучше освоить fasm?
Может, но позже. Я уже с NASM разобрался)

Оффлайн S.Tokarev

  • Активист
  • *
  • Сообщений: 415
    • Просмотр профиля
Re: NASM. И с чем его едят
« Ответ #10 : 18 Апреля 2008, 18:56:26 »
Вместо всего этого гемороя проще писать на Си.

Оффлайн Const@ntine

  • Автор темы
  • Новичок
  • *
  • Сообщений: 28
    • Просмотр профиля
Re: NASM. И с чем его едят
« Ответ #11 : 19 Апреля 2008, 21:49:15 »
Вместо всего этого гемороя проще писать на Си.

Хорошо, тогда скажите мне пожалуйста где взять аналоги функций:
gotoxy();
clrscr();
textattr();
textbackground();
textcolor();

В общем аналог conio.h? ???

Thread

  • Гость
Re: NASM. И с чем его едят
« Ответ #12 : 19 Апреля 2008, 22:08:48 »
Const@ntine: библиотека ncurses

Оффлайн Alex2000

  • Активист
  • *
  • Сообщений: 317
    • Просмотр профиля
Re: NASM. И с чем его едят
« Ответ #13 : 19 Апреля 2008, 22:09:29 »
Вместо всего этого гемороя проще писать на Си.

Хорошо, тогда скажите мне пожалуйста где взять аналоги функций:
gotoxy();
clrscr();
textattr();
textbackground();
textcolor();

В общем аналог conio.h? ???
http://www.gnu.org/software/ncurses/ncurses.html
http://sourceforge.net/projects/linux-conioh
http://sourceforge.net/projects/libconio

Оффлайн Const@ntine

  • Автор темы
  • Новичок
  • *
  • Сообщений: 28
    • Просмотр профиля
Re: NASM. И с чем его едят
« Ответ #14 : 20 Апреля 2008, 00:08:24 »
Вместо всего этого гемороя проще писать на Си.

Хорошо, тогда скажите мне пожалуйста где взять аналоги функций:
gotoxy();
clrscr();
textattr();
textbackground();
textcolor();

В общем аналог conio.h? ???
http://www.gnu.org/software/ncurses/ncurses.html
http://sourceforge.net/projects/linux-conioh
http://sourceforge.net/projects/libconio
Спасибо. Про гугл забываю :(

 

Страница сгенерирована за 0.059 секунд. Запросов: 25.