extracted_text:
билет 4 тема 2
Классификация и краткая характеристика языков программирования.
Существующие языки программирования классифицируют по четырём основным группам: процедурные,
объектно ориентированные, функциональные и логические.
Процедурное программирование  такое программирование, когда программа отделена от данных и
состоит из последовательности команд, обрабатывающих данные. Данные как правило хранятся в виде
переменных. Весь процесс вычисления сводится к изменению их содержимого.
Декларативные языки программирования  это языки объявлений и построения структур. К ним
относятся функциональные и логические языки программирования. В этих языках не производится
алгоритмических действий явно, то есть алгоритм не задается прграммистом, а строится самой
программой. В декларативных языках задается, производится построение какойлибо структуры или
системы, то есть декларируются (объявляются) какието свойства создаваемого объекта. Эти языки
получили широкое применение в системах автоматизированного проектирования (САПР), в так
называемых CADпакетах, в моделировнии, системах исккусственного интеллекта.
Объектноориентированное программирование  в этих языках переменные и функции группируются
в так называемые классы (шаблоны). Благодаря этому достигается более высокий уровень
структуризации программы. Объекты, порождённые от классов вызывают методы (функции или
процедуры) друг друга и меняют таким образом состояние свойств (переменных). С формально
математической стороны объектно ориентированный способ написания программ базируется на
процедурной модели программирования, но с содержательной стороны ООП базируется не на функции, а
на объекте, как целостной системе, имеющей стандартный автоматический межобъектный интерфейс.
Сетевые языки  языки, предназначенные для организации взаимодействия удаленных компьютеров в
интенсивном интерактивном режиме, а поэтому они построены на принципах интерпретации, то есть
построчной, интерактивной обработки строк программного кода, описывающего некоторый сценарий
(скрипт) сетевого взаимодействия компьютеров, поэтому часто они называются скриптовыми языками,
хотя скриптовые языки не обязательно являются сетевыми, к примеру, пакетные командные языки
различных операционных сред.
Машинно  ориентированные языки  это языки, наборы операторов и изобразительные средства
которых существенно зависят от особенностей ЭВМ (внутреннего языка, структуры памяти и т.д.).
Машинно ориентированные языки позволяют использовать все возможности и особенности Машинно
зависимых языков:







высокое качество создаваемых программ (компактность и скорость выполнения);
возможность использования конкретных аппаратных ресурсов;
предсказуемость объектного кода и заказов памяти;
для составления эффективных программ необходимо знать систему команд и особенности
функционирования данной ЭВМ;
трудоемкость процесса составления программ ( особенно на машинных языках и ЯСК), плохо
защищенного от появления ошибок;
низкая скорость программирования;
невозможность непосредственного использования программ, составленных на этих языках, на
ЭВМ других типов.
Машинноориентированные языки по степени автоматического программирования подразделяются на
классы.
Машинный язык
Как уже упоминалось в введении, отдельный компьютер имеет свой определенный Машинный язык
(далее МЯ), ему предписывают выполнение указываемых операций над определяемыми ими операндами,
поэтому МЯ является командным. Однако, некоторые семейства ЭВМ (например, ЕС ЭВМ, IBM370 и
др.) имеют единый МЯ для ЭВМ разной мощности. В команде любого из них сообщается информация о
местонахождении операндов и типе выполняемой операции.
В новых моднлях ЭВМ намечается тенденция к повышению внутренних языков машинно  аппаратным
путем реализовывать более сложные команды, приближающиеся по своим функциональным действиям к
операторам алгоритмических языков программирования. Языки Символического Кодирования
Продолжим рассказ о командных языках, Языки Символического Кодирования (далее ЯСК), так же,
как и МЯ, являются командными. Однако коды операций и адреса в машинных командах,
представляющие собой последовательность двоичных (во внутреннем коде) или восьмеричных (часто
используемых при написании программ) цифр, в ЯСК заменены на символы (идентификаторы), форма
написания которых помогает программисту легче запоминать смысловое содержание операции. Это
обеспечивает существенное уменьшение числа ошибок при составлении программ.
Использование символических адресов  первый шаг к созданию ЯСК. Команды ЭВМ вместо истинных
(физических) адресов содержат символические адреса. По результатам составленной программы
определяется требуемое количество ячеек для хранения исходных промежуточных и результирующих
значений. Назначение адресов, выполняемое отдельно от составления программы в символических
адресах, может проводиться менее квалифицированным программистом или специальной программой,
что в значительной степени облегчает труд программиста.
Автокоды
Есть также языки, включающие в себя все возможности ЯСК, посредством расширенного введения
макрокоманд  они называются Автокоды.
В различных программах встречаются некоторые достаточно часто использующиеся командные
последовательности, которые соответствуют определенным процедурам преобразования информации.
Эффективная реализация таких процедур обеспечивается оформлением их в виде специальных
макрокоманд и включением последних в язык программирования , доступный программисту.
Макрокоманды переводятся в машинные команды двумя путями  расстановкой и генерированием. В
постановочной системе содержатся "остовы"  серии команд, реализующих требуемую функцию,
обозначенную макрокомандой. Макрокоманды обеспечивают передачу фактических параметров,
которые в процессе трансляции вставляются в "остов" программы, превращая её в реальную машинную
программу.
В системе с генерацией имеются специальные программы, анализирующие макрокоманду, которые
определяют, какую функцию необходимо выполнить и формируют необходимую последовательность
команд, реализующих данную функцию.
Обе указанных системы используют трансляторы с ЯСК и набор макрокоманд, которые также являются
операторами автокода.
Развитые автокоды получили название Ассемблеры. Сервисные программы и пр., как правило,
составлены на языках типа Ассемблер. Более полная информация об языке Ассемблера см. ниже.
Макрос
Язык, являющийся средством для замены последовательности символов описывающих выполнение
требуемых действий ЭВМ на более сжатую форму  называется Макрос (средство замены).
В основном, Макрос предназначен для того, чтобы сократить запись исходной программы. Компонент
программного обеспечения, обеспечивающий функционирование макросов, называется
макропроцессором. На макропроцессор поступает макроопределяющий и исходный текст. Реакция
макропроцессора на вызоввыдача выходного текста.
Макрос одинаково может работать, как с программами, так и с данными.
Машинно  независимые языки  это средство описания алгоритмов решения задач и информации,
подлежащей обработке. Они удобны в использовании для широкого круга пользователей и не требуют от
них знания особенностей организации функционирования ЭВМ и ВС.
Подобные языки получили название высокоуровневых языков программирования. Программы,
составляемые на таких языках, представляют собой последовательности операторов, структурированные
согласно правилам рассматривания языка(задачи, сегменты, блоки и т.д.). Операторы языка описывают
действия, которые должна выполнять система после трансляции программы на МЯ.
Т.о., командные последовательности (процедуры, подпрограммы), часто используемые в машинных
программах, представлены в высокоуровневых языках отдельными операторами. Программист получил
возможность не расписывать в деталях вычислительный процесс на уровне машинных команд, а
сосредоточиться на основных особенностях алгоритма. Проблемно  ориентированные языки
С расширением областей применения вычислительной техники возникла необходимость формализовать
представление постановки и решение новых классов задач. Необходимо было создать такие языки
программирования, которые, используя в данной области обозначения и терминологию, позволили бы
описывать требуемые алгоритмы решения для поставленных задач, ими стали проблемно
ориентированные языки. Эти языки, ориентированные на решение определенных проблем, должны
обеспечить программиста средствами, позволяющими коротко и четко формулировать задачу и получать
результаты в требуемой форме.
Проблемных языков очень много, например:
Фортран, Алгол  языки, созданные для решения математических задач;
Simula, Слэнг  для моделирования;
Лисп, Снобол  для работы со списочными структурами.
Об этих языках рассказано дальше.
Универсальные языки
Универсальные языки были созданы для широкого круга задач: коммерческих, научных,
моделирования и т.д. Первый универсальный язык был разработан фирмой IBM, ставший в
последовательности языков Пл/1. Второй по мощности универсальный язык называется Алгол68. Он
позволяет работать с символами, разрядами, числами с фиксированной и плавающей запятой. Пл/1 имеет
развитую систему операторов для управления форматами, для работы с полями переменной длины, с
данными организованными в сложные структуры, и для эффективного использования каналов связи.
Язык учитывает включенные во многие машины возможности прерывания и имеет соответствующие
операторы. Предусмотрена возможность параллельного выполнение участков программ.
Программы в Пл/1 компилируются с помощью автоматических процедур. Язык использует многие
свойства Фортрана, Алгола, Кобола. Однако он допускает не только динамическое, но и управляемое и
статистическое распределения памяти.
Диалоговые языки
Появление новых технических возможностей поставило задачу перед системными программистами
создать программные средства, обеспечивающие оперативное взаимодействие человека с ЭВМ их
назвали диалоговыми языками.
Эти работы велись в двух направлениях. Создавались специальные управляющие языки для обеспечения
оперативного воздействия на прохождение задач, которые составлялись на любых раннее
неразработанных (не диалоговых) языках. Разрабатывались также языки, которые кроме целей
управления обеспечивали бы описание алгоритмов решения задач.
Необходимость обеспечения оперативного взаимодействия с пользователем потребовала сохранения в
памяти ЭВМ копии исходной программы даже после получения объектной программы в машинных
кодах. При внесении изменений в программу с использованием диалогового языка система
программирования с помощью специальных таблиц устанавливает взаимосвязь структур исходной и
объектной программ. Это позволяет осуществить требуемые редакционные изменения в объектной
программе.
Одним из примеров диалоговых языков является Бэйсик.
Бэйсик использует обозначения подобные обычным математическим выражениям. Многие операторы
являются упрощенными вариантами операторов языка Фортран. Поэтому этот язык позволяет решать
достаточно широкий круг задач.
Непроцедурные языки
Непроцедурные языки составляют группу языков, описывающих организацию данных, обрабатываемых
по фиксированным алгоритмам (табличные языки и генераторы отчетов), и языков связи с
операционными системами.
Позволяя четко описывать как задачу, так и необходимые для её решения действия, таблицы решений
дают возможность в наглядной форме определить, какие условия должны быть выполнены прежде чем
переходить к какомулибо действию. Одна таблица решений, описывающая некоторую ситуацию,
содержит все возможные блоксхемы реализаций алгоритмов решения.
Табличные методы легко осваиваются специалистами любых профессий. Программы, составленные на табличном языке, удобно описывают сложные ситуации, возникающие при
системном анализе.

