Referat.me

Название: Системы программирования

Вид работы: реферат

Рубрика: Информатика и программирование

Размер файла: 15.87 Kb

Скачать файл: referat.me-140887.docx

Краткое описание работы: Ассемблер предоставляет программисту полную свободу действий при разработке программы, что одновременно является и его достоинством, и недостатком.

Системы программирования

.

Turbo Assembler

В жизни каждого программиста наступает момент, когда он решает заняться изучением ассемблера. И это, без сомнения, правильное решение! Настоящий профессионал должен уметь создавать программы, используя ресурсы компьютера с максимальной эффективностью, а всё это невозможно без применения ассемблера. “ Максимальная скорость выполнения при минимальных размерах программы ” - девиз, под которым работают почти все программисты, пишущие на ассемблере.

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

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

Turbo Assembler, помимо полной поддержки транслятора фирмы Microsoft имеет дополнительные возможности, объединённые в режиме, названном разработчиками Ideal. Использование этого режима даёт возможность начинающему программисту применять более наглядный и простой стиль разработки программ. Более опытные программисты, пишущие на ассемблере, могут использовать такие возможности режима Ideal, как вложенные структуры, объединения.

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

· возможность использования одинаковых имён для обозначения членов различных структур.

· применение операторов HIGH и LOW.

· предварительное вычисление выражений EQU.

· корректное управление сегментами данных объединённых в группы.

· усовершенствованное использования директив.

· разумное использование скобок в выражениях.

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

Традиционным способом, с помощью которого объединяются программы, написанные на С++ и ассемблере, является разделительная компиляция с последующей компоновкой в один исполняемый файл. При этом можно использовать компилятор Borland C++, который вызывает Turbo Assembler для трансляции ассемблерной программы.

Ассемблер предоставляет программисту полную свободу действий при разработке программы, что одновременно является и его достоинством, и недостатком, так как требует от разработчика знания системы команд данного компьютера и его операционной системы. Кроме того, несмотря на минимальный размер выполняемого файла при максимальной скорости работы, время, необходимое для создания программы, резко возрастает с увеличением объёма разрабатываемого проекта. Поэтому ассемблер был и остаётся языком программирования для профессионалов.

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

Похожие работы

  • Языки программирования

    Описание современных языков программирования (Паскаль, Ассемблер, С++, Бейсик, Лого, Форт, Пролог, Рефал и Лекс). Понятие, назначение и составные элементы систем программирования (машинно-ориентированных и машинно-независимых систем программирования).

  • Разработка программы при помощи языка низкого уровня ассемблер

    Ввод и вывод чисел при помощи подключаемого модуля IO. Особенности работы с одномерными и двухмерными массивами. Тестирование состояние флагов. Рринципы и навыки работы с компилятором и отладчиком. Разработка схемы алгоритма программы на языке ассемблер.

  • Создать меню без файла описания ресурсов с помощью функций CreateMenu и CreatePopupMenu

    Министерство образования Российской Федерации Институт переподготовки кадров Уральского государственного технического университета Кафедра микропроцессорной техники

  • Программа перевода десятичного числа в двоичную и шестнадцатеричную системы счисления

    Содержание Введение Общие сведения о языке ассемблер Программная часть Описание программы Этапы разработки ассемблерных программ ___ Программа перевода десятичного числа в двоичную и шестнадцатеричную системы счисления

  • Создание программы с использованием программного продукта Turbo Assembler

    Формирование опыта создания программ с использованием программного продукта Turbo Assembler. Использование меньшего количества команд и обращений в память, увеличение скорости и уменьшение размера программы. Степень сложности совместной разработки.

  • Создание приложения, обеспечивающего генерацию звука с помощью системного таймера

    Общие сведения о языке ассемблера. Назначение команды прерывания INT число. Описание логической структуры программы: алгоритм работы, используемые методы, входные и выходные данные. Структура и тестирование программы. Руководство оператора программы.

  • Технология преобразования документов XSLT

    Изучение использования расширяемого языка стилей для преобразований документов. Анализ взаимодействия XML и XSLT в архитектуре клиент-сервера. Обзор набора шаблонных правил, каждое из которых определяет процедуру обработки определенной части документа.

  • Программируемый периферийный интерфейс. Генерация звука с запретом и без запрета прерываний

    Генерация звука и обработка прерываний. Создание системы с использованием средств языка программирования Ассемблер. Установка и чтение таймера. Программирование микросхемы таймера 8253/8254. Максимальный программируемый интервал времени для системы.

  • Введение в программирование

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

  • Ассемблер и программирование

    Особенности упорядочения байтовых переменных. Сущность процесса преобразования байтового массива в неупакованном BCD формате. Листинг программы, загружающей в регистр DL номер самого младшего бита, содержащего 1. Порядок определения размера файла из DTA.