Работа с информацией. Методы решения задач. Языки программирования и алгоритмизация. Базы данных и компьютерные сети

Сбор, передача, обработка и накопление информации. Реализация информационных процессов. Модели решения функциональных и вычислительных задач. Алгоритмизация и программирование. Базы данных, локальные и глобальные сети ЭВМ. Методы защиты информации.

Рубрика Программирование, компьютеры и кибернетика
Вид курс лекций
Язык русский
Дата добавления 29.11.2012
Размер файла 757,6 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

Лекции по курсу «Информатика»

ДЕ1. Понятие информации. Общая характеристика процессов сбора, передачи, обработки и накопления информации

Лекция 1.1. Основные задачи информатики

1.1.1 Место информатики в современном научном знании

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

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

Начиная с ХVII в. объем научной информации удваивался, примерно, каждые 20 лет, в настоящее время он удваивается в 5 - 6 лет и тенденция ускорения сохраняется. Одной из важнейших проблем человечества является лавинообразный рост потока информации в любой отрасли жизнедеятельности. Подсчитано, что современный специалист должен тратить около 80% своего рабочего времени, чтобы уследить за всеми новыми работами в его области деятельности.

Увеличение объема используемой человеком информации и растущий спрос на нее обусловили появление отрасли знаний, связанной с автоматизацией обработки информации - информатики.

1.1.2 Предмет и структура информатики

Термин информатики получил распространение с середины 80-х г.г. прошлого века. Inform - «информация» и matic - «наука о …». Т.о., информатика - это наука об информации. В англоязычных странах используется термин Computer Science - наука о компьютерах.

Информатика - это наука, изучающая:

Методы реализации информационных процессов средствами вычислительной техники (СВТ);

Состав, структуру, общие принципы функционирования;

Принципы управления СВТ.

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

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

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

В этом разделе изучаются вопросы:

Представление различных типов данных (числа, символы, текст, звук, графика, видео и т.д.) в виде, удобном для обработки СВТ.(кодирование данных);

Форматы представления данных (одни и те же данные могут быть представлены разными способами);

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

В изучении состава, структуры, принципов функционирования СВТ используются научные положения из электроники, автоматики, кибернетики. В целом этот раздел известен как аппаратное обеспечение (АО) информационных процессов.

В этом разделе изучаются:

Основы построения элементов цифровых устройств;

Основные принципы функционирования цифровых вычислительных устройств;

Архитектура СВТ - основные принципы функционирования систем, предназначенных для автоматической обработки данных;

Приборы и аппараты, составляющие аппаратную конфигурацию вычислительных систем;

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

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

Средства взаимодействия аппаратного и программного обеспечения;

Средства взаимодействия человека с аппаратным и программным обеспечением, объединяемые понятием интерфейс;

Программное обеспечение СВТ (ПО).

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

Информационные процессы

Аппаратное обеспечение

Программное обеспечение

Теоретический уровень

Теория кодирования

Теория информации

Теория графов

Теория множеств

Логика и др.

Логика

Электроника

Автоматика

Кибернетика

И др.

Теория алгоритмов

Логика

Теория графов

Теория игр

Лингвистика

И др.

Практический уровень

Кодирование данных

Форматы данных

Сжатие данных

Структуры данных

И др.

Синтез цифровых устройств

Архитектура СВТ

Аппараты и приборы ВС

Аппараты и приборы компьютерных сетей

Интерфейсы

Вспомогательные программы

Системы программирования

Прикладные программные продукты

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

Самый низкий уровень ПО представляет базовое программное обеспечение. Оно отвечает за взаимодействие с базовыми аппаратными средствами. Как правило, базовые программные средства непосредственно входят в состав базового оборудования и хранятся в специальных микросхемах, называемых постоянными запоминающими устройствами (ПЗУ - Read Only Memory, ROM). Программы и данные записываются («прошиваются») в микросхемы ПЗУ на этапе производства и не могут быть изменены в процессе эксплуатации.

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

