(курс 68 ч.) Алгоритм и его формальное исполнение | Выполнение алгоритмов компьютером

Планирование уроков на учебный год (по учебнику Н.Д. Угриновича)


Уроки 1 - 2
Техника безопасности при работе за компьютером. Инструктаж по ТБ. Алгоритм и его формальное исполнение


§ 1.1. Алгоритм и его формальное исполнение



Содержание урока

1.1.1. Свойства алгоритма и его исполнители

1.1.2. Выполнение алгоритмов компьютером

1.1.3. Основы объектно-ориентированного визуального программирования

Лабораторная работа № 1

Лабораторная работа № 3. Шаг 1

Лабораторная работа № 3. Шаг 2. Задача 1

Лабораторная работа № 3. Шаг 2. Задача 2

Лабораторная работа № 3. Шаг 2. Задачи 3 и 4

Лабораторная работа № 3. Шаг 3


1.1.2. Выполнение алгоритмов компьютером


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

image Алгоритм, записанный на «понятном» компьютеру языке программирования, называется программой.

image Машинный язык. На заре компьютерной эры, в 40-50-е годы XX века, программы писались на машинном языке и представляли собой очень длинные последовательности нулей и единиц. Составление и отладка таких программ являлись чрезвычайно трудоемким делом. Программы на машинных языках были машинно-зависимыми, т. е. для каждой ЭВМ необходимо было создавать свою собственную программу, так как в ней в явной форме учитывались аппаратные ресурсы ЭВМ.

image Ассемблер. В начале 50-х годов XX века были созданы языки программирования, которые называются ассемблерами. Вместо одних только нулей и единиц программисты теперь могли пользоваться операторами (MOV, ADD, SUB и т. д.), которые были похожи на слова английского языка. Для преобразования текста программы на ассемблере в понятный компьютеру машинный код использовался компилятор. Программы на ассемблере были также машинно-зависимыми, т. е. ассемблеры для различных процессоров существенно различались между собой.

image Языки программирования высокого уровня. С середины 50-х годов XX века начали создаваться первые языки программирования высокого уровня. Эти языки были машинно-независимыми, так как использовали универсальную компьютерную логику и не были привязаны к типу ЭВМ. Однако для каждого языка и каждого типа ЭВМ должны были быть разработаны собственные компиляторы. Одним из первых языков программирования высокого уровня был созданный в 1964 году Бейсик (Basic).

С конца 50-х годов XX века начали создаваться языки программирования, которые позволили программистам перейти к структурному программированию. Отличительной чертой этих языков было использование операторов ветвления, выбора и цикла и отказ от хаотического использования оператора goto. Такие языки позволяют легко кодировать основные алгоритмические структуры. Наибольшее влияние на переход к структурному программированию оказал язык ALGOL (АЛГОЛ), а затем Pascal (назван его создателем Никлаусом Виртом в честь великого физика Блеза Паскаля). Компания Microsoft создала язык QBasic, а в настоящее время язык OpenOfFice.org Basic встроен в мультиплатформенную (операционные системы Windows, Linux, Mac OS) интегрированную офисную систему OpenOffice.org.

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

image Объектно-ориентированные языки. С 70-х годов XX века начали создаваться объектно-ориентированные языки программирования, на которых было удобно программировать в объектно-ориентированном стиле. В основу этих языков были положены программные объекты, которые объединяли данные и методы их обработки. С течением времени для этих языков были созданы интегрированные среды разработки, позволяющие визуально конструировать графический интерфейс приложений:

image язык Object Pascal был разработан компанией Borland на основе языка Pascal. После создания интегрированной среды разработки система программирования получила название Delphi;
image язык Visual Basic был создан корпорацией Microsoft на основе языка QBasic для разработки приложений с графическим интерфейсом в среде операционной системы Windows;
image язык Gambas был создан по аналогии с языком Visual Basic для разработки приложений с графическим интерфейсом в среде операционной системы Linux.

image Java. В 90-е годы XX века в связи с бурным развитием Интернета был создан язык Java, обеспечивающий межплатформенную совместимость. На подключенных к Интернету компьютерах с различными операционными системами (Windows, Linux, Mac OS и др.) могли выполняться одни и те же программы. Исходная программа на языке Java компилируется в промежуточный код, который исполняется на компьютере встроенной в браузер виртуальной машиной.

image Платформа .NET. Выпущена компанией Microsoft в 2002 году. Эта система предоставляет возможность создавать приложения в различных системах объектно-ориентированного программирования, в которых для составления программного кода используются объектно-ориентированные языки программирования (Visual Basic .NET, Delphi .NET и др.).

На рис. 1.1. показана краткая история развития языков программирования.

Краткая история развития языков программирования


image

Рис. 1.1. История развития языков программирования


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

Программы-трансляторы с языков программирования бывают двух типов: интерпретаторы и компиляторы.

image Интерпретатор — это программа, которая обеспечивает последовательный «перевод» команд программы на машинный язык с одновременным их выполнением. Поэтому при каждом запуске программы на выполнение эта процедура повторяется. Достоинством интерпретаторов является удобство отладки программы (поиска в ней ошибок), так как возможно «пошаговое» ее исполнение, а недостатком — сравнительно малая скорость выполнения.

image Компилятор действует иначе, он переводит весь текст программы на машинный язык и сохраняет его в исполняемом файле (обычно с расширением ехе). Затем этот уже готовый к исполнению файл, записанный на машинном языке, можно запускать на выполнение. Достоинством компиляторов является большая скорость выполнения программы, а недостатком большинства из них — трудоемкость отладки, так как невозможно пошаговое выполнение программы.

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

Система процедурного программирования OpenOffice.org Basic позволяет работать только в режиме интерпретатора.

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


1. Подготовьте сообщение о преимуществах машинно-независимых языков программирования перед машинно-зависимыми языками.

2. В чем состоят достоинства и недостатки интерпретаторов и компиляторов?

Cкачать материалы урока
image






Наверх