Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Создание программы на ассемблере
Разработка программ на ассемблере с использованием пакета TASM
Назначение и структура выходных файлов, формируемых транслятором
Ввод и отладка программы 3_1
Рассмотрим общие методологические принципы разработки программного обеспечения. Если вы — начинающий программист, то у вас наверняка очень большой интерес к практической работе и, возможно, разработку программы вы производите на чисто интуитивном уровне. До определенного момента здесь нет ничего страшного; это даже естественно. Но совсем не задумываться над тем, как правильно организовать разработку программы (не обязательно на ассемблере), нельзя, так как хаотичность и ставка только на интуицию в конечном итоге станут стилем программирования. А это может привести к тому, что рано или поздно за вами закрепится слава программиста, у которого программы работают «почти всегда» со всеми вытекающими отсюда последствиями для вашей карьеры. Поэтому, как мне кажется, нужно помнить одно золотое правило: надежность программы достигается, в первую очередь, благодаря ее правильному проектированию, а не бесконечному тестированию. Это правило означает, что если программа правильно разработана в отношении как структур данных, так и структур управления, то это в определенной степени гарантирует правильность ее функционирования. При применении такого стиля программирования ошибки являются легко локализуемыми и устранимыми.
О том, как правильно организовать разработку программ (независимо от языка), написана не одна сотня книг. Большинство авторов предлагают следующий процесс разработки программы (мы адаптируем его, где это необходимо, к особенностям ассемблера):
1. Этап постановки и формулировки задачи:
ü изучение предметной области и сбор материала в проблемно-ориентированном контексте;
ü определение назначения программы, выработка требований к ней и представление требований, если возможно, в формализованном виде;
ü формулирование требований к представлению исходных данных и вы-
ü определение структур входных и выходных данных;
ü формирование ограничений и допущений на исходные и выходные данные.
2. Этап проектирования:
ü формирование «ассемблерной» модели задачи;
ü выбор метода реализации задачи;
ü разработка алгоритма реализации задачи;
ü разработка структуры программы в соответствии с выбранной моделью памяти.
3. Этап кодирования:
ü уточнение структуры входных и выходных данных и определение ассемблерного формата их представления;
ü программирование задачи;
ü комментирование текста программы и составление предварительного описания программы.
4. Этап отладки и тестирования:
ü составление тестов для проверки правильности работы программы;
ü обнаружение, локализация и устранение ошибок в программе, выявленных в тестах;
ü корректировка кода программы и ее описания.
5. Этап эксплуатации и сопровождения:
ü настройка программы на конкретные условия использования;
ü обучение пользователей работе с программой;
ü организация сбора сведений о сбоях в работе программы, ошибках в выходных данных, пожеланиях по улучшению интерфейса и удобства работы с программой;
ü модификация программы с целью устранения выявленных ошибок и, при необходимости, изменения ее функциональных возможностей.
К порядку применения и полноте выполнения перечисленных этапов нужно подходить разумно. Многое определяется особенностями конкретной задачи, ее назначением, объемом кода и обрабатываемых данных, другими характеристиками задачи. Некоторые из этих этапов могут либо выполняться одновременно с другими этапами, либо вовсе отсутствовать. Главное, чтобы вы, приступая к созданию нового программного продукта, помнили о необходимости его концептуальной целостности и недопустимости анархии в процессе разработки.
На уроке 3 мы обсуждали пример программы на ассемблере. Если посмотреть на описанный выше процесс разработки программы, то можно увидеть, что обсуждение на уроке 3 велось нами в полном согласии с этим процессом. Мы подробно обсудили проблему, структуры данных, структуру программного модуля и т. д. Наше обсуждение закончилось на этапе кодирования программы. Далее, по логике, нужно было ввести программу в компьютер, перевести в машинное представление и выполнить. Как это сделать? Дальнейшее обсуждение будет посвящено именно этому вопросу.
Традиционно у существующих реализации ассемблера нет интегрированной среды, подобной интегрированным средам Turbo Pascal, Turbo С или Visual C++. Поэтому для выполнения всех функций по вводу кода программы, ее трансляции, редактированию и отладке необходимо использовать отдельные служебные программы. Большая часть их входит в состав специализированных пакетов ассемблера.
Рассмотрим общую схему процесса разработки программы на ассемблере на примере программы 3_1 (см. листинг 3.1). На схеме выделено четыре шага этого процесса. На первом шаге, когда вводится код программы, можно использовать любой текстовый редактор. Основным требованием к нему является то, чтобы он не вставлял посторонних символов (спецсимволов редактирования). Файл должен иметь расширение.asm.
Дата публикования: 2015-06-12; Прочитано: 234 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!