Windows 2003

Windows Server 2003 — первая из операционных систем Microsoft, которая поставляется с предустановленной оболочкой .NET Framework. Это позволяет данной системе выступать в роли сервера приложений для платформы Microsoft .NET без установки какого-либо дополнительного программного обеспечения.

Windows Server 2003 включает в себя следующие улучшения для Active Directory — службы каталогов, впервые появившейся в Windows 2000:Возможность переименования домена Active Directory после его развёртывания. Упрощение изменения схемы Active Directory — например, отключения атрибутов и классов. Улучшенный пользовательский интерфейс для управления каталогом (стало возможно, например, перемещать объекты путём их перетаскивания и одновременно изменять свойства нескольких объектов). Улучшенные средства управления групповой политикой, включая программу Group Policy Management Console.

В составе Windows Server 2003 распространяется версия 6.0 служб Internet Information Services, архитектура которой существенно отличается от архитектуры служб IIS 5.0, доступных в Windows 2000. В частности, для повышения стабильности стало возможным изолировать приложения друг от друга в отдельных процессах без снижения производительности. Также был создан новый драйвер HTTP.sys для обработки запросов по протоколу HTTP. Этот драйвер работает в режиме ядра, в результате чего обработка запросов ускоряется.

По заявлениям Microsoft, в Windows Server 2003 большое внимание было уделено безопасности системы. В частности, система теперь устанавливается в максимально ограниченном виде, без каких-либо дополнительных служб, что уменьшает поверхность атаки. В Windows Server 2003 также включён программный межсетевой экран Internet Connection Firewall. Впоследствии к системе был выпущен пакет обновления, который полностью сосредоточен на повышении безопасности системы и включает несколько дополнительных функций для защиты от атак

 

51. ТРАНСЛЯТОРЫ

Транслятор (англ. translator — переводчик) — это программа-переводчик. Она преобразует программу, написанную на одном из языков высокого уровня, в программу, состоящую из машинных команд.

Трансляторы реализуются в виде компиляторов или интерпретаторов. С точки зрения выполнения работы компилятор и интерпретатор существенно различаются.

Компилятор (англ. compiler — составитель, собиратель) читает всю программу целиком, делает ее перевод и создает законченный вариант программы на машинном языке, который затем и выполняется.

Интерпретатор (англ. interpreter — истолкователь, устный переводчик) переводит и выполняет программу строка за строкой.

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

Откомпилированные программы работают быстрее, но интерпретируемые проще исправлять и изменять.
Каждый конкретный язык ориентирован либо на компиляцию, либо на интерпретацию — в зависимости от того, для каких целей он создавался. Например, Паскаль обычно используется для решения довольно сложных задач, в которых важна скорость работы программ. Поэтому данный язык обычно реализуется с помощью компилятора. С другой стороны, Бейсик создавался как язык для начинающих программистов, для которых построчное выполнение программы имеет неоспоримые преимущества. Иногда для одного языка имеется и компилятор, и интерпретатор. В этом случае для разработки и тестирования программы можно воспользоваться интерпретатором, а затем откомпилировать отлаженную программу, чтобы повысить скорость ее выполнения.

 

52. ФУНКЦИОНАЛЬНЫЕ ВОЗМОЖНОСТИ ТАБЛИЧНОГО ПРОЦЕССОРА. ВИДЫ ВХОДНЫХ ДАННЫХ, ЭЛЕКТРОННАЯ ТАБЛИЦА.

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

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

Графам и строкам можно присваивать наименования. Экран монитора трактуется как окно, через которое можно рассматривать таблицу целиком или по частям.

Табличные процессоры представляют собой удобное средство для проведения бухгалтерских и статистических расчетов. В каждом пакете имеются сотни встроенных математических функций и алгоритмов статистической обработки данных. Кроме того, имеются мощные средства для связи таблиц между собой, создания и редактирования электронных баз данных.

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

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

Самые популярные табличные процессоры — Microsoft Excel (Эксель) и Lotus 1—2—3.

В Microsoft Excel автоматизированы многие рутинные операции, специальные шаблоны помогают создавать отчёты, импортировать данные и многое другое.

Lotus 1—2—3 — профессиональный процессор электронных таблиц. Широкие графические возможности и удобный интерфейс пакета позволяют быстро ориентироваться в нём. С его помощью можно создать любой финансовый документ, отчёт для бухгалтерии, составить бюджет, а затем разместить все эти документы в базах данных.

 

53. НАЗНАЧЕНИЕ И ОСНОВНЫЕ ФУНКЦИОНАЛЬНЫЕ ВОЗМОЖНОСТИ СИСТЕМ УПРАВЛЕНИЯ БАЗАМИ ДАННЫХ

