26th
AUG

Использование ассемблера в Delphi

Posted by Alar under Профлитература

Автор Гуйдо Гайбелса. Перевод Анатолия Подгорецкого

Зачем вам нужно использовать встроенный ассемблер? Во многих случаях использование встроенного Ассемблера (BASM) даст вам значительный выигрыш по скорости, особенно при работе со строковыми функциями, сравнении, работе с нестандартными устройствами ввода-вывода и во многом другом.

Нужно ли это вам?


Многие программисты сегодня ассоциируют ассемблер как сложный, низкоуровневый язык программирования. Они считают его быстрым, но большинство их них думает, что его сложно или невозможно изучить. В действительности, положение не настолько сложно. Вполне возможно научиться писать хороший код, не будучи гением. С другой стороны, не думайте, что несколько уроков позволят вам производить более быстрый код, чем получится с помощью Паскаля.
Причина в том, что когда вы пишите на Паскале, то вы на самом деле пользуетесь услугами высокоэффективного программиста – компилятором Дельфи.
В целом код производимый им очень эффективный и быстрый.
После некоторых уроков по специальным методам кодирования вы сможете сделать более эффективный код, чем Паскаль и Дельфи.

Большинство программистов считают, что собственный ассемблерный код по определению быстрее, чем скомпилированный компилятором Паскаля.
Конечно, так не всегда.
Плохо написанные процедуры на Ассемблере могут оказаться по качеству хуже и могут вызвать странные ошибки и проблемы в ваших приложениях.
Задачей данных статей не является обучить вас основам Ассемблера.
Есть много другой информации в других источниках и конечно вы должны быть в хороших отношениях с системой команд процессоров Intel (в статьях фокус сделан на серию Пентиум, особенно PII и PIII) на уровне обычного программирования.

В тот момент, когда вы придете к выводу, что ассемблер это нужный вам путь, вы не должны хвататься за него, как за соломинку.
Проверьте внимательно свою программу на предмет определения слабых мест.
Профилировщик может немного в этом помочь, но лучше обратите особое внимание на структуру и алгоритм.
Часто, вы сможете получить лучшие результаты, за счет оптимизации алгоритмов, скорее, чем с помощью ассемблера.
С другой стороны, в некоторых особых случаях, таких как манипуляции с битами, ассемблер даст лучший и более простой результат.

Если вы решите, что ассемблер действительно нужен, то потратьте немного времени на планирование вашего кода и алгоритмов.
Только после того, как вы будете четко представлять, что вы хотите сделать и как, вы можете приступать к реализации вашей идеи.
Если вы не будете об этом думать, то получите кашу из кода, закрученные операторы и трудно управляемую программу.


Все книги…


Скачать (250 кб)

Leave a Reply