Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Машинно-ориентированные языки




Машинно-ориентированные языки — это языки, наборы операторов и изобразительные средства которых существенно зависят от особенностей ЭВМ (внутреннего языка, структуры памяти и т.д.). Машинно-ориентированные языки позволяют использовать все возможности и особенности машинно-зависимых языков:

• высокое качество создаваемых программ (компактность и скорость выполнения);

• возможность использования конкретных аппаратных ресурсов;

• предсказуемость объектного кода и заказов памяти;

• для составления эффективных программ необходимо знать систему команд и особенности функционирования данной ЭВМ;

• трудоемкость процесса составления программ (особенно на машинных языках и ЯСК), плохо защищенного от появления ошибок;

• низкая скорость программирования;

• невозможность непосредственного использования программ, составленных на этих языках, на ЭВМ других типов.

По степени автоматического программирования машинно-ориентированные языки подразделяются на классы:

• машинный язык (МЯ) — командный язык. В команде сообщается информация о местонахождении операторов и типе выполняемой операции;

• языки символического кодирования (ЯСК) — командные языки, в которых коды операций и адреса в машинных командах (в двоичных или восьмеричных цифрах) заменены на символы (идентификаторы), форма написания которых помогает программисту легче запоминать смысловое содержание операции;

• автокоды — языки, включающие в себя все возможности ЯСК, посредством расширенного введения макрокоманд, т.е. достаточно часто использующиеся командные последовательности, которые соответствуют определенным процедурам преобразования ин формации. Макрокоманды переводятся в машинные команды двумя путями — расстановкой и генерированием. В постановочной системе содержатся серии команд, реализующих обозначенную макрокомандой функцию. Макрокоманды обеспечивают передачу фактических параметров, которые в процессе трансляции вставляются в эти команды, превращая ее в реальную машинную программу. В системе с генерацией имеются специальные программы, анализирующие макрокоманду и определяющие, какую функцию необходимо выполнить;

• ассемблеры — развитые автокоды, символическое представление машинного языка;

• макрос — язык, являющийся средством для замены последовательности символов, описывающих выполнение требуемых действий, на более сжатую форму. Макрос предназначен для сокращения записи исходной программы. Компонент программного обеспечения, обеспечивающий функционирование макросов, называется макропроцессором. На макропроцессор поступает имя макроса и исходный текст. Реакция макропроцессора на вызов — выдача выходного текста. Макрос одинаково может работать как с программами, так и с данными.

Машинно-независимые языки — это средство описания алгоритмов решения задач и информации, подлежащей обработке. Они получили название высокоуровневых языков программирования. Программы, составляемые на таких языках, представляют собой последовательности операторов, структурированные согласно правилам рассматривания языка (задачи, сегменты, блоки и т.д.). Появились возможность не расписывать в деталях вычислительный процесс на уровне машинных команд, а сосредоточиться на основных особенностях алгоритма. Типы машинно-независимых языков рассмотрены ниже.

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

ü Фортран, Алгол — языки, созданные для решения математических задач;

ü Simula, Сленг — для моделирования;

ü Лисп, Снобол — для работы со списочными структурами.

Универсальные языки были созданы для широкого круга задач: коммерческих, научных, моделирования и т.д. Первый универсальный язык Пл/1 был разработан фирмой IBM. Второй по мощности универсальный язык — Алгол-68. Он позволяет работать с символами, разрядами, числами с фиксированной и плавающей запятой. Пл/1 имеет развитую систему операторов для управления форматами, для работы с полями переменной длины, с данными, организованными в сложные структуры, и для эффективного использования каналов связи. Язык учитывает включенные во многие машины возможности прерывания и имеет соответствующие операторы. Предусмотрена возможность параллельного выполнения участков программ.

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

Непроцедурные языки составляют группу языков, описывающих организацию данных, обрабатываемых по фиксированным алгоритмам (табличные языки и генераторы отчетов), и языков связи с операционными системами.

3.12. Основы объектно-ориентированного программирования

ООП позволяет разложить проблему на составные части. В этом случае вся процедура упрощается, и появляется возможность оперировать с гораздо более объемными программами. Каждая составляющая становится самостоятельным объектом, содержащим свои собственные коды и данные, относящиеся к нему.

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

Объекты с одинаковыми свойствами и поведением объединяются в классы. Программа на объектно-ориентированном языке представляет собой совокупность описаний классов. Классы, в свою очередь, представляют собой описания свойств и поведения составляющих их объектов. Свойства представляются другими, более простыми объектами. Поведение описывается обменивающимися сообщениями объектами.

Все языки ООП основаны на трех основополагающих концепциях:

Инкапсуляция — означает, что объекты скрывают детали своей работы. Инкапсуляция позволяет разработчику объекта изменять внутренние принципы его функционирования, не оказывая никакого влияния на пользователя объекта. В Visual Basic этот принцип реализуется в основном за счет применения описаний Private и Public.

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

Полиморфизм — многие объекты могут иметь одноименные методы, которые могут выполнять разные действия для разных объектов. Например, оператор «+» для числовых величин выполняет сложение, а для текстовых — склеивание.

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

Система программирования — это система для разработки новых программ на конкретном языке программирования. В них входят:

• компилятор или интерпретатор;

• интегрированная среда разработки;

• средства создания и редактирования текстов программ;

• обширные библиотеки стандартных программ и функций;

• отладочные программы, т.е. программы, помогающие находить и устранять ошибки в программе;

• «дружественная» к пользователю диалоговая среда;

• многооконный режим работы;

• мощные графические библиотеки; утилиты для работы с библиотеками;

• встроенный ассемблер;

• встроенная справочная служба;

• другие специфические особенности.

Популярные системы программирования — Turbo Basic, Quick Basic, Turbo Pascal, Turbo C.




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


Дата добавления: 2014-01-04; Просмотров: 4706; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.017 сек.