База данных — это один или несколько файлов данных, предназначенных для хранения, изменения и обработки больших объемов взаимосвязанной информации.

В базе данных предприятия, например, может храниться:

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

Пример. Издание приказа о повышении в должности одного работника приводит к изменениям не только в личном деле работника, но и к изменениям в списках подразделения, в котором он работает, в ведомостях на зарплату, в графике отпусков и т.п.

Базы данных используются под управлением систем управления базами данных (СУБД).

Система управления базами данных (СУБД) — это система программного обеспечения, позволяющая обрабатывать обращения к базе данных, поступающие от прикладных программ конечных пользователей.

Системы управления базами данных позволяют объединять большие объемы информации и обрабатывать их, сортировать, делать выборки по определённым критериям и т.п.

Современные СУБД дают возможность включать в них не только текстовую и графическую информацию, но и звуковые фрагменты и даже видеоклипы.

Простота использования СУБД позволяет создавать новые базы данных, не прибегая к программированию, а пользуясь только встроенными функциями.

СУБД обеспечивают правильность, полноту и непротиворечивость данных, а также удобный доступ к ним.

Популярные СУБД — FoxPro, Access for Windows, Paradox.

Для менее сложных применений вместо СУБД используются информационно-поисковые системы (ИПС), которые выполняют следующие функции:

 

54. ИНФОРМАЦИОННО-ПОИСКОВЫЕ СИСТЕМЫ

ИПС (информационно-поисковая система) - это система, обеспечивающая поиск и отбор необходимых данных в специальной базе с описаниями источников информации (индексе) на основе информационно-поискового языка и соответствующих правил поиска.

Главной задачей любой ИПС является поиск информации релевантной информационным потребностям пользователя. Очень важно в результате проведенного поиска ничего не потерять, то есть найти все документы, относящиеся к запросу, и не найти ничего лишнего. Поэтому вводится качественная характеристика процедуры поиска - релевантность.

Релевантность - это соответствие результатов поиска сформулированному запросу.

Создание и использование информационно-поисковой системы (ИПС) началось в конце 1950-х - начале 1960-х годов. ИПС опирается на базу данных, в которой осуществляет поиск нужных документов по заявкам пользователей.

Частным случаем информационно-поисковой системы является информационно-справочная система, которая в ответ на запросы выдает сведения, в явной форме отсутствующие в базе данных.

Широко информационно-поисковые системы используются и в базах знаний.

По характеру выдаваемой информации ИПС делятся на два типа.

Документальная система по заданию пользователя выдает необходимые ему документы (книги, статьи, законы, патенты, отчеты и т.д.). В задании могут указываться сведения об искомых документах: автор, наименование, время издания, издательство и т.п.

Более сложной является фактографическая информационно-поисковая система. Ее задача - поиск в документах интересующих пользователя сведений (фактов). Например, типы, характеристики и технология изготовления сталей.

Поиск информации осуществляется на естественном (русском, английском, латышском и др.) языке. Для этих целей осуществляется индексирование документов.

Процесс индексирования заключается в нахождении набора ключевых слов или кодов, служащих для идентификации документов и используемых для их поиска. Существует несколько методов индексирования. Например, статистический метод заключается в том, что в начале из текста документа отбрасываются все незначащие слова, например предлоги, союзы и т.п. Затем подсчитывается частота употребления каждого оставшегося слова и учитывается отклонение частоты слов в документе от ожидаемой. В результате создается поисковый образ документа (ПОЗ). Он готовится специалистом либо прикладной программой, и от качества ПОЗ зависит полнота поиска, т.е. процент найденных документов, содержащих искомые сведения.

55. ОПРЕДЕЛЕНИЕ ПАКЕТА ПРИКЛАДНЫХ ПРОГРАММ И БИБЛИОТЕК СТАНДАРТНЫХ ПРОГРАММ

Библиотека стандартных подпрограмм — это совокупность подпрограмм, составленных на одном из языков программирования и удовлетворяющих определенным единым требованиям к структуре, организации их входов и выходов, описаниям подпрограмм и т.п.

Стандартные подпрограммы имеют единую форму обращения, что обеспечивает простоту и удобство настройки параметров подпрограммы на решение конкретной задачи.

В качестве примера можно привести библиотеку стандартных подпрограмм по численным математическим методам решения уравнений, вычисления интегралов, нахождения экстремумов и т.п.

Пакеты прикладных программ (ППП) — это специальным образом организованные программные комплексы, рассчитанные на общее применение в определенной проблемной области и дополненные соответствующей технической документацией.

В зависимости от характера решаемых задач различают следующие разновидности ППП:

Чтобы пользователь мог применить ППП для решения конкретной задачи, пакет должен обладать средствами настройки (иногда путём введения некоторых дополнений).

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