Комплект программ, находящихся в ПЗУ образуют систему ввода/вывода (BIOS). Основное назначение программ этого пакета - проверка состава и работоспособности компьютерной системы и обеспечение взаимодействия с клавиатурой, монитором, жестким диском и дисководами гибких дискет и CD-ROM.

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

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

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

Инструментальное ПО представляет комплекс программ для создания других программ. Программы инструментального ПО управляются системными программами.

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

В настоящее время программные продукты многих фирм стали объединять в себе программные элементы из разных классов. Например, ОС Windows, являясь комплексом системных программ, в своем составе содержит блок служебных программ (дефрагментация, проверка, очистка диска и др.), а также текстовый процессор Word Pad, графический редактор Paint, принадлежащих к классу прикладных программ.

1.1.3 Цели и задачи курса "Информатика"

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

Задачи информатики состоят в следующем:

Исследование информационных процессов любой природы;

Разработка информационной техники и создание новейших технологий переработки информации на базе полученных результатов исследований информационных процессов;

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

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

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

Вопросы для самоконтроля

Как появилась и развивалась наука «Информатика»?

Опишите структуру информатики.

Каковы главная функция и задачи информатики?

Лекция 1.2 Сигналы. Данные. Информация

1.2.1 Понятия данные и информация

Термин «информация» используется во многих науках и во многих сферах человеческой деятельности. Он происходит от латинского слова «informatio», «сведения, разъяснения, изложение». С точки зрения науки «Информатики», «информация» является первичным, а, следовательно, неопределенным понятием. Так же как понятия «точка» в математике, «тело» в механике, «поле» в физике.

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

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

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

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

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

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

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

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

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

1.2.2 Свойства информации

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

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

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

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

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

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

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

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

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

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

1.2.3 Понятие количества информации

Свойство полноты информации предполагает, что имеется возможность измерять количество информации. Какое количество информации содержится в книге или популярной песенке? Что содержит больше информации роман «Война и мир» или сообщение, полученное от товарища? Ответы на подобные вопросы не просты и не однозначны, т.к. во всякой информации присутствует субъективная компонента. А возможно ли вообще объективно измерить количество информации?

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

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

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

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

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

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

Широко используются еще более крупные производные единицы информации:

1 байт = 8 бит

1 Кбайт = 1024 байт

1 Мбайт = 1024 Кбайт

1 Гбайт = 1024 Мбайт

1 Тбайт = 1024 Гбайт.

Лекция 1.3 Информационный процесс. Основные операции с данными

1.3.1 Общая характеристика процессов сбора, передачи, обработки и накопления информации

Получение информации тесно связано с информационными процессами. Рассмотрим их виды.

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

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

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

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

Лекция 1.4 Системы счисления

1.4.1 Понятие системы счисления, как способа представления чисел

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

Таблица 1. Некоторые системы счисления

Основание

Система счисления

Знаки

2

Двоичная

0,1

3

Троичная

0,1,2

4

Четвертичная

0,1,2,3

5

Пятеричная

0,1,2,3,4

8

Восьмеричная

0,1,2,3,4,5,6,7

10

Десятичная

0,1,2,3,4,5,6,7,8,9

12

Двенадцатеричная

0,1,2,3,4,5,6,7,8,9,A,B

16

Шестнадцатеричная

0,1,2,3,4,5,6,7,8,9,A ,B,C,D,E,F

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

AnAn-1An-2…A1A0,A-1A-2…=An*Bn + An-1*Bn-1 + An-2*Bn-2 + … + A1*B1 + A0*B0 + A-1*B-1 + A-2*B-2 + …

(здесь знак «точка» отделяет целую часть от дробной; знак «звездочка» используется для обозначения операции умножения; B - основание системы счисления; A - коэффициенты). Таким образом, значение каждого знака в числе зависит от позиции, которую занимает знак в записи числа. Именно поэтому такие системы счисления называют позиционными (система счисления обозначается индексом в скобках справа от числа).