file_name: билет 4 тема 2.docx

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

title: Лекция "Классификация и краткая характеристика языков программирования."


extracted_text:
билет 5 тема 1
20 Понятие и классификация информационных технологий.

Определение информационной технологии
Технология при переводе с греческого (techne) означает искусство, мастерство, умение, а
это не что иное, как процессы. Под процессом следует понимать определенную
совокупность действий, направленных на достижение поставленной цели. Процесс должен
определяться выбранной человеком стратегией и реализовываться с помощью
совокупности различных средств и методов.
Информационная технология — процесс, использующий совокупность средств и методов
сбора, обработки и передачи данных (первичной информации) для получения информации
нового качества о состоянии объекта, процесса или явления (информационного продукта).
Цель информационной технологии — производство информации для ее анализа человеком
и принятия на его основе решения по выполнению какоголибо действия. Известно, что,
применяя разные технологии к одному и тому же материальному ресурсу, можно получить
разные изделия, продукты. То же самое будет справедливо и для технологии переработки
информации.
Новая информационная технология
Информационная технология является наиболее важной составляющей процесса
использования информационных ресурсов общества. К настоящему времени она прошла
несколько эволюционных этапов, смена которых определялась главным образом развитием
научнотехнического прогресса, появлением новых технических средств переработки
информации. В современном обществе основным техническим средством технологии
переработки информации служит персональный компьютер, который существенно повлиял
как на концепцию построения и использования технологических процессов, так и на
качество результатной информации. Внедрение персонального компьютера в
информационную сферу и применение телекоммуникационных средств связи определили
новый этап развития информационной технологии и, как следствие, изменение ее названия
за счет присоединения одного из синонимов: "новая", "компьютерная" или "современная".
Прилагательное "новая" подчеркивает новаторский, а не эволюционный характер этой
технологии. Ее внедрение является новаторским актом в том смысле, что она существенно
изменяет содержание различных видов деятельности в организациях. В понятие новой
информационной технологии включены также коммуникационные технологии, которые
обеспечивают передачу информации разными средствами, а именно — телефон, телеграф,
телекоммуникации, факс и др. В таблице 1 приведены основные характерные черты новой
информационной технологии.
Методология
Основной признак
Результат
Принципиально новые средства
обработки информации
Целостные технологические
системы
Целенаправленные создание,
передача, хранение и
отображение информации
"Встраивание" в технологию
управления
Интеграция функций
специалистов и менеджеров
Учет закономерностей
социальной среды
Новая технология
коммуникаций
Новая технология обработки
информации
Новая технология принятия
управленческих решений
Таблица 1  Основные характеристики новой информационной технологии
Новая информационная технология — информационная технология с "дружественным" интерфейсом работы пользователя, использующая персональные компьютеры и
телекоммуникационные средства.
Прилагательное "компьютерная" подчеркивает, что основным техническим средством ее
реализации является компьютер.
Основные принципы новой (компьютерной) информационной технологии:
интерактивный (диалоговый) режим работы с компьютером;
интегрированность (стыковка, взаимосвязь) с другими программными продуктами;
гибкость процесса изменения как данных, так и постановок задач.
Инструментарий информационной технологии
Для информационной технологии техническими средствами производства информации
будет являться аппаратное, программное и технологическое обеспечение этого процесса. С
их помощью производится переработка первичной информации в информацию нового
качества. Выделим отдельно из этих средств программные продукты и назовем их
инструментарием информационной технологии. Определим это понятие.
Инструментарий информационной технологии — один или несколько взаимосвязанных
программных продуктов, установленных на компьютере, технология работы с которыми
позволяет достичь поставленную пользователем цель.
В качестве инструментария можно использовать следующие распространенные виды
программных продуктов для персонального компьютера: программы офисного назначения,
пакеты графических программ, программы для обработки звуковой и видео  информации,
информационные системы функционального назначения (финансовые, бухгалтерские, для
маркетинга и пр.), экспертные системы и т.д.
Классификация информационных технологий
Классификация по типу интерактивности
Для того, чтобы правильно понять, оценить, грамотно разработать и использовать
информационные технологии в различных сферах жизни общества необходима их
предварительная классификация.
Классификация информационных технологий зависит от критерия классификации. В
качестве критерия может выступать показатель или совокупность признаков, влияющих на
выбор той или иной информационной технологии. Примером такого критерия может
служить пользовательский интерфейс (совокупность приемов взаимодействия с
компьютером), реализующийся операционной системой.
ИТ разделяются на две большие группы: технологии с избирательной и с полной
интерактивностью. ИТ с избирательной интерактивностью принадлежат все технологии,
обеспечивающие хранение информации в структурированном виде. Сюда входят банки и
базы данных и знаний, видеотекст, телетекст, интернет и т.д. Эти технологии
функционируют в избирательном интерактивном режиме и существенно облегчают доступ
к огромному объему структурируемой информации. В данном случае пользователю
разрешается только работать с уже существующими данными, не вводя новых.
ИТ с полной интерактивностью содержит технологии, обеспечивающие прямой доступ к
информации, хранящейся в информационных сетях или какихлибо носителях, что
позволяет передавать, изменять и дополнять ее.
Классификация по области применения и по степени использования в них компьютеров
Информационные технологии следует классифицировать прежде всего по области
применения и по степени использования в них компьютеров. Различают такие области
применения информационных технологий, как наука, образование, культура, экономика,
производство, военное дело и т. п.
По степени использования в информационных технологиях компьютеров различают
компьютерные и бескомпьютерные технологии. В области образования информационные
технологии применяются для решения двух основных задач: обучения и управления.
Соответственно paзличают компьютерные и бескомпьютерные технологии обучения, компьютерные и бескомпьютерные технологии управления образованием.
В обучении информационные технологии могут быть использованы, вопервых, для
предъявления учебной информации обучающимся, вовторых, для контроля успешности ее
усвоения. С этой точки зрения информационные; технологии, используемые в обучении,
делятся на две группы: технологии предъявления учебной информации и технологии
контроля знаний.
К числу бескомпьютерных информационных технологий предъявления учебной
информации относятся бумажные, оптотехнические, электроннотехнические технологии.
Они отличаются друг от друга средствами предъявления учебной информации и
соответственно делятся на бумажные, оптические и электронные. К бумажным средствам
обучения относятся учебники, учебные и учебнометодические пособия; к оптическим
эпипроекторы, диапроекторы, графопроекторы, кинопроекторы, лазерные указки; к
электронным телевизоры и проигрыватели лазерных дисков.
К числу компьютерных информационных технологий предъявления учебной информации
относятся:
технологии, использующие компьютерные обучающие программы;

 мультимедия технологии;

технологии дистанционного обучения.
Компоненты информационной технологии
В любой технологии, в том числе и в информационной, всегда следует начинать с
определения цели. Затем следует провести структурирование всех предполагаемых
действий, приводящих к намеченной цели, и выбрать необходимый программный
инструментарий.
На рисунке 1  технологический процесс переработки информации представлен в виде
иерархической структуры по уровням:

Рисунок 1  Представление информационной технологии в виде иерархической структуры.
1й уровень – этапы, где реализуются сравнительно длительные технологические
процессы, состоящие из операций и действий последующих уровней.
Пример 1. Как следует понимать этап информационной технологии. Технология создания
шаблона формы документа в среде текстового процессора Word состоит из следующих
этапов:
этап 1 — создание постоянной части формы в виде текстов и таблиц;
этап 2 — создание постоянной части формы в виде кадра, куда затем помещается рисунок;
этап 3 — создание переменной части формы;
этап 4 — защита и сохранение формы.
2й уровень – операции, в результате выполнения которых будет создан конкретный объект
в выбранной на первом уровне программной среде.
Пример 2. Как следует понимать операцию информационной технологии. Рассмотрим этап
2 технологии создания постоянной части формы документа в виде кадра в среде
текстового процессора Word, который состоит из следующих операций:
операция 1 — создание кадра; операция 2 — настройка кадра;
операция 3 — внедрение в кадр рисунка.
3й уровень – действия – совокупность стандартных для каждой программной среды
приемов работы, приводящих к выполнению поставленной в соответствующей операции
цели. Каждое действие изменяет содержание экрана.
Информационная технология должна отвечать следующим требованиям:



обеспечивать высокую степень расчленения всего процесса обработки информации
на этапы (фазы), операции, действия;
включать весь набор элементов, необходимых для достижения поставленной цели;
иметь регулярный характер. Этапы, действия, операции технологического процесса
могут быть стандартизированы и унифицированы, что позволит более эффективно
осуществлять целенаправленное управление информационными процессами.

file_name: билет 5 тема 1.docx

информатика

group: Дисциплины

title: Лекция "Понятие и классификация информационных технологий. "


extracted_text:
Экономическое воспитание  – это систематическое, целенаправленное,
воздействие общества на человека в интересах формирования знаний, умений
и навыков, потребностей и интересов и других социальнопсихологических
качеств,   а   главное   –   образа   мышления   и   деятельности,   в   выработке
определенных   черт   экономически   воспитанной   личности,   соответствующих
природе рынка.
Экономическое   воспитание   –   это   организационная   педагогическая
деятельность,   специально   разработанная   система   работы,   направленная   на
формирование   экономического   сознания   учащихся.
  Экономическое