ППП обеспечивают значительное снижение требований к уровню профессиональной подготовки пользователей в области программирования, вплоть до возможности эксплуатации пакета без программиста.

Часто пакеты прикладных программ располагают базами данных для хранения данных и передачи их прикладным программам.

 

56.ОПРЕДЕЛЕНИЕ ИНТЕГРИРОВАННОГО ПАКЕТА ПРОГРАММ И СЕТЕВОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ.

Интегрированные пакеты представляют собой набор нескольких программных продуктов, объединенных в единый удобный инструмент. Наиболее развитые из них включают в себя текстовый редактор, органайзер, электронную таблицу, СУБД, средства поддержки электронной почты, программу создания презентационной графики.

Результаты, полученные отдельными подпрограммами, могут быть объединены в окончательный документ, содержащий табличный, графический и текстовый материал.

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

Пример: интегрированный пакет для написания книг, содержащих иллюстрации. Он содержит:

Microsoft Office. В этот мощный профессиональный пакет вошли такие необходимые программы, как текстовый редактор WinWord , электронная таблица Excel, программа создания презентаций PowerPoint, СУБД Access, средство поддержки электронной почты Mail. Мало того, все части этого пакета составляют единое целое, и даже внешне все программы выглядят единообразно, что облегчает как их освоение, так и ежедневное использование.

Microsoft Works — это очень простой и удобный пакет, объединяющий в себе текстовый редактор, электронные таблицы и базы данных, а также телекоммуникационные средства для соединения с другими компьютерами по телефонным линиям. Пакет ориентирован на людей, не имеющих времени осваивать сложные продукты, на начинающих пользователей, а также на домашних пользователей.

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

Функции и характеристики сетевых операционных систем (ОС)

К основным функциям сетевых ОС относят:

Управление каталогами и файлами в сетях заключается в обеспечении доступа к данным, физически расположенным в других узлах сети. Управление осуществляется с помощью специальной сетевой файловой системы. Файловая система позволяет обращаться к файлам путем применения привычных для локальной работы языковых средств. При обмене файлами должен быть обеспечен необходимый уровень конфиденциальности обмена (секретности данных).

Управление ресурсами включает обслуживание запросов на предоставление ресурсов, доступных по сети.

Коммуникационные функции обеспечивают адресацию, буферизацию, выбор направления для движения данных в разветвленной сети (маршрутизацию), управление потоками данных и др.

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

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

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

Программное обеспечение сетевых ОС распределено по узлам сети. Имеется ядро ОС, выполняющее большинство из охарактеризованных выше функций, и дополнительные программы (службы), ориентированные на реализацию протоколов верхних уровней, выполнение специфических функций для коммутационных серверов, организацию распределенных вычислений и т.п. К сетевому программному обеспечению относят также драйверы сетевых плат. Для каждого типа ЛВС разработаны разные типы плат и драйверов. Внутри каждого типа ЛВС может быть много разновидностей плат с разными характеристиками интеллектуальности, скорости, объема буферной памяти.

В настоящее время наибольшее распространение получили три основные сетевые ОС — UNIX, Windows NT и Novell Netware.

ОC UNIX применяют преимущественно в крупных корпоративных сетях, поскольку эта система характеризуется высокой надежностью, возможностью легкого масштабирования сети. В Unix имеется ряд команд и поддерживающих их программ для работы в сети. Во-первых, это команды ftp, telnet, реализующие файловый обмен и эмуляцию удаленного узла на базе протоколов TCP/IP. Во-вторых, протокол, команды и программы UUCP, разработанные с ориентацией на асинхронную модемную связь по телефонным линиям между удаленными Unix-узлами в корпоративных и территориальных сетях.

ОС Windows NT включает серверную (Windows NT Server) и клиентскую (Windows NT Workstation) части и, тем самым, обеспечивает работу в сетях "клиент/сервер". Windows NT обычно применяют в средних по масштабам сетях.

ОС Novell Netware состоит из серверной части и оболочек Shell, размещаемых в клиентских узлах. Предоставляет пользователям возможность совместно использовать файлы, принтеры и другое оборудование. Содержит службу каталогов, общую распределённую базу данных пользователей и ресурсов сети. Эту ОС чаще применяют в небольших сетях.

 

57. ЯЗЫКИ И СИТЕМЫ ПРОГРАММИРОВАНИЯ

Система программирования — это система для разработки новых программ на конкретном языке программирования.

Современные системы программирования обычно предоставляют пользователям мощные и удобные средства разработки программ. В них входят:

По этому критерию можно выделить следующие уровни языков программирования:

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

Языки высокого уровня делятся на:

Популярные системы программирования — Turbo Basic,Quick Basic,Turbo Pascal,TurboC.

