Алгори́тм, от имени учёного аль-Хорезми — точный набор инструкций, описывающих порядок действий исполнителя для достижения результата решения задачи за. Алгоритм, виды алгоритмов
Алгоритм, виды алгоритмов. Алгоритмизация поиска правовой информации.
Алгори́тм, от имени учёного аль-Хорезми (перс. خوارزمی [al-Khwārazmī]) — точный набор инструкций, описывающих порядок действий исполнителя для достижения результатарешения задачи за конечное время.
Алгоритм — описание последовательности действий (план), строгое исполнение которых приводит к решению поставленной задачи за конечное число шагов.
Алгоритмизация — процесс разработки алгоритма (плана действий) для решения задачи.
Алгоритм-это конечная последовательность точно определенных действий, приводящих к однозначному решению поставленных задач. Алгоритмы могут быть заданы графически(с помощью блок-схем) и программным способом.
1. Линейные-не содержат логических условий, имеют одну ветвью обработки и изображаются линейной последовательностью связанных друг с другом блоков.
2. Разветвленный – содержит одно или несколько условий и имеет несколько ветвей обработки.
3. Циклический – содержит один или несколько циклов. Цикл – это многократно повторяемая часть алгоритма. Параметр цикла (счетчик) – переменная, при каждом новом вхождении в цикл принимающая новое значение.
Алгоритмизация поиска правовой информации.
Поддержание информационных банков справочно-правовых систем в актуальном состоянии складывается из трех замкнутых технологических процессов, а именно:
-введение в информационный банк новых документов;
-создание и введение в информационный банк новых редакций документов;
-внесение в информационный банк изменений и дополнений к документам.
Каждый из этих процессов состоит из последовательно выполняемых этапов:
ПЕРВОНАЧАЛЬНЫЙ ЭТАП ОБРАБОТКИ
1.1.Регистрация поступившего документа
1.2. Просмотр периодических изданий
2. Обработка документа юристами
3. Подготовка текста документа
3.1 Создание электронного образа документа
3.2 Оформление, проверка на орфографию
3.3.Вычитка текста корректором
4. Проставление гипертекстовых ссылок
5. Заполнение поисковой карточки документа
6. Подготовка документа к загрузке в исходном формате
7. Завершающая проверка автоматизированными средствами поиска ошибок
8. Ввод в информационный банк
9. Что такое архитектура и структура компьютера. Опишите принцип «открытой архитектуры».
Архитектурой компьютера называется его описание на некотором общем уровне, включающее описание пользовательских возможностей программирования, системы команд, системы адресации, организации памяти и т.д.
Структура компьютера — это совокупность его функциональных элементов и связей между ними. Элементами могут быть самые различные устройства — от основных логических узлов компьютера до простейших схем.
Персональные компьютеры обычно проектируются на основе принципа открытой архитектуры.
Принцип открытой архитектуры заключается в следующем:
Регламентируются и стандартизируются только описание принципа действия компьютера и его конфигурация (определённая совокупность аппаратных средств и соединений между ними).
Компьютер легко расширяется и модернизируется за счёт наличия внутренних расширительных гнёзд, в которые пользователь может вставлять разнообразные устройства.
Для того чтобы соединить друг с другом различные устройства компьютера они должны иметь одинаковый интерфейс.
Интерфейс — это средство сопряжения двух устройств, в котором все физические и логические параметры согласуются между собой.
Для согласования интерфейсов периферийные устройства подключаются к шине не напрямую, а через свои контроллеры (адаптеры) и порты примерно по такой схеме:
Котроллеры и адаптеры представляют собой наборы электронных цепей, которыми снабжаются устройства компьютера с целью совместимости их интерфейсов. Контроллеры, кроме этого, осуществляют непосредственное управление периферийными устройствами по запросу микропроцессора.
Такая “самонастраивающаяся” система оказалась очень удачным решением. Посудите сами, поскольку система в начале работы сама может определять свою конфигурацию (какие компоненты в данный момент подключены к системе), то пользователю не составляет большого труда самостоятельно настраивать эту самую конфигурацию. В этом состоит принципиальное отличие IBM-совместимых компьютеров и Macintosh, которые построены на закрытой архитектуре
10. Единицы измерения информации в компьютерных системах: двоичная система исчисления, биты и байты. Методы представления информации.
Система счисления — это способ записи чисел с помощью заданного набора знаков (цифр).
Двоичная система исчисления.
двоичная система исчисления (бинарная система счисления) – позиционная система счисления с основанием 2. Для представления чисел используются символы 0 и 1.В двоичной системе счисления используются всего 2 цифры 0 и 1. Другими словами,2ка явл основанием двоичной системы счисления.
Бит-min единица информации.
Байт- единица измерения количества информации равняющаяся 8 битам.
Широко используются также ещё более крупные производные единицы информации:
1 Килобайт (Кбайт) = 1024 байта = 210 байт
1 Мегабайт (Мбайт) = 1024 Кбайт = 220 байт
1 Гигабайт (Гбайт) = 1024 Мбайт = 230 байт
В последнее время в связи с увеличением объёмов информации входят в употребление такие производные еденицы как:
1 Терабайт (Тбайт) = 1024 Гбайт = 240 байт
1 Петабайт (Пбайт) = 1024 Тбайт = 250 байт
Способы представления информации
В задачах обучения распознаванию образов принято два способа представления информации – непрерывный и дискретный. При непрерывном способе представления все координаты вектора могут принимать любые значения числовой оси. При дискретном способе каждая координата вектора может принимать лишь фиксированное число значений.
Урок 22
§29. Алгоритмы и исполнители
Содержание урока
Что такое алгоритм?
Что такое алгоритм?
Ключевые слова:
Многие действия, которые мы выполняем в жизни, можно записать как последовательность шагов.
Например, когда строят дом, сначала заливают фундамент, затем возводят стены, потом делают крышу. Бригадир строителей точно знает, как правильно выполнить каждую операцию. Менять порядок действий нельзя, иначе стройка закончится неудачно.
В этой главе мы будем изучать такие точно определённые правила выполнения действий. В информатике их называют алгоритмами.
Слово «алгоритм» происходит от имени средневекового арабского учёного Мухаммеда аль-Хорезми, который в IX веке описал правила вычислений с десятичными числами. Работы аль-Хорезми были переведены на латинский язык и стали известны в Европе. Через некоторое время слово «алгоритм» (от имени автора, которое по-латыни писали как Algorizmi или Algorizmus) стало обозначать любую систему вычислений по определённым правилам.
Мухаммед аль-Хорезми
а) пополнения счёта мобильного телефона;
б) поездки на автобусе в соседний город.
Алгоритмы составляют люди, причём нередко на разработку алгоритмов решений сложных задач уходят многие годы. Но как только алгоритм придуман, можно поручить его выполнение автомату (например, компьютеру), который просто выполняет инструкции, не вникая в их смысл. Говорят, что такой исполнитель действует формально, не рассуждая и не обдумывая содержание задачи, которую он решает.
Как правило, любая задача может быть решена с помощью разных алгоритмов. Их можно сравнивать, например, по времени, которое требуется для решения задачи. Лучшим обычно считают алгоритм, который решает задачу быстрее всех.
Компьютерные программы — это алгоритмы, записанные на языке, понятном компьютеру. Поэтому изучать алгоритмы нужно для того, чтобы понимать, как работает компьютер, и научиться решать с его помощью сложные задачи.
Приведите примеры алгоритмов, которые умеет выполнять:
а) ребёнок-дошкольник;
б) собака;
в) мобильный телефон;
г) стиральная машина.
Сможет ли годовалый ребенок сходить в магазин за хлебом? Сможет ли собака оплатить счёт за квартиру? Конечно, нет. Любой алгоритм составляется для какого-то конкретного исполнителя.
Исполнитель — это человек, животное или машина, которые могут понимать и выполнять некоторые команды. Полный набор команд исполнителя называется системой команд исполнителя (СКИ).
Теперь можно дать определение алгоритма.
Алгоритм — это точное описание порядка действий некоторого исполнителя.
Система команд простейшего исполнителя Робот, который умеет только передвигаться по ячейкам клетчатой доски, содержит команды вверх, вправо, вниз и влево (рис. 6.1).
Рис. 6.1
Других команд Робот не понимает и выполнить не может.
Любой исполнитель работает в некотором окружении — среде.
Среда исполнителя Робот — клетчатое поле со стенами, которые обозначены жирными линиями.
Робот не может ходить сквозь стены. Например, Робот на рис. 6.1 не может выполнить последовательность команд
вверх
вверх
потому что столкнётся со стеной.
Исполнители могут находиться в разных состояниях и в зависимости от этого могут (или не могут) выполнять разные команды. Например, незаряженное ружьё не выстрелит, а лежащий человек не сможет прыгнуть, не изменив своё состояние. Грузовик с пустым кузовом не сможет засыпать яму песком.
Что нужно для того, чтобы описать состояние исполнителя Робот? В каких случаях этот исполнитель не сможет выполнить некоторые команды?
Следующая страница Свойства алгоритма
Cкачать материалы урока
Алгоритм, виды алгоритмов. Алгоритмизация поиска правовой информации.
Алгори́тм, от имени учёного аль-Хорезми (перс. خوارزمی [al-Khwārazmī]) — точный набор инструкций, описывающих порядок действий исполнителя для достижения результатарешения задачи за конечное время. В старой трактовке вместо слова «порядок» использовалось слово «последовательность», но по мере развития параллельности в работе компьютеров слово «последовательность» стали заменять более общим словом «порядок». Это связано с тем, что работа каких-то инструкций алгоритма может быть зависима от других инструкций или результатов их работы. Таким образом, некоторые инструкции должны выполняться строго после завершения работы инструкций, от которых они зависят. Независимые инструкции или инструкции, ставшие независимыми из-за завершения работы инструкций, от которых они зависят, могут выполняться в произвольном порядке, параллельно или одновременно, если это позволяют используемые процессор и операционная система.
Единого «истинного» определения понятия «алгоритм» нет.
«Алгоритм — это конечный набор правил, который определяет последовательность операций для решения конкретного множества задач и обладает пятью важными чертами: конечность, определённость, ввод, вывод, эффективность». (Д. Э. Кнут)
«Алгоритм — это всякая система вычислений, выполняемых по строго определённым правилам, которая после какого-либо числа шагов заведомо приводит к решению поставленной задачи». (А. Колмогоров)
«Алгоритм — это точное предписание, определяющее вычислительный процесс, идущий от варьируемых исходных данных к искомому результату». (А. Марков)
«Алгоритм — точное предписание о выполнении в определённом порядке некоторой системы операций, ведущих к решению всех задач данного типа». (Философский словарь / Под ред. М. М. Розенталя)
«Алгоритм — строго детерминированная последовательность действий, описывающая процесс преобразования объекта из начального состояния в конечное, записанная с помощью понятных исполнителю команд». (Николай Дмитриевич Угринович, учебник «Информатика и информ. технологии»)
Особую роль выполняют прикладные алгоритмы, предназначенные для решения определённых прикладных задач. Алгоритм считается правильным, если он отвечает требованиям задачи (например, даёт физически правдоподобный результат). Алгоритм (программа) содержит ошибки, если для некоторых исходных данных он даёт неправильные результаты, сбои, отказы или не даёт никаких результатов вообще. Последний тезис используется в олимпиадах по алгоритмическому программированию, чтобы оценить составленные участниками программы.
Важную роль играют рекурсивные алгоритмы (алгоритмы, вызывающие сами себя до тех пор, пока не будет достигнуто некоторое условие возвращения). Начиная с конца XX — начала XXI века активно разрабатываются параллельные алгоритмы, предназначенные для вычислительных машин, способных выполнять несколько операций одновременно.
В зависимости от поставленной задачи и последовательности выполняемых шагов различают следующие виды алгоритмов:
- Линейный – шаги алгоритма следуют один за другим не повторяясь, действия происходят только в одной заранее намеченной последовательности.
Блоки алгоритма 1, 2, 3 выполняются именно в такой последовательности, после чего алгоритм достигает цели и заканчивается.
- Алгоритм с ветвлением – в зависимости от выполнения или невыполнения условия, исполняется либо одна, либо другая ветвь алгоритма.
В данном алгоритме проверяется условие, и если оно выполняется, то есть на вопрос можно ответить “Да”, исполняется блок алгоритма 1 (одно ли несколько действий), а если не выполняется – ответ на вопрос отрицательный, то исполняется блок 2.
Примечание: одного из блоков: 1 или 2 может не быть вовсе. Тогда в одном из случаев будут выполняться какие-либо действия, а в другом – ничего не будет выполняться.
- Циклический – блоки алгоритма выполняются до тех пор, пока не будет выполнено определенное условие.
Блок алгоритма 1 будет выполняться один или несколько раз до тех пор, пока не выполнится условие.
Алгоритм выполняется так: выполняется блок 1, проверяется условие, если оно не выполняется, то блок 1 выполняется снова и условие проверяется заново. При выполнении условия алгоритм заканчивается.
Примечание: в общей схеме алгоритма “Да” и “Нет” можно поменять местами, тогда алгоритм будет выполняться, пока условие выполняется. Как только условие не выполнится – алгоритм завершится.
Формальные свойства алгоритмов
Различные определения алгоритма в явной или неявной форме содержат следующий ряд общих требований:
§ Дискретность — алгоритм должен представлять процесс решения задачи как последовательное выполнение некоторых простых шагов. При этом для выполнения каждого шага алгоритма требуется конечный отрезок времени, то есть преобразование исходных данных в результат осуществляется во времени дискретно.
§ Детерминированность (определённость). В каждый момент времени следующий шаг работы однозначно определяется состоянием системы. Таким образом, алгоритм выдаёт один и тот же результат (ответ) для одних и тех же исходных данных. В современной трактовке у разных реализаций одного и того же алгоритма должен быть изоморфный граф. С другой стороны, существуют вероятностные алгоритмы, в которых следующий шаг работы зависит от текущего состояния системы и генерируемого случайного числа. Однако при включении метода генерации случайных чисел в список «исходных данных», вероятностный алгоритм становится подвидом обычного.
§ Понятность — алгоритм для исполнителя должен включать только те команды, которые ему (исполнителю) доступны, которые входят в его систему команд.
§ Завершаемость (конечность) — при корректно заданных исходных данных алгоритм должен завершать работу и выдавать результат за конечное число шагов. [источник не указан 320 дней] С другой стороны, вероятностный алгоритм может и никогда не выдать результат, но вероятность этого равна 0.
§ Массовость (универсальность). Алгоритм должен быть применим к разным наборам исходных данных.
§ Результативность — завершение алгоритма определёнными результатами.
§ Алгоритм содержит ошибки, если приводит к получению неправильных результатов либо не даёт результатов вовсе.
§ Алгоритм не содержит ошибок, если он даёт правильные результаты для любых допустимых исходных данных.
Поддержание информационных банков справочно-правовых систем в актуальном состоянии складывается из трех замкнутых технологических процессов, а именно:
-введение в информационный банк новых документов;
-создание и введение в информационный банк новых редакций документов;
-внесение в информационный банк изменений и дополнений к документам.
Каждый из этих процессов состоит из последовательно выполняемых этапов:
ПЕРВОНАЧАЛЬНЫЙ ЭТАП ОБРАБОТКИ
1.1.Регистрация поступившего документа
1.2. Просмотр периодических изданий
2. Обработка документа юристами
3. Подготовка текста документа
3.1 Создание электронного образа документа
3.2 Оформление, проверка на орфографию
3.3.Вычитка текста корректором
4. Проставление гипертекстовых ссылок
5. Заполнение поисковой карточки документа
6. Подготовка документа к загрузке в исходном формате
7. Завершающая проверка автоматизированными средствами поиска ошибок
8. Ввод в информационный банк
9. Что такое архитектура и структура компьютера. Опишите принцип «открытой архитектуры».
Архитектура вычислительной машины (Архитектура ЭВМ, англ. Computer architecture) — концептуальная структура вычислительной машины [1] , определяющая проведение обработки информации и включающая методы преобразования информации в данные и принципы взаимодействия технических средств и программного обеспечения. [2]
В настоящее время наибольшее распространение в ЭВМ получили 2 типа архитектуры: принстонская (неймановская) и гарвардская. Обе они выделяют 2 основных узла ЭВМ:центральный процессор и память компьютера. Различие заключается в структуре памяти: в принстонской архитектуре программы и данные хранятся в одном массиве памяти и передаются в процессор по одному каналу, тогда как гарвардская архитектура предусматривает отдельные хранилища и потоки передачи для команд и данных.
В более подробное описание, определяющее конкретную архитектуру, также входят: структурная схема ЭВМ, средства и способы доступа к элементам этой структурной схемы, организация и разрядность интерфейсов ЭВМ, набор и доступность регистров, организация памяти и способы её адресации, набор и формат машинных команд процессора, способы представления и форматы данных, правила обработки прерываний.
По перечисленным признакам и их сочетаниям среди архитектур выделяют:
§ По разрядности интерфейсов и машинных слов: 8-, 16-, 32-, 64-, 128- разрядные (ряд ЭВМ имеет и иные разрядности);
§ По особенностям набора регистров, формата команд и данных: CISC, RISC, VLIW;
§ По количеству центральных процессоров: однопроцессорные, многопроцессорные, суперскалярные;
§ многопроцессорные по принципу взаимодействия с памятью: симметричные многопроцессорные (SMP), масcивно-параллельные (MPP), распределенные.
Архитектурой компьютера называется его описание на некотором общем уровне, включающее описание пользовательских возможностей программирования, системы команд, системы адресации, организации памяти и т.д. Архитектура определяет принципы действия, информационные связи и взаимное соединение основных логических узлов компьютера: процессора, оперативного ЗУ, внешних ЗУ и периферийных устройств. Общность архитектуры разных компьютеров обеспечивает их совместимость с точки зрения пользователя.
Структура компьютера — это совокупность его функциональных элементов и связей между ними. Элементами могут быть самые различные устройства — от основных логических узлов компьютера до простейших схем. Структура компьютера графически представляется в виде структурных схем, с помощью которых можно дать описание компьютера на любом уровне детализации.