воспитание   следует   начинать   еще   в   начальной   школе,   так   как   именно   в
младшем школьном возрасте закладывается основа будущего формирования
личности. Бережливость, организованность, рачительность и другие качества
человека   следует   воспитывать   с   детских   лет.   Следовательно,   процесс
экономического  воспитания школьников, начиная с младших, должен быть
целенаправленным   и   систематическим,   что   во   многом   зависит   от
психологической и педагогической готовности к этому.
Экономическое   воспитание   школьников   органически   связано   с
образованием,   многие   его   задачи   решаются   в   процессе   обучения   как
важнейшего воспитательного процесса.
Благодаря экономическому воспитанию, младшие школьники познают
значение   природных   ресурсов   для   человека   и   проникаются   бережным
разумным   отношением   людей   к   природе.   Получают   элементарные
представления   о   видах   собственности,   семейных   доходах   и   расходах,
разумных   тратах,   карманных   деньгах   и   рациональном   их   расходовании,
стоимости   школьного   имущества,   учебников,   расходов   на   ремонт   здания
школы, ее оборудования и т. п.
Активность   экономического   воспитания   младшего   школьника   в
процессе обучения тесно связана с его интересом к предмету. Только в этом
случае он принимает активное участие в обсуждении поставленных учителем
вопросов,   внимателен   к   изучаемому   материалу,   заданиям   учителя,
формулировке   выводов   и   правил.   Интерес   как   нельзя   лучше   помогает
запоминанию   и   повышает   работоспособность.   Именно   поэтому   в   создании
учебников по экономике для младших школьников использована сказка. По
ходу   слушания   сказки   ребята   обсуждают,   дискутируют,   запоминают
экономические термины. Занимательные   задания   (ребусы,   загадки,   шарады,   кроссворды,
логические задачи) развивают память, мышление и закрепляют знания.
Учитывая психологические и возрастные особенности младших школьников,
их наглядно образное мышление, в программу курса введены экскурсии на
предприятия города, в банк, в страховую компанию, в музей. Для некоторых
заданий   необходимы   творческие   тетрадиальбомы.   Для   запоминания   и
правильного написания, произношения экономических терминов можно вести
«Словарик», который дети сами сделают на уроках технологии.
Для   эффективной   работы   по   данному   курсу   важна   тесная   связь   с
родителями.   Их   необходимо   посвящать   в   то,   происходит   на   занятиях,
вовлекать   в  учебный   процесс,  создавая   условия   для   их   непосредственного
участия   в   расширении   представлений   детей   о   различных   аспектах
экономической жизни семьи, города, страны. Этому могут способствовать и
специальные домашние задания, при выполнении которых детям предлагается
обращаться   за   помощью   к   родителям:   консультироваться,   обсуждать
возможные   варианты   решений   и   способы   их   доказательства.   При   работе   с
родителями   предлагаются   различные   формы:   устная   или   письменная
информация   о   содержании   курса,   о   результатах   занятий,   консультации,
собрания,   конференции,   участие   в   конкурсах,   дискуссионный   клуб,   обмен
опытом между родителями.
Потенциальные   возможности   учащихся   младшего   школьного   возраста
позволяют   осуществлять   их   экономическое   воспитание.
  При
целенаправленном   педагогическом   руководстве   этим   процессом   дети
усваивают экономические понятия на разных уровнях: от представлений до
осознания   сущности   этих   понятий,   приобретают   экономические   умения
допрофессионалъного   характера,   у   них   формируются   такие   качества
личности, как бережливость и организованность.
Таким   образом,   экономическое   воспитание   в   младшем   школьном
возрасте при условии эффективного педагогического руководства является
фундаментом для осуществления экономического воспитания в последующие
возрастные периоды.

file_name: ЭВ мл. шк..docx

intro: Лекция "Экономическое воспитание младших школьников" предназначена для студентов специальности "Преподавание в начальных классах" и помогает им осознать, что экономическое воспитание – это организационная педагогическая деятельность, специально разработанная система работы, направленная на формирование экономического сознания обучающихся, а также на понимание того, что экономическое воспитание следует начинать еще в начальной школе, так как именно в младшем школьном возрасте закладывается основа будущего формирования личности.вордовский документ

классное руководство

group: Педагогика

title: лекция "Экономическое воспитание младших школьников"


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

На первом этапе первичным документом является постановка задачи, объединяющая:
• общую характеристику задачи (назначение, экономическая эффективность, структура объектов);
• описание входных данных (структура и способ поступления);
• описание выходных данных;
• существующие к данному моменту алгоритмы получения выходных данных на основе входных;
• источники разработки (откуда появилась вся информация).
Результатом первого этапа является техническое задание, в котором, как правило, содержатся название
системы, цели создания, характеристика области применения, требования к системе в целом (интерфейс,
особые требования к отдельным модулям, безопасность, и т.д.), информационная база (структура базы
данных, с которой будет взаимодействовать программная система), программное обеспечение
(обоснование выбора языка программирования), техническое обеспечение, описание данных для
тестирования.
На основании технического задания формируются спецификации – описание количества и режимов
работы модулей, их взаимодействия. На этапе проектирования разрабатываются алгоритмы, задаваемые спецификациями, и формируется
общая структура будущей программы путем детальной проработки последовательности ее действий.
Для разработки алгоритмов сложных программ используется метод пошаговой детализации, при котором
процесс преобразования исходных данных в результат вначале представляется в виде
последовательности небольшого числа простых этапов (задач). На следующем шаге задачи разбиваются
на последовательность подзадач следующего уровня и т.д. Детализация заканчивается, когда каждый
отдельный этап может быть записан на выбранном языке программирования, или представляет собой
известную задачу, для которой уже имеется готовая программа. Формальное описание алгоритмов
осуществляется, например, с использованием языка схем или псевдокода.
Кодирование представляет собой реализацию разработанных алгоритмов, составление по ним текстов
программы с использованием конкретного языка программирования. Включает процесс трансляции –
перевода программы в последовательность машинных команд (машинный код).
При автономном тестировании каждый модуль проверяется отдельно. При этом программная среда
модуля имитируется с помощью программы управления тестированием, содержащей фиктивные
программы вместо реальных подпрограмм, к которым имеется обращение из данного модуля.
При комплексном тестировании производится совместная проверка групп программных компонентов.
В процессе тестирования происходит оптимизация системы (разгрузка участков повторяемости – циклов,
замена сложных операций на более простые, экономия памяти и т.д.).
Большая часть расходов, затрачиваемых в течение жизненного цикла системы, приходится на
эксплуатацию и сопровождение.
Причины выпуска новых версий (модификаций) ПО:
• необходимость исправления ошибок, выявленных в процессе эксплуатации;
• необходимость совершенствования, например, улучшения интерфейса или расширения состава,
выполняемых функций;
• изменение среды (появление новых технических средств и/или программных продуктов).



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

действия, направленные на выявление ошибок (тестирование);

диагностику и локализацию ошибок (определение характера ошибок и их местонахождение);

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

. Попытки с помощью

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

ствовать тестируемая программа;
отсутствие эталона (программы), которому должна соответ

высокая сложность программ и принципиальная невозможность исчерпывающего тестирования;

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

в результате очеред
образом, тестовый набор данных должен включать в себя два компонента: описание входных данных,
описание точного и кор
сложно, а в некоторых случаях и невозможно реализовать на практике. Сложность его заключается в том,
что при тестировании программы (модуля) необходимо для каждого входного набора данных рассчитать
вручную ожидаемый результат или найти допустимый интервал изменения выходных данных. Процесс
этот трудоемкий даже для небольших программ, так как он требует ручных расчетов, следуя логике
алгоритма программы. Из рассмотренного принципа, который трудно реализуем, но которого следует
придерживаться логически, вытекает следующий.
3. Необходимо изучить результаты каждого теста. Из практики следует, что значительная часть
обнаруженных ошибок могла быть выявлена в результате первых тестовых прогонов, но они были
пропущены вследствие недостаточно тщательного анализа их результатов.
4. Тесты для неправильных и непредусмотренных входных данных должны разрабатываться также
тщательно, как для правильных и предусмотренных. Согласно этому принципу при обработке данных,
выходящих за область допустимых значений, в тестируемой программе должна быть предусмотрена
диагностика в виде сообщений. Если сообще
алгоритму отсутствует, и программа завершается аварийно или ведет себя непредсказуемо, то такая
программа не может считаться работоспособной и требует существенной доработки. Тестовые наборы
данных из области недопустимых входных значений обладают большей обнаруживающей способностью,
чем тесты, соответствующие корректным входным данным.
5. Необходимо проверять не только, делает ли программа то, для чего она предназначена, но и не делает
ли она того, чего не должна делать. Это утверждение логически вытекает из предыдущего. Необходимо
любую программу проверить на нежелательные побочные эффекты.
6. Следует тщательнее проверять те участки программ, где обнаруживается больше ошибок.
Утверждается, что вероятность наличия необнаруженных ошибок в какойлибо части программы
пропорциональна числу ошибок, уже обнаруженных в этой части. Возможно, что те части программы, где
при тестировании обнаружено большее число ошибок, либо были слабо проработаны с точки зрения
системного анализа, либо разрабатывались программистами более низкой квалификации.
ректного результата, соответствующего набору входных данных. Этот принцип
ние о причине невозможности обработки по предложенному

Методы отладки программного обеспечения Для локализации и установки точной природы ошибки в программе используют статические и
динамические методы отладки программ.
К статическим методамотносятся методы отладки, при которых не требуется выполнение
отлаживаемой программы на ЭВМ. Они обычно требуют больших усилий от программиста и
незначительных затрат машинного времени. Они универсальны и пригодны для отладки программ,
написанных на любом языке программирования и используемых на любой ЭВМ. Статические методы
включают:
 ручную прокрутку программы;
 прокрутку    программы    программными   анализаторами   ( например,  компилятором);
автоматизированный анализ программы в этом случае проводится без выполнения ее на ЭВМ и поэтому
попадает в категорию «статических»;
   коллективную проверку программ;
   проверку программы программистомтехнологом с целью выявления и исправления в ней
технологических ошибок.
Экспериментально установлено, что в программах ручными методами удается обнаруживать от 30 до 70
% программных и алгоритмических ошибок из общего числа ошибок, выявленных при отладке. При этом
одновременно осуществляется доработка программ с целью улучшения их структуры, логики обработки
данных и для снижения сложности последующего автоматизированного тестирования на ЭВМ.
Динамические методысвязаны со значительным расходом машинного времени и, возможно, не
меньшими затратами труда программиста. В этом случае отладка программ происходит совместно с их
выполнением на ЭВМ. Динамические методы отладки программ, как правило, привязаны к конкретной
ЭВМ и к конкретному транслятору (компилятору).
К динамическим методам относятся:
   тестирование;
   поиск ошибок с использованием системных средств;
    отладка программы в интерактивном режиме.