В последнее время получили распространение системы программирования, ориентированные на создание Windows-приложений:

Ниже для иллюстрации приведены на языках Бейсик, Паскаль и Си программы решения одной и той же простой задачи — вычисления суммы S элементов одномерного массива A=(a1, a2, ..., an).

Язык Бейсик (BASIC — Beginners All-purpose Symbolic Instruction Code — универсальный символьный код для начинающих) был создан в 1965 г. Дж. Кемени и Т.Курцем как язык, облегчающий написание простых программ. Cейчас все чаще пишут Basic вместо BASIC, придавая другую трактовку названию: Basic — основной, базовый.

Программа на Бейсике
INPUT "N = "; N : DIM A(N)
FOR I = 1 TO N
PRINT "A("; I; ") =";
INPUT A(I)
NEXT I
S = 0
FOR I = 1 TO N
S = S + A(I)
NEXT I
PRINT "Сумма ="; S
END

Язык Паскаль был разработан в 1970 г. Никласом Виртом как язык обучения студентов программированию. Паскаль вырабатывает навыки соблюдения хорошего строгого стиля программирования, упрощающего разработку сложных программ.
Основные привлекательные черты Паскаля — логичность, поддержка концепций структурного и процедурного программирования, работа с динамической памятью, возможность создания своих типов данных. В Паскале программист должен всегда явно указывать, с какими конкретными переменными он желает работать и каковы типы этих переменных. Строгая типизация данных позволяет резко снизить количество ошибок, появляющихся в программе вследствие невнимательности или опечаток.

Программа на Паскале
Program Summa;
Type Mas = Array [1 .. 100] of Real;
Var A : Mas;
i, n: Integer;
S : Real;
BEGIN
Write('n = '); ReadLn(n);
For i : = 1 to n do
begin
Write('A[', i, '] = ');
ReadLn(A[i]);
end;

S : = 0;
For i : = 1 to n do
S : = S + A[i];
WriteLn('S = ', S:8:2);
END.

Язык Си разработан Деннисом Ритчи в 1972 г. как язык, пригодный для программирования новой операционной системы UNIX.

Операционные системы ради повышения скорости работы традиционно писались на языке низкого уровня — ассемблере, но язык Си настолько хорошо зарекомендовал себя, что на нем было написано более 90% всего кода ОС UNIX. Язык СИ обрел популярность как так называемый язык среднего уровня, в котором удобство, краткость и мобильность языков высокого уровня сочетаются с возможностью непосредственного доступа к аппаратуре компьютера, что обычно достигаются только при программировании на языке Ассемблера.

Си не очень прост в изучении и требует тщательности в программировании, но позволяет создавать сложные и весьма эффективные программы.

Программа на СИ
# include <stdio.h>
# include <conio.h>
main()
{
float a[100], s; int i, n;
clrscr(); printf("n=");
scanf("%i", &n);
for (i = 1; i <= n; i++) {
printf("a[%i]=", i);
scanf("%f", &a[i]);}
s=0;
for (i = 1; i <= n; i++)
s = s + a[i];
printf("s = % f \ n", s);
return 0;
}

58. АЛГОРИТМ. СВОЙСТВА АЛГОРИТМА. ФОРМЫ ПРЕДСТАВЛЕНИЯ АЛГОРИТМА

Понятие алгоритма такое же основополагающее для информатики, как и понятие информации. Именно поэтому важно в нем разобраться.

Название "алгоритм" произошло от латинской формы имени величайшего среднеазиатского математика Мухаммеда ибн Муса ал-Хорезми (Alhorithmi), жившего в 783—850 гг. В своей книге "Об индийском счете" он изложил правила записи натуральных чисел с помощью арабских цифр и правила действий над ними "столбиком", знакомые теперь каждому школьнику. В XII веке эта книга была переведена на латынь и получила широкое распространение в Европе. Человек ежедневно встречается с необходимостью следовать тем или иным правилам, выполнять различные инструкции и указания. Например, переходя через дорогу на перекрестке без светофора надо сначала посмотреть направо. Если машин нет, то перейти полдороги, а если машины есть, ждать, пока они пройдут, затем перейти полдороги. После этого посмотреть налево и, если машин нет, то перейти дорогу до конца, а если машины есть, ждать, пока они пройдут, а затем перейти дорогу до конца.

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

Алгоpитм — заранее заданное понятное и точное пpедписание возможному исполнителю совеpшить определенную последовательность действий для получения решения задачи за конечное число шагов.

Это — не определение в математическом смысле слова, а, скорее, описание интуитивного понятия алгоритма, раскрывающее его сущность.