Примеры:

23,43(10)= 2*101 + 3*100 + 4*10-1 + 3*10-2 = 23,43(10)

692(10) = 6*102 + 9*101 + 2*100 = 692(10)

1101(2)= 1*23 +1*22 + 0*21 + 1*20 = 13(10)

112(3) = 1*32 + 1*31 + 2*30 = 13(10)

341,5(8) = 3*82 + 4*81 + 1*80 + 5*8-1 =225,625(10)

A1F,4(16) = A*162 + 1*161 + F*160 + 4*16-1 = 2591,25(10).

Кроме позиционных систем счисления существуют такие, в которых значение знака не зависит от того места, которое он занимает в числе. Такие системы счисления называются непозиционными. Наиболее известным примером непозиционной системы является римская. В этой системе используется 7 знаков (I, V, X, L, C, D, M), которые соответствуют следующим величинам: I (1), V(5), X (10), L (50), C (100), D (500), M (1000).

1.4.2 10-ая, 2-ая, 8-ая и 16-ая системы как примеры позиционных систем

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

Целая и дробная части десятичного числа переводятся порознь.

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

Примеры: Остаток

25:2=12 (1)

12:2=6 (0)

6:2=3 (0)

3:2=1 (1)

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

Таким образом, 25(10) = 11001(2)

125(10)X(8) = 175(8)

125:8=15 (5)

15:8=1 (7)

1234(10) Х(16) =4DC(16)

1234:16=77 (12) С

77:16=4 (13) D

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

Например:

0,73*2=1,46 (целая часть 1),

0,46*2=0,92 (целая часть 0),

0,92*2=1,84 (целая часть 1),

0,84*2=1,68 (целая часть 1) и т.д.

В итоге 0,73(10) = 0,1011…(2).

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

Таблица 2. Соответствие чисел в различных системах счисления

Десятичная

Восьмеричная

Шестнадцатеричная

Двоичная

0

0

0

0

1

1

1

1

2

2

2

10

3

3

3

11

4

4

4

100

5

5

5

101

6

6

6

110

7

7

7

111

8

10

8

1000

9

11

9

1001

10

12

A

1010

11

13

B

1011

12

14

C

1100

13

15

D

1101

14

16

E

1110

15

17

F

1111

Для перевода целого двоичного числа и восьмеричное необходимо разбить его справа налево на группы по 3 цифры (двоичные триады). Самая левая группа может содержать менее трех двоичных цифр. Затем каждой группе поставить в соответствие ее восьмеричный эквивалент. Например:

11011001(2) = 11 011 001(2) = 331(8).

Перевод целого двоичного числа в шестнадцатеричное производится аналогично путем разбиения данного числа на группы по четыре цифры (двоичные тетрады):

1100011011001(2)= 1 1000 1101 1001(2)=18D9(16).

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

0,1100011101(2)=0,110 001 110 100(2)=0,6164(8)

0,1100011101(10)=0,1100 0111 0100(2)=0,С74(16).

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

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

1.4.3 Арифметические операции над двоичными числами

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

Лекция 1.5 Единицы представления, измерения и хранения данных

1.5.1 Представление чисел в двоичном коде

Представление чисел в памяти компьютера имеет специфическую особенность, связанную с тем, что в памяти компьютера они должны располагаться в байтах - минимальных по размеру адресуемых ячейках памяти. Вся память компьютера разбита на отдельные участки и 8 бит (т.е. на байты). Байты имеют номера: 0, 1, 2, …, называемые адресами. Два соседних участка: 0 и 1, 2 и 3 и т.д. образуют ячейку памяти ЭВМ. Т.е. одна ячейка памяти может хранить два байта или 16 битов информации. Для содержимого одной ячейки используют название - «машинное слово» или просто «слово». Очевидно, адресом числа считается адрес первого байта, т.е. четные числа, начиная с 0, 2, 4, 6 и т.д. В байте может содержаться произвольный код из восьми двоичных разрядов, и задача представления состоит в том, чтобы указать правила, как в одном или нескольких байтах записать число.