Важнейшее правило отладки: не делать следующего выхода на ЭВМ, пока не будет разобрана каждая
найденная ошибка. Из этого правила существует единственное исключение: если найдены 5—6 ошибок,
которые не дают эффекта, то можно сделать новый выход на машину (устранив эти ошибки), чтобы
получить эффект в чистом виде (если он есть),поскольку наложение нескольких ошибок иногда может
дать самый неожиданный результат.
Если программист исчерпал все возможности поиска ошибки, но не нашел ее, то как крайнее средство,
можно сделать выход на машину, ничего не изменив в программе, но добавив печати, выдающие значения
идентификаторов, участвующих в формировании неверного значения. И снова произвести анализ
полученных результатов. Квалификация программиста в области отладки определяется тем, сколько
информации об ошибках он сможет получить из одной выдачи ЭВМ.
едостаточно выполнить проектирование и кодирование программного продукта, также необходимо
обеспечить его соответствие требованиям и спецификациям. Многократно проводимые исследования
показали, что чем раньше обнаруживаются те или иные несоответствия или ошибки, тем больше
вероятность их исправления и ниже его стоимость [4]. Современные технологии разработки ПО преду
сматривают раннее обнаружение ошибок за счет выполнения контроля результатов всех этапов и стадий
разработки. На начальных этапах контроль осуществляют вручную или с использованием CASEсредств,
на последних  он принимает форму тестирования.
Тестирование  это процесс выполнения программы, целью которого является выявление ошибок.
Никакое тестирование не может доказать отсутствие ошибок в сложном ПО, поскольку выполнение
полного тестирования становится невозможным и имеется вероятность, что остались невыявленные
ошибки. Соблюдение основных правил тестирования и научно обоснованный подбор тестов может
уменьшить их количество. Процесс разработки согласно современной модели жизненного цикла ПО
предполагает три стадии тестирования: автономное тестирование компонентов ПО; комплексное
тестирование разрабатываемого ПО; системное или оценочное тестирование на соответствие основным
критериям качества. Для повышения качества тестирования рекомендуется соблюдать следующие
основные принципы:
предполагаемые результаты должны быть известны до тестирования;
следует избегать тестирования программы автором;
необходимо досконально изучать результаты каждого теста; необходимо проверять действия программы на неверных данных;
необходимо проверять программу на неожиданные побочные эффекты на неверных данных.
Вероятность наличия необнаруженных ошибок в части программы пропорциональна количеству ошибок
уже найденных в этой части. Удачным считают тест, который обнаруживает хотя бы одну ошибку.
Формирование набора тестов имеет большое значение, поскольку тестирование является одним из
наиболее трудоемких этапов создания ПО. Доля стоимости тестирования в общей стоимости разработки
возрастает при увеличении сложности ПО и повышении требований к их качеству.
Существуют два принципиально различных подхода к формированию тестовых наборов: структурный и
функциональный. Структурный подход базируется на том, что известна структура тестируемого ПО, в
том числе его алгоритмы («стеклянный ящик»). Тесты строятся для проверки правильности реализации
заданной логики в коде программы. Функциональный подход основывается на том, что структура ПО
не известна («черный ящик»). В этом случае тесты строят, опираясь на функциональные спецификации.
Этот подход называют также подходом, управляемым данными, так как при его использовании тесты
строят на базе различных способов декомпозиции множества данных. Наборы тестов, полученные в
соответствии с методами этих подходов, объединяют, обеспечивая всестороннее тестирование ПО.
Ручной контроль используют на ранних этапах разработки. Все проектные решения анализируются с
точки зрения их правильности и целесообразности как можно раньше, пока их можно легко
пересмотреть. Различают статический и динамический подходы к ручному контролю. При статическом
подходе анализируют структуру, управляющие и информационные связи программы, ее входные и
выходные данные. При динамическом  выполняют ручное тестирование (вручную моделируют процесс
выполнения программы на заданных исходных данных). Исходными данными для таких проверок
являются: техническое задание, спецификации, структурная и функциональная схемы программного
продукта, схемы отдельных компонентов, а для более поздних этапов  алгоритмы и тексты программ, а
также тестовые наборы. Доказано, что ручной контроль способствует существенному увеличению
производительности и повышению надежности программ и с его помощью можно находить от 30 до 70 %
ошибок логического проектирования и кодирования. Основными методами ручного контроля являются:
инспекции исходного текста, сквозные просмотры, проверка за столом, оценки программ.
В основе структурного тестирования лежит концепция максимально полного тестирования всех
маршрутов, предусмотренных алгоритмом (последовательности операторов программы, выполняемых
при конкретном варианте исходных данных). Недостатки: построенные тестовые наборы не
обнаруживают пропущенных маршрутов и ошибок, зависящих от заложенных данных; не дают гарантии,
что программа правильна.
Другим способом проверки программ является функциональное тестирование: программа
рассматривается как «черный ящик», целью тестирования является выяснение обстоятельств, когда
поведение программы не соответствует спецификации. Для обнаружения всех ошибок необходимо
выполнить исчерпывающее тестирование (при всех возможных наборах данных), что для большинства
случаев невозможно. Поэтому обычно выполняют «разумное» или «приемлемое» тестирование,
ограничивающееся прогонами программы на небольшом подмножестве всех возможных входных данных.
При функциональном тестировании различают следующие методы формирования тестовых наборов:
эквивалентное разбиение; анализ граничных значений; анализ причинноследственных связей;
предположение об ошибке.
При комплексном тестировании используют тесты, построенные по методам эквивалентных классов,
граничных условий и предположении об ошибках, поскольку структурное тестирование для него не при
менимо. Одним из самых сложных является вопрос о завершении тестирования, так как невозможно
гарантировать, что в программе не осталось ошибок. Часто тестирование завершают потому, что
закончилось время, отведенное на его выполнение. Его сворачивают, обходясь минимальным
тестированием [15], которое предполагает: тестирование граничных значений, тщательную проверку
руководства, тестирование минимальных конфигураций технических средств, возможности
редактирования команд и повторения их в любой последовательности, устойчивости к ошибкам
пользователя.
После завершения комплексного тестирования приступают к оценочному тестированию, целью
которого является поиск несоответствий техническому заданию. Оценочное тестирование включает тестирование: удобства использования, на предельных объемах, на предельных нагрузках, удобства
эксплуатации, защиты, производительности, требований к памяти, конфигурации оборудования,
совместимости, удобства установки, удобства обслуживания, надежности, восстановления,
документации, процедуры.
Отладка  это процесс локализации (определения оператора программы, выполнение которого вызвало
нарушение вычислительного процесса) и исправления ошибок, обнаруженных при тестировании ПО. Для
исправления ошибки необходимо определить ее причину. Отладка требует от программиста глубоких
знаний специфики управления используемыми техническими средствами, операционной системы, среды
и языка программирования, реализуемых процессов, природы и специфики ошибок, методик отладки и
соответствующих программных средств; психологически дискомфортна (нужно искать собственные
ошибки в условиях ограниченного времени); оставляет возможность взаимовлияния ошибок в разных
частях программы. Четко сформулированные методики отладки отсутствуют. Различают:
синтаксические ошибки – сопровождаются комментарием с указанием их местоположения,
фиксируются компилятором (транслятором) при выполнении синтаксического и частично се
мантического анализа;
ошибки компоновки  обнаруживаются компоновщиком (редактором связей) при объединении модулей
программы;
ошибки выполнения  обнаруживаются аппаратными средствами, операционной системой или
пользователем при выполнении программы, проявляются разными способами и в свою очередь делятся
на группы:
ошибки определения исходных данных (ошибки передачи, ошибки преобразования, ошибки перезаписи и
ошибки данных);
логические ошибки проектирования (неприменимый метод, неверный алгоритм, неверная структура
данных, другие) и кодирования (ошибки некорректного использования переменных, вычислений,
межмодульного интерфейса, реализации алгоритма, другие);
ошибки накопления погрешностей результатов вычислений (игнорирование ограничений разрядной сетки
и способов уменьшения погрешности).
Отладка программы в любом случае предполагает обдумывание и логическое осмысление всей
имеющейся информации об ошибке. Большинство ошибок можно обнаружить по косвенным признакам
посредством тщательного анализа текстов программ и результатов тестирования без получения
дополнительной информации с помощью следующих методов:
ручного тестирования (при обнаружении ошибки нужно выполнить тестируемую программу вручную,
используя тестовый набор, при работе с которым была обнаружена ошибка);
индукции (основан на тщательном анализе симптомов ошибки, которые могут проявляться как неверные
результаты вычислений или как сообщение об ошибке);
дедукции (вначале формируют множество причин, которые могли бы вызвать данное проявление ошибки,
а затем анализируя причины, исключают те, которые противоречат имеющимся данным);
обратного прослеживания (для точки вывода неверного результата строится гипотеза о значениях
основных переменных, которые могли бы привести к получению данного результата, а затем, исходя из
этой гипотезы, делают предположения о значениях переменных в предыдущей точке).
Для получения дополнительной информации об ошибке выполняют добавочные тесты и используют
специальные методы и средства: отладочный вывод; интегрированные средства отладки;
независимые отладчики.
Общая методика отладки программных продуктов, написанных для выполнения в операционных
системах MS DOS и Win32:
1 этап  изучение проявления ошибки;
2 этап – определение локализации ошибки;
3 этап  определение причины ошибки;
4 этап — исправление ошибки;
5 этап  повторное тестирование.
Процесс отладки можно существенно упростить, если следовать основным рекомендациям структурного
подхода к программированию:
программу наращивать «сверхувниз», от интерфейса к обрабатывающим подпрограммам, тестируя ее по
ходу добавления подпрограмм; выводить пользователю вводимые им данные для контроля и проверять их на допустимость сразу после
ввода;
предусматривать вывод основных данных во всех узловых точках алгоритма (ветвлениях, вызовах
подпрограмм).
Дополнительную информацию по теме можно получить в [1, 2, 4, 7, 9, 14, 15].

file_name: билет 5 тема 2.docx

title: Лекция "Этапы разработки программного обеспечения. способы отладки и тестирования по"


