logo
Розробка програми для видалення файлів з диска А з параметрами

ВВЕДЕННЯ

Мова асемблера зявилася разом з появою процесорів і є тісно повязаний з їх архітектурою, дозволяючи напряму звертатися до апаратних ресурсів компютера. Часто у програмістів виникає питання: а навіщо взагалі потрібно вивчати мову асемблера, коли є розвинуті засоби програмування на мовах високого рівня, такі, наприклад, як Visual C++ .NET фірми Microsoft або Borland Delphi 2005? Тим більше що крім цих засобів є ще цілий спектр спеціалізованих програмних продуктів для розробки офісних додатків, баз даних електронних таблиць і т.д. Подібні програми називаються засобами швидкої розробки і дозволяють в лічені тижні створювати найскладніші додатки. Проте, значення мови асемблера важко переоцінити. Все без виключення засобу розробки програм в тому або іншому ступені використовують асемблер. Наприклад, більшість бібліотечних функцій мови C++ і Pascal, на основі яких побудовані такі могутні інструменти розробки, як Visual C++ і Delphi, є написаний на асемблері. Мультимедійні додатки, програми обробки сигналів і інші багато кого використовують високопродуктивні бібліотеки функцій, розроблені за допомогою асемблерних команд технології SIMD.

Нарешті, якщо вимагається, щоб додаток працював максимально швидко і займав менше памяті (а це потрібно для вбудованих і мобільних систем в різних галузях промисловості), то застосування асемблера є навряд чи не єдиним способом досягнення мети. З цієї причини більшість додатків, що працюють в режимі реального часу, є або написаний цілком на асемблері, або використовує в критичних ділянках коду асемблерний код. Навіть по цих декількох прикладах видно, що мова асемблера має свої сфери застосування, свої ніші, які ніколи і нічим не буде зайнятий. Крім того, як вже наголошувалося, при розробці додатків на мовах високого рівня критичні секції, що вимагають високої швидкості виконання, пишуться на асемблері. Саме тому в Visual C++ .NET і Delphi 2005 є можливість створювати програмний код на вбудованому асемблері. Необхідно помітити що фірма Microsoft постійно удосконалює вбудований асемблер. Навряд чи комусь прийде в голову розробляти великі і багатофункціональні додатки на мові асемблера, але прискорити продуктивність роботи таких додатків з допомогою асемблера можна. В порівнянні з мовами високого рівня асемблер володіє однією фундаментальною перевагою, що виникає з його природи -- він дозволяє писати самий швидкий і компактний код.

Вивчення мови асемблера дає програмісту одну дуже важливу перевагу -- він глибше починає розуміти принципи роботи додатків, написаних на будь-яких мовах, у тому числі і на мовах високого рівня. Асемблер дуже допомагає при розробці програм на мовах високого рівня, оскільки знання низькорівневого програмування дозволяє вибирати оптимальні рішення. Що ж до інструментальних засобів для розробки додатків на «чистому» асемблері то останнім часом зявилися дуже могутні додатки такого роду, що вимушує по-іншому поглянути на проблему. З таких інструментальних засобів проектування можна виділити в першу чергу макроасемблер 32, а також AsmStudio і NASM, TASM. Ці і інші інструменти розробки програм мають найсучасніший графічний інтерфейс. Не слід забувати і про те, для асемблера розроблені численні бібліотеки функцій, що наближає цю мову по своїх функціональних можливостях до високорівневих засобів розробки додатків. Даний курсовий проект демонструє переваги асемблера при роботі резидентної програми русифікатори клавіатури і дисплея.