Вставка команд ассемблера

Вставляемые команды оформляются в виде:

Asm

<строки с командами ассемблера>

End;

Можно составлять на ассемблере (символьный язык машинных команд компьютера) целые функции и процедуры.

Примерфункции Add на ассемблере сложения двух чисел:

Procedure TForm1.Button1Click(Sender: TObject); //проверка функции Add

Function add(X,Y:Integer):Longint;//функция сложения двух чисел

Asm //начало вставляемых команд ассемблера

Mov EAX,X //значение X записывается в регистр EAX

Add EAX,Y //содержимое регистра EAX увеличивается на Y

End; //окончание вставляемых команд ассемблера и всей функции Add

Begin Label1.Caption:=IntToStr(add(1,2)); End; //проверка функции Add(1,2)

Использование ассемблера повышает эффективность работы программ, расширяет их возможности, но усложняет процесс программирования.

Вопросы для самопроверки и контроля

Вопросы для самопроверки

1. Можно ли досрочно выйти из любого цикла?

2. Может ли счетчик счетного цикла изменяться на число, отличное от единицы?

Контрольные вопросы

1. Допускается ли вложенность составных операторов?

2. Разрешается ли передавать управление извне вовнутрь цикла или другой подпрограммы?

3. Можно ли включать команды ассемблера в исходный текст программы?

4. Почему рекомендуется минимизировать число операторов GoTo в программе?

 

1.5. Объектно‑ориентированное программирование

Определение

История объектно-ориентированного программирования (ООП) бе­рет свое начало в конце 60‑х годов. Компьютерный центр в Норвегии соз­дал первый объектно‑ориентированный язык программирования (ООЯП), названный Simula, предназначенный для моделирования ситуаций в реаль­ном мире. Разработчики перенесли понятие объекта из реального мира в мир программирования. Основная особенность языка Simula состояла в том, что программа была организована по объектам программирования. Объекты содержат процедуры (называемые методами), данные (поля, свойства), которые определяют поведение объекта и события, на которые объект реагирует.

Объектно‑ориентированное программирование обладает следую­щи­ми тремя свойствами.

Инкапсуляцияозначает объединение в объекте его свойств, собы­тий, используемых данных и методов их обработки. При копировании (уда­ле­нии) объект копируется (удаляется) как одно целое.

Наследованиеи подклассы. Класс в Delphi - это тип данных (как Integer или Record), а объект ‑ конкретный, существующий в памяти компьютера экземпляр класса (переменная типа Class). Все объекты соз­даются на основе классов и наследуют все его свойства и методы. Под­клас­сы‑потомки могут создаваться на основе других родительских классов, и они наследуют все свойства и методы родительского класса. Изменения в родительском классе автоматически отслеживаются в его по­том­ках.

Полиморфизм. Одноименные методы в разных объектах могут выполнять различные действия, что позволяет заменять одноименные ме­то­ды из родительского класса на другие в подклассе‑потомке, если роди­тельский метод не подходит для потомка.

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

1.В системе возникает событие (нажатие клавиши, изменение зна­чения поля,...).

2.Определяется связанный с этим событием объект (поле таблицы, кнопка, форма и т.д.).

3.Вызывается соответствующий событию метод объекта, который содержит действия по обработке возникшего события.

При традиционном программировании программы состоят из многих строк кодов, которые выполнялись в линейном режиме. Конечно, в них имелись конструкции ветвления и организации циклов, однако порядок выполнения действий определялся кодом программы.

При объектно‑ориентированном программировании разработка приложений начинается с моделирования реальных объектов, необхо­ди­мых для выполнения конкретного задания: таблиц баз данных, экран­ных форм, полей ввода и др. После создания объектов предоставляется возможность скопировать созданные объекты из одного приложения в другое и тем самым сократить объем работы. Например, если вы создали кнопку, которая предназначена для поиска фамилии покупателя в указанной таблице, вы можете использовать ту же кнопку в другом приложении для выполнения функции поиска. Для этого вам потребуется лишь изменить наименования поля и таблицы, в которых будет осуществляться поиск.

Классы, объекты и свойства можно создавать и манипулировать командными базовыми средствами Delphi (эти средства рас­сматриваются в этом разделе) и визуальными средствами среды разработ­ки Delphi, которые максимально упрощают и ускоряют создание и ма­нипулирование классами, объектами и свойствами, а также сразу наб­лю­дать результаты своих действий при настройке свойств объектов.

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

Delphi допускает традиционное и объектно‑ориентированное программирование. Пользователь выбирает наиболее подходящий для разрабатываемого конкретного приложения.

В данном разделе дается краткое описание командных средств Delphi по созданию и использованию классов и объектов.

Одной из важных заслуг интегрированной среды быстрой разработки Delphi является то, что пользователь, не зная детально и не используя эти командные средства (за него это сделает среда Delphi), может визуально создавать и использовать классы и объекты, используя готовый набор базовых классов в виде компонент (п.2), что на порядок упрощает и уско­ряет разработку приложения, оставляя все достоинства объектно‑ориенти­ро­ванного программирования. Однако, если пользователь хочет понимать и уверенно ориентироваться в кодах модулей, которые генерирует среда Delphi, после визуальной работы пользователя либо не визуально, вручную создает и использует объекты, следует прочесть данный раздел.








Дата добавления: 2016-03-22; просмотров: 730;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.005 сек.