extracted_text:
билет 6 тема 1
Теоретическая информатика — математическая дисциплина использующая методы математики для
построения и изучения моделей обработки, передачи и использования информации.
Теоретическая информатика создает тот теоретический фундамент, на котором строится все здание
информатики. По самой своей природе информация тяготеет к дискретному представлению. Множество
информационных сообщений, как правило, можно описывать в виде дискретного множества. А значит, по
своему характеру теоретическая информатика близка к дискретной математике, изучающей объекты
именно такого типа. Поэтому многие модели теоретической информатики заимствованы из дискретной
математики. Но, как правило, эти модели наполнены конкретным содержанием, связанным со спецификой
информации — того объекта, который нас интересует.
Кибернетика может рассматриваться как прикладная информатика в области создания и использования
автоматических или автоматизированных систем управления разной степени сложности, от управления
отдельным объектом (станком, промышленной установкой, автомобилем и т. п.) до сложнейших систем
управления целыми отраслями промышленности, банковскими системами, системами связи и даже
сообществами людей.
Кибернетика возникла в конце 40х гг., когда Н. Винер впервые выдвинул идею о том, что системы
управления в живых, неживых и искусственных системах обладают многими общими чертами.
Установление аналогий обещало создание "общей теории управления", результаты которой могли бы
использоваться в самых разнообразных системах.
 Это научное направление своим появлением полностью обязано вычислительным машинам. Именно с
ними связано программирование. (Правда этот термин встречается и в другом смысле, когда говорится о
математическом программировании, линейном программировании и т.п.,  т.е. о программировании как
специальной вычислительной процедуре. Встречаются и иные случаи использования термина
"программирование". Например, одно время весьма популярным методом обучения было
программированное обучение.).
В начальный период своего развития программирование не имело под собой прочной теоретической базы и
напоминало труд ремесленников высшей квалификации, когда качество работы определяется не знаниями,
а профессиональным умением. Но с накоплением опыта программирования нащупывались общие идеи и
положения, лежащие в основе построения программ для компьютеров и в самих процедурах
программирования. Это повлекло за собой постепенное создание теоретического программирования, в
котором сейчас можно выделить несколько направлений.
Одно из них связано с созданием разнообразных языков программирования, предназначенных для
облегчения взаимодействия человека с вычислительной машиной и информационными системами. Кроме
разработки языка, на котором пользователь записывает программы, необходимы еще специальные
средства, обеспечивающие автоматический перевод записи программы на некотором  языке
программирования  в  форму, воспринимаемую устройствами компьютера. Этот перевод осуществляется
специальными программными системами — трансляторами, разработка которых, как и создание языков
программирования и решение еще целого ряда задач, связанных с обеспечением взаимодействия
пользователя и машины, есть поле деятельности системных программистов. (Системное
программирование — особая отрасль, в которой трудятся профессионалы высокого уровня, создающие
программный продукт, тиражируемый вместе с математическим обеспечением).
Другая область деятельности системных программистов — создание операционных систем, без которых
не может функционировать никакая вычислительная машина. Программисты такого профиля работают,
как правило, на тех фирмах и в тех организациях, где производятся или разрабатываются компьютеры.
По времени возникновения это направление в информатике — самое молодое. Время его появления как
научной дисциплины — начало 70х гг. нашего столетия. Но сейчас, пожалуй, именно искусственный
интеллект определяет стратегические направления развития информатики.
Искусственный интеллект тесно связан с теоретической информатикой, откуда он заимствовал многие
модели и методы, например активное использование логических средств для преобразования знаний.
Столь же прочны связи этого направления с кибернетикой. Математическая и прикладная лингвистика,
нейрокибернетика и гомеостатика теснейшим образом связаны с развитием искусственного интеллекта. И
конечно, работы в области создания интеллектуальных систем (чем, собственно, и занимаются
специалисты, работающие в области искусственного интеллекта) немыслимы без развитых систем программирования. Последняя связь столь тесна, что бытует даже мнение, что работы в области
проектирования и создания интеллектуальных систем есть новая ступень работ в области
программирования.
Основная цель работ в области искусственного интеллекта — стремление проникнуть в тайны творческой
деятельности людей, их способности к овладению навыками, знаниями и умениями. Для этого необходимо
раскрыть те глубинные механизмы, с помощью которых человек способен научиться практически любому
виду деятельности. Если суть этих механизмов будет разгадана, то есть надежда реализовать их подобие в
искусственных системах, т. е. сделать их понастоящему интеллектуальными.
Такая цель исследований в области искусственного интеллекта тесно связывает их с достижениями
психологии — науки, одной из задач которой является изучение интеллекта человека. В психологии
сейчас активно развивается особое направление — когнитивная психология, исследования в котором
направлены на раскрытие тех закономерностей и механизмов, которые интересуют специалистов в области
искусственного интеллекта.
Создателей интеллектуальных систем интересует не только проблема автоматизации способности к
рассуждениям и умозаключениям, т. е. моделирование рассуждений, но и способности к восприятию
окружающего мира, которой весьма успешно пользуются живые существа (и конечно, люди). Поэтому
кроме достижений когнитивной психологии в работах по искусственному интеллекту используются и
результаты, полученные в психологии восприятия информации разного типа.
Кроме психологических исследований, в сферу интересов специалистов в области искусственного
интеллекта входят те лингвистические исследования, которые тесно связаны с психологией. Эту
пограничную область активно исследует психолингвистика. Ее результаты касаются моделирования
общения не только с помощью естественного языка, но и с использованием иных средств (жестов, мимики,
интонации и т. п.).
Математическая и прикладная лингвистика также тесно взаимодействуют с исследованиями в области
искусственных систем общения на естественном языке. Компьютерная лингвистика — еще одно из
лингвистических направлений, с которым тесно смыкаются интересы искусственного интеллекта.
Собственно вычислительная техника представляет собой вполне самостоятельное направление
исследований. В рамках этого направления решается немало задач, не имеющих прямого отношения к
информатике и ее проблемам. Например, ведутся многочисленные исследования, направленные на
совершенствование элементной базы вычислительных машин (Микроэлектроника). Основное содержание
микроэлектроники составляют теория, методы расчета и технология изготовления интегральных
микросхем. Микросхемы стали основной элементной базой большинства современных средств
электронной техники (БИС, СБИС). Но, конечно, развитие современной информатики немыслимо без
компьютеров — основного и пока единственного инструмента для работы с разнообразной информацией.
Эффективное использование компьютеров невозможно без знания их архитектуры и принципов
функционирования. Они не работают вне специально созданных для них операционных систем,
тестирующих программ, трансляторов — всего того программного обеспечения, которое составляет
программную среду, в которой "существует" вычислительная машина.
Это означает, что само развитие вычислительной техники невозможно без использования результатов,
полученных в программировании, искусственном интеллекте и других разделах, составляющих
информатику. Даже проектирование современных вычислительных машин и разработка их элементной
базы требуют специальных систем автоматизированного проектирования, созданием которых занимаются
специалисты, работающие в области информатики.
Кроме того, как мы говорили, для любой вычислительной машины надо создать операционную систему,
обеспечивающую функционирование машины. А этим также занимаются люди, работающие в области
информатики.
ир сейчас находится на пороге информационного общества. В этом обществе огромную роль будут играть
системы распространения, хранения и обработки информации. Со временем, подобно мировой системе
связи, возникнет единая информационная среда, которая обеспечит любому человеку доступ ко всей
нужной для него информации, накопленной человечеством. Широкое внедрение компьютеров во все
сферы человеческой деятельности наряду с использованием интеллектуальных роботов коренным образом
изменит традиционную среду обитания людей. Растет количество людей, профессионально занятых
сбором, накоплением, обработкой, распространением и хранением информации. Информация становится
товаром, имеющим большую ценность, и индустрия информации в обществе будущего становится весьма
значимым явлением. Перспективы перехода к информационному обществу вызывают массу проблем социального, правового,
технического характера. Например, применение роботов на производстве приведет к полному изменению
технологии, которая в наши дни ориентирована на участие в нем человека. Разработка таких технологий
уже началась. Резко изменится подготовка членов нового общества к самостоятельной жизни. Уже начаты
поисковые работы в области создания новых форм обучения, которые заменят существующие
традиционные формы. Полностью изменится номенклатура профессий, специальностей и способов
организации труда.
Все эти проблемы составляют объект исследования тех психологов, социологов, философов и юристов,
которые работают в области информатики. Создаются автоматизированные обучающие системы,
автоматизированные рабочие места для специалистов различного профиля, распределенные банковские
системы и многие другие, чье функционирование опирается на использование всего арсенала
информатики.
Основная задача этого направления — изучение информационных процессов, протекающих в
биологических системах, и использование накопленных знаний при организации и управлении природными
системами и создании технических систем. Три самостоятельные науки, входящие в эту ветвь
информатики, решают указанные задачи. Одна из них — биокибернетика. В сферу ее интересов входят
проблемы, связанные с анализом информационноуправляющих процессов, протекающих в живых
организмах, диагностика заболеваний и поиск путей их лечения. Сюда же относятся системы,
предназначенные для оценки биологической активности тех или иных химических соединений, без
которых уже не может существовать фармакология, а также исследования моделей внутриклеточных
процессов, лежащих в основе всего живого.
Вторая наука, входящая в это научное направление, — уже упоминавшаяся бионика.
Третья наука — биогеоценология — нацелена на решение проблем, относящихся к системно
информационным моделям поддержания и сохранения равновесия природных систем и поиска таких
воздействий на них, которые стабилизируют разрушающее воздействие человеческой цивилизации на
биомассу Земли.

file_name: билет 6 тема 1.docx

title: Лекция "Теоретическая информатика "


