Любой алгоритм есть последовательность предписаний, выполнив которые можно за конечное число шагов перейти от исходных данных к результату. В зависимости от степени детализации предписаний обычно определяется уровень языка программирования — чем меньше детализация, тем выше уровень языка. По этому критерию можно выделить следующие уровни языков программирования: · Машинные (машинные коды); · Машинно-оpиентиpованные (ассемблеpы); · Машинно-независимые (языки высокого уровня).
Машинные языки и машинно-ориентированные языки — это языки низкого уровня, требующие указания мелких деталей процесса обработки данных. Процесс написания программы на машинном языке очень трудоемкий и утомительный. Программа получается громоздкой, труднообозримой, ее трудно отлаживать, изменять и развивать. Пример: mov ax, 0001h ;поместить число 1 в регистр ax mov bx, 0002h ;поместить число 2 в регистр bx add ax, bx ;прибавить к числу в регистре ax число из регистра bx cmp ax, 0012h ;сравнить число в регистре ax с шестнадцатеричным числом 12 Перевод программы с языка ассемблера на машинный язык (в машинные коды) осуществляется специальной программой, которая называется транслятором.
Языки высокого уровня имитируют естественные языки, используя некоторые слова разговорного языка и общепринятые математические символы. Эти языки более удобны для человека. Пример: Input "A=”,A, "B=”,B //Ввести значения переменных A и B C=A+B //Присвоить переменной C значение суммы A и B Print "C=”,C //Вывести значение переменной C
Языки высокого уровня делятся на: · Процедурные (алгоритмические) (Basic, Fortran, Pascal, C и др.), которые предназначены для однозначного описания алгоритмов; для решения задачи процедурные языки требуют в той или иной форме явно записать процедуру ее решения; · Логические (Prolog, Lisp и др.), которые ориентированы не на разработку алгоритма решения задачи, а на систематическое и формализованное описание задачи с тем, чтобы решение следовало из составленного описания; · Объектно-ориентированные (Object Pascal, C++, Java и др.), в основе которых лежит понятие объекта, сочетающего в себе данные и действия над нами. Программа на объектно-ориентированном языке, решая некоторую задачу, по сути описывает часть мира, относящуюся к этой задаче. Описание действительности в форме системы взаимодействующих объектов естественнее, чем в форме взаимодействующих процедур.
Алгоритмические языки в
значительной мере являются машинно-независимыми. · набор операций, допустимых для использования, не зависит от набора машинных операций, а выбирается из соображений удобства формулирования алгоритмов решения задач определенного класса; · требуемые операции задаются с помощью общепринятых математических обозначений; · данным в алгоритмических языках присваиваются индивидуальные имена, выбираемые программистом; · в языке может быть предусмотрен значительно более широкий набор типов данных по сравнению с набором машинных типов данных.
| |
| |
Просмотров: 1812 | |
Всего комментариев: 0 | |