![]() Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву ![]() Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления
|
Анализ социально–экономических показателей.
Имитационное моделирование процессов на территории. Анализ криминальной обстановки. На анализируемой территории ГИС выделяют районы с повышенным уровнем преступности. Транспортная задача и т.п. ГИС позволяют находить оптимальные маршруты движения транспорта по заданным критериям (кратчайшее расстояние, численность пассажиров). ГИС могут изучаться в качестве «инструментария» представителями различных профессий. Вы можете наглядно ознакомиться с возможностями ГИС-технологий, если выберете директорию DEMO, которая лежит на G:\GRINVIEW\APPLICATIONS\ и просмотрите графические файлы.
Вопрос№ 59 Классификация языков программирования. Процедурное программирование Процедурный подход к обработке информации возник на заре программирования. Именно с этим стилем программирования связано все развитие вычислительной техники. Несмотря на прогресс технологии, большинство современных компьютеров построены по тем же принципам, что и машины 40-х годов. В их основе лежит так называемая архитектура фон Неймана, названная в честь американского ученого Дж. фон Неймана, впервые изложившего принципиальные положения архитектуры ЭВМ во второй половине 40-х годов. Основные принципы архитектуры фон Неймана состоят в следующем: 1. ЭВМ состоит из процессора, памяти и внешних устройств; 2. единственным источником активности (не считая стартового и аварийного вмешательства человека) в ЭВМ является процессор, который, в свою очередь, управляется программой, находящейся в памяти машины; 3. память машины может быть представлена как последовательность дискретных ячеек, каждая из которых имеет свой адрес; каждая ячейка хранит команду программы или некоторую единицу обрабатываемой информации, причем и то и другое выглядят одинаково (машинное слово); 4. в любой момент времени процессор выполняет одну команду программы, адрес которой находится в специальном регистре процессора - счетчике команд; 5. обработка информации происходит только в регистрах процессора; информацию в процессор можно ввести из любой ячейки памяти или внешнего устройства, или наоборот, направить в любую ячейку или на внешнее устройство; 6. в каждой команде программы зашифрованы следующие предписания: из каких ячеек памяти взять обрабатываемую информацию; какие совершить операции с взятой информацией; в какие ячейки памяти направить полученную информацию; как изменить содержимое счетчика команд, чтобы знать, откуда взять для выполнения следующую команду;
7. машина выполняет программу команда за командой в соответствии с изменением содержимого счетчика команд и расположением команд в памяти, пока не получит команду остановиться. Развитие процедурных языков определялось особенностями вычислительной машины Дж. фон Неймана; способы представления знаний и задач, а также методов их решения были ориентированы на экономию ресурсов. При этом интеллектуальный комфорт пользователя был проигнорирован. Программа разрабатывается в терминах тех действий, которые она должна выполнять. Основная единица программы - процедура - последовательность операторов, выполняющая определенный вспомогательный алгоритм. Процедуры могут вызывать другие процедуры, вместе они работают по определенному алгоритму, ведущему к решению задачи. Кроме понятия оператор в основе процедурного языка лежит понятие операнд - данные, которые обрабатываются при помощи операторов. Типы операндов: простой, массив, структуры. Типы операторов: присваивания, условных операций, итерации. Программа, написанная на процедурном языке, явно указывает способ получения результата, но не сам результат. Существует большое число процедурных языков программирования. Это - Algol, Fortran, Pascal, С, Basic и др. Функциональное программирование Применение ЭВМ для решения задач искусственного интеллекта и обработки текстов привело к созданию функциональных языков. Эти языки имеют хорошо проработанное математическое основание - l-исчисление. Функция в математике - отображение объектов из множества величин (области определения функции или домена) в объекты другого множества (область значений функции). Переменные в функциональной программе рассматриваются как переменные в математике: если они существуют, то имеют какую-то величину, и эта величина не может измениться. Функциональная программа описывает, что должно быть вычислено, то есть является просто выражением, определенным в терминах заранее заданных функций и функций, определенных пользователем. Величина этого выражения является результатом программы. Таким образом, здесь отсутствует состояние программы и предыстория вычислений. Первым языком функционального программирования является созданный в начале 1960-х годов язык ЛИСП (LISP - LISt Processing). В отличие от процедурных языков, в которых действия в основном выражаются в виде итерации - повтора какого-либо фрагмента программы несколько раз, в ЛИСП вычисления производятся с помощью рекурсии - вызова функцией самой себя, а основная структура данных - это список.
Логическое программирование Математическая логика использует отточенный формальный язык для представления знаний об объектах той или иной предметной области, включая явные средства выражения гипотез и суждений. Подобные качества роднят логику и искусство программирования. Идея непосредственного применения логики в качестве средства программирования возникла практически одновременно с первыми процедурными языками. Главная особенность такого подхода состоит в том, что программа (логическая) состоит из набора утверждений (аксиом), а вычисление, выполняемое под управлением такой программы, представляет собой логический вывод некоторого целевого утверждения - искомого результата. Вывод производится из аксиом программы по правилам математической логики, причем эти правила применяются автоматически, программист не должен их специально указывать. Привлекательность применения логики в программировании состоит прежде всего в том, что в результате постепенного уточнения формулировки задачи она приобретает все более ясную форму, понятную как создателю программы, так и ее возможным читателям (потребителям). Особенно хорошо язык логики подходит для формулирования задач искусственного интеллекта. Все это объясняется тем, что язык логики опирается на общие законы человеческого мышления, а не на технические особенности кодирования для вычислительной машины того или иного типа. Серьезные практические результаты в области логического программирования появились только в 70-е годы после того, как была подготовлена достаточная теоретическая база и достигнут значительный прогресс в развитии вычислительной техники. К этому времени после целой череды экспериментальных языков группой Алана Колмероэ в Марселе была создана (еще неэффективная) реализация языка, заменившего последовательные вычисления машины фон Неймана на логический вывод. Новый язык, названный Прологом (Программирование л огическое), предназначался для анализа текстов, написанных на естественном языке, т.е. для решения задач, обычно относимых к области искусственного интеллекта. Приблизительно в те же годы были разработаны и теоретические основы нового направления в программировании. Основные результаты в этой области принадлежат Алану Робинсону и Роберту Ковальскому. Первая реализация Пролога, выполненная кстати на Фортране, заинтересовала специалистов, но не получила широкого распространения по причине низкой эффективности. Мешал распространению Пролога и накопившийся к этому времени у специалистов (в основном американских) общий скепсис по отношению к идее логического программирования, поскольку все реализации предшественников Пролога были также неэффективны. Настоящая революция в этой области произошла в конце 70-х, когда Дэвид Уоррен из Эдинбургского университета создал первый компилятор для языка Пролог. Этот компилятор работал настолько эффективно, что скепсис специалистов немедленно сменился всеобщим энтузиазмом. С тех пор и до настоящего времени направление логического программирования успешно развивается и поддерживается как профессионалами, так и просто любителями программирования.
|
||||||||
Последнее изменение этой страницы: 2016-04-07; просмотров: 474; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.235.40.122 (0.007 с.) |