extracted_text:
билет 6 тема 2
понятие среды программирования. базовая комплектация среды программирования. примеры
Кроме понятия языка программирования, существует понятие среды программирования. Язык
программирования вне среды не может применяться. Среда программирования – это комплекс
программных средств для создания и отладки программ. Например, язык программирования Паскаль
был создан Николаусом Виртом (Швейцария). Для этого языка была разработана среда
программирования фирмой Borland и названа Турбо Паскаль. В настоящее время используется среда
визуального программирования на базе Паскаля – Delphi.
При исполнении алгоритма на ЭВМ программа транслируется с языка высокого уровня на машинный
язык, а затем уже исполняется. В силу того, что и язык программирования высокого уровня, и машинный
язык формализованы, трансляция программы может быть автоматизирована и выполнена с помощью той
же ЭВМ. При этом человек воспринимает это так, будто ЭВМ непосредственно понимает язык высокого
уровня и исполняет алгоритм, записанный на этом языке.
Существует два типа программтрансляторов, работающих с исходными текстами.
Программакомпилятор (от слова compile — составлять, собирать) переводит исходный текст в
машинный код и записывает его на диск в форме исполняемого (загрузочного) файла. После этого
программа выполняется независимо от исходного текста. Раньше программыкомпиляторы называли
просто и точно — трансляторами (переводчиками).
Программаинтерпретатор всегда работает совместно с исходным текстом. Она разбирает каждую
инструкцию исходного текста (интерпретирует ее) и немедленно исполняет (т. е. файл на машинном
языке не создается). Программа в режиме интерпретации работает гораздо медленнее, чем такая же
программа в машинном коде. Это связано с тем, что каждую инструкцию приходится разбирать во время
выполнения (а не заранее, как при компиляции). Многие инструкции в программе выполняются
многократно, — и при каждом выполнении интерпретируются заново. Поэтому всюду, где возможно,
стремятся заменить режим интерпретации режимом компиляции. Правда, интерпретация имеет и свои
преимущества: с ее помощью проще отлаживать программу. Иногда пользуются режимом
«псевдокомпиляции»: ускоряют интерпретацию за счет предварительного запоминания тех или иных
элементов разобранных команд в памяти машины.
Современное программирование существенно отличается от технологии разработки программ для
старых ЭВМ. Среди относительно новых особенностей и направлений этой технологии:
Ø применение объектноориентированных языков;
Ø визуальное программирование (т. е. сборка экранной формы с помощью мыши из готовых
«полуфабрикатов »объектов);
Ø быстрая разработка приложений (RAD — Rapid Applications Development);
Ø программирование с использованием функций API Windows (Applications Programming Interface —
интерфейс прикладного программирования);
Ø базы данных и многопользовательские приложения (т. е. приложения, с которыми одновременно
работает несколько пользователей) и многие другие.
Среды программирования (или как их еще называют, среды разработки)  это программы, в которых
программисты пишут свои программы. Иными словами, среда программирования служит для разработки
( написания) программ и обычно ориентируется на конкретный язык или несколько языков
программирования (в этом случае языки, обычно, принадлежат одной языковой группе, например, Си
подобные). Интегрированная среда программирования содержит в себе все необходимое для разработки
программ:
редактор с подсветкой синтаксиса конкретного языка программирования. В нем
программист пишет текст программы, так называемый программный код;
компилятор. Он, как мы уже с вами знаем, транслирует программу, написанную на
высокоуровневом языке программирования в машинный язык (машинный код), непосредственно
понятный компьютеру. Язык С++ относится к компилируемым языкам, поэтому для обработки текстов
его программ служит компилятор, иногда вместо компилятора (либо вместе с ним) используется
интерпретатор, для программ, написанных на интерпретируемых языках программирования;
отладчик. Служит для отладки программ. Как мы все знаем, ошибки в программах
допускают абсолютно все: и новички, и профессионалы  они могут быть синтаксическими (обычно они


 выявляются еще на стадии компиляции) и логическими. Для тестирования программы и выявления в ней
логических ошибок служит отладчик.
Мы рассмотрели базовую комплектацию среды программирования, но иногда в них присутствуют еще и
такие компоненты, как система управления версиями, различные инструменты для конструирования
графического интерфейса программы, браузер классов, инспектор объектов и другие.
Общее описание работы среды программирования
Давайте сейчас подробно рассмотрим процесс разработки программы в среде программирования, от
момента начала написания кода программы до получения скомпилированного экзешника (файла с
расширением .exe), который уже можно непосредственно запускать вне среды разработки. Как правило,
для того, чтобы выполнить программу на С++, надо пройти шесть этапов:
Первый этап  редактирование;
Второй этап  предварительная (препроцессорная) обработка;
Третий этап  компиляция;
Четвертый этап  компоновка;
Пятый этап  загрузка;
Шестой этап  выполнение.
Мы остановимся на системе С++, ориентированной на UNIX, чтобы лучше понять этот процесс. В
Windows некоторые из этих этапов будут проходить автоматически без участия программиста.






Редактирование. Это первый этап разработки программы в среде программирования и представляет он
собой редактирование файла (исходного файла, который в последствии будет содержать код
программы). Он выполняется с помощью редактора программ, который напоминает нам обычный
текстовый редактор, такой как блокнот, word и т.д. Программист набирает в этом редакторе свою
программу на С++ и, если это необходимо, вносит в нее различные изменения или исправления. Одним
словом, работает с кодом программы как с обычным текстом. Имена файлов программ на С++ часто
оканчиваются расширением .с или .срр. (это вы сами сможете пронаблюдать, когда загляните в папку с
проектом). Предварительная (препроцессорная) обработка. На этом этапе программист дает команду
компилировать программу. Но прежде чем компилятор приступит к компиляции вашей программы,
производится предварительная обработка программы. Что это значит? Любая программа в С++
подчиняется специальным командам, именуемым директивами препроцессора (обычно начинаются они
со специального символа "#") , которые указывают, что в программе перед ее компиляцией нужно
выполнить определенные преобразования. Обычно эти преобразования состоят во включении других
текстовых файлов в файл, подлежащий компиляции, и выполнении различных текстовых замен.
Создается файл с расширением .i .В нашей первой программе в следующей главе уже будет
присутствовать подключение такого файла с помощью директивы препроцессора.
Компиляция. На этом этапе компилятором проверяется текст программы на наличие синтаксических
ошибок и затем, если все хорошо, текст программы с подстановками, сделанными на предыдущем этапе,
преобразуется в машинный код (код на языке, уже непосредственно понятный компьютеру). Иногда его
еще называют объектным. На этом этапе создается файл с расширением .obj. Также в вашей программе
могут использоваться кусочки уже готового машинного кода, расположенного в иных библиотеках
(например, в файлах с расширением .lib). На этапе компиляции эти библиотеки еще не будут подключены
к только что созданному машинному коду. Они подключаются на следующем этапе.
Компоновка. Следующий этап называется компоновка. Программы на С++ обычно содержат ссылки на
функции, определенные гделибо вне самой программы, например, в стандартных библиотеках или в
личных библиотеках групп программистов, работающих над данным проектом. Объектный код,
созданный компилятором, обычно содержит «дыры» изза этих отсутствующих частей. Компоновщик
связывает объектный код с кодами отсутствующих функций, чтобы создать исполняемый загрузочный
модуль (без пропущенных частей). Получаем в итоге файл с расширением .exe (для Windows), либо .out
(для Linux).
Загрузка. Следующий этап называется загрузка. Перед выполнением программа должна быть размещена
в оперативной памяти компьютера. Это делается с помощью загрузчика, который забирает исполняемый
загрузочный модуль с диска (наш файл с расширением .exe) и перемещает его в оперативную память.
Выполнение. И наконец, рассмотрим самый последний этап  выполнение. С этого момента компьютер
под управлением своего ЦПУ (центральное процессорное устройство) начинает последовательно
выполнять в каждый момент времени по одной команде программы. Эти моменты времени носят
название такт, каждый процессор имеет свою тактовую частоту, которую задает его внутренний
тактовый генератор. Чем более высокая частота работы вашего процессора, тем, соответственно, лучше
и тем быстрее выполняются ваши программы. На маленьких программах это, конечно же, не очень
ощутимо, но когда запускаете какуюнибудь новомодную игрушку, то все очень даже заметно.
Среда CodeBlocks
Для разработки своих программ лично я использую среду программирования CodeBlocks. Вам, как
начинающим советую использовать именно ее, т.к. она проста в использовании и, соответственно, лучше
приемлема для начинающего программиста. В этой среде есть минимально необходимый комплект
(редактор, компилятор и отладчик) для разработки программ. А сейчас займемся установкой (скачать
CodeBlocks можно в разделе "В помощь программисту"):
Распаковываем скачанный архив и запускаем инсталляционный файл, соглашаемся с
лицензией. В окошке выбора компонентов для установки выбираем либо standart, либо full
 (принципиальной разницы нет).


Выбираем путь установки, либо оставляем по умолчанию, ставим.
Процесс установки благополучно завершен.
1.
Запомнить:
программы.
Среда программирования  это программа, в которой программисты разрабатывают свои 2.
3.
4.
5.
Основные компоненты среды программирования  это редактор, компилятор и отладчик.
В редакторе набирается текст программы. Редактор имеет подсветку синтаксиса
конкретного языка программирования.
Компилятор переводит программу, набранную в редакторе, в машинный язык,
непосредственно понятный компьютеру.
Отладчик служит для нахождения ошибок в программе. А без ошибок в программах не
бывает даже у очень опытных программистов.

file_name: билет 6 тема 2.docx

title: Лецкия "Понятие среды программирования. базовая комплектация среды программирования. "


extracted_text:
билет 7 тема 1 мера информации
Для измерения информации вводятся два параметра: количество информации I и объем данных Vд. Эти
параметры имеют разные выражения и интерпретацию в зависимости от рассматриваемой меры
количества информации и объема данных.
Синтаксическая мера информации. Эта мера оперирует с обезличенной информацией, не выражающей
смыслового отношения к объекту.
Объем данных Vд в сообщении измеряется количеством символов (разрядов) в этом сообщении. В
различных системах счисления один разряд имеет различный вес и соответственно меняется единица
измерения данных:
 в двоичной системе счисления единица измерения – бит (bit – binary digit) или более укрупненная
единица байт, равная 8 бит. Сообщение, записанное двоичным кодом 10111011, имеет объем данных 8
бит или 1 байт.
 в десятичной системе счисления единица измерения – дит (десятичный разряд). Сообщение, записанное
