Искать реферат        
Рефераты на 5 с плюсом
С нашим сайтом написать реферат проще простого

Программы

Категория: Компьютерные науки     версия для печати   

Страница: [1] [2] [3] [4] [5]

Введение.

После создания процессора 8086 фирма Intel разработала более совершенные процессоры объединены под названием I 80x86, такое название значит, что все команды микропроцессора, выполняемых на младших моделях обязательно выполняются на старшее, значит все ПО, которые разработаны для процессора 8086 успешно будут работать и на последних моделях 80486 и Pentium. Мы будем рассматривать процессоры с точки зрения программиста. Несмотря на разнообразие моделей процессоров, наиболее важным с точки зрения биологии программирования является 8086 как базовая модель и 80386, как первый процессор фирмы Intel, который в полном объеме реализовал принцип многозадачности.

Программирование на языке ассемблера

Программирование на языке ассемблера считается сложной задачей, причины этого следующие:

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

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

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

Этапы создания программы.

Разработка программы на языке ассемблера включает несколько этапов.

Подготовка исходного текста программы;

Ассемблирования программы (объектной программы);

Компоновка программы (получение исполняемого файла);

Отладка программы (нахожуния ошибок).

Эти этапы циклически повторяются.

Подготовка листинга программы.

Текст программы на языке ассемблера записывается в один или несколько файлов, имена файлов и их расширения могут быть любые, принято для файлов содержащих программы на языке ассемблера принято использовать расширение *. asm. Для файлов определенных констант и полных типов расширение *. inc. Эти файлы являются текстовыми их можно набрать в любом текстовом редакторе. Можно также использовать интегрированные среды разработки программ, при программировании удобно выделять один каталог для сохранения всех файлов программы и оттуда запускать все необходимые программы для подготовки, ассемблирования и компоновки программы. При использовании стандартных редакторов текста, редактируемые тексты нужно хранить в виде обычных файлов в формате ASCII, это означает, что файлы нужно хранить без дополнительных символов, эти символы часто вставляют в текст различные специализированные редакторы, например WORD.

Ассемблирования программы.

Подготовленный текст языка ассемблер является исходным для специальных программ, называемых ассемблера, далее программа ассемблера. Задача программы ассемблера превратить текст программы в форму двоичных команд, последние могут уже быть выполнены микропроцессором. После ассемблирования получают так называемые файлы объектных модулей, которые имеют соответствующие расширение *. obj. Для получения объектных файлов необходимого выполнить соответствующую программу ассемблера masm фирмы Microsoft, или tasm фирмы Borland. В обоих случаях после команды указывается имя файла: masm prog1.asm, tasm prog1.asm.

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

Компоновка программы.

Текст программы может находиться в нескольких файлах, переменные описанные в этих файлах могут использоваться совместно, если такие файлы асемблюються отдельно, то невозможно достать полную информацию, для того, чтобы генерировать исполнительный код. Поэтому процесс подготовки программы обязательно включает в себя этап компоновки. На этом этапе определяют все неизвестные, при отдельном асемблювани, адреса всех переменных или функций, которые используются совместно. Процесс объединения объектных модулей в один файл выполняется спец. программой, которая называется компоновщиком. Это может быть программа link фирмы Microsoft, или tlink фирмы Borland, получаемый исполняемый файл имеет расширение *. exe или *. com. Компановщику надо передать имена соответствующих объектных файлов.

Link prog1.obj prog2.obj

Tlink prog1.obj prog2.obj

После сборки получается исполняемый файл, он получает имя файла, который стоит первый в соответствующей команде.

Отладка программы.

За исключением начальных простых программ практически все программы на языке ассемблера нуждаются в отладке. Для отладки можно использовать различные отладчики, например tg386-Turbo Debuger фирмы Borland. Современные отладчики позволяют в процессе отладки контролировать значения регистров общего назначения, а также значения переменных и изменять их в процессе отладки, можно просматривать содержимое различных участков памяти, можно контролировать выполнение пошагово, или расставлять точки остановки.

Использование интегрированных сред (ИС).

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

Основные сведения и правила для написания программ на ассемблере.

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

ой файл, он получает имя файла, который стоит первый в соответствующей команде.

Отладка программы.

За исключением начальных простых программ практически все программы на языке ассемблера нуждаются в отладке. Для отладки можно использовать различные отладчики, например tg386-Turbo Debuger фирмы Borland. Современные отладчики позволяют в процессе отладки контролировать значения регистров общего назначения, а также значения переменных и изменять их в процессе отладки, можно просматривать содержимое различных участков памяти, можно контролировать выполнение пошагово, или расставлять точки остановки.

Использование интегрированных сред (ИС).

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

Основные сведения и правила для написания программ на ассемблере.

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

Страница: [1] [2] [3] [4] [5]

версия для печати

Читайте также:
Kвантовохимични модели адсорбации
Национализм как источник политических конфликтов
Симон Петлюра
Экономическая власть
Информационное обеспечение в процессе управления