Понятие алгоритма является не только одним из главных понятий математики, но одним из главных понятий современной науки. Более того, с наступлением эры информатики алгоритмы становятся одним из важнейших факторов цивилизации [56].

Что такое "Исполнитель алгоритма"

Исполнитель алгоритма — это некоторая абстрактная или реальная (техническая, биологическая или биотехническая) система, способная выполнить действия, предписываемые алгоритмом.

Исполнителя хаpактеpизуют:

Сpеда (или обстановка) — это "место обитания" исполнителя. Напpимеp, для исполнителя Pобота из школьного учебника сpеда — это бесконечное клеточное поле. Стены и закpашенные клетки тоже часть сpеды. А их pасположение и положение самого Pобота задают конкpетное состояние среды.

Система команд. Каждый исполнитель может выполнять команды только из некотоpого стpого заданного списка — системы команд исполнителя. Для каждой команды должны быть заданы условия пpименимости (в каких состояниях сpеды может быть выполнена команда) и описаныpезультаты выполнения команды. Напpимеp, команда Pобота "ввеpх" может быть выполнена, если выше Pобота нет стены. Ее pезультат — смещение Pобота на одну клетку ввеpх.

После вызова команды исполнитель совеpшает соответствующее элементаpное действие.

Отказы исполнителя возникают, если команда вызывается пpи недопустимом для нее состоянии сpеды.

Обычно исполнитель ничего не знает о цели алгоpитма. Он выполняет все полученные команды, не задавая вопросов "почему" и "зачем".

В информатике универсальным исполнителем алгоритмов является компьютер.

Какими свойствами обладают алгоpитмы

Основные свойства алгоритмов следующие:

1. Понятность для исполнителя — исполнитель алгоритма должен понимать, как его выполнять. Иными словами, имея алгоритм и произвольный вариант исходных данных, исполнитель должен знать, как надо действовать для выполнения этого алгоритма.

2. Дискpетность (прерывность, раздельность) — алгоpитм должен пpедставлять пpоцесс pешения задачи как последовательное выполнение пpостых (или pанее опpеделенных) шагов (этапов).

3. Опpеделенность — каждое пpавило алгоpитма должно быть четким, однозначным и не оставлять места для пpоизвола. Благодаpя этому свойству выполнение алгоpитма носит механический хаpактеp и не тpебует никаких дополнительных указаний или сведений о pешаемой задаче.

4. Pезультативность (или конечность) состоит в том, что за конечное число шагов алгоpитм либо должен пpиводить к pешению задачи, либо после конечного числа шагов останавливаться из-за невозможности получить решение с выдачей соответствующего сообщения, либо неограниченно продолжаться в течение времени, отведенного для исполнения алгоритма, с выдачей промежуточных результатов.

5. Массовость означает, что алгоpитм pешения задачи pазpабатывается в общем виде, т.е. он должен быть пpименим для некотоpого класса задач, pазличающихся лишь исходными данными. Пpи этом исходные данные могут выбиpаться из некотоpой области, котоpая называется областью пpименимости алгоpитма.

В какой форме записываются алгоритмы

На практике наиболее распространены следующие формы представления алгоритмов:

Словесный способ записи алгоритмов представляет собой описание последовательных этапов обработки данных. Алгоритм задается в произвольном изложении на естественном языке.

Например. Записать алгоритм нахождения наибольшего общего делителя (НОД) двух натуральных чисел (алгоритм Эвклида).

Алгоритм может быть следующим:

  1. задать два числа;
  2. если числа равны, то взять любое из них в качестве ответа и остановиться, в противном случае продолжить выполнение алгоритма;
  3. определить большее из чисел;
  4. заменить большее из чисел разностью большего и меньшего из чисел;
  5. повторить алгоритм с шага 2.

Описанный алгоритм применим к любым натуральным числам и должен приводить к решению поставленной задачи. Убедитесь в этом самостоятельно, определив с помощью этого алгоритма наибольший общий делитель чисел 125 и 75.

Словесный способ не имеет широкого распространения, так как такие описания:

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

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

Название символа Обозначение и пример заполнения Пояснение
Процесс Вычислительное действие или последовательность действий
Решение Проверка условий
Модификация Начало цикла
Предопределенный процесс Вычисления по подпрограмме, стандартной подпрограмме
Ввод-вывод Ввод-вывод в общем виде
Пуск-останов Начало, конец алгоритма, вход и выход в подпрограмму
Документ Вывод результатов на печать

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

Блок "решение" используется для обозначения переходов управления по условию. В каждом блоке "решение" должны быть указаны вопрос, условие или сравнение, которые он определяет.

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

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

Псевдокод представляет собой систему обозначений и правил, предназначенную для единообразной записи алгоритмов.

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

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

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

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

