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

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


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

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

Выпуск № 879
от 18.10.2007, 01:35

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


Вопрос № 105153: Уважаемые эксперты пожалйстя помогите.Я уже скачивал множество masm-ов (masm32v9r,MASM,masm611.part3, masm611.part4),masm32v9r-вроде там все файлы есть всё запускается но com файл не содаётся, masm 11-там всего несколько файлов: bin,dsk1,disk...
Вопрос № 105226: Здравствуйте уважаемые специалисты У меня к вам маленький вопросик. Как можно с помощю cmp/add сравнить/загрузить не весь ah а токо его половину то есть первые 4 бита ? Заранее благодарю!:) ...

Вопрос № 105.153
Уважаемые эксперты пожалйстя помогите.Я уже скачивал множество masm-ов (masm32v9r,MASM,masm611.part3,
masm611.part4),masm32v9r-вроде там все файлы есть всё запускается но com файл не содаётся,
masm 11-там всего несколько файлов: bin,dsk1,disk2,disk3 и т.д -и там ни чего не получается.В первой программе
по практике в книге Калашникова создаётся файл obj а файл com нет.У меня 3 вопроса:

1)Где можно скачать программу masm нужную для точной работы по созданию программ(Если можите
то дайте точную ссылку на адрес по скачиванию проги,если можно то чтобы сразу начиналось скачивоть)?

2)Пожалуйста распишите всё по порядку по написанию простейшей программы (только если можно всё как для новичка).

3)И должен-ли создаваться com файл,и как он должен открываться.

Простите за назойливость,за ранее огромно благодарен!!!

Отправлен: 12.10.2007, 10:48
Вопрос задал: Яблоков Максим Олегович (статус: 1-ый класс)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: Зенченко Константин Николаевич
Здравствуйте, Яблоков Максим Олегович!

Masm32v9(6.1488) или Masm32v8(6.1484)-это 32-х битние версии т.е. обработчики связей(линковщики-link.exe) предназначены для создания 32-х битных приложений (программ-ЕХЕ-файл)только под Windows. Для создания 16-ти битных приложений(программ СОМ-файл или ЕХЕ-файл) нужны другие, 16-ти битные компиляторы, к примеру этот(MASM 5.10), Вам нужен с этого пакета только линковщик-link.exe, распакуйте архив и скопируйте линковщик назвав его link16.exe (хотя я бы оставил весь пакет, на нем писал т.Абель-его учебник в архиве).
У меня на диске в разных папках уживаются Masm: 5.10, 6.11(path to 6.13), 6.1484, 6.1488, Tasm:2, 5, 32, Fasm 1.67.14, Nasm(редко пользуюсь), несколько паскалей и кю-басик. С помощью БАТ-файлов решаю какой код как кодировать(te[16-bit], tc[16-bit], tw[32-bit] для tasm; mc[16-bit], me[16-bit ], mwc[onsol-32-bit], mww[indows-32-bit])

1)для создания 16-ти или 32-х битных приложений (программ) нужно использовать соответсвующие пакеты.(32-ти битный ML.exe создаст OBJ-файл, но 32-х битный линковщик будет ругатся, а для создания 16-го приложения нужен 16-ти битный линковщик и Вы можете спокойно получить программу, с помощью link16.exe).

2)жизнь программы:
-а:Программу нужно написать (используя любой редактор:windows-болкнот, PSpad либо Notepad++) и сохранить на диске;
-в:программу нужно оттранслировать т.е. запустить:ML MyProg.asm [опции] -для каждой программы:ОПЦИИ - свои (если есть ошибки, исправить их и см пункт а).
-с:полученный OBJ-файл нужно отлинковать т.е. запустить:LINK myProg.obj[опции] -для каждой программы:ОПЦИИ - свои(если есть ошибки, исправить их и см пункт а).
-d:теперь самое важное: програ мму нужно проверить правильно ли она работает - т.е. протестировать (если есть ошибки, исправить их и см пункт а).
-е:если ошибок нет, программу можно выпускать в мир.
как пример создания любых программ для различных компилятoров книга С.Зубкова

3)Исполняемые файлы, которые запускаются в проводнике это:-BAT;-COM;-EXE других нет.

ps:компиляторы Masm или Tasm работают в командной строке.
Удачи!
---------
И только наступив на грабли мы приобретаем драгоценный опыт!
Ответ отправил: Зенченко Константин Николаевич (статус: Специалист)
Ответ отправлен: 16.10.2007, 22:15


Вопрос № 105.226
Здравствуйте уважаемые специалисты У меня к вам маленький вопросик.
Как можно с помощю cmp/add сравнить/загрузить не весь ah а токо его половину то есть первые 4 бита ? Заранее благодарю!:)
Отправлен: 12.10.2007, 18:51
Вопрос задал: GVA (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: An42
Здравствуйте, GVA!

add ah, 0fh ;В ah останется только первый 4 бита
cmp ah, <операнд> ; дальше сравниваем

Удачи
Ответ отправил: An42 (статус: 5-ый класс)
Ответ отправлен: 13.10.2007, 08:07


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

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

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

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

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


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


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

В избранное