Числа могут быть целые точные, дробные точные, рациональные, иррациональные, дробные приближенные, положительные и отрицательные. Числа могут быть «карликами» (например, масса атома), «гигантами» (например, масса земли), реальными (например, количество студентов в группе, рост, возраст). И каждое из чисел потребует для оптимального представления в памяти свое количество байтов.

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

Целые числа. Целые положительные числа от 0 до 255 можно представить непосредственно в двоичной системе счисления (двоичном коде). Такие числа будут занимать один байт в памяти компьютера.

Числа

Двоичный код

0

00000000

1

00000001

2

00000010

3

00000011

……..

255

11111111

В такой форме представления на компьютере легко реализуется двоичная арифметика. Знак числа «плюс» или «минус» кодируется отдельным битом. Обычно это старший бит. ноль интерпретируется, как «плюс», единица - как «минус». Таким образом, одним байтом могут быть закодированы целые числа в интервале от -128 до +127. Двоичная арифметика при этом будет несколько усложнена, т.к. в этом случае существуют два кода, изображающих число ноль 00000000 и 100000000. В компьютере на аппаратном уровне это необходимо предусмотреть. Данный способ представления целых чисел называется прямым кодом. С отрицательными числами несколько проще, если использовать дополнительный код. В дополнительном коде положительные числа совпадают с положительными числами в прямом коде, отрицательные же числа получаются в результате вычитания из 100000000 соответствующего числа. Например, число -3 получит код:

_100000000

00000011

11111101

В дополнительном коде хорошо реализуется арифметика. Каждый последующий код получается из предыдущего прибавлением единицы с точностью до бита в девятом разряде. Например, 5 - 3 = 5 + (-3)

00000101

+11111101

100000010

Отбрасывая подчеркнутый старший разряд, получим 2.

Аналогично целые числа от 0 до 65536 и целые числа от -32768 до 32767 в двоичной (шестнадцатеричной) системе счисления представляются в двухбайтовых ячейках. Существуют представления целых чисел и в четырехбайтовых ячейках.

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

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

X = mqp,

Где m- основание системы счисления;

P - целое число, называемое порядком.

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

Т.е. число 1234,56 может быть записано:

1234,56 = 123,456*101 = 12,3456*102 = 1,23456*103 = 0,123456*104.

Такое представление не однозначно. Если мантисса

(0,1 для десятичной С.С.),

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

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

Первый разряд представления используется для записи знака мантиссы. За ним - группа разрядов, определяющих порядок, а остальные разряды определяют абсолютную величину мантиссы. Размеры обеих групп разрядов фиксируются. Т.к. порядок может быть положительным или отрицательным, нужно решить проблему его знака. Величина порядка представляется с избытком, т.е., вместо истинного значения порядка хранится число, называемое характеристикой (или смещенным порядком). Для получения характеристики надо к порядку прибавить смещение. Например, при использовании для хранения порядка восьми бит и значений от -128 до +127 используется смещение 128. Тогда для представления порядка будут использоваться значения от 0 до 255, т.е. только неотрицательные числа.

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

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

Как и в случае целых чисел, в программных системах могут использоваться несколько типов данных, реализующих модель с плавающей точкой. Например, в языке СИ применяются три типа данных с разной «длиной». Шестнадцатиразрядные компиляторы для IBM-совместимых ПК реализуют эти типы следующим образом:

Float - 4 байта, из них 23 разряда мантиссы и 8 битов порядка (от 3,4*10-38 до 3,4*1038, обеспечивает точность с 7 значащими цифрами);

Double - 8 байтов, из них 52 разряда мантиссы и 11 битов порядка (от 1,7*10-308 до 1,7*10308, обеспечивает точность с 15 знаками);

Long double - 10 байтов, из них 65 разрядов мантиссы и 14 битов порядка (от 3,4 * 10-4932, обеспечивает точность с 19 знаками).

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

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