Примером псевдокода является школьный алгоритмический язык в русской нотации (школьный АЯ), описанный в учебнике А.Г. Кушниренко и др. "Основы информатики и вычислительной техники", 1991. Этот язык в дальнейшем мы будем называть просто "алгоритмический язык".

 

59. ОСНОВНЫЕ ЭТАПЫ РЕШНИЯ ЗАДАЧ

Решение задач с помощью компьютера включает в себя следующие основные этапы, часть из которых осуществляется без участия компьютера.

  1. Постановка задачи:
    1. сбоp инфоpмации о задаче;
    2. фоpмулиpовка условия задачи;
    3. опpеделение конечных целей pешения задачи;
    4. определение формы выдачи результатов;
    5. описание данных (их типов, диапазонов величин, структуры и т.п. ).
  2. Анализ и исследование задачи, модели:
    1. анализ существующих аналогов;
    2. анализ технических и программных средств;
    3. pазpаботка математической модели;
    4. разработка структур данных.
  3. Разработка алгоритма:
    1. выбор метода проектирования алгоритма;
    2. выбор формы записи алгоритма (блок-схемы, псевдокод и др.);
    3. выбоp тестов и метода тестиpования;
    4. проектирование алгоритма.
  4. Пpогpаммиpование:
    1. выбор языка программирования;
    2. уточнение способов организации данных;
    3. запись алгоpитма на выбpанном языке пpогpаммиpования.
  5. Тестиpование и отладка:
    1. синтаксическая отладка;
    2. отладка семантики и логической стpуктуpы;
    3. тестовые pасчеты и анализ pезультатов тестиpования;
    4. совершенствование пpогpаммы.
  6. Анализ результатов решения задачи и уточнение в случае необходимости математической модели с повторным выполнением этапов 2 — 5.
  7. Сопровождение программы:
    1. доработка программы для решения конкретных задач;
    2. составление документации к pешенной задаче, к математической модели, к алгоpитму, к пpогpамме, к набору тестов, к использованию.

 

60. САПР, АСНИ, ГАП, ЭКСПЕРТНЫЕ СИСТЕМЫ

В последнее время компьютеры <проникли> в жилища людей и постепенно становятся предметами первой необходимости. Есть два основных направления использования компьютеров дома.

Обеспечение нормальной жизнедеятельности жилища:

· охранная автоматика, противопожарная автоматика, газоанализаторная автоматика;

· управление освещенностью, расходом электроэнергии, отопительной системой, управление микроклиматом;

· электроплиты, холодильники, стиральные машины со встроенными микропроцессорами.

Обеспечение информационных потребностей людей, находящихся в жилище:

· заказы на товары и услуги;

· процессы обучения;

· общение с базами данных и знаний;

· сбор данных о состоянии здоровья;

· обеспечение досуга и развлечений;

· обеспечение справочной информацией;

· электронная почта, телеконференции;

· Интернет.

Что такое системы автоматизированного проектирования (САПР)

Системы автоматизированного проектирования (САПР) — комплексные программно-технические системы, предназначенные для выполнения проектных работ с применением математических методов.

 

Системы САПР широко используются в архитектуре, электронике, энергетике, механике и др. В процессе автоматизированного проектирования в качестве входной информации используются технические знания специалистов, которые вводят проектные требования, уточняют результаты, проверяют полученную конструкцию, изменяют ее и т.д. Кроме того, в САПР накапливается информация, поступающая из библиотек стандартов (данные о типовых элементах конструкций, их размерах, стоимости и др.). В процессе проектирования разработчик вызывает определенные программы и выполняет их. Из САПР информация выдается в виде готовых комплектов законченной технической и проектной документации.

Что такое автоматизированные системы научных исследований (АСНИ)

Автоматизированные системы научных исследований (АСНИ) предназначены для автоматизации научных экспериментов, а также для осуществления моделирования исследуемых объектов, явлений и процессов, изучение которых традиционными средствами затруднено или невозможно.

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

Большие затраты ресурсов для проведения исследований обусловили необходимость повышения эффективности всей работы.

Эффективность научных исследований в значительной степени связана с уровнем использования компьютерной техники.

Компьютеры в АСНИ используются в информационно-поисковых и экспертных системах, а также решают следующие задачи:

В результате применения АСНИ возникают следующие положительные моменты:

результаты экспериментов выводятся оперативно в наиболее удобной форме — графической или символьной (например, значения функции многих переменных выводятся средствами машинной графики в виде так называемых «горных массивов»). На экране одного графического монитора возможно формирование целой системы приборных шкал (вольтметров, амперметров и др.), регистрирующих параметры экспериментального объекта.

Какая взаимосвязь между АСНИ и САПР

