Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Ассемблер? Это просто! Учимся программировать


Новое направление Портала RusFAQ.ru:
MosHoster.ru - Профессиональный хостинг

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Assembler (Ассемблер)

Выпуск № 999
от 18.03.2008, 23:35

Администратор:Калашников О.А.
В рассылке:Подписчиков: 357, Экспертов: 20
В номере:Вопросов: 2, Ответов: 3

Нам важно Ваше мнение об этой рассылке.
Оценить этот выпуск рассылки >>


Вопрос № 127192: Здравствуйте уважаемые эксперты!!я приобрел книгу О.Калашникова "Ассемблер это просто!!" и у меня появились проблемы с компиляцией .asm файлов!!Набираю программу в блокноте либо в edit.com, сохраняю в файл с ASM расширением и копилирую путе...
Вопрос № 127204: Здравствуйте Уважаемые эксперты и специалисты ! Прошу Вас помочь мне разобраться в программирование на ассемблере. Прочел по этому предмету массу статей, но на практике у меня ничего не получается. Мое оборудование: ОС - ...

Вопрос № 127.192
Здравствуйте уважаемые эксперты!!я приобрел книгу О.Калашникова "Ассемблер это просто!!" и у меня появились проблемы с компиляцией .asm файлов!!Набираю программу в блокноте либо в edit.com, сохраняю в файл с ASM расширением и копилирую путем запуска с командной строки C:MASM611BINML.EXE PROG001.asm /AT . Как я понимаю, в каталоге BIN (где и находится компилятор) должны появиться 2 файла с расширениями .com и .obj, но не появляется ничего!!Разъясните пожалуйста !! заранее благодарен
Отправлен: 13.03.2008, 18:52
Вопрос задал: -andrey1984- (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 8)

Отвечает: Zetasm
Здравствуйте, -andrey1984-!

Многие уроки по Ассемблеру (например, "Рассылка Калашникова") основаны на DOS-примерах в формате com.

Чтобы компилировать такие исходники, понадобятся:

Segmented Executable Linker (допустим v5.60.339)
ссылка

и ml.exe (обязательно младше 7-й версии).

Использовать линкер можно примерно с такой командной строкой:

LINK /TINY имя.obj,имя.com;

; - обрывает строку

ключ /TINY - определяет мини-модели, то есть обычный формат com-файла для DOS.
Для облегчения компиляции com-программ можно сделать следующее:
Переименовать Segmented Executable Linker LINK.EXE в LINKDOS.EXE
Поместить его в папку MASM32BIN
Создать в той же папке файл BCOM.BAT с таким содержанием:

@echo off
if exist "%1.obj" del "%1.obj"
if exist "%1.exe" ; del "%1.exe"
masm32inml /c /AT "%1.asm"
if errorlevel 1 goto errasm
masm32inLINKDOS /TINY "%1.obj","%1.com";
if errorlevel 1 goto errlink
dir "%1.*"
goto TheEnd
:errlink
echo _
echo Link error
goto TheEnd
:errasm
echo _
echo Assembly Error
goto TheEnd
:TheEnd
pause

Линк по теме: http://bitfry.narod.ru/17.htm

Исправлена длинная ссылка.
-----
∙ Отредактировал: Николай Владимирович / Н.В. (Профессионал)
∙ Дата редактирования: 13.03.2008, 23:40
Ответ отправил: Zetasm (статус: 1-ый класс)
Ответ отправлен: 13.03.2008, 23:25


Вопрос № 127.204
Здравствуйте Уважаемые эксперты и специалисты !
Прошу Вас помочь мне разобраться в программирование на ассемблере.
Прочел по этому предмету массу статей, но на практике у меня ничего не
получается.

Мое оборудование:
ОС - Windows 98
Second Edition
Ver. 4.10. 2222 A
Макро Ассемблер ( версия 5.0 – 5.10)

