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

RusFAQ.ru: программирование на языке Assembler


Информационный Канал Subscribe.Ru

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

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Assembler

Выпуск № 260
от 09.10.2005, 18:45

Администратор:Калашников О.А.
В рассылке:Подписчиков: 267, Экспертов: 30
В номере:Вопросов: 1, Ответов: 4


Вопрос № 27227: Доброе время суток, уважаемые эксперты! Помогите пжальста разобраться с погой. Асмом занялся недавно, понять не могу , почему не работает( см приложение). Прога взята из рассылок Калашникова, просто я решил вставить небольшую процедурку и теперь...

Вопрос № 27.227
Доброе время суток, уважаемые эксперты! Помогите пжальста разобраться с погой. Асмом занялся недавно, понять не могу , почему не работает( см приложение). Прога взята из рассылок Калашникова,
просто я решил вставить небольшую процедурку и теперь она вылетает на середине, в отладчике смотрел, хз, то же самое, где что накосячил...?
С уважением, Macshm

Приложение:

Отправлен: 04.10.2005, 16:56
Вопрос задал: Macshm (статус: Посетитель)
Всего ответов: 4
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Лысков Игорь Витальевич
Здравствуйте, Macshm!
Перенеси строчку buffer equ $ перед cseg ends и будет тебе счастье...
Или подпрограммку перед handle...
Ты ж затираешь файлом свою подпрограммку...

---------
Удачи!
Ответ отправил: Лысков Игорь Витальевич (статус: 4-ый класс)
Отправлен: 04.10.2005, 17:42

Отвечает: Iluha
Здравствуйте, Macshm!
Я, конечно, не эксперт, но идея у меня есть одна.
По-моему ты вставил текст процедуры не в том месте. То есть ты написал код процедуры tt proc после того как определил переменную buffer. А так как ты читаешь из файла по адресу buffer, то у тебя просто-напросто затрется твой код процедуры tt proc!!
Посмотри что у меня получилось ( у меня правда компилятор TASM, поэтому я вставил строчку assume cs:cseg, ds:cseg, ss:cseg

Приложение:

Ответ отправил: Iluha (статус: 1-ый класс)
Отправлен: 04.10.2005, 18:46

Отвечает: FrmAcid
Здравствуйте, Macshm! Если вы решили поэксперементировать с новыми знаниями(Процедурами), то это лудше делать в маленьких программах =), Посмотрите приложение я кое что исправил и поменял местами. Там должно всё быть понятно :)

Приложение:

Ответ отправил: FrmAcid (статус: 1-ый класс)
Отправлен: 05.10.2005, 00:20

Отвечает: Юра Устинов
Здравствуйте, Macshm!
Для ДОС я использую TASM, но разницы вроде не много.
Во-первых:
Когда вы пишете прочитанное из файла в buffer вы затираете процедуру tt
Потому что buffer идёт как метка. Значит, если в файле aa.com вы прочитали не полный код, то результат будет непредсказуем.
{buffer equ $
tt proc
mov ah,10h
int 16h
ret
tt endp }
Если вы писали самомодифицирующийся вирус, значит идёте в правильном направлении, ну а если вы хотели вывести DAAAAA!!!! при правильном считывании
из файла, то измените в вашей программе
{
tt proc
mov ah,10h
int 16h
ret
tt endp
buffer equ $
}
И ещё, int 20h по скорости такое же как и ret, но больше на 1 байт(хотя кому это важно)
---------
Спасём Россию!!!
Ответ отправил: Юра Устинов (статус: 1-ый класс)
Отправлен: 07.10.2005, 09:12


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

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

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

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

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


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


© 2001-2005, RusFAQ.ru, Россия, Москва. Все права защищены.
Идея, дизайн, программирование, авторское право: Калашников О.А.

Rambler's Top100 Яндекс


Subscribe.Ru
Поддержка подписчиков
Другие рассылки этой тематики
Другие рассылки этого автора
Подписан адрес:
Код этой рассылки: comp.soft.prog.faq
Архив рассылки
Отписаться
Вспомнить пароль

В избранное