Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курс лекций ИТЮД.doc
Скачиваний:
3106
Добавлен:
11.04.2015
Размер:
16.67 Mб
Скачать

1.2. Алгоритмизация решения задачи

Оценив исходные условия и выбрав метод решения конкретной задачи, переходят к её алгоритмизации, т.е. составлению под­робного алгоритма действий (плана) выполнения задачи.

Алгорит­м - последовательность элементарных операций над исходными данными с целью получения конечного результата на основе выбранного метода решения задачи.

К любым алгоритмам предъявляется ряд требований: опреде­ленность, массовость, результативность.

Определенность алго­ритма предполагает однозначность толкования конечного числа всех этапов требуемых операций.

Массовость алгоритма обеспечи­вает его применимость к любым допустимым значениям исходных данных.

Результативность алгоритма дает воз­можность получить за конечное число шагов вычисление искомого результата.

1.3. Программирование решения задачи

Машинная реализация составленного алгоритма решения зада­чи выполняется в процессе программирования. На этом этапе ал­горитм записывается в виде программы решения задачи на ЭВМ. Для того чтобы описание алгоритмов стало понятным машине, ис­пользуются различные языки программирования. С их помощью из отдельных элементов (операторов) записывается текст программы.

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

На сегодняшний день разработано довольно-таки большое ко­личество языков программирования (несколько тысяч). Каждый из них предназначен для использования при решении определен­ного класса задач (вычислительных, логических, моделирования, реализации баз и банков данных и т.д.). Среди наиболее известных языков программирования: PASCAL, BASIC, C (C++, C#), JAVA, PHP и многие другие.

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

Транс­ляция (с англ. - перевод) осуществляется автоматически при вводе программы задачи в ЭВМ. В процессе трансляции программа расчленяется на соответствующие машинные операции, которые мо­жет выполнять данная ЭВМ.

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

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

Данный процесс получил название компиляции, а соответствующие программные средства - компиляторы.

На современном этапе рассматриваемые программные средства интегрировались в единые системы разработки программного обеспечения. Такие системы сочетают возможности разработки программ на одном из языков программирования с трансляцией и компиляцией в загружаемые программные модули. Последними достижениями являются так называемые CASE-средства. Их использование уже не требует знания конкретного языка программирования. Разработка программ сводится к визуальному конструированию основных компонентов системы: пользовательского интерфейса, элементов данных, функций обработки данных в программе и т.д. При этом программный код (загружаемый программный модуль) формируется автоматически.