Каждая из систем АСНИ и САПР, конечно, имеет свою специфику и отличается поставленными целями и методами их достижения. Однако очень часто между обоими типами систем обнаруживается тесная связь, и их роднит не только то, что они реализуются на базе компьютерной техники.

Например, в процессе проектирования может потребоваться выполнение того или иного исследования, и, наоборот, в ходе научного исследования может возникнуть потребность и в конструировании нового прибора и в проектировании научного эксперимента.

Такая взаимосвязь приводит к тому, что на самом деле «чистых» АСНИ и САПР не бывает: в каждой из них можно найти общие элементы. С повышением их интеллектуальности они сближаются. В конечном счете и те и другие должны представлять собой экспертную систему, ориентированную на решение задач конкретной области.

Что такое базы знаний и экспертные системы

База знаний (knowledge base) — совокупность знаний, относящихся к некоторой предметной области и формально представленных таким образом, чтобы на их основе можно было осуществлять рассуждения.

Базы знаний чаще всего используются в контексте экспертных систем, где с их помощью представляются навыки и опыт экспертов, занятых практической деятельностью в соответствующей области (например, в медицине или в математике). Обычно база знаний представляет собой совокупность правил вывода.

Экспертная система — это комплекс компьютерного программного обеспечения, помогающий человеку принимать обоснованные решения. Экспертные системы используют информацию, полученную заранее от экспертов — людей, которые в какой-либо области являются лучшими специалистами.

Экспертные системы должны:

Желательно также, чтобы экспертная система могла:

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

 

61. ПРИМЕНЕНИЕ

Как используются компьютеры в административном управлении

Основные применения компьютеров в административном управлении следующие.

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

Более подробно многие из перечисленных компонент описаны в главе 6 «Программное обеспечение».

Автоматизация документооборота с использованием специальных электронных устройств:

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

Отправитель сообщения прежде всего запускает программу отправки почты и создает файл сообщения. Затем это сообщение передается в систему пересылки сообщений, которая отвечает за его доставку адресатам. Спустя некоторое время сообщение доставляется адресату и помещается в его «почтовый ящик», размещенный на магнитном диске. Затем получатель запускает программу, которая извлекает полученные сообщения, заносит их в архив и т.п.

Система контроля исполнения приказов и распоряжений.

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

Пользователи обеспечиваются терминалами (обычно это дисплеи и клавиатуры ), подсоединенными к компьютеру, которые позволяют им связываться с другими членами группы. Для передачи информации между участниками совещания используются линии связи.

Работа системы регулируется координатором, в функции которого входит организация работы участников совещания, обеспечение их присутствия на совещании и передача сообщаемой ими информации другим участникам совещания.

В некоторых системах телеконференцсвязи участники имеют возможность «видеть» друг друга, что обеспечивается подсоединенными к системам телевизионными камерами и дисплеями.

Какую роль играют компьютеры в обучении

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

В информационном обществе знать "КАК" важнее, чем знать "ЧТО".

Поэтому в наше время основная задача среднего и высшего этапов образования состоит не в том, чтобы сообщить как можно больший объем знаний, а в том, чтобы научить эти знания добывать самостоятельно и творчески применять для получения нового знания. Реально это возможно лишь с введением в образовательный процесс средств новых информационных технологий (СНИТ), ориентированных на реализацию целей обучения и воспитания.

Средства новых информационных технологий — это программно-аппаратные средства и устройства, функционирующие на базе ком-пьютерной техники, а также современные средства и системы информационного обмена, обеспечивающие операции по сбору, созданию, накоплению, хранению, обработке и передачи информации.

Рассмотрим основные перспективные направления использования СНИТ в образовании [52, 53].

1. Автоматизированные обучающие системы (АОС)комплексы программно-технических и учебно-методических средств, обеспечивающих активную учебную деятельность. АОС обеспечивают не только обучение конкретным знаниям, но и проверку ответов учащихся, возможность подсказки, занимательность изучаемого материала и др.

АОС представляют собой сложные человеко-машинные системы, в которых объединяется в одно целое ряд дисциплин: дидактика (научно обосновываются цели, содержание, закономерности и принципы обучения); психология (учитываются особенности характера и душевный склад обучаемого); моделирование, машинная графика и др.

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

2. Экспертные обучающие системы (ЭОС). Реализуют обучающие функции и содержат знания из определенной достаточно узкой предметной области. ЭОС располагают возможностями пояснения стратегии и тактики решения задачи изучаемой предметной области и обеспечивают контроль уровня знаний, умений и навыков с диагностикой ошибок по результатам обучения.

