Теоретические основы информатики
Смысл алфавитного и содержательного подхода к измерению информации. Процессы ее кодирования, обработки и передачи. Особенности систем счисления и языков. Аппаратное и программное обеспечение, архитектура и устройство компьютера, носители информации.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | учебное пособие |
Язык | русский |
Дата добавления | 30.10.2011 |
Размер файла | 2,2 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
К задачам технической кибернетики относится разработка и создание технических систем управления на производственных предприятиях, в исследовательских лабораториях, на транспорте и пр. Такие системы называются системами с автоматическим управлением -- САУ. В качестве управляющего устройства в САУ используются компьютеры или специализированные контроллеры.
Кибернетическая модель управления применительно к САУ представлена на рисунке.
Схема системы автоматического управления
Это замкнутая техническая система, которая работает без участия человека. Человек (программист) подготовил программу управления, занес ее в память компьютера. Дальше система работает автоматически.
Рассматривая этот вопрос, следует обратить внимание учеников на то, что с преобразованием информации из аналоговой формы в цифровую и обратно (ЦАП -- АЦП-преобразование) они уже встречались в других темах или еще встретятся. По такому же принципу работает модем в компьютерных сетях, звуковая карта при вводе-выводе звука (см. “Представление звука” 2). В данной системе аналоговый электрический сигнал, идущий по каналу обратной связи от датчиков управляемого устройства с помощью аналого-цифрового преобразователя (АЦП), превращается в дискретные цифровые данные, поступающие в компьютер. На линии прямой связи работает ЦАП -- цифро-аналоговый преобразователь, который выполняет обратное преобразование -- цифровых данных, идущих от компьютера в аналоговый электрический сигнал, подаваемый на входные узлы управляемого устройства.
Другое направление прикладной кибернетики: автоматизированные системы управления (АСУ). АСУ -- это человеко-машинная система. Как правило, АСУ ориентированы на управление деятельностью производственных коллективов, предприятий. Это системы компьютерного сбора, хранения, обработки разнообразной информации, необходимой для работы предприятия. Например, данные о финансовых потоках, наличии сырья, объемах готовой продукции, кадровая информация и т.д. и т.п. Основная цель таких систем -- быстро и точно предоставлять руководителям предприятия необходимую информацию для принятия управляющих решений.
Задачи, решаемые средствами АСУ, относятся к области экономической кибернетики. Как правило, технической базой таких систем являются локальные компьютерные сети. В АСУ используются разнообразные информационные технологии: базы данных, машинная графика, компьютерное моделирование, экспертные системы и пр.
6. Кодирование информации
Код -- система условных знаков (символов) для передачи, обработки и хранения информации (сообщения).
Кодирование -- процесс представления информации (сообщения) в виде кода.
Все множество символов, используемых для кодирования, называется алфавитом кодирования. Например, в памяти компьютера любая информация кодируется с помощью двоичного алфавита, содержащего всего два символа: 0 и 1.
Научные основы кодирования были описаны К.Шенноном, который исследовал процессы передачи информации по техническим каналам связи (теория связи, теория кодирования). При таком подходе кодирование понимается в более узком смысле: как переход от представления информации в одной символьной системе к представлению в другой символьной системе. Например, преобразование письменного русского текста в код азбуки Морзе для передачи его по телеграфной связи или радиосвязи. Такое кодирование связано с потребностью приспособить код к используемым техническим средствам работы с информацией (см. “Передача информации” 2).
Декодирование -- процесс обратного преобразования кода к форме исходной символьной системы, т.е. получение исходного сообщения. Например: перевод с азбуки Морзе в письменный текст на русском языке.
В более широком смысле декодирование -- это процесс восстановления содержания закодированного сообщения. При таком подходе процесс записи текста с помощью русского алфавита можно рассматривать в качестве кодирования, а его чтение -- это декодирование.
Цели кодирования и способы кодирования
Способ кодирования одного и того же сообщения может быть разным. Например, русский текст мы привыкли записывать с помощью русского алфавита. Но то же самое можно сделать, используя английский алфавит. Иногда так приходится поступать, посылая SMS по мобильному телефону, на котором нет русских букв, или отправляя электронное письмо на русском языке из-за границы, если на компьютере нет русифицированного программного обеспечения. Например, фразу: “Здравствуй, дорогой Саша!” приходится писать так: “Zdravstvui, dorogoi Sasha!”.
Существуют и другие способы кодирования речи. Например, стенография -- быстрый способ записи устной речи. Ею владеют лишь немногие специально обученные люди -- стенографисты. Стенографист успевает записывать текст синхронно с речью говорящего человека. В стенограмме один значок обозначал целое слово или словосочетание. Расшифровать (декодировать) стенограмму может только стенографист.
Приведенные примеры иллюстрируют следующее важное правило: для кодирования одной и той же информации могут быть использованы разные способы; их выбор зависит от ряда обстоятельств: цели кодирования, условий, имеющихся средств.Если надо записать текст в темпе речи -- используем стенографию; если надо передать текст за границу -- используем английский алфавит; если надо представить текст в виде, понятном для грамотного русского человека, -- записываем его по правилам грамматики русского языка.
Еще одно важное обстоятельство: выбор способа кодирования информации может быть связан с предполагаемым способом ее обработки. Покажем это на примере представления чисел -- количественной информации. Используя русский алфавит, можно записать число “тридцать пять”. Используя же алфавит арабской десятичной системы счисления, пишем: “35”. Второй способ не только короче первого, но и удобнее для выполнения вычислений. Какая запись удобнее для выполнения расчетов: “тридцать пять умножить на сто двадцать семь” или “35 х 127”? Очевидно -- вторая.
Однако если важно сохранить число без искажения, то его лучше записать в текстовой форме. Например, в денежных документах часто сумму записывают в текстовой форме: “триста семьдесят пять руб.” вместо “375 руб.”. Во втором случае искажение одной цифры изменит все значение. При использовании текстовой формы даже грамматические ошибки могут не изменить смысла. Например, малограмотный человек написал: “Триста семьдесят пят руб.”. Однако, смысл сохранился.
В некоторых случаях возникает потребность засекречивания текста сообщения или документа, для того чтобы его не смогли прочитать те, кому не положено. Это называется защитой от несанкционированного доступа. В таком случае секретный текст шифруется. В давние времена шифрование называлось тайнописью. Шифрование представляет собой процесс превращения открытого текста в зашифрованный, а дешифрование -- процесс обратного преобразования, при котором восстанавливается исходный текст. Шифрование -- это тоже кодирование, но с засекреченным методом, известным только источнику и адресату. Методами шифрования занимается наука под названием криптография (см. “Криптография” 2).
История технических способов кодирования информации
С появлением технических средств хранения и передачи информации возникли новые идеи и приемы кодирования. Первым техническим средством передачи информации на расстояние стал телеграф, изобретенный в 1837 году американцем Сэмюэлем Морзе. Телеграфное сообщение -- это последовательность электрических сигналов, передаваемая от одного телеграфного аппарата по проводам к другому телеграфному аппарату. Эти технические обстоятельства привели С.Морзе к идее использования всего двух видов сигналов -- короткого и длинного -- для кодирования сообщения, передаваемого по линиям телеграфной связи.
Сэмюэль Финли Бриз Морзе (1791-1872), США
Такой способ кодирования получил название азбуки Морзе. В ней каждая буква алфавита кодируется последовательностью коротких сигналов (точек) и длинных сигналов (тире). Буквы отделяются друг от друга паузами -- отсутствием сигналов.
Самым знаменитым телеграфным сообщением является сигнал бедствия “SOS” (Save Our Souls -- спасите наши души). Вот как он выглядит в коде азбуки Морзе, применяемом к английскому алфавиту:
Три точки (буква S), три тире (буква О), три точки (буква S). Две паузы отделяют буквы друг от друга.
На рисунке показана азбука Морзе применительно к русскому алфавиту. Специальных знаков препинания не было. Их записывали словами: “тчк” -- точка, “зпт” -- запятая и т.п.
Характерной особенностью азбуки Морзе является переменная длина кода разных букв, поэтому код Морзе называют неравномерным кодом. Буквы, которые встречаются в тексте чаще, имеют более короткий код, чем редкие буквы. Например, код буквы “Е” -- одна точка, а код твердого знака состоит из шести знаков. Это сделано для того, чтобы сократить длину всего сообщения. Но из-за переменной длины кода букв возникает проблема отделения букв друг от друга в тексте. Поэтому приходится для разделения использовать паузу (пропуск). Следовательно, телеграфный алфавит Морзе является троичным, т.к. в нем используется три знака: точка, тире, пропуск.
Равномерный телеграфный код был изобретен французом Жаном Морисом Бодо в конце XIX века. В нем использовалось всего два разных вида сигналов. Не важно, как их назвать: точка и тире, плюс и минус, ноль и единица. Это два отличающихся друг от друга электрических сигнала. Длина кода всех символов одинаковая и равна пяти. В таком случае не возникает проблемы отделения букв друг от друга: каждая пятерка сигналов -- это знак текста. Поэтому пропуск не нужен.
Жан Морис Эмиль Бодо (1845-1903), Франция
Код Бодо -- это первый в истории техники способ двоичного кодирования информации. Благодаря этой идее удалось создать буквопечатающий телеграфный аппарат, имеющий вид пишущей машинки. Нажатие на клавишу с определенной буквой вырабатывает соответствующий пяти импульсный сигнал, который передается по линии связи. Принимающий аппарат под воздействием этого сигнала печатает ту же букву на бумажной ленте.
В современных компьютерах для кодирования текстов также применяется равномерный двоичный код (см. “Системы кодирования текста” 2).
Методические рекомендации
Тема кодирования информации может быть представлена в учебной программе на всех этапах изучения информатики в школе.
В пропедевтическом курсе ученикам чаще предлагаются задачи, не связанные с компьютерным кодированием данных и носящие, в некотором смысле, игровую форму. Например, на основании кодовой таблицы азбуки Морзе можно предлагать как задачи кодирования (закодировать русский текст с помощью азбуки Морзе), так и декодирования (расшифровать текст, закодированный с помощью азбуки Морзе).
Выполнение таких заданий можно интерпретировать как работу шифровальщика, предлагая различные несложные ключи шифрования. Например, буквенно-цифровой, заменяя каждую букву ее порядковым номером в алфавите. Кроме того, для полноценного кодирования текста в алфавит следует внести знаки препинания и другие символы. Предложите ученикам придумать способ для отличия строчных букв от прописных.
При выполнении таких заданий следует обратить внимание учеников на то, что необходим разделительный символ -- пробел, поскольку код оказывается неравномерным: какие-то буквы шифруются одной цифрой, какие-то -- двумя.
Предложите ученикам подумать о том, как можно обойтись без разделения букв в коде. Эти размышления должны привести к идее равномерного кода, в котором каждый символ кодируется двумя десятичными цифрами: А -- 01, Б -- 02 и т.д.
Подборки задач на кодирование и шифрование информации имеются в ряде учебных пособий для школы [4].
В базовом курсе информатики для основной школы тема кодирования в большей степени связывается с темой представления в компьютере различных типов данных: чисел, текстов, изображения, звука (см. “Информационные технологии” 2).
В старших классах в содержании общеобразовательного или элективного курса могут быть подробнее затронуты вопросы, связанные с теорией кодирования, разработанной К.Шенноном в рамках теории информации. Здесь существует целый ряд интересных задач, понимание которых требует повышенного уровня математической и программистской подготовки учащихся. Это проблемы экономного кодирования, универсального алгоритма кодирования, кодирования с исправлением ошибок. Подробно многие из этих вопросов раскрываются в учебном пособии “Математические основы информатики” [1].
7. Обработка информации
Обработка информации -- процесс планомерного изменения содержания или формы представления информации.
Обработка информации производится в соответствии с определенными правилами некоторым субъектом или объектом (например, человеком или автоматическим устройством). Будем его называть исполнителем обработки информации.
Исполнитель обработки, взаимодействуя с внешней средой, получает из нее входную информацию, которая подвергается обработке. Результатом обработки является выходная информация, передаваемая внешней среде. Таким образом, внешняя среда выступает в качестве источника входной информации и потребителя выходной информации.
Обработка информации происходит по определенным правилам, известным исполнителю. Правила обработки, представляющие собой описание последовательности отдельных шагов обработки, называются алгоритмом обработки информации.
Исполнитель обработки должен иметь в своем составе обрабатывающий блок, который назовем процессором, и блок памяти, в котором сохраняются как обрабатываемая информация, так и правила обработки (алгоритм). Все сказанное схематически представлено на рисунке.
Схема обработки информации
Пример. Ученик, решая задачу на уроке, осуществляет обработку информации. Внешней средой для него является обстановка урока. Входной информацией -- условие задачи, которое сообщает учитель, ведущий урок. Ученик запоминает условие задачи. Для облегчения запоминания он может использовать записи в тетрадь -- внешнюю память. Из объяснения учителя он узнал (запомнил) способ решения задачи. Процессор -- это мыслительный аппарат ученика, применяя который для решения задачи, он получает ответ -- выходную информацию.
Схема, представленная на рисунке, -- это общая схема обработки информации, не зависящая от того, кто (или что) является исполнителем обработки: живой организм или техническая система. Именно такая схема реализована техническими средствами в компьютере. Поэтому можно сказать, что компьютер является технической моделью “живой” системы обработки информации. В его состав входят все основные компоненты системы обработки: процессор, память, устройства ввода, устройства вывода (см. “Устройство компьютера” 2).
Входная информация, представленная в символьной форме(знаки, буквы, цифры, сигналы), называется входными данными. В результате обработки исполнителем получаются выходные данные. Входные и выходные данные могут представлять собой множество величин -- отдельных элементов данных. Если обработка заключается в математических вычислениях, то входные и выходные данные -- это множества чисел. На следующем рисунке X: {x1, x2, …, xn} обозначает множество входных данных, а Y: {y1, y2, …, ym} -- множество выходных данных:
Схема обработки данных
Обработка заключается в преобразовании множества X в множество Y:
P(X) Y
Здесь Р обозначает правила обработки, которыми пользуется исполнитель. Если исполнителем обработки информации является человек, то правила обработки, по которым он действует, не всегда формальны и однозначны. Человек часто действует творчески, не формально. Даже одинаковые математические задачи он может решать разными способами. Работа журналиста, ученого, переводчика и других специалистов -- это творческая работа с информацией, которая выполняется ими не по формальным правилам.
Для обозначения формализованных правил, определяющих последовательность шагов обработки информации, в информатике используется понятие алгоритма (см. “Алгоритм” 2). С понятием алгоритма в математике ассоциируется известный способ вычисления наибольшего общего делителя (НОД) двух натуральных чисел, который называют алгоритм Евклида. В словесной форме его можно описать так:
1. Если два числа равны между собой, то за НОД принять их общее значение, иначе перейти к выполнению пункта 2.
2. Если числа разные, то большее из них заменить на разность большего и меньшего из чисел. Вернуться к выполнению пункта 1.
Здесь входными данными являются два натуральных числа --х1 и х2. Результат Y -- их наибольший общий делитель. Правило (Р) есть алгоритм Евклида:
Алгоритм Евклида (х1, х2) Y
Такой формализованный алгоритм легко запрограммировать для современного компьютера. Компьютер является универсальным исполнителем обработки данных. Формализованный алгоритм обработки представляется в виде программы, размещаемой в памяти компьютера. Для компьютера правила обработки (Р) -- это программа.
Методические рекомендации
Объясняя тему “Обработка информации”, следует приводить примеры обработки, как связанные с получением новой информации, так и связанные с изменением формы представления информации.
Первый тип обработки: обработка, связанная с получением новой информации, нового содержания знаний. К этому типу обработки относится решение математических задач. К этому же типу обработки информации относится решение различных задач путем применения логических рассуждений. Например, следователь по некоторому набору улик находит преступника; человек, анализируя сложившиеся обстоятельства, принимает решение о своих дальнейших действиях; ученый разгадывает тайну древних рукописей и т.п.
Второй тип обработки: обработка, связанная с изменением формы, но не изменяющая содержания. К этому типу обработки информации относится, например, перевод текста с одного языка на другой: изменяется форма, но должно сохраниться содержание. Важным видом обработки для информатики является кодирование. Кодирование -- это преобразование информации в символьную форму, удобную для ее хранения, передачи, обработки (см. “Кодирование” 2).
Структурирование данных также может быть отнесено ко второму типу обработки. Структурирование связано с внесением определенного порядка, определенной организации в хранилище информации. Расположение данных в алфавитном порядке, группировка по некоторым признакам классификации, использование табличного или графового представления -- все это примеры структурирования.
Особым видом обработки информации является поиск. Задача поиска обычно формулируется так: имеется некоторое хранилище информации -- информационный массив (телефонный справочник, словарь, расписание поездов и пр.), требуется найти в нем нужную информацию, удовлетворяющую определенным условиям поиска(телефон данной организации, перевод данного слова на английский язык, время отправления данного поезда). Алгоритм поиска зависит от способа организации информации. Если информация структурирована, то поиск осуществляется быстрее, его можно оптимизировать (см. “Поиск данных” 2).
В пропедевтическом курсе информатики популярны задачи “черного ящика”. Исполнитель обработки рассматривается как “черный ящик”, т.е. система, внутренняя организация и механизм работы которой нам не известен. Задача состоит в том, чтобы угадать правило обработки данных (Р), которое реализует исполнитель.
Пример 1.
Исполнитель обработки вычисляет среднее значение входных величин: Y = (X1 + X2)/2
Пример 2.
На входе -- слово на русском языке, на выходе -- число гласных букв.
Наиболее глубокое освоение вопросов обработки информации происходит при изучении алгоритмов работы с величинами и программирования (в основной и старшей школе). Исполнителем обработки информации в таком случае является компьютер, а все возможности по обработке заложены в языке программирования. Программирование есть описание правил обработки входных данных с целью получения выходных данных.
Следует предлагать ученикам два типа задач:
-- прямая задача: составить алгоритм (программу) для решения поставленной задачи;
-- обратная задача: дан алгоритм, требуется определить результат его выполнения путем трассировки алгоритма.
При решении обратной задачи ученик ставит себя в положение исполнителя обработки, шаг за шагом выполняя алгоритм. Результаты выполнения на каждом шаге должны отражаться в трассировочной таблице.
8. Передача информации
Составляющие процесса передачи информации
Передача информации происходит от источника к получателю (приемнику) информации. Источником информации может быть все, что угодно: любой объект или явление живой или неживой природы. Процесс передачи информации протекает в некоторой материальной среде, разделяющей источника и получателя информации, которая называется каналом передачи информации. Информация передается через канал в форме некоторой последовательности сигналов, символов, знаков, которые называются сообщением. Получатель информации -- это объект, принимающий сообщение, в результате чего происходят определенные изменения его состояния. Все сказанное выше схематически изображено на рисунке.
Передача информации
Человек получает информацию от всего, что его окружает, посредством органов чувств: слуха, зрения, обоняния, осязания, вкуса. Наибольший объем информации человек получает через слух и зрение. На слух воспринимаются звуковые сообщения -- акустические сигналы в сплошной среде (чаще всего -- в воздухе). Зрение воспринимает световые сигналы, переносящие изображение объектов.
Не всякое сообщение информативно для человека. Например, сообщение на непонятном языке хотя и передается человеку, но не содержит для него информации и не может вызвать адекватных изменений его состояния (см. “Информация” ).
Информационный канал может иметь либо естественную природу (атмосферный воздух, через который переносятся звуковые волны, солнечный свет, отраженный от наблюдаемых объектов), либо быть искусственно созданным. В последнем случае речь идет о технических средствах связи.
Технические системы передачи информации
Первым техническим средством передачи информации на расстояние стал телеграф, изобретенный в 1837 году американцем Сэмюэлем Морзе. В 1876 году американец А.Белл изобретает телефон. На основании открытия немецким физиком Генрихом Герцем электромагнитных волн (1886 г.), А.С. Поповым в России в 1895 году и почти одновременно с ним в 1896 году Г.Маркони в Италии, было изобретено радио. Телевидение и Интернет появились в ХХ веке.
Все перечисленные технические способы информационной связи основаны на передаче на расстояние физического (электрического или электромагнитного) сигнала и подчиняются некоторым общим законам. Исследованием этих законов занимается теория связи, возникшая в 1920-х годах. Математический аппарат теории связи -- математическую теорию связи, разработал американский ученый Клод Шеннон.
Клод Элвуд Шеннон (1916-2001), США
Клодом Шенноном была предложена модель процесса передачи информации по техническим каналам связи, представленная схемой.
Техническая система передачи информации
Под кодированием здесь понимается любое преобразование информации, идущей от источника, в форму, пригодную для ее передачи по каналу связи. Декодирование -- обратное преобразование сигнальной последовательности.
Работу такой схемы можно пояснить на знакомом всем процессе разговора по телефону. Источником информации является говорящий человек. Кодирующим устройством -- микрофон телефонной трубки, с помощью которого звуковые волны (речь) преобразуются в электрические сигналы. Каналом связи является телефонная сеть (провода, коммутаторы телефонных узлов, через которые проходит сигнал). Декодирующим устройством является телефонная трубка (наушник) слушающего человека -- приемника информации. Здесь пришедший электрический сигнал превращается в звук.
Современные компьютерные системы передачи информации -- компьютерные сети, работают по тому же принципу. Есть процесс кодирования, преобразующий двоичный компьютерный код в физический сигнал того типа, который передается по каналу связи. Декодирование заключается в обратном преобразовании передаваемого сигнала в компьютерный код. Например, при использовании телефонных линий в компьютерных сетях функции кодирования-декодирования выполняет прибор, который называется модемом.
Пропускная способность канала и скорость передачи информации
Разработчикам технических систем передачи информации приходится решать две взаимосвязанные задачи: как обеспечить наибольшую скорость передачи информации и как уменьшить потери информации при передаче. Клод Шеннон был первым ученым, взявшимся за решение этих задач и создавшим новую для того времени науку -- теорию информации.
К.Шеннон определил способ измерения количества информации, передаваемой по каналам связи. Им было введено понятие пропускной способности канала, как максимально возможной скорости передачи информации. Эта скорость измеряется в битах в секунду (а также килобитах в секунду, мегабитах в секунду).
Пропускная способность канала связи зависит от его технической реализации. Например, в компьютерных сетях используются следующие средства связи:
-- телефонные линии,
-- электрическая кабельная связь,
-- оптоволоконная кабельная связь,
-- радиосвязь.
Пропускная способность телефонных линий -- десятки, сотни Кбит/с; пропускная способность оптоволоконных линий и линий радиосвязи измеряется десятками и сотнями Мбит/с.
Шум, защита от шума
Термином “шум” называют разного рода помехи, искажающие передаваемый сигнал и приводящие к потере информации. Такие помехи прежде всего возникают по техническим причинам: плохое качество линий связи, незащищенность друг от друга различных потоков информации, передаваемых по одним и тем же каналам. Иногда, беседуя по телефону, мы слышим шум, треск, мешающие понять собеседника, или на наш разговор накладывается разговор совсем других людей.
Наличие шума приводит к потере передаваемой информации. В таких случаях необходима защита от шума.
В первую очередь применяются технические способы защиты каналов связи от воздействия шумов. Например, использование экранированного кабеля вместо “голого” провода; применение разного рода фильтров, отделяющих полезный сигнал от шума, и пр.
Клодом Шенноном была разработана теория кодирования, дающая методы борьбы с шумом. Одна из важных идей этой теории состоит в том, что передаваемый по линии связи код должен быть избыточным. За счет этого потеря какой-то части информации при передаче может быть компенсирована. Например, если при разговоре по телефону вас плохо слышно, то, повторяя каждое слово дважды, вы имеете больше шансов на то, что собеседник поймет вас правильно.
Однако нельзя делать избыточность слишком большой. Это приведет к задержкам и удорожанию связи. Теория кодирования позволяет получить такой код, который будет оптимальным. При этом избыточность передаваемой информации будет минимально возможной, а достоверность принятой информации -- максимальной.
В современных системах цифровой связи для борьбы с потерей информации при передаче часто применяется следующий прием. Все сообщение разбивается на порции -- пакеты. Для каждого пакета вычисляется контрольная сумма (сумма двоичных цифр), которая передается вместе с данным пакетом. В месте приема заново вычисляется контрольная сумма принятого пакета и, если она не совпадает с первоначальной суммой, передача данного пакета повторяется. Так будет происходить до тех пор, пока исходная и конечная контрольные суммы не совпадут.
Методические рекомендации
Рассматривая передачу информации в пропедевтическом и базовом курсах информатики, прежде всего следует обсудить эту тему с позиции человека как получателя информации. Способность к получению информации из окружающего мира -- важнейшее условие существования человека. Органы чувств человека -- это информационные каналы человеческого организма, осуществляющее связь человека с внешней средой. По этому признаку информацию делят на зрительную, звуковую, обонятельную, тактильную, вкусовую. Обоснование того факта, что вкус, обоняние и осязание несут человеку информацию, заключается в следующем: мы помним запахи знакомых объектов, вкус знакомой пищи, на ощупь узнаем знакомые предметы. А содержимое нашей памяти -- это сохраненная информация.
Следует рассказать ученикам, что в мире животных информационная роль органов чувств отличается от человеческой. Важную информационную функцию для животных выполняет обоняние. Обостренное обоняние служебных собак используется правоохранительными органами для поиска преступников, обнаружения наркотиков и пр. Зрительное и звуковое восприятие животных отличается от человеческого. Например, известно, что летучие мыши слышат ультразвук, а кошки видят в темноте (с точки зрения человека).
В рамках данной темы ученики должны уметь приводить конкретные примеры процесса передачи информации, определять для этих примеров источник, приемник информации, используемые каналы передачи информации.
При изучении информатики в старших классах следует познакомить учеников с основными положениями технической теории связи: понятия кодирование, декодирование, скорость передачи информации, пропускная способность канала, шум, защита от шума. Эти вопросы могут быть рассмотрены в рамках темы “Технические средства компьютерных сетей”.
9. Представление чисел
Числа в математике
Число -- важнейшее понятие математики, которое складывалось и развивалось в течение длительного периода истории человечества. Люди начали работать с числами еще с первобытных времен. Первоначально человек оперировал лишь целыми положительными числами, которые называются натуральными числами: 1, 2, 3, 4, … Долго существовало мнение о том, что есть самое большое число, “боле сего несть человеческому уму разумевати” (так писали в старославянских математических трактатах).
Развитие математической науки привело к выводу, что самого большого числа нет. С математической точки зрения ряд натуральных чисел бесконечен, т.е. неограничен. С появлением в математике понятия отрицательного числа (Р.Декарт, XVII век в Европе; в Индии значительно раньше) оказалось, что множество целых чисел неограниченно как “слева”, так и “справа”. Математическое множество целых чисел дискретно и неограниченно (бесконечно).
Понятие вещественного (или действительного) числа в математику ввел Исаак Ньютон в XVIII веке. С математической точки зрения множество вещественных чисел бесконечно и непрерывно. Оно включает в себя множество целых чисел и еще бесконечное множество нецелых чисел. Между двумя любыми точками на числовой оси лежит бесконечное множество вещественных чисел. С понятием вещественного числа связано представление о непрерывной числовой оси, любой точке которой соответствует вещественное число.
Далее будет говориться об особенностях представления чисел в вычислительных устройствах: компьютерах, калькуляторах.
Представление целых чисел
В памяти компьютера числа хранятся в двоичной системе счисления (см. “Системы счисления” 2). Есть две формы представления целых чисел в компьютере: целые без знака и целые со знаком.
Целые без знака -- это множество положительных чисел в диапазоне [0, 2k-1] , где k -- это разрядность ячейки памяти, выделяемой под число. Например, если под целое число выделяется ячейка памяти размером в 16 разрядов (2 байта), то самое большое число будет таким:
В десятичной системе счисления это соответствует: 216 - 1 = 65 535
Если во всех разрядах ячейки нули, то это будет ноль. Таким образом, в 16-разрядной ячейке помещается 216 = 65 536 целых чисел.
Целые числа со знаком -- это множество положительных и отрицательных чисел в диапазоне [-2k-1 , 2k-1 - 1]. Например, при k = 16 диапазон представления целых чисел: [-32 768, 32 767]. Старший разряд ячейки памяти хранит знак числа: 0 -- число положительное, 1 -- число отрицательное. Самое большое положительное число 32 767 имеет следующее представление:
Например, десятичное число 255 после перевода в двоичную систему счисления и вписывания в 16-разрядную ячейку памяти будет иметь следующее внутреннее представление:
Отрицательные целые числа представляются в дополнительном коде. Дополнительный код положительного числа N -- этотакое его двоичное представление, которое при сложении с кодом числа N дает значение 2k. Здесь k -- количество разрядов в ячейке памяти. Например, дополнительный код числа 255 будет следующим:
Это и есть представление отрицательного числа -255. Сложим коды чисел 255 и -255:
Единичка в старшем разряде “выпала” из ячейки, поэтому сумма получилась равной нулю. Но так и должно быть: N + (-N) = 0. Процессор компьютера операцию вычитания выполняет как сложение с дополнительным кодом вычитаемого числа. При этом переполнение ячейки (выход за предельные значения) не вызывает прерывания выполнения программы. Это обстоятельство программист обязан знать и учитывать!
Формат представления вещественных чисел в компьютереназывается форматом с плавающей точкой. Вещественное число R представляется в виде произведения мантиссы m на основание системы счисления n в некоторой целой степени p, которую называют порядком: R = m ? np.
Представление числа в форме с плавающей точкой неоднозначно. Например, для десятичного числа 25,324 справедливы следующие равенства:
25,324 = 2,5324 ? 101 = 0,0025324 ? 104 = 2532,4 ? 10-2 и т.п.
Чтобы не было неоднозначности, договорились в ЭВМ использовать нормализованное представление числа в форме с плавающей точкой. Мантисса в нормализованном представлении должна удовлетворять условию: 0,1n m < 1n. Иначе говоря, мантисса меньше единицы и первая значащая цифра -- не ноль. В некоторых случаях условие нормализации принимают следующим: 1n m < 10n.
В памяти компьютера мантисса представляется как целое число, содержащее только значащие цифры (0 целых и запятая не хранятся). Следовательно, внутреннее представление вещественного числа сводится к представлению пары целых чисел: мантиссы и порядка.
В разных типах компьютеров применяются различные варианты представления чисел в форме с плавающей точкой. Рассмотрим один из вариантов внутреннего представления вещественного числа в четырехбайтовой ячейке памяти.
В ячейке должна содержаться следующая информация о числе: знак числа, порядок и значащие цифры мантиссы.
В старшем бите 1-го байта хранится знак числа: 0 обозначает плюс, 1 -- минус. Оставшиеся 7 бит первого байта содержат машинный порядок. В следующих трех байтах хранятся значащие цифры мантиссы (24 разряда).
В семи двоичных разрядах помещаются двоичные числа в диапазоне от 0000000 до 1111111. Значит, машинный порядок изменяется в диапазоне от 0 до 127 (в десятичной системе счисления). Всего 128 значений. Порядок, очевидно, может быть как положительным, так и отрицательным. Разумно эти 128 значений разделить поровну между положительными и отрицательными значениями порядка: от -64 до 63.
Машинный порядок смещен относительно математического и имеет только положительные значения. Смещение выбирается так, чтобы минимальному математическому значению порядка соответствовал ноль.
Связь между машинным порядком (Mp) и математическим (p) в рассматриваемом случае выражается формулой: Mp = p + 64.
Полученная формула записана в десятичной системе. В двоичной системе формула имеет вид: Mp2 = p2 + 100 00002.
Для записи внутреннего представления вещественного числа необходимо:
1) перевести модуль данного числа в двоичную систему счисления с 24 значащими цифрами,
2) нормализовать двоичное число,
3) найти машинный порядок в двоичной системе счисления,
4) учитывая знак числа, выписать его представление в четырехбайтовом машинном слове.
Пример. Записать внутреннее представление числа 250,1875 в форме с плавающей точкой.
Решение
1. Переведем его в двоичную систему счисления с 24 значащими цифрами:
250,187510 = 11111010,00110000000000002.
2. Запишем в форме нормализованного двоичного числа с плавающей точкой:
0,111110100011000000000000 Ч 1021000.
Здесь мантисса, основание системы счисления
(210 = 102) и порядок (810 = 10002) записаны в двоичной системе.
3. Вычислим машинный порядок в двоичной системе счисления:
Mp2 = 1000 + 100 0000 = 100 1000.
4. Запишем представление числа в четырехбайтовой ячейке памяти с учетом знака числа
Шестнадцатеричная форма: 48FA3000.
Диапазон вещественных чисел значительно шире диапазона целых чисел. Положительные и отрицательные числа расположены симметрично относительно нуля. Следовательно, максимальное и минимальное числа равны между собой по модулю.
Наименьшее по абсолютной величине число равно нулю. Наибольшее по абсолютной величине число в форме с плавающей точкой -- это число с самой большой мантиссой и самым большим порядком.
Для четырехбайтового машинного слова таким числом будет:
0,111111111111111111111111 · 1021111111.
После перевода в десятичную систему счисления получим:
MAX = (1 - 2-24) · 263 1019.
Если при вычислениях с вещественными числами результат выходит за пределы допустимого диапазона, то выполнение программы прерывается. Такое происходит, например, при делении на ноль, или на очень маленькое число, близкое к нулю.
Вещественные числа, разрядность мантиссы которых превышает число разрядов, выделенных под мантиссу в ячейке памяти, представляются в компьютере приближенно (с “обрезанной” мантиссой). Например, рациональное десятичное число 0,1 в компьютере будет представлено приближенно (округленно), поскольку в двоичной системе счисления его мантисса имеет бесконечное число цифр. Следствием такой приближенности является погрешность машинных вычислений с вещественными числами.
Вычисления с вещественными числами компьютер выполняет приближенно. Погрешность таких вычислений называют погрешностью машинных округлений.
Множество вещественных чисел, точно представимых в памяти компьютера в форме с плавающей точкой, является ограниченным и дискретным. Дискретность является следствием ограниченного числа разрядов мантиссы, о чем говорилось выше.
Количество вещественных чисел, точно представимых в памяти компьютера, можно вычислить по формуле: N = 2t · (U - L + 1) + 1. Здесь t -- количество двоичных разрядов мантиссы; U -- максимальное значение математического порядка; L -- минимальное значение порядка. Для рассмотренного выше варианта представления (t = 24, U = 63, L = -64) получается: N = 2 146 683 548.
Методические рекомендации
Тема представления числовой информации в компьютере присутствует как в стандарте для основной школы, так и для старших классов.
В основной школе (базовый курс) достаточно рассмотреть представление целых чисел в компьютере. Изучение этого вопроса возможно только после знакомства с темой “Системы счисления”. Кроме того, из принципов архитектуры ЭВМ ученики должны знать о том, что компьютер работает с двоичной системой счисления.
Рассматривая представление целых чисел, основное внимание нужно обращать на ограниченность диапазона целых чисел, на связь этого диапазона с разрядностью выделяемой ячейки памяти -- k. Для положительных чисел (без знака): [0, 2k-1], для положительных и отрицательных чисел (со знаком): [-2k-1, 2k-1 - 1].
Получение внутреннего представления чисел следует разбирать на примерах. После чего, по аналогии, ученики должны самостоятельно решать такие задачи.
Пример 1. Получить внутреннее представление в формате “со знаком” целого числа 1607 в двухбайтовой ячейке памяти.
Решение
1) Перевести число в двоичную систему счисления: 160710 = 110010001112.
2) Дописывая слева нули до 16 разрядов, получим внутреннее представление этого числа в ячейке:
Желательно показать, как для сжатой формы записи этого кода используется шестнадцатеричная форма, которая получается заменой каждой четверки двоичных цифр одной шестнадцатеричной цифрой: 0647 (см. “Системы счисления” 2).
Более сложной является задача получения внутреннего представления отрицательного целого числа (-N) -- дополнительного кода. Нужно показать ученикам алгоритм этой процедуры:
1) получить внутреннее представление положительного числаN;
2) получить обратный код этого числа заменой 0 на 1 и 1 на 0;
3) к полученному числу прибавить 1.
Пример 2. Получить внутреннее представление целого отрицательного числа -1607 в двухбайтовой ячейке памяти.
Решение
Полезно показать ученикам, как выглядит внутреннее представление самого маленького отрицательного числа. В двухбайтовой ячейке это -32 768.
1) легко перевести число 32 768 в двоичную систему счисления, поскольку 32 768 = 215. Следовательно, в двоичной системе это:
1000000000000000
2) запишем обратный код:
0111111111111111
3) прибавим единицу к этому двоичному числу, получим
Единичка в первом бите обозначает знак “минус”. Не нужно думать, что полученный код -- это минус ноль. Это -32 768 в форме дополнительного кода. Таковы правила машинного представления целых чисел.
Показав этот пример, предложите ученикам самостоятельно доказать, что при сложении кодов чисел 32 767 + (-32 768) получится код числа -1.
Согласно стандарту, представление вещественных чисел должно изучаться в старших классах. При изучении информатики в 10-11-х классах на базовом уровне достаточно качественно рассказать ученикам об основных особенностях работы компьютера с вещественными числами: об ограниченности диапазона и прерывании работы программы при выходе за него; о погрешности машинных вычислений с вещественными числами, о том, что вычисления с вещественными числами компьютер производит медленнее, чем с целыми числами.
Изучение на профильном уровне требует подробного разбора способов представления вещественных чисел в формате с плавающей точкой, анализа особенностей выполнения вычислений на компьютере с вещественными числами. Очень важной проблемой здесь является оценка погрешности вычислений, предупреждение от потери значения, от прерывания работы программы. Подробный материал по этим вопросам имеется в учебном пособии [1].
10. Система счисления
Система счисления -- это способ изображения чисел и соответствующие ему правила действия над числами. Разнообразные системы счисления, которые существовали раньше и которые используются в наше время, можно разделить нанепозиционные и позиционные. Знаки, используемые при записи чисел, называются цифрами.
В непозиционных системах счисления значение цифры не зависит от положения в числе.
Примером непозиционной системы счисления является римская система (римские цифры). В римской системе в качестве цифр используются латинские буквы:
Пример 1. Число CCXXXII складывается из двух сотен, трех десятков и двух единиц и равно двумстам тридцати двум.
В римских числах цифры записываются слева направо в порядке убывания. В таком случае их значения складываются. Если же слева записана меньшая цифра, а справа -- большая, то их значения вычитаются.
Пример 2.
VI = 5 + 1 = 6; IV = 5 - 1 = 4.
Пример 3
MCMXCVIII = 1000 + (-100 + 1000) +
+ (-10 + 100) + 5 + 1 + 1 + 1 = 1998.
В позиционных системах счисления величина, обозначаемая цифрой в записи числа, зависит от ее позиции. Количество используемых цифр называется основанием позиционной системы счисления.
Система счисления, применяемая в современной математике, является позиционной десятичной системой. Ее основание равно десяти, т.к. запись любых чисел производится с помощью десяти цифр:
0, 1, 2, 3, 4, 5, 6, 7, 8, 9.
Позиционный характер этой системы легко понять на примере любого многозначного числа. Например, в числе 333 первая тройка означает три сотни, вторая -- три десятка, третья -- три единицы.
Для записи чисел в позиционной системе с основанием n нужно иметь алфавит из n цифр. Обычно для этого при n < 10 используют n первых арабских цифр, а при n > 10 к десяти арабским цифрам добавляют буквы. Вот примеры алфавитов нескольких систем:
Если требуется указать основание системы, к которой относится число, то оно приписывается нижним индексом к этому числу. Например:
1011012, 36718, 3B8F16.
В системе счисления с основанием q (q-ичная система счисления) единицами разрядов служат последовательные степени числа q. q единиц какого-либо разряда образуют единицу следующего разряда. Для записи числа в q-ичной системе счисления требуется q различных знаков (цифр), изображающих числа 0, 1, ..., q - 1. Запись числа q в q-ичной системе счисления имеет вид 10.
Развернутая форма записи числа
Пусть Aq -- число в системе с основанием q, аi -- цифры данной системы счисления, присутствующие в записи числа A, n + 1 -- число разрядов целой части числа, m -- число разрядов дробной части числа:
Развернутой формой числа А называется запись в виде:
Например, для десятичного числа:
В следующих примерах приводится развернутая форма шестнадцатеричного и двоичного чисел:
В любой системе счисления ее основание записывается как 10.
Если все слагаемые в развернутой форме недесятичного числа представить в десятичной системе и вычислить полученное выражение по правилам десятичной арифметики, то получится число в десятичной системе, равное данному. По этому принципу производится перевод из недесятичной системы в десятичную. Например, перевод в десятичную систему написанных выше чисел производится так:
Перевод десятичных чисел в другие системы счисления
Перевод целых чисел
Целое десятичное число X требуется перевести в систему с основанием q: X = (anan-1 …a1a0)q. Нужно найти значащие цифры числа: . Представим число в развернутой форме и выполним тождественное преобразование:
Отсюда видно, что a0 есть остаток от деления числа X на числоq. Выражение в скобках -- целое частное от этого деления. Обозначим его за X1. Выполняя аналогичные преобразования, получим:
Следовательно, a1 есть остаток от деления X1 на q. Продолжая деление с остатком, будем получать последовательность цифр искомого числа. Цифра an в этой цепочке делений будет последним частным, меньшим q.
Сформулируем полученное правило: для того чтобы перевести целое десятичное число в систему счисления с другим основанием, нужно:
1) основание новой системы счисления выразить в десятичной системе счисления и все последующие действия производить по правилам десятичной арифметики;
2) последовательно выполнять деление данного числа и получаемых неполных частных на основание новой системы счисления до тех пор, пока не получим неполное частное, меньшее делителя;
3) полученные остатки, являющиеся цифрами числа в новой системе счисления, привести в соответствие с алфавитом новой системы счисления;
4) составить число в новой системе счисления, записывая его, начиная с последнего частного.
Пример 1. Перевести число 3710 в двоичную систему.
Для обозначения цифр в записи числа используем символику:a5a4a3a2a1a0
Отсюда: 3710 = l00l0l2
Пример 2. Перевести десятичное число 315 в восьмеричную и в шестнадцатеричную системы:
Отсюда следует: 31510 = 4738 = 13B16. Напомним, что 1110 = B16.
Десятичную дробь X < 1 требуется перевести в систему с основанием q: X = (0, a-1a-2 … a-m+1 a-m)q. Нужно найти значащие цифры числа: a-1, a-2, …, a-m. Представим число в развернутой форме и умножим его на q:
Отсюда видно, что a-1 есть целая часть произведения X на число q. Обозначим за X1 дробную часть произведения и умножим ее на q:
Следовательно, a-2 есть целая часть произведения X1 на числоq. Продолжая умножения, будем получать последовательность цифр. Теперь сформулируем правило: для того чтобы перевести десятичную дробь в систему счисления с другим основанием, нужно:
1) последовательно умножать данное число и получаемые дробные части произведений на основание новой системы до тех пор, пока дробная часть произведения не станет равной нулю или не будет достигнута требуемая точность представления числа в новой системе счисления;
2) полученные целые части произведений, являющиеся цифрами числа в новой системе счисления, привести в соответствие с алфавитом новой системы счисления;
3) составить дробную часть числа в новой системе счисления, начиная с целой части первого произведения.
Пример 3. Перевести десятичную дробь 0,1875 в двоичную, восьмеричную и шестнадцатеричную системы.
Здесь в левом столбце находится целая часть чисел, а в правом -- дробная.
Отсюда: 0,187510 = 0,00112 = 0,148 = 0,316
Перевод смешанных чисел, содержащих целую и дробную части, осуществляется в два этапа. Целая и дробная части исходного числа переводятся отдельно по соответствующим алгоритмам. В итоговой записи числа в новой системе счисления целая часть отделяется от дробной запятой (точкой).
Методические рекомендации
Тема “Системы счисления” имеет прямое отношение к математической теории чисел. Однако в школьном курсе математики она, как правило, не изучается. Необходимость изучения этой темы в курсе информатики связана с тем фактом, что числа в памяти компьютера представлены в двоичной системе счисления, а для внешнего представления содержимого памяти, адресов памяти используют шестнадцатеричную или восьмеричную системы. Это одна из традиционных тем курса информатики или программирования. Являясь смежной с математикой, данная тема вносит вклад также и в фундаментальное математическое образование школьников.
Для курса информатики основной интерес представляет знакомство с двоичной системой счисления. Применение двоичной системы счисления в ЭВМ может рассматриваться в двух аспектах: 1) двоичная нумерация, 2) двоичная арифметика, т.е. выполнение арифметических вычислений над двоичными числами.
Двоичная нумерация
С двоичной нумерацией ученики встречаются в теме “Представление текста в компьютерной памяти”. Рассказывая о таблице кодировки, учитель должен сообщить ученикам, что внутренний двоичный код символа -- это его порядковый номер в двоичной системе счисления. Например, номер буквы S в таблице ASCII равен 83. Восьмиразрядный двоичный код буквы S равен значению этого числа в двоичной системе счисления: 01010011.
Двоичные вычисления
Согласно принципу Джона фон Неймана, компьютер производит вычисления в двоичной системе счисления. В рамках базового курса достаточно ограничиться рассмотрением вычислений с целыми двоичными числами. Для выполнения вычислений с многозначными числами необходимо знать правила сложения и правила умножения однозначных чисел. Вот эти правила:
Подобные документы
Разработка программных и аппаратных компонентов для проведения информатизации объекта. Выбор конфигурации рабочих станций. Комплектация персонального компьютера и сервера для обеспечения обработки информации. Схема лицензирования программного обеспечения.
курсовая работа [2,5 M], добавлен 20.12.2012Понятие, содержание, объект, предмет информатики. Основные виды и способы обработки и кодирования данных. Информация, информационные процессы и системы как объект правового регулирования общественных отношений. Архитектура, программное обеспечение ПЭВМ.
курс лекций [6,5 M], добавлен 20.06.2009Процесс обработки информации на электронно-вычислительных машинах в 50-х гг. Возможность редактирования и форматирования текстовых документов в 70-х гг. Отличительные черты данных и программ. Операционная система и аппаратное обеспечение компьютера.
презентация [68,1 K], добавлен 27.12.2011Обзор и характеристика программного обеспечения компьютера как совокупности программ системы обработки информации. Характеристика аппаратного обеспечения как комплекса электрических и механических устройств, входящих в состав ЭВМ. Взаимодействие систем.
презентация [931,9 K], добавлен 23.12.2010Понятие информации и основные принципы ее кодирования, используемые методы и приемы, инструментарий и задачи. Специфические особенности процессов кодирования цифровой и текстовой, графической и звуковой информации. Логические основы работы компьютера.
курсовая работа [55,8 K], добавлен 23.04.2014Определение информации, ее виды и свойства. Назначение основных блоков компьютера: процессор, память, системная магистраль, внешнее устройство. Архитектура фон Неймана. Характерные черты информации. Принцип использования двоичной системы счисления.
контрольная работа [333,2 K], добавлен 21.02.2010Команды вычислительной машины, которые интерпретируются микропроцессором или микропрограммами. Правила для записи чисел цифровыми знаками. Способы кодирования информации. Практическое применение машинных кодов, систем счисления, кодировки информации.
курсовая работа [1,6 M], добавлен 15.03.2015Содержательный и кибернетический подходы к определению и измерению информации. Кодирование символьной информации в компьютере. Линия информации и информационных процессов. Обзор процесса передачи информации по техническим каналам связи. Языки информатики.
презентация [173,0 K], добавлен 19.10.2014Принцип программного управления искусственной (инженерной) системы, предназначенной для восприятия, хранения, обработки и передачи информации. Характеристика языков программирования Basic и Pascal. Управление базами данных и обеспечение локальных сетей.
контрольная работа [40,5 K], добавлен 22.04.2011Сферы применения персонального компьютера (ПК). Основные блоки ПК, способы компьютерной обработки информации. Устройства ввода и вывода, хранения информации: системный блок, клавиатура, монитор, мышь, сканер, дигитайзер, принтер, дисковый накопитель.
презентация [278,6 K], добавлен 25.02.2011