Понятие алгоритма, состав, типы и виды машинных команд

Так как решение задач на компьютере реализуется с помощью специальным образом оформленных инструкций, управляющих последовательностью действий вычислительной машины в процессе обработки информации для решения конкретной задачи (компьютерных программ)[1], логической основой работы компьютерной техники стало понятие алгоритма.

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

Для справки

Происхождение термина "алгоритм". Слово "алгоритм" происходит от имени великого среднеазиатского ученого Мухаммеда аль-Хорезми, жившего в первой половине IX в. (точные годы его жизни неизвестны, но считается, что он родился около 780 г., а умер около 850 г.). "Аль-Хорезми" означает "из Хорезма" (исторической области в нынешнем Узбекистане, центром которой был город Хива). Около 825 г. аль-Хорезми написал сочинение, в котором впервые дал описание придуманной в Индии позиционной десятичной системы счисления. В первой половине

XII в. книга аль-Хорезми в латинском переводе проникла в Европу. Переводчик, имя которого до нас не дошло, дал ей название "Algoritmi de numero Indorum" ("Индийское искусство счета, сочинение аль-Хорезми"). В средневековых математических сочинениях слово "алгоритм" приобрело значение способа выполнения арифметических действий посредством арабских цифр, т.е. на бумаге, без использования счетной доски, поэтому большинство сочинений по искусству счета, написанных в это время, назывались алгоритмами. Но постепенно значение слова "алгоритм" расширялось, и уже в 1684 г. выдающийся немецкий ученый Готфрид Вильгельм Лейбниц в сочинении "Nova Methodus рт maximis et minimis, itemque tangentibus..." впервые использовал слово "алгоритм" (Algorithmo) в более широком смысле – как систематический способ решения проблем дифференциального исчисления. Это значение укрепилось в европейской математической традиции, и к началу XX в. для математиков слово "алгоритм" уже означало любой арифметический или алгебраический процесс, выполняемый по строго определенным правилам. Одновременно с развитием понятия алгоритма постепенно происходила его экспансия из чистой математики в другие сферы; начало этому проникновению термина "алгоритм" положило изобретение и распространение компьютерной техники, благодаря чему он обрел новую жизнь.

Алгоритм решения задачи, который написан в виде последовательности команд на машинном языке (языке, который "понимает" вычислительное устройство, т.е. на одном из языков программирования[2]), называется машинной, или компьютерной, программой.

Машинный язык – система команд, непосредственно понимаемых аппаратурой данной конкретной электронно-вычислительной системы.

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

Каждая машинная команда содержит информацию трех видов:

1) указание на то, какие действия должен сделать микропроцессор (ответ па этот вопрос дает часть команды, которая называется кодом операции (КОП));

2) указание на объекты, над которыми надо провести какие-то действия (эти элементы машинной команды называются операндами);

3) указание на способ действия (эти элементы называются типами операндов).

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

• операции пересылки информации внутри ЭВМ;

• арифметические операции над информацией;

• логические операции над информацией;

• операции обращения к внешним устройствам ЭВМ;

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

• обслуживающие и вспомогательные операции.