Все делаю согласно описанием в учебниках, а именно, создал на диске
С:\ папку и сохранил ее под именем Asm.
Скопировал в папку Asm. транслятор masm.exe , редактор связей link.exe.
Написал программу в редакторе NotePad, сохранил ее под именем PRIMER11.ASM. и скопировал ее в папку Asm.
Запустил транслятор masm.exe
На экране появилась строка Source filename [.ASM]:, в командной строке набрал
имя программы PRIMER11.ASM и нажал клавишу enter.
Далее в описаниях все просто – отвечаем нажатием на клавишу enter на следующие
три вопроса и если программа написана без ошибок, то в папке Asm должен
появится ярлык объектного файла (или модуль) PRIMER11.OBJ.
Отвечаю нажаеием клавиши enter на вопросы. В конце появляется надпись “Unable
to open input file: PRIMER11.ASM “ и программа заканчивает свою работу.
Далее пробую делалть компановку, так для проверки.
Открываю компоновщик link.exe и в строке Object Modules[.OBJ]: вписываю имя
программы PRIMER11.ASM и жму enter.
После ответов на все вопросы нажатием клавишы enter получаю ответ: LINK: fatal
error L1093: PRIMER11.OBJ: object not found.
Закрываю программу, в папке Asm появляется ярлычок Primer11.map
Открываю ярлычок и смотрю в Properties:
General: Primer11
Type: MAP file
Location: C:\Asm
Size: 0 bytes
MS-DOS name: Primer11.MAP
Смотрю в Properties редактора NotePad где написана программа :
General: PRIMER11.ASM.
Type: Text Document
Location: C:\Asm
Size: 1.08 KB
MS-DOS name:PRIMER^1.TXT
Уважаемые эксперты и специалисты, где я допускаю ошибку или делаю
что-то не так. Помогите, пожалуйста, разобраться.
Текст программы PRIMER11.ASM прилагаю.

C уважением Руслан

R.S.
Стас (специалист), если это попадет к Вам, большая просьба объясните мне
пожалуйста, что означает аббревиатура CMD.
Как я понимаю CMD – command-line compiler ( в переводе что означает компилятор командной строки или драйвер оперативной строки выбора ).
С уважением, за ранее благодарю.

Приложение:

Отправлен: 13.03.2008, 20:46
Вопрос задал: Антонов Руслан Дмитриевич (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: Овчинников Алексей
Здравствуйте, Антонов Руслан Дмитриевич!
Скорее всего вы создали не PRIMER11.ASM, а файл с названием PRIMER11.ASM.TXT
---------
Пишу на FASM
Ответ отправил: Овчинников Алексей (статус: 4-ый класс)
Ответ отправлен: 13.03.2008, 21:43
Оценка за ответ: 3
Комментарий оценки:
Скорее всего автор ответа, Алексей, не совсем внимательно прочитал вопрос. В вопросе все описанно, где и как я создавал и сохранял файл, все согласно рекомендациям автора статьи из учебника. Да и в < свойствах > я показал. какие получились расширения созданого мной файла. Я сам прекрасно понимаю, что что-то не так как надо, поэтому и обратился к экспертам за помощью, чтоб мне подсказали в чем мои ошибки. Конечно, я очень блогадарен Алексею за то, что он хотел мне помочь, но, к сожалению, его помощь ни сколько не внесла ясности в мой вопрос. С уважением. Руслан

Отвечает: Zetasm
Здравствуйте, Антонов Руслан Дмитриевич!

Ваш код написан в кодировке win1251 и в консоли будет отображен некорректно.
Воспользуйтесь редактором который понимает кодировку dos cp866.
Например встроенный в FAR или bred v3.

Проверьте правильность имени файла.

В приложении исправленная версия программы (только com).
Также советую ознакомиться материалами на сайте http://bitfry.narod.ru/

Приложение:

Ответ отправил: Zetasm (статус: 1-ый класс)
Ответ отправлен: 14.03.2008, 00:00
Оценка за ответ: 4


Вы имеете возможность оценить этот выпуск рассылки.
Нам очень важно Ваше мнение!
Оценить этот выпуск рассылки >>

Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2008, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Техподдержка портала, тел.: +7 (926) 535-23-31
Хостинг: "Московский хостер"
Поддержка: "Московский дизайнер"
Авторские права | Реклама на портале
Версия системы: 4.72.5 от 17.03.2008
Яндекс Rambler's Top100
RusFAQ.ru | MosHoster.ru | MosDesigner.ru | RusIRC.ru
Kalashnikoff.ru | RadioLeader.ru | RusFUCK.ru

В избранное