Автор: Пользователь скрыл имя, 15 Декабря 2012 в 12:57, контрольная работа
Алгоритм – заранее заданное понятное и точное предписание возможному исполнителю совершить определенную последовательность действий для получения решения задачи за конечное число шагов.
Понятие алгоритма является не только одним из главных понятий математики, но одним из главных понятий современной науки. Более того, с наступлением эры информатики алгоритмы становятся одним из важнейших факторов цивилизации.
На практике наиболее распространены следующие формы представления
алгоритмов:
• словесная (запись на естественном языке);
• графическая (изображения из графических символов);
• псевдокоды (полуформализованные описания алгоритмов на условном алгоритмическом языке, включающие в себя как элементы языка
программирования, так и фразы естественного языка, общепринятые
математические обозначения и др.);
• программная (тексты на языках программирования).
.Алгоритмы
1.1 Понятие алгоритма………………………………………………….. .2
1.2 Исполнитель алгоритма……………………………………………..3
1.3 Свойства алгоритмов………………………………………………..4
1.4 Формы записи алгоритмов………………………………………….5
2. Языки программирования.
2.1 Уровень Языка программирования…………………………….........7
2.2 Достоинства и недостатки машинных языков…………………….....8
2.3 Язык ассемблера………………………………………………………..9
2.4 Преимущества алгоритмических языков перед
машинными языками……………………………………………………...10
Список используемой литературы………………………………………11
2.2. Достоинства и недостатки машинных языков
Каждый компьютер имеет свой машинный язык, то есть свою совокупность машинных команд, которая отличается количеством адресов в команде,
назначением информации, задаваемой в адресах, набором операций, которые
может выполнить машина и др.
При программировании на машинном языке программист может держать
под своим контролем каждую команду и каждую ячейку памяти, использовать все возможности имеющихся машинных операций.
Но процесс написания программы на машинном языке очень трудоемкий
и утомительный. Программа получается громоздкой, труднообозримой, ее
трудно отлаживать, изменять и развивать. Поэтому в случае, когда нужно иметь эффективную программу, в максимальной степени учитывающую специфику конкретного компьютера, вместо машинных языков используют близкие к ним машинно-ориентированные языки (ассемблеры).
2.3. Язык ассемблера
Язык ассемблера – это машинно-зависимый язык низкого уровня, в котором короткие мнемонические имена соответствуют отдельным машинным командам. Используется для представления в удобочитаемой форме программ, записанных в машинном коде.
Язык ассемблера позволяет программисту пользоваться текстовыми мнемоническими (то есть легко запоминаемыми человеком) кодами, по своему усмотрению присваивать символические имена регистрам компьютера и памяти, а также задавать удобные для себя способы адресации. Кроме того, он позволяет использовать различные системы счисления (например, десятичную или шестнадцатеричную) для представления числовых констант, использовать в программе комментарии и др.
Программы, написанные на языке ассемблера, требуют значительно
меньшего объема памяти и
времени выполнения. Знание программистом
языка ассемблера и машинного кода дает
ему понимание архитектуры машины. Не
смотря на то, что большинство специалистов
в области программного обеспечения разрабатывают
программы на языках высокого уровня,
таких, как Object, Pascal или C, наиболее мощное
и эффективное программное обеспечение
полностью или частично написано на языке
ассемблера.
Языки высокого уровня были разработаны для того, чтобы освободить
программиста от учета технических особенностей конкретных компьютеров, их архитектуры. В противоположность этому, язык ассемблера разработан с целью учесть конкретную специфику процессора. Следовательно, для того, чтобы написать программу на языке ассемблера для конкретного компьютера, важно знать его архитектуру. Перевод программы с языка ассемблера на машинный язык осуществляется специальной программой, которая называется ассемблером и является, по сути, простейшим транслятором.
2.4. Преимущества алгоритмических языков перед машинными языками.
Основные преимущества таковы:
· алфавит алгоритмического языка значительно шире алфавита машинного
языка, что существенно повышает наглядность текста программы;
· набор операций, допустимых для использования, не зависит от набора
машинных операций, а выбирается из соображений удобства формулирования алгоритмов решения задач определенного класса;
· формат предложений достаточно гибок и удобен для использования, что позволяет с помощью одного предложения задать достаточно содержательный этап обработки данных;
· требуемые операции задаются с помощью общепринятых математических
обозначений;
· данным в алгоритмических языках присваиваются индивидуальные имена,
выбираемые программистом;
· в языке может быть предусмотрен значительно более широкий набор типов
данных по сравнению с набором машинных типов данных.
Таким образом, алгоритмические языки в значительной мере являются
Машинно-независимыми. Они облегчают работу программиста и повышают надежность создаваемых программ.
Список использованной литературы