числом 275903 имеет объем данных 6 дит.
Количество информации I на синтаксическом уровне определяется с помощью понятия
неопределенности состояния (энтропии) системы.
Пусть до получения информации потребитель имеет некоторые предварительные (априорные) сведения о
системе α. Мерой его неосведомленности о системе является функция H(
служит и мерой неопределенности состояния системы. После получения некоторого сообщения β
получатель приобрел некоторую дополнительную информацию I (
неосведомленность так, что апостериорная (после получения сообщения  ) неопределенность состояния
системы стала H (
определится как I (
(уменьшением) неопределенности состояния системы.
β α
Если конечная неопределенность H (
полным знанием и количество информации I (
может рассматриваться как мера недостающей информации.
Энтропия системы H(
)β α . Тогда количество информации I (
β α  H(
α
), имеющая N возможных состояний, согласно формуле Шеннона, равна
) α  H (
)β α , т.е. количество информации измеряется изменением
) обратится в нуль, то первоначальное неполное знание заменится
)β α , уменьшившую его априорную
)β α  о системе, полученной в сообщении
, β
)α , которая в то же время
β α  H(
) =
α
). Иными словами,
энтропия системы H(
) α
) =
β
где Pi – вероятность того, что система находится в iсостоянии.
Для случая, когда все состояния системы равновероятны, т.е. их вероятности равны Pi=1/N, ее энтропия
определяется соотношением.
Часто информация кодируется числовыми кодами в той или иной системе счисления, особенно это
актуально при представлении информации в компьютере. Естественно, что одно и то же количество
разрядов в разных системах счисления может передать разное число состояний отображаемого объекта,
что можно представить в виде соотношения
N = mn,
где N – число всевозможных отображаемых состояний;
m – основание системы счисления (разнообразие символов, применяемых в алфавите);
n – число разрядов (символов) в сообщении.
Пример. По каналу связи передается nразрядное сообщение, использующее m различных символов.
Так как количество всевозможных кодовых комбинаций будет N = mn, то при равновероятности
появления любой из них количество информации, приобретенной абонентом в результате получения
сообщения, будет I = log N = n log m – формула Хартли.
Если в качестве основания логарифма принять m, то I = n. В данном случае количество информации
(при условии полного априорного незнания абонентом содержания сообщения) будет равно объему
данных I = Vд, полученных по каналу связи. Для неравновероятностных состояний системы всегда I
< Vд = n. Наиболее часто используются двоичные и десятичные логарифмы. Единицами измерения в этих случаях
будут соответственно бит и дит.
Коэффициент (степень) информативности (лаконичность) сообщения определяется отношением
количества информации к объему данных, т.е.
С увеличением Y уменьшаются объемы работы по преобразованию информации, для этого
разрабатываются специальные методы оптимального кодирования информации.
Семантическая мера информации. Для измерения смыслового содержания информации, т.е. ее
количества на семантическом уровне, наибольшее признание получила тезаурусная мера, которая
связывает семантические свойства информации со способностью пользователя принимать поступившее
сообщение. Для этого используют понятие тезаурус пользователя.
Тезаурус – это совокупность сведений, которыми располагает пользователь или система.
В зависимости от соотношений между смысловым содержанием информации S и тезаурусом
пользователя Sp изменяется количество семантической информации Ic, воспринимаемой пользователем и
включаемой им в дальнейшем в свой тезаурус.
График зависимости количества семантической информации, воспринимаемой потребителем, от его
тезауруса Ic = f(Sp)
Два предельных случая, когда количество семантической информации Ic равно 0:
 при Sp » 0 пользователь не воспринимает, не понимает поступающую информацию;
 при Sp ® ¥ пользователь все знает, и поступающая информация ему не нужна.
Максимальное количество Ic потребитель приобретает при согласовании ее смыслового содержания S со
своим тезаурусом Sp (Sp = Sp opt), когда поступающая информация понятна пользователю и несет ему ранее
неизвестные (отсутствующее в тезаурусе) сведения. Следовательно новых знаний, получаемых
пользователем, является величиной относительной. Одно и то же сообщение может иметь смысловое
содержание для компетентного пользователя и быть бессмысленным для пользователя некомпетентного.
При оценке содержательного аспекта информации необходимо стремиться к согласованию величин S и
Sp.
Относительной мерой количества семантической информации может служить коэффициент
содержательности C, который определяется как отношение количества семантической информации к ее
объему:
Прагматическая мера информации. Эта мера определяет полезность информации (ценность) для
достижения пользователем поставленной цели, Эта мера также величина относительная, обусловленная
особенностями использования этой информации в той или иной системе.
Пример. В экономической системе ценность информации можно определить приростом
экономического эффекта ее функционирования, достигнутым благодаря использованию этой
информации для управления системой.
В теории информации выделяются три основных направления: структурное, статистическое,
семантическое.
Структурное  рассматривает дискретное строение массивов информации и их измерение простым
подсчетом информационных элементов. (Простейшее кодирование массивов  комбинаторный метод.)
Статистическое направление оперирует понятием энтропии как меры неопределенности, то есть здесь
учитывается вероятность появления тех или иных сообщений.
Семантическое направление учитывает целесообразность, ценность или существенность информации. Эти три направления имеют свои определенные области применения. Структурное используется для
оценки возможностей технических средств различных систем переработки информации, независимо от
конкретных условий их применения. Статистические оценки применяются при рассмотрении вопросов
передачи данных, определении пропускной способности каналов связи. Семантические используются
при решении задач построения систем передачи информации разработки кодирующих устройств и при
оценке эффективности различных устройств.
Структурные меры информации
Структурные меры учитывают только дискретное строение информации. Элементами информационного
комплекса являются кванты  неделимые части информации. Различают геометрическую,
комбинаторную и аддитивную меры.
Определение информации геометрическим методом представляет собой измерение длины линии,
площади или объема геометрической модели информационного комплекса в количестве квантов.
Максимально возможное число квантов в заданных структурных габаритах определяет
информационную емкость системы. Информационная емкость есть число, указывающее количество
квантов в полном массиве информации. Согласно рис. 1.2, г, количество информации М в комплексе
X(T,N), определенное геометрическим методом, равняется
М=
,
;
;
;
где
Х, Т, N  интервалы, через которые осуществляются дискретные отсчеты.
В комбинаторной мере количество информации вычисляется как количество комбинаций элементов.
Здесь учитываются возможные или реализованные комбинации.
Во многих случаях дискретное сообщение можно рассматривать как слово, состоящее из некоторого
количества элементов n, заданных алфавитом, состоящим из т элементовбукв. Определим количество
различных сообщений, которые можно образовать из данного алфавита. Если сообщение состоит из двух
элементов (п=2), то всего может быть
может быть образовано сто различных чисел от 0 до 99. Если количество элементов равно трем, то
различных сообщений. Например, из десяти цифр (0, 1, 2,..., 9)
количество различных сообщений равно
Таким образом, число возможных сообщений определяется:
и т.д.
,
L=
где L  число сообщений; п  число элементов в слове; т  алфавит.
Чем больше L, тем сильнее может отличаться каждое сообщение от остальных. Величина L может быть
принята в качестве меры количества информации. Однако выбор L в качестве меры количества
информации связан с неудобствами: вопервых, при L =1 информация равна нулю, поскольку заранее
известен характер сообщения (т.е. сообщение есть, а информация равна нулю); вовторых, не
выполняется условие линейного сложения количества информации, т.е. условие аддитивности. Если,
например, первый источник характеризуется
число различных сообщений для двух источников определяется произведением
различными сообщениями, а второй
, то общее
.
L=
Для k источников общее число возможных различных сообщений равно
L=
Поэтому Хартли ввел логарифмическую (аддитивную) меру количества информации, позволяющую
оценивать количество инфомации, содержащейся в сообщении, логарифмом числа возможных
сообщений.
.
I=
Тогда при L=1 I=0, т.е. информация отсутствует.
Для k источников информации
.
I=
, .
т.е. I=
Статистические меры информации
При статическом вероятностном подходе получение конкретного количества информации
рассматривается как результат определенного выбора среди возможных сообщений. Получатель
информации может заранее знать или угадать ее часть. Когда приходит сообщение о часто происходящих
событиях, вероятность появления которых Р стремится к единице, то такое сообщение
малоинформативно. Столь же малоинформативны в среднем сообщения о событиях, вероятности
которых стремятся к нулю, т.е. о почти невозможных событиях, поскольку сообщения о таких событиях
поступают чрезвычайно редко.
События можно рассматривать как возможные исходы некоторого опыта. Все исходы составляют
полную группу событий, или ансамбль.
Ансамбль характеризуется тем, что сумма вероятностей всех сообщений в нем равна единице, то есть
.
Рассмотрим сложные сообщения, составляемые из п элементов, каждый из которых является
независимым и выбирается из алфавита, содержащего т букв, с вероятностями выбора элементов
соответственно. Предположим, что в некоторое сообщение вошло
элементов
элементов
и т.д. Такое сообщение характеризуется таблицей (табл. 1.1).
алфавита,
Таблица 1.1
Тип элемента
Число элементов
Вероятности выбора
элементов
Вероятность того, что в сообщение войдут
элементов
равняется
, а вероятность образования
сообщения из
,
,
,...,
,...,
 элементов будет равна
Р=
При большой длине п источником будут формироваться типичные сообщения, в которых относительная
частота появления отдельных элементов
стремится к вероятности появления этих элементов, то есть
. (1.1)
, (1.2)
а вероятности появления типичных сообщений Р будут одинаковы и могут быть найдены из (1.1), (1.2):
Р=
Определим число типичных сообщений:
. (1.3)
, (1.4)
так как суммарная вероятность всех типичных сообщений стремится к единице при увеличении длины
сообщений.
Хотя число возможных сообщений
сообщений, а вероятность появления остальных сообщений стремится к нулю.
, источник практически будет вырабатывать только L типичных Найдем количество информации I, содержащейся в одном сообщении:
. (1.5)
I= log L= log
Данное выражение (формула Шеннона) дает более полное представление об источнике информации, чем
аддитивная мера (мера Хартли). Поясним это на следующем примере. Если мы подбрасываем монету, то
получим сообщение из двух возможных состояний (орел или решка), то есть, алфавит сообщений из двух
букв. Если подбрасываем кубик, одна грань которого голубая, а остальные грани окрашены в розовый
цвет, то здесь также имеем алфавит из двух букв (голубой или розовый). Чтобы записать полученный
текст (сообщение), в обоих случаях достаточно одной двоичной цифры на букву (п=1, т=2).
По Хартли здесь в обоих случаях
I= n
.
Но мы знаем, что в первом случае вероятность каждого исхода опыта равна 0,5 (
=0,5). А во
втором случае
При равновероятности символов (частный случай) формула Шеннона вырождается в формулу Хартли:
соответственно. Мера Хартли не учитывает этого.
и
I= n
Для случая с монетой:
I= 1
Для случая с кубиком:
 .
.
I= 1
Количество информации, приходящейся на один элемент сообщения, называется удельной
информативностью или энтропией.
 .