1.5.2 Представление символьных и текстовых данных

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

Рассмотрим, как кодируются символы, элементы текстов, текстовые документы.

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

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

Наиболее популярная таблица ASCII разработана институтом стандартизации США в 1981 г. Ее использовали, в частности, программные продукты, работающие под управлением ОС MS DOS. Для представления одного символа используется один байт (8 бит), т.е. кодовая таблица описывает 28 = 256 различных кодов.

Коды с 0 до 127 составляют базовую таблицу; коды со 128 по 255 - расширенную (дополнительную) таблицу.

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

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

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

Во многих странах Азии 256 кодов явно не хватает. В 1991 г. производители программных продуктов (Microsoft, IBM, Apple) и стандартизаторы пришли к соглашению о выработке единого стандарта ISO 10646-1 ( он же Unicode 3.0). Код построен по 31-битной схеме, но используются только два байта для кодирования одного символа. Два байта (16 бит) создают 216 = 65536 кодов, которые описывают цифры, буквы латинского и многих национальных алфавитов, спец. Символы, знаки арифметических операций и т.д. Все текстовые документы в этой кодировке вдвое длиннее, что сначала задерживало ее внедрение, но современных уровень технических средств дает такую возможность. В настоящее время, текстовый процессор Word, начиная с версии Word 8.0 (Microsoft Office 97), использует шрифты Unicode 3.0.

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

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

1.5.4 Представление звуковых данных

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

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

Во время оцифровки сигнал дискретизируется по времени и по уровню. Дискретизация по времени выполняется следующим образом: весь период времени Т разбивается на малые интервалы времени , точками t1, t2, …, tn. Предполагается, что в течение интервала уровень сигнала изменяется незначительно и может с некоторым допущением считаться постоянным. Величина

=

называется частотой дискретизации. Она измеряется в герцах. (Гц) - количество измерений в течение сек.

Дискретизация по уровню называется квантованием и выполняется так: область измерения сигнала от самого малого значения X min до самого большого X max разбивается на N равных квантов, промежутков величиной

точками х1, х2, … , хn, xi = Xmin +

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

xi-1,

то ему в соответствие ставиться код i. Теорема Найквиста утверждает, что, если сигнал оцифрован с частотой , то высшая «слышимая» частота будет не более . Число уровней подбирается так, чтобы звук не имел высокого уровня шума и «электронного» оттенка звучания. Число уровней берется как 2n. Чтобы измерение занимало целое число байт, выбирают n=8 или n=16, т.е. один или два байта.

Высокое качество воспроизведения получается в формате лазерного аудиодиска при следующих параметрах оцифровки: частота дискретизации - 44,1 Гц, квантование - 16 бит, т.е.

.

Т.о. 1 сек стерео звука займет 2 байт * 44100 байт/с * 2 кан. * 1 с = 176400 байт дисковой памяти. При этом качество звука получается очень высоким.

Для телефонных переговоров удовлетворительное качество получается при частоте дискретизации 8 кГц и частоте квантования 255 уровней, т.е. 1 байт, при этом 1 сек звуковой записи, займет на диске 1 байт * 8000 байт/с * 1 с = 8000 байт.

1.5.7 Представление графических данных. Понятие растровой и векторной графики

Изображения представляются двумя способами.

Графические объекты создаются как совокупности линий, векторов - называется векторной графикой.

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

Модель RGB. Чтобы оцифровать цвет, его надо измерить. Немецкий ученый Гросман сформулировал три закона смешения цветов:

Закон трехмерности - любой цвет может быть представлен комбинацией трех основных цветов;

Закон непрерывности - к любому цвету можно подобрать бесконечно близкий;

Закон аддитивности - цвет смеси зависит только от цвета составляющих.

