Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.12.2011, 19:34   #1
TotKtoNado
юзер
Форумчанин
 
Аватар для TotKtoNado
 
Регистрация: 22.12.2010
Сообщений: 245
По умолчанию запуск nasm

как запустить nasm?
TotKtoNado вне форума Ответить с цитированием
Старый 08.12.2011, 19:43   #2
Goodwin98
equ asm
Участник клуба
 
Аватар для Goodwin98
 
Регистрация: 02.05.2009
Сообщений: 1,605
По умолчанию

как ни странно
Код:
$ nasm
Какой вопрос - такой ответ. Не забываем пользоваться поиском, гуглом.
Помощь в выполнении работ по ассемблеру ICQ:2725322O4
Goodwin98 вне форума Ответить с цитированием
Старый 08.12.2011, 19:47   #3
TotKtoNado
юзер
Форумчанин
 
Аватар для TotKtoNado
 
Регистрация: 22.12.2010
Сообщений: 245
По умолчанию

Цитата:
Сообщение от Goodwin98 Посмотреть сообщение
как ни странно
Код:
$ nasm
я имею ввиду запуск nasm через бинарник в интернете нашел
Глава 2: Запуск NASM

Перевод: AsmOS group, © 2001
2.1 Синтаксис командной строки NASM

Для ассемблирования файла вы должны ввести следующую команду:

nasm -f <format> <filename> [-o <output>]

Например,

nasm -f elf myfile.asm

будет ассемблировать myfile.asm в ELF-объектный файл myfile.o. А строка

nasm -f bin myfile.asm -o myfile.com

будет ассемблировать myfile.asm в обычный бинарный файл myfile.com.
Для получения файла-листинга, содержащего слева от оригинального исходного текста шестнадцатиричные коды, генерируемые NASM, используйте ключ -l, обозначающий имя файла-листинга, например:

nasm -f coff myfile.asm -l myfile.lst

Для получения справки по командной строке NASM, укажите следующий ключ:

nasm -h

При этом вы получите также список доступных форматов выходных файлов и что они означают. Если вы используете Linux, но не уверены, какая ваша система — a.out или ELF, введите

file nasm

в каталоге, где находятся бинарные файлы NASM. В ответ вы получите что-то вроде

nasm: ELF 32-bit LSB executable i386 (386 and up) Version 1


а сам запуск не нашел
TotKtoNado вне форума Ответить с цитированием
Старый 08.12.2011, 19:51   #4
Goodwin98
equ asm
Участник клуба
 
Аватар для Goodwin98
 
Регистрация: 02.05.2009
Сообщений: 1,605
По умолчанию

Цитата:
я имею ввиду запуск nasm через бинарник в интернете нашел
Цитата:
а сам запуск не нашел
определитесь уже.
Какой вопрос - такой ответ. Не забываем пользоваться поиском, гуглом.
Помощь в выполнении работ по ассемблеру ICQ:2725322O4
Goodwin98 вне форума Ответить с цитированием
Старый 08.12.2011, 20:33   #5
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

помоему ТС ищет GUI, ан нету там его, это именно компилятор, редактора к нему нет(в комплекте).
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 09.12.2011, 05:02   #6
Mikl___
Участник клуба
 
Регистрация: 11.01.2010
Сообщений: 1,139
По умолчанию

Пепел Феникса
Так же как нет редакторов для TASM, MASM и т.д. Я работал с NASM через Far menager создаешь файл с расширением ASM, редактируешь его, затем через bat-файл запускал
Код:
%nasm_path%\bin\nasmw -f bin %filename%.asm -o %filename%.exe ^
-I%nasm_path%\include\
NASM нормально работает даже без линкера и редактора рессурсов. Ниже пример, который выводит MessageBox
Код:
; nasmw hello.asm -o hello.exe
%define BASE		400000h
%include "exebin.inc"

ORG BASE
EXE_BEGIN
start:	mov edi,string
	invoke MessageBox,eax,edi,edi,eax
	retn