. (1.6)
Н=
Количество информации и энтропия являются логарифмическими мерами и измеряются в одних и тех
же единицах. Основание логарифма определяет единицу измерения количества информации и энтропии.
Двоичная единица соответствует основанию логарифма, равному двум, и называется битом. Один бит
это количество информации в сообщении в одном из двух равновероятностных исходов некоторого
опыта. Используются также натуральные (НИТ) и десятичные (ДИТ) логарифмы. Аналогичными
единицами пользуются и при оценке количества информации с помощью меры Хартли.
Из формулы Шеннона следует, что количество информации, содержащейся в сообщении, зависит от
числа элементов сообщения п, алфавита т и вероятностей выбора элементов
является линейной.
Отметим некоторые свойства энтропии.
1. Энтропия является величиной вещественной, ограниченной и неотрицательной, то есть Н>0. Это
свойство следует из выражения (1.6).
. Зависимость I от п
2. Энтропия минимальна и равна нулю, если сообщение известно заранее, то есть если
=1, а
3. Энтропия максимальна, если все состояния элементов сообщений равновероятны.
.
Н=
Величину максимальной энтропии найдем при использовании (1.6) и (1.7):
, если
. (1.7) =logm .
4. Энтропия бинарных (двоичных) сообщений может изменяться от нуля до единицы (двоичный алфавит,
следовательно, т=2.)
Н=
.
Используя условие
определится выражением
Н= P logP  (1  P)log(1  P) .
и обозначив
=Р, получим
, а энтропия
Энтропия достигает максимума, равного единице, при
=
=0,5.
Рис. 1.3  График функции Н= Р logP  (1  P)log(1  P)
Семантические меры информации
Семантические меры информации оценивают смысл, содержание информации, ее целесообразность и
существенность.
Целесообразность, полезность информации для решения какойто задачи можно оценить по эффекту,
который оказывает полученная информация на решение задачи. Если вероятность достижения цели
увеличивается, то информацию следует считать полезной.

file_name: билет 7 тема 1.docx

intro:
Для измерения информации вводятся два параметра: количество информации I и объем данных Vд. Эти параметры имеют разные выражения и интерпретацию в зависимости от рассматриваемой меры количества информации и объема данных.
Синтаксическая мера информации. Эта мера оперирует с обезличенной информацией, не выражающей смыслового отношения к объекту.
Объем данных Vд в сообщении измеряется количеством символов (разрядов) в этом сообщении. В различных системах счисления один разряд имеет различный вес и соответственно меняется единица измерения данных:
- в двоичной системе счисления единица измерения – бит (bit – binary digit) или более укрупненная единица байт, равная 8 бит. Сообщение, записанное двоичным кодом 10111011, имеет объем данных 8 бит или 1 байт.

title: Лекция "Мера информации"


extracted_text:
Класс: 2.
Тема урока: Учимся писать слова с непроизносимыми согласными в корне слова.
УМК «Начальная школа XXI»
Тип урока:   урок закрепления знаний
Вид урока: урокпрактикум.
Педагогические цели урока:
создать условия для организации деятельности учащихся по применению алгоритма
проверки парных по звонкостиглухости согласных и безударных гласных в корне слова;
способствовать развитию наблюдательности, произвольного внимания, используя приемы
анализа, синтеза при рассмотрении языкового материала; содействовать реализации себя в
процессе познавательной и интеллектуальной деятельности, развитию устойчивого
интереса к знаниям и потребности в их самостоятельном поиске, умению работать в паре,
вести диалог: ученикученик, ученикучитель, способствовать формированию адекватной
самооценки.
Планируемые результаты:
Предметные: Формировать умение определять наличие в корне буквы, обозначающий
согласный звук, который не произносится.проверять написание слов с непроизносимыми
согласными.
Личностные: осознают язык как основное средство человеческого общения; проявляют
способность к самоорганизованности; владеют коммуникативными умениями.
Метапредметные УУД:
Регулятивные: адекватно воспринимают комментарии результатов деятельности со
стороны учителя; удерживают цель деятельности до получения результата, осуществляют
контроль деятельности;
Познавательные: логические – анализ объектов с целью выделения признаков;
сопоставлять характеристики объектов по одному (нескольким) признакам; выявлять
сходство и различия объектов; умение структурировать знания, выбор наиболее
эффективных способов решения задач; рефлексия способов и условий действия.
Коммуникативные: строят понятные для слушателей высказывания; умеют задавать
вопросы; формулируют простые выводы.
  1) Русский язык: 2 класс: учебник для учащихся
Образовательные ресурсы:

общеобразовательных учреждений: в 2х ч. Ч. 1 / С. В. Иванов, А.О. Евдокимова, М. И.
Кузнецова и др. – М: Вентана – Граф, 2012.
2) Пишем грамотно: 2 класс: рабочие тетради для учащихся общеобразовательных
учреждений: в 2х ч. Ч. 1 / М. И. Кузнецова и др. – М: Вентана – Граф, 2012.
3) Учебная презентация.
4) Интерактивная доска.
5) Сигнальные карточки.
1. Ход урока.
2. Организационный момент.
 Сегодня на уроке у нас гости, необычные гости. Это ваши … /хором/ мамы.
Повернитесь и поприветствуйте. Вот звенит звонок
Нам пора начать урок.
 Посмотрите на экран и прочитайте девиз урока: /Слайд/
«Каждый день жизни прибавляет частицу мудрости».
 Как понимаете смысл пословицы? /Значит, узнаем чтото новое/
 Вы знаете, что знания – это наше богатство, которое мы складываем в
сундучок, а когда нужно   достаем и используем.
 Сегодня на уроке он вам понадобится.
А какие качества вам нужны на уроке, чтобы этот сундучок наполнялся
знаниями? /Внимание, усидчивость, трудолюбие, сосредоточенность/
3. Актуализация знаний.
Итак, мы отправляемся в путешествие по стране «Правописания» и первая
наша остановка «Вспоминайка».
Отгадайте загадки и запишите отгадку, определите орфограмму.
1). На чем можно путешествовать:
В поле лестница лежит,
Дом по лестнице бежит. /поезд/
 Он в безбрежном океане
Туч касается крылами,
Развернется под лучами,
Отливает серебром. /самолет/
Море, чайки, корабли
Слышат мой гудок вдали.
Порт остался за кормой,
Долгим будет путь домой.
Гордо я плыву вперед!
Мое имя … /пароход/
2). Где можно путешествовать?
Дом открыт со всех сторон,
Он резною крышей крыт.
Заходи в зеленый дом –
Чудеса увидишь в нем! /по лесам/ Там булки растут и батоны,
Баранок и бубликов тоны,
Похоже на желтое море
Шумящее хлебное …/поле/ по полям
Кругом вода, а с питьем беда.  /по морям/
3). Какие чувства испытывает человек во время путешествия?
Радостное, счастливое, чудесное
4.Мозговой шторм.
 Какие способы проверки безударных гласных и согласных вы знаете?
/изменить форму слова, подобрать однокоренное слово./
 Над какой орфограммой работаем сейчас? \Непроизносимая согласная в
корне/
 Почему они стали непроизносимыми?
 Посмотрите внимательно и скажите, какое слово можно назвать лишним?
Почему?
 Можно назвать слова с сочетанием –сн  слова  «ловушки». Почему?
5.  Постановка темы, цели урока
 Продолжаем наше путешествие , станция «Узнавайка»
 Ребята,
Иногда согласные
Играют с нами в прятки.
Они не произносятся,
Но пишутся в тетрадке.
 Какие же буквы играют с нами в прятки? Буквенный диктант. Запишите
только буквы непроизносимых согласных: /слайд/
Праздник, лестница, солнце, здравствуй /Д Т Л В/
 Когда же они появляются в словах /если в слове появляется сочетание трех
букв/
 Назовите эти сочетания. Запишите их и запомните.
6. Закрепление пройденного
1. Станция «Помогайка»
 Ученик  2 класса выполнял домашнее задание и вот, что у него получилось.
Помогите ему найти ошибки и исправьте. Работаем в паре. Карточка 1.
/Приложение 1/  Проверка: сколько слов с ошибками нашли /5/
 Объясните, как надо действовать, чтобы не ошибиться? Оцените свою
работу, /слайд/
 Как думаете, какой праздник мог постучаться в оконце? /День матери/
 О маме сказано много хороших слов. Из данных слов выписать  слова с
непроизносимыми согласными в корне , назовите слова«ловушки». /слайд/
Добрая, счастливая ,нежная, чудесная, ласковая, радостная, прекрасная
2. Эстафета
 Обычно в праздник дарят цветы. У вас на столах лежат не простые цветы, а с
секретом. На каждом стебельке написано слово. Вам надо собрать цветы в
корзину с непроизносимыми согласными, а в вазу – слова«ловушки».
Кому вручите букеты?
 А еще для мам вы зарабатывали «пятерки». Вот сейчас и проверим, кто в
свой сундучок добавил еще одну «пятерку» . Карточка 2  /Приложение 2/
 Первое задание проверяем умение видеть орфограмму. Если правильно
подчеркнули, ставьте +
 Второе задание   умение подбирать проверочные слова.
 Третье задание – на проверку грамотности.
Встаньте, кто получил все +. Это еще одна пятерка для мамы.
3.Письмо по памяти
 О мамах сложено много стихов, песен, пословиц, прочитайте. Что это? Как
понимаете? Сердце матери лучше солнца греет.
 Запишите по памяти. Подчеркните орфограмму.
7. Итог урока
 Наше путешествие подошло к концу. Как думаете, ваш сундучок пополнился
новыми знаниями? Если согласны, поднимите смайлики.
 Какое задание на уроке понравилось больше?
 Какое задание показалось сложным?
 Я рада и желаю
Будьте прелестными,
Между собою честными,
Будьте всегда счастливыми
И счастье дарите другим.
Звучит песня о маме, дети поздравляют, вручают открытки.
Вручите мамам частичку своего маленького сердечка.
Спасибо за урок. Приложение 1
Карточка 1
Здраствуй, радосное сонце,
Весник зимней красоты.
Словно празник к нам в
оконце
Постучалось ты с утра.
Приложение 2
КАРТОЧКА  № 2
1 Подчеркни слово с непроизносимой согласной  в корне
Рожки,  весло, гигантский
2 Подчерки строчку, где проверочное слово подобрано верно
капустный – капустные
весть   известный
честные – честный
3 Вставь пропущенную букву
Ужас_ный, мес_ный, вкус_ный, грус_ный, радос_ный.

file_name: урок 51 Учимся писать слова с непроизносимыми согласными в корне..docx

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

title: Конспект урока русского языка УМК "Начальная школа 21 век" 2 класс на тему: "Учимся писать слова с непроизносимыми согласными в корне."