3. Учебные базы данных (УБД) и учебные базы знаний (УБЗ), ориентированные на некоторую предметную область. УБД позволяют формировать наборы данных для заданной учебной задачи и осуществлять выбор, сортировку, анализ и обработку содержащейся в этих наборах информации. В УБЗ, как правило, содержатся описание основных понятий предметной области, стратегия и тактика решения задач; комплекс предлагаемых упражнений, примеров и задач предметной области, а также перечень возможных ошибок обучаемого и информация для их исправления; база данных, содержащая перечень методических приемов и организационных форм обучения.

4. Системы Мультимедиа. Позволяют реализовать интенсивные методы и формы обучения, повысить мотивацию обучения за счет применения современных средств обработки аудиовизуальной информации, повысить уровень эмоционального восприятия информации, сформировать умения реализовывать разнообразные формы самостоятельной деятельности по обработке информации.

Системы Мультимедиа широко используются с целью изучения процессов различной природы на основе их моделирования. Здесь можно сделать наглядной невидимую обычным глазом жизнь элементарных частиц микромира при изучении физики, образно и понятно рассказать об абстрактных и n-мерных мирах, доходчиво объяснить, как работает тот или иной алгоритм и т.п. Возможность в цвете и со звуковым сопровождением промоделировать реальный процесс поднимает обучение на качественно новую ступень.
Кадры учебного компьютерного фильма "Топология и механика" изображают
гиперсферу, аналог обычной сферы в четырехмерном пространстве.

5. Системы <Виртуальная реальность>.Применяются при решении конструктивно-графических, художественных и других задач, где необходимо развитие умения создавать мысленную пространственную конструкцию некоторого объекта по его графическому представлению; при изучении стереометрии и черчения; в компьютеризированных тренажерах технологических процессов, ядерных установок, авиационного, морского и сухопутного транспорта, где без подобных устройств принципиально невозможно отработать навыки взаимодействия человека с современными сверхсложными и опасными механизмами и явлениями.

6. Образовательные компьютерные телекоммуникационные сети. Позволяют обеспечить дистанционное обучение (ДО) — обучение на расстоянии, когда преподаватель и обучаемый разделены пространственно и (или) во времени, а учебный процесс осуществляется с помощью телекоммуникаций, главным образом, на основе средств сети Интернет. Многие люди при этом получают возможность повышать образование на дому (например, взрослые люди, обремененные деловыми и семейными заботами, молодежь, проживающая в сельской местности или небольших городах). Человек в любой период своей жизни обретает возможность дистанционно получить новую профессию, повысить свою квалификацию и расширить кругозор, причем практически в любом научном или учебном центре мира.

В образовательной практике находят применение все основные виды компьютерных телекоммуникаций: электронная почта, электронные доски объявлений, телеконференции и другие возможности Интернета. ДО предусматривает и автономное использование курсов, записанных на видеодиски, компакт-диски и т.д. Компьютерные телекоммуникации обеспечивают:

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

Какую роль играют компьютеры в управлении технологическими процессами?

Основных применений два:

В гибких автоматизированных производствах компьютеры (или микропроцессоры) решают следующие задачи:

Применение компьютеров в управлении технологическими процессами оправдано тогда, когда существует потребность в частых изменениях реализуемых функций. Пример гибких автоматизированных производств — заводы-роботы в Японии.

Одной из новых областей является создание на основе персональных компьютеров контрольно-измерительной аппаратуры, с помощью которой можно проверять изделия прямо на производственной линии.

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

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

Применение компьютеров в качестве контрольно-измерительных приборов более эффективно, чем выпуск в ограниченных количествах специализированных приборов с вычислительными блоками.

Автоматизированное рабочее место (АРМ, рабочая станция) — место оператора, которое оборудовано всеми средствами, необходимыми для выполнения определенных функций.

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

Какую роль играют компьютеры в медицине?

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

Компьютерная аппаратура широко используется при постановке диагноза, проведении обследований и профилактических осмотров. Примеры компьютерных устройств и методов лечения и диагностики:

n компьютерная томография и ядерная медицинская диагностика — дают точные послойные изображения структур внутренних органов;
  n ультразвуковая диагностика и зондирование— используя эффекты взаимодействия падающих и отраженных ультразвуковых волн, открывает бесчисленные возможности для получения изображений внутренних органов и исследования их состояния;
n микрокомпьютерные технологии рентгеновских исследований — запомненные в цифровой форме рентгеновские снимки могут быть быстро и качественно обработаны, воспроизведены и занесены в архив для сравнения с последующими снимками этого пациента;
n задатчик (водитель) сердечного ритма;
n устройства дыхания и наркоза;
n лучевая терапия с микропроцессорным управлением — обеспечивает возможность применения более надежных и щадящих методов облучения;
n устройства диагностики и локализации почечных и желчных камней, а также контроля процесса их разрушения при помощи наружных ударных волн (литотрипсия);