
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И МОЛОДЕЖНОЙ ПОЛИТИКИ СТАВРОПОЛЬСКОГО КРАЯ
ГБОУ ВПО «СТАВРОПОЛЬСКИЙ ГОСУДАРСТВЕННЫЙ ПЕДАГОГИЧЕСКИЙ ИНСТИТУТ»
Психолого-педагогический факультет
Кафедра математики и информатики
КУРСОВАЯ РАБОТА
по дисциплине «Теоретические основы информатики»
на тему «Префиксный код Шеннона-Фано»
Профиль «Математика» и профиль «Информатика»
студента 2 курса
Капниной Г.А.
Ф.И.О.
подпись
Научный руководитель:
Красильников В.В., кандидат технических наук, доцент
Ф.И.О., уч. степень, звание
_______________________________________
подпись
Курсовая работа защищена с оценкой:_______
дата:__________________________________
Ставрополь, 2014
Содержание
Введение…………………………………………………………………………...3
1. Префиксный код Шеннона-Фано……………………………..……………….4
1.1 Кодирование……………………………………………………………4
Сжатие информации…………………………………………………...5
Префиксное кодирование …………………………..………………….7
Алгоритм Шеннона– Фано …………………………………………....8
Примеры решения задач……………...………………………………10
Выводы по первой главе………………………………………………………...15
2. Проект «………………………………………………………………..16
2.1 Основные положения метода проектов……………………..……16
2.2 Планирование учебного проекта…………………………………….17
2.3 Визитная карточка проекта…………………………………………..23
Выводы по второй главе…………………………………………………………
Приложение А Название ……………………………………………………..
Приложение Б…………………………………………………………………….
Введение
Необходимость кодирования информации возникла задолго до появления компьютеров. Речь, азбука и цифры - есть не что иное, как система моделирования мыслей, речевых звуков и числовой информации. В технике потребность кодирования возникла сразу после создания телеграфа, но особенно важной она стала с изобретением компьютеров.
Актуальность темы данной курсовой работы состоит в том, что с увеличением необходимости использования компьютера в различных областях, необходимо сжимать информацию для её более удобного и компактного хранения.
Какова же сущность префиксного кода Шеннона-Фано и как можно в рамках изучения школьного курса информатики доступно представить школьникам данную тему? В работе будет рассматриваться теоретическое обоснование алгоритма Шеннона-Фано и составлен проект, в рамках которого, школьники изучат этот вопрос.
Объектом исследования является процесс обучения информатики в старших классах средней общеобразовательной школы.
Предметом исследования - повышение уровня обучения за счет изучения дополнительного материала не входящего в планирование учебного предмета информатики.
Целью курсовой работы является доступное представление для школьников как теоретического, так и практического применения алгоритма
Шеннона-Фано.
Задачи:
- теоретически обосновать префиксный код Шеннона-Фано
- привести примеры решения задач
- разработать проект
- разработать визитную карточку проекта
- подготовить презентацию по проекту
- составить комплекс тестовых заданий по теоретической части курсовой работы
-сформулировать выводы по проделанной работе.
1. Префиксный код шеннона – фано
Кодирование
Вся информация, которую хранит, обрабатывает и передает по сетям компьютер, представлена в виде двоичных чисел. Существуют международные стандарты и методы кодирования текстовой, числовой, изобразительной, звуковой и видеоинформации. Знание основных кодовых таблиц очень важно для правильного чтения информации Интернета, электронной почты, текстовых документов в кодировке различных операционных систем [1].
Думая о данных, обычно мы представляем себе ни что иное, как передаваемую этими данными информацию: список клиентов, мелодию на аудио компакт-диске, письмо и тому подобное. Как правило, мы не слишком задумываемся о физическом представлении данных. Заботу об этом - отображении списка клиентов, воспроизведении компакт-диска, печати письма - берет на себя программа, манипулирующая данными.
Для хранения в компьютере и передачи информации по каналам связи символы должны быть закодированы при помощи некоторого кодового алфавита - набора знаков, при помощи которых можно составлять слова.
С помощью двух цифр 0 и 1 можно закодировать любое сообщение. Это явилось причиной того, что в компьютере обязательно должно быть организованно два важных процесса [2]:
Кодирование – преобразование входной информации в форму, воспринимаемую компьютером, т.е. двоичный код.
Декодирование – преобразование данных из двоичного кода в форму, понятную человеку.
Код-это набор условных обозначений (или сигналов) для записи (или передачи) некоторых заранее определенных понятий.
Кодирование информации – это процесс формирования определенного представления информации. В более узком смысле под термином «кодирование» часто понимают переход от одной формы представления информации к другой, более удобной для хранения, передачи или обработки.
Человек кодирует информацию с помощью языка. Язык - это знаковая форма представления информации.[3]
Языки бывают естественные (русский, английский и т.д.) и формальные (язык математики, химии, программирования и т.д.) Любой язык имеет свой алфавит - набор основных символов, различимых по их начертанию. Алфавит обычно бывает жестко зафиксирован и имеет свой синтаксис и грамматику.
Одну и ту же информацию можно кодировать разными способами. Например, объект «КЛАВИАТУРА»: можно представить в виде текстовой информации - написать на русском языке и на английском. Можно представить в виде графической информации - фото и видео. Можно в виде звука - произнести это слово и т.д. Это разные способы кодирования одного и того же объекта.
Огромное количество различной информации неизбежно привело человека к попыткам создать универсальный язык или азбуку для кодирования. Эта проблема была реализована с помощью компьютера. Всю информацию, с которой работает компьютер, можно представить в виде последовательности всего двух знаков - 1 и 0. Эти два символа называются двоичным цифрами, по-английски - binary digit или бит.
Обычно каждый образ при кодировании представлении отдельным знаком. Знак - это элемент конечного множества отличных друг от друга элементов.
С точки зрения технической реализации использование двоичной системы счисления для кодирования информации оказалось намного более простым, чем применение других способов. Действительно, удобно кодировать информацию в виде последовательности нулей и единиц, если представить эти значения как два возможных устойчивых состояния электронного элемента: 0-отсутствие электрического сигнала;1-наличие электрического сигнала.
Эти состояния легко различать. Недостаток двоичного кодирования – длинные коды. Но в технике легче иметь дело с большим количеством простых элементов, чем с небольшим числом сложных.