За основные три цвета приняты красный (Red), зеленый (Green), синий (Blue). В модели RGB любой цвет получается в результате сложения основных цветов. Каждый составляющий цвет при этом характеризуется своей яркостью, поэтому модель называется аддитивной. Эта схема применяется для создания графических объектов в устройствах, излучающих свет - телевизорах, мониторах.

Модель CMYK. В полиграфических системах напечатанный на бумаге графический объект сам не излучает световых волн. Изображение формируется на основе отраженной волны от окрашенных поверхностей. Окрашенные поверхности на которые падает белый свет (т.е. сумма всех цветов), должны поглотить (т.е. вычесть) все составляющие цвета, кроме того, цвет которого мы видим. Цвет поверхности можно получить красителями, которые поглощают, а не излучают. Например, если мы видим зеленое дерево, то это означает, что из падающего белого цвета (т.е. суммы красного, зеленого, синего), поглощены синий и красный, а зеленый отражен. Цвета красителей должны быть дополняющими: голубой Cyan = B + G), дополняющий красного; пурпурный (Magenta = R + G), дополняющий зеленого; желтый (Yellow = R + G), дополняющий синего. Т.к. цветовые красители по отражающим свойствам не одинаковы, то для повышения контрастности применяется еще черный (Black). Модель CMYK названа по первым буквам слов Cyan, Magenta, Yellow и последней букве Black. Т.к. цвета вычитаются, модель называется субстрактивной.

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

Если для кодирования яркости каждой точки использовать по одному байту (8 бит) на каждый из трех цветов (3 * 8 = 24 бита), то система обеспечит представление 224 16,7 млн. распознаваемых цветов, что близко цветовосприятию человеческого зрения. Режим представления цветной графики двоичным кодом из 24 разрядов называется полноцветным или True Color. Графические данные, также как и звуковые, занимают очень большие объемы на носителях. Например, если экран монитора имеет растр 800 х 600 точек, изображение, представленного в режиме True Color, займет 800 х 600 х 3 = 1440000 байт. Если не требуется высокое качество отображения цвета, применяют режим High Color, который кодирует одну точку растра 2 байтами (16 разрядов дают 216 65,5 тысячи цветов).

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

Графическими форматами файлов являются .TIFF, .GIF, .JPG, .BMP, JPEG.

1.5.8 Структуры данных

Автоматизированная обработка больших объемов данных становится проще, если данные упорядочены (структурированы). Применяются следующие структуры данных:

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

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

Если элементы списка одной длины, структура называется вектором данных, разделители не требуются. При длине одного элемента d, зная номер элемента n, его начало определяется соотношением d(n-1).

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

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

Если элементы таблицы одной длины, структура называется матрицей данных, разделители в ней не требуются. При длине одного элемента d, зная номер строки m и номер столбца n, а также строк и столбцов M, N, найдем адрес его начала:

d[N(m - 1) + (n - 1)].

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

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

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

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

H:\Stud\tsi11\Ivanov\Text\my_file.doc

Россия \ Ростовская область \ Ростов - на - Дону \ ул. Б. Садовая \дом 1\кв. 11

1.5.9 Хранение данных

При хранении данных решаются две задачи:

как сохранить данные;

как обеспечить быстрый удобный доступ к ним.

В компьютерных технологиях единицей хранения данных является объект переменной длины, называемый файлом. Файл - это поименованная область на внешнем носителе, содержащая данные определенной длины, обладающая собственным именем.

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

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

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

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

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

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

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

Файловая система - это часть ОС компьютера и поэтому всегда несет на себе отпечаток свойств конкретной ОС. Некоторые форматы файлов стандартизированы и должны поддерживаться любой ОС и работающими в ней приложениями (например, графические файлы .GIF или JPEG). Наряду с этим всегда имеются форматы, специфичные только для данной системы (например, исполняемые файлы MS DOS или Windows). Есть форматы, разработанные для конкретных приложений, работающих под управлением данной ОС (например, формат .xls, используемый MS Excel). В некоторых случаях при разработке приложений программистам приходится создавать новые форматы.

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


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.