logo search
билеты по информатике

24) Язык ассемблера

Система обозначений для представления в удобочитаемом виде программ, записанных в машинном коде, — это уже язык программирования (язык ассемблера, или автокод). Языки для машинно-ориентированной записи программ называют языками низкого уровня.

Инструкция языка ассемблера описывает ровно одну машинную команду. И наоборот: каждой команде в системе команд процессора соответствует инструкция языка (мнемоника). По сравнению с машинным кодом язык ассемблера имеет ряд преимуществ, облегчающих труд программиста.

Ассемблер, программа, преобразующая текст на языке ассемблера в машинные команды, — это простейший транслятор.

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

Языки высокого уровня

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

Сегодня абсолютное большинство программ создается именно на основе языков высокого уровня. Эти языки имеют следующие достоинства.

Применение языков программирования высокого уровня для создания программ началось в 60-е годы XX века. С тех пор по настоящее время создано и используется множество языков программирования, как универсальных, так и ориентированных на определенные группы задач.

Классификация языков программирования

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

Процедурные языки

К процедурным (или структурным) языкам относится большинство «классических» языков программирования, таких как FORTRAN, BASIC, Паскаль, Си. Эти языки удобны при создании относительно коротких программ. В процедурных языках программа и данные рассматриваются как отдельные, вообще говоря, не связанные друг с другом элементы. Работа программы состоит в последовательном выполнении операторов. Связь различных частей программы (процедур) между собой осуществляется только через данные. Данные можно передавать из одной процедуры в другую и обрабатывать совместно.

Логические языки

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

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

Работа программы состоит в выполнении формальных логических преобразований и получении всех возможных выводов. Эту операцию можно рассматривать как «упрощение» исходного сложного логического выражения.

Объектно-ориентированные языки

Объектно-ориентированные языки программирования (Visual BASIC, C++, Object Pascal, Java) — это новая ступень развития процедурных языков программирования. Они ориентированы на создание очень больших и сложных программ. Многие из этих языков созданы путем расширения синтаксических правил процедурного языка-предка.

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

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

25) Объе́ктно-ориенти́рованное, или объектное, программи́рование (в дальнейшем ООП) — парадигма программирования(совокупность идей и понятий), в которой основными концепциями являются понятия объектов и классов. В случае языков с прототипированием вместо классов используются объекты-прототипы.