string db 'fly',0
LAST_BEGIN
__IMPORT_ 	'user32',\
	        MessageBox,'MessageBoxA'
LAST_END
Mikl___ вне форума Ответить с цитированием
Старый 09.12.2011, 17:38   #7
TotKtoNado
юзер
Форумчанин
 
Аватар для TotKtoNado
 
Регистрация: 22.12.2010
Сообщений: 245
По умолчанию

Цитата:
Сообщение от Mikl___ Посмотреть сообщение
Пепел Феникса
Так же как нет редакторов для TASM, MASM и т.д. Я работал с NASM через Far menager создаешь файл с расширением ASM, редактируешь его, затем через bat-файл запускал
Код:
%nasm_path%\bin\nasmw -f bin %filename%.asm -o %filename%.exe ^
-I%nasm_path%\include\
NASM нормально работает даже без линкера и редактора рессурсов. Ниже пример, который выводит MessageBox
Код:
; nasmw hello.asm -o hello.exe
%define BASE		400000h
%include "exebin.inc"

ORG BASE
EXE_BEGIN
start:	mov edi,string
	invoke MessageBox,eax,edi,edi,eax
	retn
string db 'fly',0
LAST_BEGIN
__IMPORT_ 	'user32',\
	        MessageBox,'MessageBoxA'
LAST_END
сделал все как вы написали и он мне не с компилил и что это за ^
-I%nasm_path%\include\? Его так и надо писать %nasm_path% и ^?
TotKtoNado вне форума Ответить с цитированием
Старый 09.12.2011, 18:55   #8
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
Так же как нет редакторов для TASM, MASM и т.д.
с масмом идет qedit, с fasm тоже есть простенький.

PS: и я это знаю отлично.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 12.12.2011, 05:06   #9
Mikl___
Участник клуба
 
Регистрация: 11.01.2010
Сообщений: 1,139
По умолчанию

Цитата:
Сообщение от TotKtoNado
сделал все как вы написали и он мне не с компилил и что это за ^
-I%nasm_path%\include\? Его так и надо писать %nasm_path% и ^
1) NASM наверное и ошибки выдал?
2) знак ^ экранирует в bat-файле конец строки, так можно выводить длинные строки, чтобы их было удобно просматривать на экране
3) %nasm_path% - переменная, которая содержит путь к папке, где содержится NASMW.EXE задается отдельной строкой типа set nasm_path=c:\nasm или как там у тебя на компьютере, я же не знаю
4) папка include у меня содержит дополнительные подключаемые файлы, в частности exebin.inc
Mikl___ вне форума Ответить с цитированием
Старый 12.12.2011, 15:14   #10
TotKtoNado
юзер
Форумчанин
 
Аватар для TotKtoNado
 
Регистрация: 22.12.2010
Сообщений: 245
По умолчанию

Цитата:
Сообщение от Mikl___ Посмотреть сообщение
1) NASM наверное и ошибки выдал?
2) знак ^ экранирует в bat-файле конец строки, так можно выводить длинные строки, чтобы их было удобно просматривать на экране
3) %nasm_path% - переменная, которая содержит путь к папке, где содержится NASMW.EXE задается отдельной строкой типа set nasm_path=c:\nasm или как там у тебя на компьютере, я же не знаю
4) папка include у меня содержит дополнительные подключаемые файлы, в частности exebin.inc
Цитата:
%nasm_path%\bin\nasmw -f bin %filename%.asm -o %filename%.exe ^
-I%nasm_path%\include\
а бетник надо открывать блокнотом и вот это надо туда его вставлять?
И у меня нету nasmw у меня просто nasm, и он находиться не в в папке bin а в самой папке NASM
TotKtoNado вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
nasm TotKtoNado Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 6 06.11.2011 20:07
Ассемблер(NASM). Как оформить цикл "while" в NASM-е? Зелёный Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 5 10.06.2011 16:04
самоучитель по nasm 777user777 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 05.06.2011 23:39
Портирование кода на NASM Celestia Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 3 28.01.2011 12:20