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

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


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

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

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

Выпуск № 209
от 08.08.2005, 21:03

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


Вопрос № 24517: Скажите, пожалуйста, как можно сделать программку очень быстрой максимально быстрой, на сколько можно!. Что для этого нужно знать. И каким образом собирать программку нужно? ...

Вопрос № 24.517
Скажите, пожалуйста, как можно сделать программку очень быстрой максимально быстрой, на сколько можно!. Что для этого нужно знать. И каким образом собирать программку нужно?
Отправлен: 03.08.2005, 20:56
Вопрос задал: IngineringG (статус: Посетитель)
Всего ответов отправлено: 3

Отвечает: Евгений Иванов
Здравствуйте, IngineringG!
для этого нужно оптимизировать по времени.

не обращать внимание на размер кода, а создавать алгоритм так, чтобы была как можно быстрее обработка данных.

немного нужно знать о времени выполнения команд процессора.
---------
Что имеем - не храним, потерявши - плачем
Ответ отправил: Евгений Иванов (статус: Профессор)
Отправлен: 03.08.2005, 21:13
Оценка за ответ: 5

Отвечает: Sager
Здравствуйте, IngineringG!
Для дос или для виндовс? Если для DOS то попытаться поменьше использовать прерывания(или вообще не использовать), зайти на intel.com и скачать и прочитать их доки(тока они на английском; чтобы писать максимально быстрые проги, нужно знать архитектуру проца), или почитай статьи агнер фога:
http://www.wasm.ru/publist.php?list=10
Также зайди еще в раздел вирусология, там есть советы по оптимизации и почитай на этом же сайте статьи Broken Sword про защищенный режим.
Еще зайди на сайт sasm.narod.ru, там может че подчерпнешь, прочти книгу Зубкова "Ассемблер для дос виндовс и юникс"
Собирать прогу нужно как обычно, на скорость никакие ключи не влияют, они лишь могут уменьшитьувеличить размер файла.
А вообще максимально быстрые и компактные проги у вирьмейкеров, всмысле вирусы, поэтому советую посмотреть исходники вирей и почитать их журналы, вот сайт, там почитай про вири под дос и виндовс(есть и на русском):
http://vx.netlux.org./vx.php?id=zidx
Ответ отправил: Sager (статус: 3-ий класс)
Отправлен: 03.08.2005, 21:29

Отвечает: Gluck3D
Здравствуйте, IngineringG!
Чтобы программа была ОЧЕНЬ быстрой надо:
1) Оптимальный алгоритм
2) Применение «быстрых» команд. Так команда копирования одного регистра в другой выполняется за два такта (8086) около 420 нс! А команда деления двух 16 битных чисел за 206 тиков тактового генератора, т.е около 0.000044 с! В различной документации по ассемблеру и процессорам есть таблицы времени выполнения команд. Там же обычно указывают размер команд в байтах, что тоже не маловажно (маленькая программа с «правильным» алгоритмом выполняется быстрее, чем неповоротливый гигант). Если тебе нужная такая таблица пиши на @.
Ответ отправил: Gluck3D (статус: 1-ый класс)
Отправлен: 04.08.2005, 12:12
Оценка за ответ: 5


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

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

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

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

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


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


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

Яндекс


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

В избранное