© Ольга Викторовна Токмакова, 2006 год ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ ВЯТСКИЙ ГОСУДАРСТВЕННЫЙ ГУМАНИТАРНЫЙ УНИВЕРСИТЕТ (ВятГГУ)
О. В. ТОКМАКОВА
ИНФОРМАТИКА Вводный курс
Киров 2009 1
© Ольга Викторовна Токмакова, 2006 год СОДЕРЖАНИЕ 1. История становления и развития информатики. Общая характеристика процессов сбора, передачи, обработки и накопления информации. 2.
Общий подход к решению задач на ЭВМ.
3.
Модели решения функциональных и вычислительных задач.
4.
Представление данных в памяти ЭВМ.
5.
Системы счисления.
6.
Аппаратные реализации информационных процессов
7.
Программные средства реализации информационных процессов.
8.
Базы данных.
9.
История сети Интернет.
10. Информатизация общества. Основы защиты информации и сведений. Методы защиты информации. Приложение. Рабочая программа курса.
2
© Ольга Викторовна Токмакова, 2006 год Лекция 1. История становления и развития информатики. Общая характеристика процессов сбора, передачи, обработки и накопления информации. Содержание лекции. История становления информатики. Информатика как наука и как область деятельности. Структура информатики, ее место в системе наук. Социальный и правовой аспекты информации. Информация как фундаментальное научное понятие. Представление информации. Проблема измерения информации, различные подходы к ее решению. 1. История становления информатики. Информатика как наука и как область деятельности. Структура информатики, ее место в системе наук. Информатика — молодая научная дисциплина, изучающая вопросы, связанные с поиском, сбором, изменением (преобразованием), хранением, использованием информации в самых различных сферах человеческой деятельности. Генетически информатика связана с вычислительной техникой, компьютерными системами и сетями, т.к. именно компьютеры позволяют порождать, хранить и автоматически перерабатывать информацию в таком количестве, что научный подход к информационным процессам становится одновременно необходимым и возможным. До настоящего времени толкование термина “информатика” еще не является установившимся и общепринятым. Обратимся к истории вопроса, восходящей ко времени появления электронных вычислительных машин. После второй мировой войны возникла и начала бурно развиваться новая, интересная наука. Своим появлением она обязана американскому математику Норберту Винеру. Рождение новой науки принято связывать с опубликованием в 1948 г. его знаменитой книги “Кибернетика или управление и связь в животном и машине”. В ней давалось определение кибернетике как науке об общих закономерностях в управлении и связи в различных системах: искусственных, биологических, социальных. Норбертом Винером в этой работе были показаны пути создания общей теории управления и заложены основы методов рассмотрения проблем управления и связи для различных систем с единой точки зрения. Ключевым понятием новой науки было понятие «информация». Постепенно кибернетика превратилась в науку о преобразовании информации. Под информацией понималась любая совокупность сигналов, воздействий или сведений, которые некоторой системой воспринимаются от окружающей среды, выдаются в окружающую среду, а также хранятся в себе. К сожалению, в нашей стране развитие кибернетики встретило мощное идеологическое сопротивление. Как отмечал А. И. Берг, “... были допущены 3
© Ольга Викторовна Токмакова, 2006 год грубые ошибки в оценке значения и возможностей кибернетики. Это нанесло серьезный ущерб развитию науки в нашей стране, привело к задержке в разработке многих теоретических положений и даже самих электронных машин”. Среди причин возникновения такого парадоксального сопротивления можно отметить две наиболее яркие: • некоторые псевдоученые спекулировали на полуфантастических прогнозах о безграничных возможностях кибернетики вместо активной разработки конкретных проблем кибернетики; • многие ученые “классического” направления недооценивали развивающуюся науку, относились к ней с пренебрежением, как к псевдонауке. Конечно, в то далекое время имелись и серьезные трудности в реализации крупных государственных проектов, например, в создании автоматизированных систем управления (АСУ), что тоже не способствовало развитию и становлению кибернетики. Вскоре вслед за появлением термина “кибернетика” в мировой науке стало использоваться англоязычное “Computer Science”, а чуть позже, на рубеже шестидесятых и семидесятых годов, французы ввели получивший сейчас широкое распространение термин “Informatique”. В русском языке раннее употребление термина “информатика” было связано с узко-конкретной областью изучения структуры и общих свойств научной информации, передаваемой посредством научной литературы. Эта информационно-аналитическая деятельность, совершенно необходимая и сегодня в библиотечном деле, книгоиздании и т.д. Как отмечал академик А.П. Ершов, в современных условиях термин «информатика» вводится в русский язык как название фундаментальной естественной науки, изучающей процессы передачи и обработки информации. При таком толковании информатика оказывается непосредственно связанной с философскими и общенаучными категориями, проясняется и ее место в кругу “традиционных” академических научных дисциплин”. Попытку определить, что же такое современная информатика, сделал в 1978 г. Международный конгресс по информатике. В его документах отмечалось, что понятие информатики охватывает области, связанные с разработкой, созданием, использованием и материально-техническим обслуживанием систем обработки информации, включая машины, оборудование, математическое обеспечение, организационные аспекты, а также комплекс промышленного, коммерческого, административного и социального воздействия. В настоящее время у информатики имеется не только научное ядро, но и широчайшие приложения, охватывающие почти все виды человеческой 4
© Ольга Викторовна Токмакова, 2006 год деятельности: производство, управление, науку, образование, проектные разработки, торговлю, финансовую сферу, медицину, криминалистику, охрану окружающей среды и др. И, может быть, главное из них — совершенствование социального управления на основе новых информационных технологий. Как наука, информатика изучает общие закономерности, свойственные информационным процессам (в самом широком смысле этого понятия). Объектом приложений информатики являются разные науки и сферы человеческой деятельности, для которых она стала непрерывным источником современных информационных технологий. Разнообразные информационные технологии имеют и общие черты и, в то же время, существенно отличаются друг от друга: • автоматизированные системы управления — комплекс технических и программных средств, которые во взаимодействии с человеком организуют управление объектами в производстве или общественной сфере. Например, в образовании используются системы АСУ-ВУЗ; • автоматизированные системы управления технологическими процессами. Например, такая система управляет работой станка с числовым программным управлением, процессом запуска космического аппарата и т.д.; • автоматизированная система научных исследований — программно-аппаратный комплекс, в котором научные приборы сопряжены с компьютером, вводят в него данные измерений автоматически, а компьютер производит обработку этих данных и представление их в наиболее удобной для исследователя форме; • автоматизированная обучающая система. Есть системы, помогающие учащимся осваивать новый материал, производящие контроль знаний, помогающие преподавателям готовить учебные материалы и т.д. К таковым относятся различные электронные пособия, включающие не только особым образом структурированный содержательный материал, но и тесты самоконтроля, презентации, видео- и аудиоматериалы, задания-тренажеры и т.д.; • система автоматизированного проектирования — программноаппаратный комплекс, который во взаимодействии с человеком позволяет максимально эффективно проектировать механизмы, здания, узлы сложных агрегатов и др. Диагностические системы в медицине, системы организации продажи билетов, системы ведения бухгалтерско-финансовой деятельности, системы обеспечения редакционно-издательской деятельности — спектр применения информационных технологий достаточно широк. 5
© Ольга Викторовна Токмакова, 2006 год Информатика и кибернетика имеют много общего, основанного на историческом прошлом и на концепции управления, но имеют и объективные различия. Один из подходов разграничения информатики и кибернетики — отнесение к области информатики исследований информационных технологий не в любых кибернетических системах (биологических, технических и т.д.), а только в социальных системах; а за кибернетикой сохранение исследования общих законов движения информации в произвольных системах. В соответствии с этим подходом информатика исследует движения информации в социальных системах, а кибернетика – во всех остальных. Информатика, опираясь на этот теоретический фундамент, изучает конкретные способы и приемы переработки, передачи, использования информации. Впрочем, многим современным ученым такое разделение представляется искусственным, и они просто считают кибернетику одной из составных частей информатики. Рассмотрим составные части “ядра” современной информатики. Каждая из этих частей может рассматриваться как относительно самостоятельная научная дисциплина, но все они при этом части одной науки. Теоретическая информатика опирается на математическую логику и включает такие разделы как теория алгоритмов и автоматов, теория информации и теория кодирования, теория формальных языков и грамматик, исследование операций и другие. Этот раздел информатики использует математические методы для общего изучения процессов обработки информации. Вычислительная техника — раздел, в котором разрабатываются общие принципы построения вычислительных систем. Примеры принципиальных, ставших классическими решений в этой области — неймановская архитектура компьютеров первых поколений, шинная архитектура ЭВМ старших поколений, архитектура параллельной (многопроцессорной) обработки информации. Программирование — деятельность, связанная с разработкой системного (разработка новых языков программирования и компиляторов к ним, разработка интерфейсных систем) и прикладного (системы обработки текстов, электронные таблицы, системы управления базами данных и т.д.) программного обеспечения. Раздел информатики «Информационные системы» связан с решением вопросов по анализу потоков информации в различных сложных системах, их оптимизации, структурированию, принципах хранения и поиска. Искусственный интеллект — область информатики, в которой решаются сложнейшие проблемы, находящиеся на пересечении с психологией, 6
© Ольга Викторовна Токмакова, 2006 год физиологией, лингвистикой и другими науками. Основные направления разработок, относящихся к этой области - моделирование рассуждений, компьютерная лингвистика, машинный перевод, создание экспертных систем, синтез и анализ сообщений на естественных языках, распознавание образов и другие. Попробуем определить место общеобразовательного курса информатики в ряду других учебных предметов. По определению А. П. Ершова информатика — это “фундаментальная естественная наука”. Академик Б. Н. Наумов определял информатику “как естественную науку, изучающую общие свойства информации, процессы, методы и средства ее обработки (сбор, хранение, преобразование, перемещение, выдача)”. К фундаментальным принято относить те науки, основные понятия которых носят общенаучный характер, используются во многих других науках и видах деятельности. Нет, например, сомнений в фундаментальности столь разных наук как математика и философия. В этом же ряду и информатика, так как понятия “информация”, “процессы обработки информации”, несомненно, имеют общенаучную значимость. Естественные науки — физика, химия, биология и другие — имеют дело с объективными сущностями мира, существующими независимо от нашего сознания. Отнесение к ним информатики отражает единство законов обработки информации в системах самой разной природы – искусственных, биологических, общественных. Черты технической науки придают информатике ее аспекты, связанные с созданием и функционированием машинных систем обработки информации. Академик А. А. Дородницын определяет состав информатики как “три неразрывно и существенно связанные части: технические средства, программные и алгоритмические”. Информатике присущи и некоторые черты гуманитарной (общественной) науки, что обусловлено ее вкладом в развитие и совершенствование социальной сферы. Таким образом, в настоящее время информатика позиционирует себя как комплексная, междисциплинарная отрасль научного знания. 2. Социальные и правовые аспекты информатики. Современное общество справедливо называют информационным, потому что все сферы жизни и деятельности человека в частности и общества в целом опираются на информационные технологии. Действительно, становится все больше людей занятых обработкой информации (учителя, клерки, программисты …), появились пограничные специальности (программист, разрабатывающий программы для станков с ЧПУ). Рабочие и крестьяне, составлявшие в середине 7
© Ольга Викторовна Токмакова, 2006 год XX века более 2/3 населения, в настоящее время в развитых странах составляют уже менее трети населения. Буквально на наших глазах происходит отток людей из сферы прямого материального производства в информационную сферу. Активно развивается сфера высоких технологий, в обществе увеличиваются потребности в высокообразованных специалистах, прогрессирует система высшего образования. Информатизация активно меняет облик традиционных отраслей промышленности и сельского хозяйства. Меняются условия труда, его интенсивность, увеличивается его производительность. Станки с числовым программным управлением становятся обычным оборудованием в промышленности. Новейшие технологии в сельскохозяйственном производстве значительно облегчают труд. Однако не так все просто. Вместе с позитивными тенденциями можно констатировать и явные недостатки этого явления. Происходит явное повышение социальной напряженности. Например, появление на производстве промышленных роботов ведет к полному изменению технологического процесса, который перестает быть ориентированным на человека – меняется номенклатура профессий. Значительная часть людей вынуждена менять либо специальность, либо место работы, а вместе с этим — и место жительства. Рост миграции населения характерен для большинства развитых стран. Государство и частные фирмы поддерживают систему повышения квалификации и переподготовки, но не все люди справляются со стрессом, сопутствующим таким переменам. Контроль, основанный на создании различных баз данных, приводит к немыслимому даже в самом жёстком тоталитарном государстве вмешательству в частную жизнь простых граждан. И, поскольку правовое сознание в обществе в целом находится на низком уровне, то данные о профессиональной карьере, здоровье, имущественных возможностях, перемещении по миру и т.д. становятся доступными не только государству, но и различным группам злоумышленников. Вопросы для обсуждения НА ФОРУМЕ: • можно ли, не копируя купленную программу, предоставить возможность пользоваться ею другому лицу; • кому принадлежит авторское право на программу, созданную студентом в ходе выполнения дипломной работы; • можно ли скопировать купленную программу для себя самого, чтобы иметь резервную копию; • можно ли декомпилировать программу, чтобы разобраться в ее деталях или исправить ошибки; • в чем состоит разница между авторским и имущественным правом.
8
© Ольга Викторовна Токмакова, 2006 год Вопросов, подобных этим, возникает множество. Есть, конечно, такие, ответы на которые очевидны: нельзя создавать вирусы, нельзя хулиганить в сетях, нельзя в некоммерческих телеконференциях запускать коммерческую информацию, нельзя вскрывать и искажать защищенную информацию в чужих базах данных и т.д., т.е. совершать поступки, которые могут быть объектом уголовного преследования. В законе Российской Федерации «О правовой охране программ для ЭВМ и баз данных» содержится обширный план приведения российского законодательства в сфере информатики в соответствие с мировой практикой. Главное содержание этого закона — юридическое определение понятий, связанных с авторством и распространением компьютерных программ и баз данных, таких как Авторство, Адаптация, База данных, Воспроизведение, Декомпилирование, Использование, Модификация и т.д., а также установление прав, возникающих при создании программ и баз данных — авторских, имущественных, на передачу, защиту, регистрацию, неприкосновенность и т.д. Компьютерные преступления условно можно разделить на две большие категории: преступления, связанные с вмешательством в работу компьютеров, и преступления, использующие компьютеры как необходимые технические средства. К преступлениям первого вида относятся: • несанкционированный доступ в компьютерные сети и системы, банки данных с целью компьютерного хищения или из хулиганских побуждений; • ввод в программное обеспечение “логических бомб”, срабатывающих при определенных условиях; • разработку и распространение компьютерных вирусов; • преступную небрежность в разработке, изготовлении и эксплуатации программно-вычислительных комплексов, приведшую к тяжким последствиям; • подделку компьютерной информации и сдача заказчикам неработоспособных программ, подделка результатов выборов, референдумов; • хищение компьютерной информации. Среди компьютерных преступлений второго вида, т.е. использующих компьютер как средство преступления, следует отметить преступления, спланированные на основе компьютерных моделей, например, в сфере бухгалтерского учета. Для современного состояния правового регулирования сферы, связанной с информатикой, в России в настоящее время наиболее актуальными являются вопросы, связанные с нарушением авторских прав. 3. Информация, ее виды и свойства. Различные уровни представлений об информации. Понятие информация является одним из 9
© Ольга Викторовна Токмакова, 2006 год фундаментальных в современной науке вообще и базовым для изучаемой нами информатики. В простейшем бытовом понимании с термином “информация” обычно ассоциируются некоторые сведения, данные, знания и т.п. Информация передается в виде сообщений, определяющих форму и представление передаваемой информации (музыкальное произведение; телепередача; команды регулировщика на перекрестке; текст, распечатанный на принтере; данные, полученные в результате работы составленной вами программы и т.д.). При этом предполагается, что имеются источник информации и ее получатель. Сообщение от источника к получателю передается посредством какой-нибудь среды, являющейся в таком случае “каналом связи”.
Источник
Получатель
Рис.1. Так, при передаче речевого сообщения в качестве такого канала связи можно рассматривать воздух, в котором распространяются звуковые волны, а в случае передачи письменного сообщения (например, текста, распечатанного на принтере) каналом сообщения можно считать лист бумаги, на котором напечатан текст. Использование терминов “больше информации” или “меньше информации” подразумевает некую возможность ее измерения (или хотя бы количественного соотнесения). Измерение становится невозможным при введении объективных характеристик, из которых для информации важнейшей является количество. Однако при объективном измерении количества информации следует заведомо отрешиться от восприятия ее с точки зрения субъективных свойств. Чтобы сообщение было передано от источника к получателю необходима некоторая материальная субстанция — носитель информации. Сообщение, передаваемое с помощью носителя, назовем сигналом. В общем случае сигнал — это изменяющийся во времени физический процесс. Такой процесс может содержать различные характеристики (например, при передаче электрических сигналов может изменятся напряжение и сила тока). Та из характеристик, которая используется для представления сообщений, называется параметром сигнала. В случае, когда параметр сигнала принимает последовательное во времени конечное число значений (при этом все они могут быть пронумерованы) сигнал называется дискретным, а сообщение, передаваемое с помощью таких сигналов — дискретным сообщением. Информация, передаваемая источником в этом случае, также называется дискретной. Если же источник вырабатывает непрерывное сообщение (соответственно, параметр 10
© Ольга Викторовна Токмакова, 2006 год сигнала — непрерывная функция от времени), то соответствующая информация называется непрерывной. Пример дискретного сообщения — процесс чтения книги, информация в которой представлена текстом, т.е. дискретной последовательностью отдельных значков (букв). Примером непрерывного сообщения служит человеческая речь, передаваемая модулированной звуковой волной; параметром сигнала в этом случае является давление, создаваемое этой волной в точке нахождения приемника — человеческого уха. Непрерывное сообщение может быть представлено некоторой непрерывной функцией, заданной на некотором интервале. Непрерывное сообщение можно преобразовать в дискретное (такая процедура называется дискретизацией). Из бесконечного множества значений параметра сигнала выбирается их определенное число, которое приближенно может характеризовать остальные значения. Для этого область определения функции разбивается на отрезки равной длины и на каждом из этих отрезков значение функции принимается постоянным и равным, например, среднему значению на этом отрезке. Полученную функцию, называемую в математике ступенчатой, можно изобразить и иначе, например, с помощью соответствующих вертикальных линий. В итоге получим конечное множество чисел, определяемых, например, по середине или одной из границ таких отрезков. Таким образом, любое сообщение может быть представлено как дискретное, иначе говоря, последовательностью знаков некоторого алфавита. Возможность дискретизации непрерывного сигнала с любой желаемой точностью (для возрастания точности достаточно уменьшить шаг) принципиально важна с точки зрения информатики. Компьютер — цифровая машина, т.е. внутреннее представление информации в нем дискретно. Дискретизация входной информации (если она непрерывна) позволяет сделать ее пригодной для компьютерной обработки. Существуют вычислительные машины, работающие на принципиально иной идее, — аналоговые ЭВМ. Они предназначены для решения задач специального характера и, как правило, широкой публике практически не известны. Эти ЭВМ в принципе не нуждаются в дискретизации входной информации, так как ее внутреннее представление у них непрерывно. В этом случае все наоборот — если внешняя информация дискретна, то ее “перед употреблением” необходимо преобразовать ее в непрерывную. В информатике принято, что информация обладает свойствами запоминаемости, передаваемости, преобразуемости, воспроизводимости и стираемости. Свойство запоминаемости — одно из самых важных. Запоминаемую информацию будем называть макроскопической (имея ввиду пространственные 11
© Ольга Викторовна Токмакова, 2006 год масштабы запоминающей ячейки и время запоминания). Именно с макроскопической информацией мы имеем дело в реальной практике. Передаваемость информации с помощью каналов связи (в том числе с помехами) хорошо исследована в рамках теории информации К.Шеннона. В данном случае имеется ввиду несколько иной аспект — способность информации к копированию, т.е. к тому, что она может быть “запомнена” другой макроскопической системой и при этом останется тождественной самой себе. Очевидно, что количество информации не должно возрастать при копировании. Воспроизводимость информации тесно связана с ее передаваемостью и не является ее независимым базовым свойством. Если передаваемость означает, что не следует считать существенными пространственные отношения между частями системы, между которыми передается информация, то воспроизводимость характеризует неиссякаемость и неистощимость информации, т.е. что при копировании информация остается тождественной самой себе. Фундаментальное свойство информации — преобразуемость. Оно означает, что информация может менять способ и форму своего существования. Копируемость есть разновидность преобразования информации, при котором ее количество не меняется. В общем случае количество информации в процессах преобразования меняется, но возрастать не может. Свойство стираемости информации также не является независимым. Оно связано с таким преобразованием информации (передачей), при котором ее количество уменьшается и становится равным нулю. Данных свойств информации недостаточно для формирования ее меры, так как они относятся к физическому уровню информационных процессов. Предпринимаются усилия ученых в построении единой теории, которая была бы призвана формализовать понятие информации и информационного процесса, описать превращения информации в процессах самой разной природы. В настоящее время, общепризнанным является понимание движения информации как сущности процессов управления, которые суть проявление имманентной активности материи, ее способности к самодвижению. С момента возникновения кибернетики управление рассматривается применительно ко всем формам движения материи, а не только к высшим (биологической и социальной). Многие проявления движения в неживых — искусственных (технических) и естественных (природных) — системах также обладают общими признаками управления, хотя их исследуют в химии, физике, механике в энергетической, а не в информационной системе представлений. 12
© Ольга Викторовна Токмакова, 2006 год Информационные аспекты в таких системах составляют предмет исследования новой отрасли знаний — синергетики. 4. Проблема измерения информации, различные подходы к ее решению. Определить понятие “количество информации” довольно сложно. В решении этой проблемы существуют два основных подхода. Исторически они возникли почти одновременно. В конце 40-х годов XX века один из основоположников кибернетики американский математик Клод Шеннон развил вероятностный подход к измерению количества информации, а работы по созданию ЭВМ привели к “объемному” подходу. Вероятностный подход. Рассмотрим в качестве примера опыт, связанный с бросанием правильной игральной кости, имеющей N граней. Результаты данного опыта могут быть следующие: выпадение грани с одним из следующих знаков: 1, 2, . . . N. Введем в рассмотрение численную величину, измеряющую неопределенность исходов — энтропию (обозначим ее H). Величины N и H связаны между собой функциональной зависимостью, выраженной в формуле Хартли. H = f(N) (1.1) Сама функция f является возрастающей, неотрицательной и определенной. Рассмотрим процедуру бросания кости более подробно. 1. Готовимся бросить кость; исход опыта неизвестен, т.е. имеется некоторая неопределенность. Обозначим ее H1. 2. Кость брошена; информацию об исходе данного опыта получена. Обозначим количество этой информации через I. 3. Обозначим неопределенность данного опыта после его осуществления через H2. За количество информации, которое получено в ходе осуществления опыта, примем разность неопределенностей, имевшихся “до” и “после” опыта: I = H1 – H2 (1.2) Очевидно, что в случае, когда получен конкретный результат, имевшаяся неопределенность снята (H2=0), и, таким образом, количество полученной информации совпадает с первоначальной энтропией. Иначе говоря, неопределенность, заключенная в опыте, совпадает с информацией об исходе этого опыта. Заметим, что значение H2 могло быть и не равным нулю, например, в случае, когда в ходе опыта следующей выпала грань со значением большим “3”. Следующим важным моментом является определение вида функции f в формуле 1.1. Если варьировать число граней N и число бросаний кости 13
© Ольга Викторовна Токмакова, 2006 год (обозначим эту величину через M), то общее число исходов (векторов длины M, состоящих из знаков 1, 2, …, N) будет равно NM: X = NМ . (1.3) Так, в случае двух бросаний кости с шестью гранями имеем: X = 62 = 36. Фактически каждый исход X есть некоторая пара (X1, X2), где X1 и X2, соответственно, — исходы первого и второго бросаний (общее число таких пар — X). Ситуацию с бросанием M раз кости можно рассматривать как некую сложную систему, состоящую из независимых друг от друга подсистем — “однократных бросаний кости”. Энтропия такой системы в M раз больше, чем энтропия одной системы (так называемый “принцип аддитивности энтропии”): f(6М) = M * f(6) Эту формулу можно распространить и на случай любого N: f(NМ ) = M * f(N) (1.4) Прологарифмируем левую и правую часть формулы (1.3): ln X = M * ln N, M = ln X / ln M Подставляем полученное для M значение в формулу (1.4): ln x * f (N ) ln M f (N ) константу ln M
f ( x) =
Обозначив через K положительную
, получим
f(X ) = K*ln X или, с учетом (1.1), H = K * ln N Обычно принимают K =
1 , ln 2
таким образом:
H = log2 N (1.5) Это и есть знаменитая формула Хартли. Важным при введение какой-либо величины является вопрос о том, что принимать за единицу ее измерения. Очевидно, H будет равно единице при N = 2. Иначе говоря, в качестве единицы принимается количество информации, связанное с проведением опыта, состоящего в получении одного из двух равновероятных исходов (примером такого опыта может служить бросание монеты при котором возможны два исхода: “орел”, “решка”). Такая единица количества информации называется “бит”. Все N исходов рассмотренного выше опыта являются равновероятными и поэтому можно считать, что на “долю” каждого исхода приходится одна Nявляется часть общей неопределенности опыта: ( log2 N ) / N 14
© Ольга Викторовна Токмакова, 2006 год При этом вероятность i-го исхода Pi равняется, очевидно, 1/N. Таким образом, N
H = ∑ Pi * log 2 ( i =1
1 ) Pi
(1.6)
Та же формула (1.6) принимается за меру энтропии в случае, когда вероятности различных исходов опыта неравновероятны (т.е. Pi могут быть различны). Формула (1.6) называется формулой Шеннона. Рассмотрим алфавит, состоящий из двух знаков 0 и 1. Если считать, что со знаками 0 и 1 в двоичном алфавите связаны одинаковые вероятности их появления (P(0)=P(1)= 0.5, то количество информации на один знак при двоичном кодировании будет равно H = log2 2 = 1 бит. Таким образом, количество информации (в битах), заключенное в двоичном слове, равно числу двоичных знаков в нем. Объемный подход. В двоичной системе счисления знаки 0 и 1 будем называть битами (от английского выражения Binary digiTs — двоичные цифры). Отметим, что создатели компьютеров отдают предпочтение именно двоичной системе счисления потому, что в техническом устройстве наиболее просто реализовать два противоположных физических состояния: некоторый физический элемент, имеющий два различных состояния: намагниченность в двух противоположных направлениях, прибор, пропускающий или нет электрический ток, конденсатор, заряженный или незаряженный и т.п. В компьютере бит является наименьшей возможной единицей информации. Объем информации, записанной двоичными знаками в памяти компьютера или на внешнем носителе информации, подсчитывается просто по количеству требуемых для такой записи двоичных символов. При этом, в частности, невозможно нецелое число битов (в отличие от вероятностного подхода). Для удобства использования введены и более крупные, чем бит, единицы количества информации. Так, двоичное слово из восьми знаков содержит один байт информации. 1024 байта образуют килобайт (Кбайт), 1024 килобайта — мегабайт (Мбайт), а 1024 мегабайта — гигабайт (Гбайт). Между вероятностным и объемным количеством информации соотношение неоднозначное. Далеко не всякий текст, записанный двоичными символами, допускает измерение объема информации в кибернетическом смысле, но заведомо допускает его в объемном. Если некоторое сообщение допускает измеримость количества информации в обоих смыслах, то это количество не обязательно совпадает, при этом кибернетическое количество информации не может быть больше объемного. 15
© Ольга Викторовна Токмакова, 2006 год Обращение к качественной стороне информации породило иные подходы к ее оценке. При аксиологическом (ценностном) подходе стремятся исходить из ценности, практической значимости информации, т.е. качественных характеристик, значимых в социальной системе. При семантическом (смысловом) подходе информация рассматривается как с точки зрения формы, так и содержания. При этом информацию связывают с тезаурусом, т.е. полнотой систематизированного набора данных о предмете информации. Отметим, что эти подходы не исключают количественного анализа, но он становится существенно сложнее и должен базироваться на современных методах математической статистики.
16
© Ольга Викторовна Токмакова, 2006 год Лекция № 2 Общий подход к решению задач на ЭВМ Содержание лекции. Понятие об общем подходе к решению задач на ЭВМ. Основные этапы решения задачи на компьютере. Постановка задачи. Построение информационной модели. Формализация задачи. Выбор структуры данных. Разработка алгоритма, его детализация. Разработка программы. Представление на языке программирования. Трансляция программы, пробный запуск. Представление о системах программирования, трансляторы: компиляторы, интерпретаторы. Отладка программы, средства отладки. Тестирование программы. Получение и анализ результата. Уточнение информационной модели. Документирование программы. Программное обеспечение и технологии программирования. 1. Понятие об общем подходе к решению задач на ЭВМ. Основные этапы решения задачи на компьютере. Первоначально ЭВМ были созданы для вычислений, но постепенно c их помощью стали решать задачи по физике, химии, биологии, управлению технологическими процессами, рисованию мультфильмов и т.д., т.е. для решения задач с математикой уже непосредственно не связанных. В настоящее время на ЭВМ решают самые разнообразные задачи, от расчета баллистических траекторий до завоевания инопланетных территорий (пока только в компьютерных играх). В каждом случае ЭВМ выполняет какуюто программу, обычно довольно сложную. Некоторые из программ требуют от пользователя специальных знаний и высокой квалификации, например, программы электронной верстки или автоматизированного проектирования, но здесь мы будем говорить не об использовании, а о разработке программ. В процессе создания любой программы можно выделить следующие этапы: 1. Постановка задачи. 2. Анализ, формализованное описание задачи, выбор модели. 3. Выбор или разработка алгоритма решения задачи. 4. Проектирование общей структуры программы. 5. Кодирование. 6. Трансляция программы, пробный запуск. 7. Отладка программы. Тестирование программы. 8. Получение результата, его интерпретация и, возможно, последующая модификация модели. 9. Документирование программы.
17
© Ольга Викторовна Токмакова, 2006 год Затраты труда и времени на их выполнение различны, различаются эти затраты и для разных программ. Однако анализ процесса разработки приводит к выводу о том, что почти всегда, явно или неявно, приходится проходить эти этапы в разработке программы. 2. Постановка задачи. Как правило, постановка задачи выполняется заказчиком, в качестве которого может выступать внешняя организация, организация, в которой работает программист, начальник программиста, преподаватель, а иногда и сам программист. На этом этапе задача, которую необходимо решить посредством составления программы для компьютера, формулируется на естественном языке (русском, китайском племени «мумба-юмба»). При этом важно убедиться, что применение компьютера для решения этой задачи — действительно оптимальный способ получения результата. Вряд ли стоит составлять программу для вычисления суммы двух чисел — в этом случае удобнее воспользоваться калькулятором. При решении вычислительной задачи может оказаться, что уравнения, описывающие математическую модель явления, могут быть решены аналитически (когда решение записывается с помощью элементарных или специальных функций). В этом случае также не нужен компьютер — зачем «палить из пушки по воробьям»? Под постановкой задачи понимают математическую или иную строгую формулировку решаемой задачи. Этот этап включает определение целей создаваемой программы и определение ограничений, налагаемых на программу. При постановке задачи должны быть определены требования: ко времени решения поставленной задачи; объему необходимых ресурсов, например, оперативной памяти; точности достигаемого результата. 3. Анализ, формализованное описание задачи, выбор модели. На первом этапе анализируется условие задачи, определяются исходные данные и результаты, устанавливается зависимость между величинами, рассматриваемыми в задаче. Некоторые задачи имеют множество способов решения, поэтому нужно выбрать способ решения (постановка задачи, разработка или выбор модели). Для этого необходимо определить математические соотношения между исходными данными и результатом. Выполнив перевод задачи на язык математики, получают математическую модель. В зависимости от поставленной задачи, способа создания модели и предметной области различают множество типов моделей: 18
© Ольга Викторовна Токмакова, 2006 год 1. По области использования выделяют учебные, опытные, игровые, имитационные, научно-исследовательские модели. 2. По временному фактору выделяют статические и динамические модели. 3. По форме представления модели бывают математические, геометрические, словесные, логические, специальные (ноты, химические формулы и т.п.). 4. По способу представления модели делятся на информационные (нематериальные, абстрактные) и материальные. Информационные модели, в свою очередь, делятся на знаковые и вербальные, а знаковые – на компьютерные и некомпьютерные. Информационная модель – это совокупность информации, характеризующая свойства и состояние объекта, процесса или явления. Вербальная модель информационная модель в мысленной или разговорной форме. Знаковая модель - информационная модель, выраженная специальными знаками, то есть средствами любого формального языка. Математическая модель – система математических соотношений, описывающих процесс или явление. Компьютерная модель - математическая модель, выраженная средствами программной среды. 4. Выбор или разработка алгоритма решения задачи. По выбранной или разработанной модели составляется (или находится, выбирается из уже известных) алгоритм решения задачи. Тщательно проработанный алгоритм решения задачи – необходимое условие эффективного программирования. Если задача вычислительная, то на этом этапе следует также выбрать метод расчета, то есть численный метод решения задачи. Понятие алгоритма такое же основополагающее для информатики, как и понятие информации. Именно поэтому важно в нем разобраться. Название "алгоритм" произошло от латинской формы имени величайшего среднеазиатского математика Мухаммеда ибн Муса ал-Хорезми (Alhorithmi), жившего в 783—850 гг. В своей книге "Об индийском счете" он изложил правила записи натуральных чисел с помощью арабских цифр и правила 4 арифметических действий над ними "столбиком", знакомые теперь каждому школьнику (сегодня мы бы сказали, что он разработал алгоритмы арифметических действий). В XII веке его книга была переведена на латынь и получила широкое распространение в Европе. Человек ежедневно встречается с необходимостью следовать тем или иным правилам, выполнять различные инструкции и указания. Например, переходя через дорогу по пешеходному переходу надо сначала посмотреть налево. Если машин нет, то перейти полдороги, а если машины есть, ждать, пока они пройдут или остановятся, затем перейти полдороги. После этого 19
© Ольга Викторовна Токмакова, 2006 год посмотреть направо и, если машин нет, то перейти дорогу до конца, а если машины есть, ждать, пока они пройдут или остановятся, а затем перейти дорогу до конца. В начале ХХ века алгоритмы стали объектом изучения математиков, появились различные математические уточнения понятия “алгоритм” и возникла целая отрасль математики - теория алгоритмов. Результаты, полученные теорией алгоритмов, служат теоретическим фундаментом всей компьютерной технологии. В математике для решения типовых задач мы используем определенные правила, описывающие последовательности действий. Например, правила сложения дробных чисел, решения квадратных уравнений и т. д. Обычно любые инструкции и правила представляют собой последовательность действий, которые необходимо выполнить в определенном порядке. Для решения задачи надо знать, что дано, что следует получить, какие действия, в каком порядке следует для этого выполнить. Алгоpитм — заранее заданное понятное и точное пpедписание возможному исполнителю совеpшить определенную последовательность действий для получения решения задачи за конечное число шагов. Это — не определение в математическом смысле слова, а, скорее, описание интуитивного понятия алгоритма, раскрывающее его сущность. Понятие алгоритма является не только одним из главных понятий математики, но одним из главных понятий современной науки. Более того, с наступлением эры информатики алгоритмы становятся одним из важнейших факторов цивилизации. Итак, алгоритм - это описание некоторой последовательности действий, но не всякое, а обладающее определенными свойствами. К этим свойствам относятся: наличие ввода исходных данных наличие вывода результата выполнения однозначность (детерминированность)– компьютер понимает только однозначные инструкции; на одинаковых исходных данных алгоритм должен всегда давать одинаковые результаты; общность (массовость) - алгоритм должен работать на множестве однотипных исходных данных, потенциально бесконечном корректность – алгоритм должен давать правильное решение задачи; конечность – решение задачи должно быть получено за конечное число шагов дискретность (пошаговость) – расчлененность описания на отдельные элементарные действия - операции, которые доступны исполнителю алгоритма (человеку, роботу, компьютеру, ...); 20
© Ольга Викторовна Токмакова, 2006 год эффективность – для решения задачи должны использоваться ограниченные ресурсы компьютера (процессорное время, объем оперативной памяти и т.п.) 5. Проектирование общей структуры программы. Программа представляет собой набор команд, реализующий конкретный алгоритм, на понятном для исполнителя языке. К сожалению, любой язык высокого уровня удобен только нам с вами, то есть тем, кто пишет или отлаживает программы. И при этом этот язык совершенно непонятен компьютеру, то есть исполнителю в нашем случае. Программа на таком языке называется исходным текстом и хранится она во внешнем текстовом файле. На этом этапе происходит «архитектурная» проработка проекта. Определяются те части алгоритма, которые целесообразно оформить в виде подпрограмм или модулей. Определяется и способ хранения информации – в виде набора простых переменных, массивов, других структур. Проектирование структуры программы – ответственный этап ее разработки, особенно, если речь идет о сложном проекте, связанном с созданием сложного программного комплекса. Существует особая наука о проектировании программ. На этапе проектирования структуры программы обычно избегают привязки к особенностям конкретного языка программирования. Одним из популярных подходов к проектированию программ является проектирование «сверху вниз» (разделяй и властвуй): 1. В этом случае сначала определяется глобальная задача, которую должна решить программа (алгоритм). 2. Затем эта задача разбивается на две, три или большее количество подзадач (но не очень большое). Такое разбиение называется пошаговым уточнением процесса решения исходной задачи. 3. Затем по отдельности рассматривается каждая из подзадач, которую, в свою очередь, возможно, придется разбить на еще более мелкие подзадачи. При таком подходе программист может работать с небольшим количеством информации, что снижает риск упустить из виду какую-нибудь важную деталь. Метод проектирования «сверху вниз» не единственный, иногда применяется метод композиции «снизу вверх», методы объектноориентированного и пошагового проектирования и другие подходы. С ними вы познакомитесь в последующих курсах по информатике. 6. Кодирование. Кодирование – запись алгоритмов на языке программирования. После того как алгоритм разработан, его записывают на алгоритмическом языке, и этот процесс называют кодированием алгоритма. Для выполнения данного этапа необходимо знать хотя бы один из многих 21
© Ольга Викторовна Токмакова, 2006 год существующих языков программирования, а лучше знать несколько, чтобы выбрать наиболее подходящий для решаемой задачи. Этот этап считается менее творческим, чем предыдущие. Для его успешного выполнения требуется хорошее знание языка программирования и средств разработки программ: транслятора, компоновщика, программных библиотек и многого другого. Если алгоритм решения задачи, структура программы и структура данных тщательно продуманы и аккуратно записаны, затраты времени на кодирование значительно уменьшаются, а вероятность ошибок при кодировании снижается. Изменения в сложной программе на этапе кодирования могут обойтись в десятки и сотни раз дороже, чем на предыдущих этапах разработки проекта. На этом этапе важно выбрать подходящий язык программирования. Разные языки программирования имеют свои особенности и свои области применения. Квалифицированный программист знает несколько языков программирования и может в каждом случае сделать обоснованный выбор одного из них. 7. Трансляция программы, пробный запуск. Транслятор (англ. translator — переводчик) — это программа-переводчик. Она преобразует программу, написанную на одном из языков высокого уровня, в программу, состоящую из машинных команд. Трансляторы реализуются в виде компиляторов или интерпретаторов. С точки зрения выполнения работы компилятор и интерпретатор существенно различаются. Компилятор (англ. compiler — составитель, собиратель) читает всю программу целиком, делает ее перевод и создает законченный вариант программы на машинном языке, который затем и выполняется. Интерпретатор (англ. interpreter — истолкователь, устный переводчик) переводит и выполняет программу строка за строкой. После того, как программа откомпилирована, ни сама исходная программа, ни компилятор более не нужны. В то же время программа, обрабатываемая интерпретатором, должна заново переводиться на машинный язык при каждом очередном запуске программы. Откомпилированные программы работают быстрее, но интерпретируемые проще исправлять и изменять Каждый конкретный язык ориентирован либо на компиляцию, либо на интерпретацию — в зависимости от того, для каких целей он создавался.
22
© Ольга Викторовна Токмакова, 2006 год Например, Паскаль обычно используется для решения довольно сложных задач, в которых важна скорость работы программ. Поэтому данный язык обычно реализуется с помощью компилятора. С другой стороны, Бейсик создавался как язык для начинающих программистов, для которых построчное выполнение программы имеет неоспоримые преимущества. Иногда для одного языка имеется и компилятор, и интерпретатор. В этом случае для разработки и тестирования программы можно воспользоваться интерпретатором, а затем откомпилировать отлаженную программу, чтобы повысить скорость ее выполнения. 8. Отладка программы. Тестирование (верификация) программы. Отладка программы заключается в устранении ошибок программирования, ошибок перевода алгоритма на язык программирования. Тестирование (верификация) – проверка того факта, что программа работает правильно, то есть дает правильный результат. Для вычислительной задачи разрабатывается система тестов, обычно представляющих собой специально подобранные наборы параметров, для которых задача может быть точно решена. Это могут быть, например. Какие-нибудь предельные случаи. Если результат, полученный с помощью программы, совпадает с ожидаемым, есть основание полагать, что программа работает корректно. Среди начинающих программистов распространено убеждение. Что если программа успешно откомпилирована и, будучи запущена на выполнение, выдает на экран ряды цифр, задача решена. На самом деле, программу можно считать готовой, если разработчик смог доказать заказчику, что результат работы программы является решением поставленной задачи. В современных программных системах (Turbo Basic, Turbo Pascal, Turbo C и др.) отладка осуществляется часто с использованием специальных программных средств, называемых отладчиками. Эти средства позволяют исследовать внутреннее поведение программы. Программа-отладчик обычно обеспечивает следующие возможности: пошаговое исполнение программы с остановкой после каждой команды (оператора); просмотр текущего значения любой переменной или нахождение значения любого выражения, в том числе, с использованием стандартных функций; при необходимости можно установить новое значение переменной; установку в программе "контрольных точек", т.е. точек, в которых программа временно прекращает свое выполнение, так что можно оценить промежуточные результаты, и др. При отладке программ важно помнить следующее: в начале процесса отладки надо использовать простые тестовые данные; 23
© Ольга Викторовна Токмакова, 2006 год возникающие затруднения следует четко разделять и устранять строго поочередно; не нужно считать причиной ошибок машину, так как современные машины и трансляторы обладают чрезвычайно высокой надежностью. 9. Получение результата и его интерпретация. Вот, наконец, программа проверена, большая часть ошибок устранена, и есть обоснованная надежда, что, по крайней мере, в рамках выбранной модели, она дает правильный результат. Этот результат следует проанализировать. Если речь идет о моделировании какого-либо природного процесса, следует сравнить полученные данные с результатами наблюдений. Процесс такого анализа и называется интерпретацией результатов расчета. Здесь нас может ожидать разочарование – результат может отличаться от желаемого. В этом случае, возможно, придется изменять саму модель, приближая ее к реальности. 10. Документирование программы. Это важнейший момент рождения качественной программы. В научных исследованиях значение имеют результаты моделирования, которые публикуются в научных журналах. В других случаях конечным результатом работы может быть сама программа, которая передается заказчику в соответствии с договором или выкладывается на ftp–сервер (сервер, ориентированный не на гипертекстовый, а на файловый способ хранения) для свободного распространения и прославления ее автора. Программа может быть запатентована и тогда автору принадлежат особые права по ее использованию и распространению. Если удалось разработать полезную программу, то работа над ней не заканчивается этапом получения результата, а переходит в фазу сопровождения. Сопровождение программы предполагает консультирование заказчика по работе программы, устранение замеченных в процессе ее эксплуатации недостатков (а возможно, и ошибок!), обучение пользователей работе с программой. Этот заключительный этап имеет большое значение для больших и сложных программ. Программа живет, приобретает новые функции, совершенствует старые, избавляется от последних ошибок и, наконец, умирает, уступив натиску более молодых программ, покоряющих сердца пользователей сверканием инструментальных панелей, трехмерностью изображений и стереофоничностью звуков. 11. Системы программирования
24
© Ольга Викторовна Токмакова, 2006 год Система программирования – это комплекс средств, предназначенный для
создания
и
эксплуатации
программ
на
конкретном
языке
программирования на ЭВМ определенного типа. Средства для создания программ Традиционными
средствами
разработки
программ
являются
алгоритмические (процедурные) языки программирования. Для создания программы на выбранном языке программирования нужно иметь следующие компоненты: Текстовый редактор – это редактор, который позволяет набрать текст программы на языке программирования. Для этой цели можно использовать любые текстовые редакторы, но лучше пользоваться специализированным текстовым редактором. Транслятор – это основа систем программирования. Трансляторы языков программирования, т. е. программы, обеспечивающие перевод исходного текста программы на машинный язык (объектный код), бывают двух типов: интерпретаторы и компиляторы. Интерпретатор
-
это
транслятор,
который
обеспечивает
последовательный синхронный «перевод» и выполнение каждой строки программы, причем при каждом запуске программы на выполнение вся процедура полностью повторяется. Достоинством интерпретатора является удобство отладки программы в интерактивном режиме, а недостатком - малая скорость работы. Компилятор – это транслятор, который исходный текст программы переводит в машинный код. Если в тексте программы нет синтаксических ошибок, то машинный код будет создан. Но это, как правило, не работоспособный код, т.к. в этой программе не хватает подпрограмм стандартных функций, поэтому компилятор выдает промежуточный код, который называется объектным кодом и имеет расширение .obj. Редактор связей (сборщик) – это программа, которая объединяет объектные модули отдельных частей программы и добавляет к ним 25
стандартные
© Ольга Викторовна Токмакова, 2006 год модули подпрограмм стандартных функций
(файлы
с
расширением .lib), которые содержатся в библиотеках, поставляемых вместе с компилятором, в единую программу, готовую к исполнению, т.е. создает исполнимый .exe файл. Этот файл имеет самостоятельное значение и может работать под управлением той (или такой же) операционной системы, в которой он создан. Интегрированные системы программирования В стандартную поставку, как правило, входят текстовый редактор, компилятор, редактор связей (сборщик), библиотеки стандартных функций. Но хорошая
интегрированная
система
обязательно
включает
в
себя
специализированный текстовый редактор, в котором выделяются ключевые слова различными цветами и шрифтами. Все этапы создания программы в ней автоматизированы: после того, как исходный текст программы введен, его компиляция и сборка осуществляются одним нажатием клавиши. В современных интегрированных системах имеется еще один компонент – отладчик. Он позволяет анализировать работу программы по шагам во время ее выполнения, наблюдая, как меняются значения различных переменных. В последние несколько лет созданы среды быстрого проектирования, в которых
программирование,
по
сути,
заменяется
проектированием.
В
проектируемое окно готовые визуальные компоненты перетаскиваются с помощью мыши, затем свойства и поведение компонентов настраивается с помощью редактора. Исходный же текст программы, ответственный за работу этих элементов, генерируется автоматически с помощью среды быстрого проектирования,
которая
называется
RAD-средой.
Подобный
подход
называется визуальным программированием. Основные системы программирования Соответствующие им Наиболее популярные языки
визуальные среды быстрого
программирования
проектирования программ для Windows 26
© Ольга Викторовна Токмакова, 2006 год Бейсик (Basic) – для освоения требует
Microsoft Visual Basic
начальной подготовки (общеобразовательная школа) Паскаль (Pascal) – требует специальной
Borland Delphi
подготовки Си++ (С++)- требует серьезной подготовки Microsoft Visual С++ Ява (Java) требует серьезной подготовки Java: Borland JBuilder Структурное программирование Основная идея структурного программирования состоит в том, что структура программы должна отражать структуру решаемой задачи, чтобы алгоритм программы был ясно виден из исходного текста. Следовательно, надо разбить программу на последовательность модулей, каждый из которых выполняет одно или несколько действий. Требование к модулю – чтобы его выполнение начиналось с первой команды и заканчивалось последней. Модульность – это основная характеристика структурного программирования. А для этого надо иметь средства для создания программы не только с помощью трех простых операторов, но и с помощью средств более точно отражающих конкретную структуру алгоритма. С этой целью в программирование введено понятие подпрограммы – набора операторов, выполняющих нужное действие и не зависящих от других частей исходного кода. Программа разбивается на множество подпрограмм, каждая из которых выполняет одно из действий исходного кода. Комбинируя эти блоки, удается сформировать итоговый алгоритм уже не из операторов, а из законченных блоков. Обращаться к блокам надо по названиям, а название несет смысловую нагрузку. Например, Call Summa, означает обращение к подпрограмме с именем Summa, Call - вызов. При структурном подходе к составлению алгоритмов и программ используются три основные типа алгоритмов: условные, циклические алгоритмы и подпрограммы.
27
© Ольга Викторовна Токмакова, 2006 год Структурированными считаются алгоритмы и программы, составленные с использованием только этих трех типов алгоритмов, при этом для записи циклов и условий должна использоваться ступенчатая запись. Например: Если a>b то Вывод “Первое число больше” Иначе Вывод “Второе число больше” Конец если Алгоритм считается неструктурированным, если нет ступенчатой записи или если при создании программы использован оператор безусловного перехода GoTo – переход к метке, т. е. структурное программирование – это программирование без GoTo. НЦ для I:=I1 до I2
VV: Ввод A(I1)
S:=S+A(I)
S:=S+A(I1)
КЦ;
I1=I1+1
S=0
Если I1≤I2 то перейти к метке VV
Например, рассмотрим 2 фрагмент программ:
Анализируя эти фрагменты, можно сказать, что они подготовлены не по правилам структурного программирования, т. к. в первом фрагменте программы отсутствует ступенчатая запись, а во втором есть переход к метке: Нисходящее программирование Основным принципом технологии структурного программирования являетсяяя нисходящее использованием
программирование
подпрограмм,
которое
- это программирование позволяет
вести
с
разработку
приложения сверху вниз. Суть такого программирования состоит в том, что сначала выделяются несколько подпрограмм, решающих глобальные задачи, потом каждый из этих модулей разбивается на небольшое число других подпрограмм и так происходит до тех пор, пока вся задача не окажется реализованной. Достоинство такого подхода в том, что небольшие программы 28
© Ольга Викторовна Токмакова, 2006 год легче отлаживать, программа становится более надежной и подпрограммы можно использовать повторно. Чтение структурированных программ Подпрограммы бывают двух видов: процедуры и функции. Процедуры просто выполняют последовательность операторов, а функции вычисляют значение и передают его в главную программу. Подпрограмма – процедура или подпрограмма – функция- это отдельный блок операторов, начинающийся с заголовка и заканчивающийся признаком конца процедуры или функции. Чтобы подпрограмма имела смысл ей надо получить какие-то значения, которые называются параметрами. Параметры, которые принимаются в подпрограмме, описываются в заголовке и называются формальными. Например, Процедура Summa(a,b) – это заголовок подпрограммы - процедуры, имя которой Summa, а в скобках указываются формальные параметры a и b. Обращение из главной программы к процедуре осуществляется по имени подпрограммы-процедуры с перечнем в скобках параметров, которые ей передаются, например, Call Summa(x,y) – означает обратиться к процедуре Summa и передать ей параметры x и y, которые называются фактическими параметрами. Подпрограмма
-
функция
оформляется
таким
образом:
Функция Длина( a, b, c, d), где Длина – имя функции, а в скобках указаны формальные параметры. Подпрограмма–функция возвращает только одно значение, которое обязательно присваивается названию функции в теле подпрограммы–функции. Так как функция возвращает значение, то обращение к ней из основной программы может входить в выражение, как операнд. При выполнении процедуры или функции формальные параметры временно заменяются на фактические. Задача
1.
Составить
на
структурированном
языке
алгоритм
вычисления периметра треугольника, если известны координаты его вершин (треугольник лежит на плоскости). 29
© Ольга Викторовна Токмакова, 2006 год Обозначим координаты вершин xA, yA, xB, yB, xC, yC и ввод их значений осуществим в главной программе. Пусть AB-расстояние между точками A и B, BC-между B и C, AC-между A и С, а Р – периметр. Периметр вычислим по известной формуле Р=AB+BC+AC, а расстояние же между двумя точками вычислим по формуле:
d = ( x2 − x1 ) 2 + ( y2 − y1 ) 2
. Вычисление расстояния
между двумя точками вынесем в подпрограмму-функцию, назовем ее Длина, а формальные аргументы подпрограммы – функции обозначим через x1, y1, x2, y2. Тогда для вычисления AB, BC и AB надо три раза обратиться к подпрограмме-функции, передав ей значения фактических аргументов, сначала координаты, например, точек A и B, затем B и C, A и C. Составим подпрограмму-функцию: Функция Длина(x1, y1, x2, y2) d = ( x2 − x1 ) 2 + ( y2 − y1 ) 2
Длина=d Конец функции Основная программа: Ввод координат вершин треугольника xA, yA, xB, yB, xC, yC. P=Длина(xA,yA,xB,yB)+Длина(xB,yB,xC,yC)+Длина(xA,yA,xC,yC) Вывод P Задача 2. Дан массив целых чисел {Ai}, где i=1,2,3,…,M, причем М=15. Программа вычисляет произведение сумм некоторых элементов этого массива. Какое алгебраическое выражение описывает работу программы? В программе введены следующие константы: G=1; W=12; T=8; L=15. Программа 15; Начать функцию Функция SUMMA(I1,I2); S=0; НЦ для I:=I1 до I2 S:=S+A(I) КЦ; 30
© Ольга Викторовна Токмакова, 2006 год SUMMA:=S Конец функции; Начать программу Писать (‘Введите значение массива A’); НЦ для J:=1 до M Читать (A(J) КЦ; P:= SUMMA(G,W)*SUMMA(T,L); Писать (‘Произведение равно:’, P:6); Конец программы. Варианты ответов: 8
12
i =1
j =1
1. P = ∑ Ai * ∑ A j
12
15
i =1
j =8
2. P = ∑ Ai * ∑ A j
15
6
i =1
j =1
3. P = ∑ Ai * ∑ A j
12
12
i =1
j =8
4. P = ∑ Ai * ∑ A j
Правильный ответ с номером 2. Стратегии решения задач (Этапы решения задач на ПК) В процессе подготовки задачи (программной системы (ПС)) на ПК можно выделить такие этапы: Постановка задачи На этом этапе формулируется цель решения задачи, анализируются требования и подробно описывается содержание задачи, выявляются условия, при которых решается задача, а также определяются входные параметры, которые
называются
исходными
данными.
Например,
для
задачи
1,
рассмотренной в предыдущей теме, целью является вычисление периметра треугольника, а исходными данными являются координаты его вершин, при этом условием является то, что вершины треугольника лежат на плоскости. Формальное построение модели задачи На этом этапе составляется формальная модель решения задачи, например, модель базы данных, адекватная оригиналу, модель объектов и потоков информации. Для задачи 1 мы определили, что периметр треугольника
31
© Ольга Викторовна Токмакова, 2006 год вычислим, если будем знать длины его сторон, а длины сторон определяются по координатам вершин треугольника. Построение математической модели решения задачи Этот этап иначе называют формализацией задачи, на котором описательная модель записывается с помощью какого-либо формального языка, например, математического. Для задачи 1, рассмотренной в предыдущей теме, для вычисления периметра используем формулу Р=AB+BC+AC, а для вычисления длины одной стороны такую -
d = ( x2 − x1 ) 2 + ( y2 − y1 ) 2
.
Построение алгоритма Процесс обработки данных разбивается на отдельные самостоятельные блоки и определяется последовательность выполнения этих блоков. Для задачи 1 мы вынесли в самостоятельный блок (в подпрограмму-функцию) вычисление расстояния между двумя точками, вызов которой будет осуществляться из основной программы. Составление программы На этом этапе алгоритм записывается на каком - либо конкретном языке программирования. Отладка программы Когда
программа
составлена,
говорят,
что
готова
альфа-версия.
Начинается отладка программы. Отладка программы - это процесс поиска и устранения синтаксических и логических ошибок в программе. Метод выявления ошибок называется тестированием. Если программная система сложная, и ее разрабатывает компанияисполнитель по заданию заказчика, то программа, так называемая ее альфаверсия, сначала тестируется людьми компании-исполнителя (тестологами). По истечении определенного времени тестирования, когда количество ошибок резко уменьшается, начинается интенсивное использование системы у заказчика с целью выявления и устранения максимального количества ошибок перед выходом системы на рынок. Этот процесс называется тестированием. 32
бета-
© Ольга Викторовна Токмакова, 2006 год В том случае, если ошибки не найдены, говорят, что при тестировании системы получен положительный результат. Если заказчик удовлетворен качеством программного продукта, то наступает период его внедрения в эксплуатацию. После того, как заказчик подписывает акт приемки, проект разработки программной системы считается завершенным. Как правило, сотрудничество исполнителя по обслуживанию системы с заказчиком продолжается, которое называется сопровождением системы. Жизненным циклом разработанного программного продукта является весь период от анализа требований до внедрения и сопровождения, т. е. весь период разработки и эксплуатации программного средства. Главным
качеством
любого
программного
продукта
является
его
надежность. Постановка задачи, формальное построение модели задачи и построение математической модели решения задачи, построение алгоритма – это этапы системного анализа задачи (если задача сложная, то рассматривают такие этапы конструирования ИС -разработка архитектуры ИС, разработка структур программ и разработка схемы информационных обменов ИС), а далее идет этап кодирования алгоритма.
33
© Ольга Викторовна Токмакова, 2006 год Лекция 3. Модели решения функциональных и вычислительных задач Содержание. Моделирование как метод познания. Статические и динамические информационные модели. Формы представления информационных моделей. Структуры информационных моделей. Технология решения задач на компьютере 1. Моделирование как метод познания В своей деятельности мы часто используем модели разных процессов и явлений, а не сами процессы и явления. В этом возникает необходимость тогда, когда исследуемый объект (процесс, явление): − недоступен, − очень велик либо очень мал, − протекает очень быстро или очень медленно, − его исследование может привести к его разрушению, − его создание очень дорого И в обучении мы часто используем модели. Например. В физике – модели электрических цепей, в географии – глобус, карты, в химии – к уравнениям химических реакций – модели их протекания и т.д. А в информатике?... Опр. Моделирование – метод познания, состоящий в создании и исследовании моделей. Как получаются модели? У любого исследуемого объекта много разных свойств. Но не все и не всегда они достаточно значимы для процесса в целом. На какие-то свойства можно не обращать внимание, то есть пренебречь ими. Некоторая аналогия: покупаем бытовую технику, например. микроволновку. Мне важно, чтобы она умела: размораживать, разогревать и готовить вторые блюда. Мне не важна в микроволновке функция связи с Интернетом, гриль, будильник и прочие бантики. Поэтому как бы меня не уговаривал продавец, я никогда не куплю технику, которой буду пользоваться не в полной мере. То есть при покупке я прежде всего обращу внимание на то, что нужно именно мне. Вот на таком принципе и построены некоторые прогрессивные методы обслуживания покупателей в солидных фирмах. Так и с конструированием моделей. Мы отвлекаемся от второстепенного, концентрируясь на главных, наиболее существенных свойствах.
34
© Ольга Викторовна Токмакова, 2006 год Модель самолета, например, должна иметь геометрическое подобие оригиналу, модель атома – правильно отражать физические взаимодействия, макет города – ландшафт и пр. Опр. Модель – это новый объект, отражающий существенные особенности изучаемого объекта, явления или процесса. При этом: 1. Разные науки изучают одни и те же процессы, объекты, явления под разным углом зрения. Например. Человек – объект Физика (механика). Материальная точка Химия. Объект, состоящий из разных химических веществ Биология. Система, стремящаяся к самосохранению. … 2. Разные объекты могут описываться одной моделью. Пример: математика встречное движение. Любые объекты, движущиеся навстречу друг другу (люди, транспорт, животные и т.д.) в задачах всего лишь материальные точки. Виды моделей: 1. предметные (материальные) 2. знаковые (информационные) Предметные модели воспроизводят геометрические, физические и др. свойства объектов в материальной форме: глобус, муляжи по биологии, модели кристаллических решеток… Информационные модели – объекты и процессы в виде рисунков, уравнений, чертежей, таблиц, формул, текстов и пр. В принципе неважно, какую модель мы выбираем, важно лишь то, что с ее помощью удается отразить, какие из существенных признаков исследуемого объекта, процесса или явления. Модель ≠ самому объекту, явлению или процессу!!! Для чего же она тогда нужна?... В процессе моделирования предметная область представляется в виде совокупности объектов. В каждый момент времени объект находится в определенном состоянии, которое характеризуется набором свойств и их значений. Некоторые свойства объекта сохраняют свои значения (постоянны), другие изменяются (переменные). В качестве примера рассмотрим объект «Дискета». Главные свойства этого объекта: геометрические размеры и состояние (отформатированная или нет). Первое свойство постоянно, второе – переменное. 35
© Ольга Викторовна Токмакова, 2006 год Изменение свойств объекта не происходит само собой. Для этого выполняются определенные операции (действия). Изменению каждого свойства обычно соответствует конкретная операция. РЕЗЮМЕ 1. В каких случаях используется моделирование? 2. Может ли объект иметь несколько моделей? 3. Могут ли разные объекты описываться одной и той е моделью? 4. Какие бывают модели? 5. Чем определяется состояние объекта в любой момент времени? 6. Как можно изменить состояние объекта? 2. Статические и динамические информационные модели Система. Вокруг нас находится множество взаимодействующих друг с другом разных объектов с самыми разными свойствами.Практически каждый объект состоит их других объектов, то есть представляет собой систему. Система (от греч. systema - составленное из частей, соединённое) – определённое целостное образование (В.Г. Афанасьев). Система – целеустремленная целостность взаимосвязанных элементов, имеющая новые интегративные свойства, отсутствующие у каждого из них, связанная с внешней средой (Т.И. Шамова). Любая система характеризуется определенным набором признаков: − полнота компонентов, причастных к достижению целей; − наличие связей и зависимостей между компонентами; − наличие ведущего звена, ведущей идеи, необходимой для объединения этих компонентов; − появление у всех компонентов общих качеств. Система состоит из объектов, которые называются элементами системы. Между ними существуют связи и отношения. Например. Компьютер – система, состоящая из различных устройств, связанных между собой аппаратно (непосредственно подключены друг к другу) и функционально (между ними идет обмен информацией). Важным признаком системы является ее целостное функционирование. Это и есть общее качество именно этой системы. Кроме того, любая система существует во времени и пространстве. И ее состояние в каждый момент времени характеризуется ее структурой (составом элементов), их отношениями друг с другом. 2. Виды информационных моделей: − статические, 36
© Ольга Викторовна Токмакова, 2006 год − динамические, − информационные модели процессов управления. Статические информационные модели. Опр. Модели, описывающие систему в определенный момент времени, называются статическими информационными моделями Аналогия: психолог изучает состояние ребенка в конкретный момент времени с помощью теста Люшера, ставит ему диагноз … Работает принцип: «здесь и сейчас». Примеры. В физике статические информационные модели описывают простые механизмы, в биологии – классификацию животного мира, в химии – строение молекул. Динамические информационные модели Состояние систем изменяется со временем. Они стареют, изнашиваются, совершенствуются, развиваются и т.д. Опр. Модели, описывающие процессы изменения и развития систем, называются динамическими информационными моделями Аналогия: педагог изучает состояние ребенка в его деятельности. Примеры. В физике динамические модели описывают движение тел, в биологии – развитие организмов или популяций животных, в химии – процессы прохождения химических реакций и пр. Информационные модели процессов управления Любое изменение сложных систем во времени имеет свою специфику. По крайней мере, ими необходимо управлять. Например. Для поддержания свей жизнедеятельности человек постоянно получает информацию из окружающего пространства с помощью органов чувств, обрабатывает ее с помощью мозга и управляет своим поведением, основываясь на принятом решении. В процессе функционирования сложных систем составляющие их элементы постоянно обмениваются информацией. Система компьютер – сложная. Где в компьютере хранится информация: во внешней памяти (флэшки, диски, дискеты, то есть на гибких и жестких магнитных дисках). Когда информация записывается дисковод обеспечивает запись ее на дискету. Объект системы – дисковод изменяет состояние второго объекта – дискеты. То есть дисковод управляет состоянием дискеты. По отношению к дискете дисковод управляющая система, а дискета – управляемая. 37
© Ольга Викторовна Токмакова, 2006 год Опр. Модели, описывающие информационные процессы управления в сложных системах, называются информационными моделями управления. Существует два варианта реализации процесса управления: 1. разомкнутая система управления (без обратной связи) Управляющий объект (дисковод)
2.
Управляемый объект (дискета)
канал управления
замкнутая система управления (с обратной связью) Управляющий объект
канал управления
(винчестер)
Управляемый объект (магнитные головки)
канал обратной связи При записи информации на гибкие дискеты не требуется особой точности установки и можно не учитывать некоторые механические деформации носителя. Дисковод как упр объект просто перемещает магнитную головку на конкретное расстояние вдоль радиуса дискеты (управляемого объекта). Что при этом не учитывается? Состояние управляемого объекта. Управление обеспечивается по прямому каналу. Без обратной связи. К чему это может привести??? Этот способ лежит в основе разомкнутой системы управления. Аналогия. Учитель, работающий по подобной схеме не заботится о том, усваивают ли дети учебный материал, у него нет контроля на занятиях, он просто передает информацию. При записи на жесткие диски нужна уже точность установки (здесь уже не 80 дорожек, как на дискете, а намного больше – тысячи). Поэтому надо учитывать механические деформации носителя (например, под действием температуры). В этом случае управляющий объект подстраивается под состояние и получив информацию о реальном положении магнитной головки производит нужные перемещения. Это и есть замкнутая модель. 38
© Ольга Викторовна Токмакова, 2006 год РЕЗЮМЕ 1. Что такое система? 2. В чем разница между статической и динамической системами? 3. Примеры динамических информационных моделей. 4. Примеры статических информационных моделей. 5. Когда строятся информационные модели управления? 6. Чем отличаются замкнутые от разомкнутых системы управления? 3. Формы представления информационных моделей Опр. Процесс построения информационных моделей с помощью формальных языков называется формализацией. Одним из наиболее распространенных формальных языков является алгебраический язык формул в математике. С его помощью описываются функциональные зависимости между величинами. Модели, построенные с использованием математических понятий и формул, называются математическими моделями. Например. Гелиоцентрическая модель мира, предложенная Коперником, формулировалась в следующим текстовым описательном варианте (на его языке, естественно): • Не Солнце движется вокруг Земли, а, наоборот, Земля вращается вокруг своей оси и вокруг Солнца; • Орбиты всех небесных тел проходят вокруг Солнца. Так вот, чтобы формализовать эту модель, нужно воспользоваться законами Ньютона и законом всемирного тяготения. Начиная решать какую-нибудь задачу, вы тоже ищете подходящее уравнение, отвечающее ее условию.
ДАНО
НАЙТИ
КАК??
S
А, В, С
Человечество в процессе познания окружающего мира постоянно использует моделирование и формализацию. При изучении нового объекта обычно сначала его описывают на естественном языке и только после этого описательную модель формализуют с помощью математики, геометрии и пр. Кроме описательных часто используются графические модели. Что они из себя представляют? Это рисунки, карты, чертежи, схемы, диаграммы и пр. 39
© Ольга Викторовна Токмакова, 2006 год Они более информативны, чем текстовые. Нагляднее. Многие предметы трудно себе было бы представить без использования таких моделей. Ну, например, зоологию или ботанику. А что было бы с географией без карт? Невозможно было и обучать математике (графики функций, диаграммы), информатике (схему технических устройств), физике (электрические и радиосхемы), химии (схемы химических процессов), черчению и многим-многим другим предметам, не опираясь на потрясающие свойства графических моделей. В настоящее время графические модели строятся с использованием современных компьютерных технологий. 7 примеров на слайдах. РЕЗЮМЕ 1. Какие формальные языки вам известны? 2. Что такое формализация? 3. Приведите примеры описательных текстовых моделей. 4. Приведите примеры математических моделей. 5. Какие формы графических моделей вам известны? 4. Структуры информационных моделей Информационные модели с точки зрения формы могут быть представлены в виде таблиц, иерархий и сетей. В табличной информационной модели элементы информации помещаются в отдельные ячейки. В этой форме могут быть выражены как статические, так и динамические информационные модели: 1) Статическая модель «Температура по больнице за день» Фамилия Температура больного в понедельник Иванов 36,6 Сидоров 36,0 Петров 38 Рядов 38,9 Липов 40,1 2) Динамическая модель Фамилия Понед Вторник Среда Четверг Пятница Суббота Воскресенье больного Иванов 36,6 36,6 36,6 36,6 36,6 36,6 36,6 Петров 36,0 36,2 36,2 36,2 36,5 36,4 36 Сидоров 38 38 38 38 37 37 37 Рядов 38,9 37 37 37 37 38 39 Липов 40,1 38,6 37 37,6 37 36,1 36,0 40
© Ольга Викторовна Токмакова, 2006 год С помощью таблиц строятся информационные модели в разных предметных областях: расписания поездов, уроков, динамика цен на продукты и пр. В табличной информационной модели объекты или их свойства представлены в виде списка, а их значения размещаются в ячейках прямоугольной таблицы. Как правило в таблице не дается представления о каких либо закономерностях, но есть и исключения – таблица Менделеева. Табличные информационные модели проще всего строить и исследовать на компьютере с помощью электронных таблиц и систем управления базами данных. В иерархической модели объекты располагаются по уровням, элементы нижнего уровня входят в состав одного из элементов более высокого уровня. Компьютеры
Суперкомпьютеры
настольные
Персональные
портативные
Серверы
карманные
Графы являются удобным способом наглядного представления структуры информационных моделей. Пример. Для описания исторического процесса смены поколений семьи используются динамические информационные модели в форме генеалогического дерева. Иерархии изображаются в виде графов. Вершины графа (овалы) отображают элементы системы. Элементы верхнего уровня находятся в отношении «состоять из» к элементам нижнего уровня. Такая связь между элементами отображается в виде дуги графа (стрелка вниз). Графы, в которых связи между объектами несимметричны называются ориентированными. 41
© Ольга Викторовна Токмакова, 2006 год РЕЗЮМЕ 1. Каковы характерные особенности табличных информационных моделей? 2. Приведите примеры табличных информационных моделей. 3. Каковы особенности иерархических информационных моделей? 4. Приведите примеры иерархических информационных моделей. 5. Что такое граф? 6. Каковы основные его элементы? 7. Постройте иерархическую модель файловой системы вашего компьютера
42
© Ольга Викторовна Токмакова, 2006 год Лекция 4. Представление данных в памяти ЭВМ. Содержание лекции. Проблема представления данных в памяти ЭВМ. Понятие разрядной сетки. Ограничения. Представление целых чисел. Понятие обратного и дополнительного кода. Представление вещественных чисел. Форма представления с плавающей запятой. Мантисса и порядок (см. предыдущие лекции). Представление данных символьного и строкового типа. Представление графической информации, растровое и векторное изображение. Представление звуковой информации. 1. Проблема представления данных в памяти ЭВМ. Понятие разрядной сетки. Ограничения. Представление целых чисел. Понятие обратного и дополнительного кода. Данные – общее понятие всего того, с чем работает компьютер. В аппаратуре все данные представляются как последовательности двоичных цифр (разрядов). В языках программирования высокого уровня, абстрагируются от деталей представления данных в памяти компьютера. Любой тип данных определяет множество значений, которые может принимать величина этого типа, и те операции, которые можно применять к величинам этого типа. Рассмотрим, как работает система данных в языках программирования на примере языка программирования Turbo Pascal (ТP). В TP работают с 5 типами данных: − Простыми − Строковыми − Составными − Ссылочными − Процедурными К простым относятся следующие типы данных: − Целый − Вещественный − Логический − Символьный − Перечислимый − Ограниченный Два последних определяются пользователем. На простых типах данных, кроме вещественного, определено отношение порядка. Что это такое? 43
© Ольга Викторовна Токмакова, 2006 год Все множество значений типа рассматривается как упорядоченное множество, и каждое значение связано с некоторым целым числом, которое есть его порядковый номер. В любом порядковом типе для каждого значения, кроме первого, существует предшествующее значение, и для каждого значения, за исключением последнего, существует последующее значение. Определены следующие стандартные функции для работы с порядковыми типами: − Ord – возвращает порядковый номер значения любого порядкового типа; − Pred – возвращает предшествующее значение для заданного значения порядкового типа (Интересно, а что возвращает Pred, если заданное значение первое?); − Succ – возвращает следующее значение для заданного значения порядкового типа (а что возвращает эта функция, если заданное значение последнее?). В TP можно конструировать и свои типы данных из имеющихся. Компьютер работает только с данными, представленными в двоичной системе счисления. Не имеет значения, какие это данные: текст, звук, рисунок, целые числа, они должны быть переведены в двоичное представление. Для хранения одной двоичной цифры (это или 0, или1) используется 1 бит информации – 1 разряд памяти компьютера. Вам известно, что 8 битов – это байт, 1024 байтов (2 в 10 степени) – 1 килобайт, 1024 килобайтов – 1 мегабайт, 1024 мегабайтов – 1 гигабайт. Есть специальные названия и у больших величин. В двух битах можно хранить 4 (2 в квадрате) разных последовательности из 0 и 1: 00,01,10,11. В 3 битах уже 8 (2 в кубе): 000, 001, 010, 011, 100, 101, 110, 111. Вы уже знакомы с тем. Что если перевести эти 8 последовательностей в десятичную систему, то получим цифры от 0 до 7. Если у нас 4 бита, то в них можно поместить уже 2 в 4 степени , то есть 16, разных цифровых последовательностей из 0 и 1: 0000, 0001,0010,0011, 0100, 0101, 0110, 0111, 1000, 1001, 1010, 1011, 1100, 1101, 1110, 1111. То есть в этом случае мы уже можем хранить числа от 0 до 15. А что делать, если необходимо хранить в памяти компьютера еще и отрицательные числа? Итак. Пусть у нас 4 бита памяти компьютера. Естественным шагом является выделение одного бита для хранения знака числа. Получаем, 44
© Ольга Викторовна Токмакова, 2006 год например, что число (-5) хранится как 1101, а число (5) как 0101. И диапазон представления чисел в этом случае от -7 до 7, то есть 15 различных значений. А мы можем хранить в 4 битах 16 разных последовательностей. При этом последовательность (т.е. сочетание 1000) 1000 не используется, однако машина может ее трактовать как -0. Рассмотрим примеры из следующей таблицы и разберем, что какое действие означает инверсия и вспомним, как прибавлять 1 к двоичному числу. Заполните оставшиеся строки и столбцы Число Двоичное Инверсия Прибавление 1 Отрицательное представление число 1 0001 1110 1111 -1 2 0010 1101 1110 -2 3 0011 1100 1101 -3 4 0100 1011 1100 -4 5 0101 1010 1011 -5 6 0110 1001 1010 -6 7 0111 1000 1001 -7 8 1000 0111 1000 -8 0 0000 1111 10000 (пятый 0 разряд, т.е. 1, отбрасываем) В предпоследнем столбце мы получили двоичное представление отрицательных чисел. Все 16 последовательностей задействованы, диапазон представления от -7 до 8 и 0 представлен однозначно. Представление отрицательных чисел в том виде, который приведен в этой таблице и есть дополнительный код. Естественно, что представление положительных чисел в дополнительном коде совпадает с их обычным представлением. Сравните полученный результат с диапазоном значений величин целого типа из таблицы: Название Идентификато Объем Допустимые значения р памяти Порядковые типы Короткий целый ShortInt 1 байт -128…127 байтовый Byte 1 байт 0…255 Слово Word 2 байта 0…65 535 Целый Integer 2 байта -32768…32767 Длинный целый LongInt 4 байта -2 147 483 648 … 2 147 483 647 Символьный (литерный) Char 1 байт Символы из расширенного набора 45
© Ольга Викторовна Токмакова, 2006 год Булев Вещественный
Boolean 1 байт Вещественные типы Real 6 байт
C простой (одинарной) точностью С двойной точностью
Single
4 байт
Double
8 байт
С повышенной точностью Сложный
Extended
10 байт
Comp
8 байт
символов кода ASCII True, False -1,7*1038…-2,9*10-39, 2,9*10-39 …1,7*1038 -3,4*1038…-1,5*10-45, 1,5*10-45 …3,4*1038 -1,7*10308…-5,0*10-324, 5,0*10-324 …1,7*10308 -1,1*104932…-1,9*10-4951, 1,9*10-4951 …1,1*104932 -263+1 …263-1
2. Представление вещественных чисел. Форма представления с плавающей запятой. Мантисса и порядок (см. предыдущие лекции). Вводимые числа могут быть записаны в естественной и экспоненциальной форме. Экспоненциальная форма обычно используется для записи или очень больших чисел. или очень маленьких. В естественной форме эти числа имеют большое количество нулей. Н-р: 5 230 000 000 =5,23*109; 0, 000 000 00523=5,23*10-9 Число А в любой системе счисления в экспоненциальной форме имеет А=m*qn M – мантисса, то есть дробь, у которой после запятой есть цифра не равная 0. q – основание систему счисления, n – порядок числа. В наших примерах: 5,23 – это m; q = 10; В первом примере n=9, во втором – (-9). Если числа обрабатываются компьютером в естественной форме, то имеются ограничения на диапазон изменения их величины. Действительно. Если компьютер имеет 64-разрядный процессор (это означает, что одновременно могут обрабатываться 64 двоичных!!! разряда), то, с учетом выделения одного разряда на для хранения знака числа, на целую часть числа можно отвести 31 бит, а на дробную – 32 бита. Диапазон изменения порядка величины числа при этом будет от 2 в степени 31 до 2 в степени (-32). Однако если числа обрабатываются компьютером в экспоненциальной форме, то диапазон изменения порядка числа может быть гораздо больше.
46
© Ольга Викторовна Токмакова, 2006 год Даже, если мы отведем для хранения порядка числа всего 8 разрядов, максимальное значение порядка составит 111111112, то есть 25510, а максимальное значение числа будет: 2255. 1 1
1 2
1 1 1 1 3 4 5 6 Порядок числа
1 7
1 8
1 9
0 10
0 11
0 12
…
0 0 0 30 31 32 Мантисса числа
3. Представление данных символьного и строкового типа. Начиная с 60-х годов, компьютеры все больше стали использоваться для обработки текстовой информации и в настоящее время большая часть персональных компьютеров в мире занято обработкой именно текстовой информации. Текст – это символы (буквы, знаки, цифры…) и строки. Традиционно для кодирования одного символа используется количество информации равное 1 байту, т.е. I=1 байт=8 бит. Символы можно рассмотреть как возможные события, то по формуле I N=2 (где N – количество возможных событий, а I – количество информации), то есть по формуле Хартли, получим, что N=2i=28=256 (так как I у нас равно 8 битам) – это и есть количество символов, которое можно закодировать. Вполне достаточно для текстовой информации включая прописные и заглавные буквы русского и латинского алфавита, цифры, знаки, графические символы и т.д. Кодирование заключается в том, что каждому символу ставится в соответствие уникальный десятичный код от 0 до 255 или соответствующий ему двоичный код от 00000000 до 11111111. Человек различает символы по их написанию, а компьютер – по их коду. При вводе в компьютер текстовой информации происходит ее двоичное кодирование, символ преобразуется в его двоичный код. Когда мы нажимаем на клавишу с символом, в память компьютера поступает последовательность из 8 электрических импульсов (двоичный код символа). Этот код хранится в оперативной памяти компьютера, где занимает 1 ячейку. Когда символ выводится на экран происходит процесс декодирования и символ из кода преобразуется в изображение. Присвоение символу конкретного кода – это вопрос соглашения, которое фиксируется в кодовой таблице. Первые 33 кода (от 0 до 32) – соответствуют не символам, а операциям (перевод строки, ввод пробела…).
47
© Ольга Викторовна Токмакова, 2006 год Коды с 33 по 127 – интернациональные и соответствуют символам латинского алфавита, цифрам, знакам арифметических операций и знакам препинания. Коды с 128 до 255 – национальные и в национальных кодировках одному и тому же коду соответствуют разные символы. Для русских букв в силу сложившейся ситуации существует аж пять разных кодовых таблиц: КОИ-8, СР1251, СР866, Mac, ISO. Из них КОИ-8 самая распространенная. Кодировки задаются своей собственной кодовой таблицей. Одному и тому же двоичному коду в разных кодировках соответствуют разные символы! Кодировки символов Двоичный Десятичный КОИ8 СР1251 СР866 Мас ISO код код 000 000 00 0 ………. 000 010 00 8 Удаление последнего символа (Backspase) ….. 000 011 01 13 Перевод строки (Enter) …… 001 000 00 32 Пробел 001 000 01 33 ! …… 01011010 90 Z ……. 01111111 127 10000000 128 ъ А А к …… 11000010 194 Б В Т …. 11001100 204 Л М | | Ь …… 110111101 221 Щ Э _ Ё Н ….. 11111111 255 Ь я Нераз. Нераз. п пробел пробел Последовательность числовых кодов 221, 194 и 204 в СР1251 означает слово «ЭВМ». В других кодировках это сочетание – бессмыслица. Существует международный стандарт Unicode, который отводит на каждый символ 2 байта, а не один. С его помощью можно закодировать не 256 разных символов, а целых N=216=65536.
48
© Ольга Викторовна Токмакова, 2006 год Наиболее распространенная в мире таблица символов ASCII (американский стандартный код для обмена информацией – Americfn Standart Cоde for Information Interchnge). Таблица состоит из 2 частей: Первая часть состоит из символов с кодами от 0 до 127, она стандартизована и одинакова для всех компьютеров, на которых используется данная кодировка. В нее входят цифры, знаки препинания, буквы англ алфавита и др. общеупотребляемые символы входят в первую часть таблицы ASCII . Вторая часть (символы с кодами от 127 до 255) – символы национального алфавита (у нас – русского), символы псевдографики и пр. Цифрам от ‘0’ до ‘9’ соответствуют коды от 48 10 (001100002) до 5710(001110012); Буквам латинского алфавита от ‘A’ до ‘Z’ – коды от 6510 (010000012) до 12210 (011110102); Буквам русского алфавита от ‘А’ до ‘Я’ – коды от 128 10 (10000002) до 15910 (100111112). 3. Представление графической информации, растровое и векторное изображение Двоичное кодирование графической информации С 80-х годов интенсивно развивается технология обработки с помощью компьютера графической информации. Компьютерная графика позволяет создавать и редактировать рисунки, чертежи, схемы, преобразовывать изображения (фото, слайды и пр.), представлять статистические данные в форме деловой графики, создавать анимационные модели, обрабатывать «живое видео» 1. Пространственная дискретизация . При кодировании изображения происходит его пространственная дискретизация. Ее можно сравнить с построением изображения из мозаики. Изображение разбивается на отдельные маленькие фрагменты (точки), каждому элементу присваивается значение его цвета, то есть код цвета (красный, зеленый, синий и пр.). Качество изображения зависит от 2-х параметров: 1. Оно тем выше, чем меньше размер точки и, следовательно, большее количество точек составляет изображение. 2. Чем большее количество цветов, то есть большее количество возможных состояний точки изображения, используется, тем более качественно кодируется изображение (каждая точка несет большее количество информации). Палитру цветов образует совокупность используемого набора цветов. 49
© Ольга Викторовна Токмакова, 2006 год Формирование растрового изображения. Графическая информация на экране монитора представляется в виде растрового изображения, которое формируется из определенного количества строк, в каждой из которых в свою очередь, имеется определенное количество точек (пикселей). Качество изображения определяется разрешающей способностью монитора , то есть количеством точек, из которых оно складывается. Чем больше разрешающая способность, то есть чем больше количество строк растра и точек в строке, тем выше качество изображения. В современных компьютерах обычно используют 4 основных разрешающих способности экрана: 640 * 480, 800*600, 1024*768, 1280*1024 точки и т.д. Рассмотрим формирование на экране монитора растрового изображения, состоящего из 600 строк по 800 точек в каждой строке. Всего 480 000 точек в изображении. В простейшем случае (только черно-белое изображение без оттенков серого) каждая точка экрана может иметь только 2 состояния: черная или белая. Значит, для хранения ее состояния необходим 1 бит. Цветные изображения формируются в соответствии с двоичным кодом цвета каждой точки, хранящимся в видеопамяти. Цветные изображения могут иметь различную глубину цвета, которая задается используемым количеством бит для кодирования цвета точки. Наиболее распространенные значения глубины цвета: 4, 8, 16 или 24 бита на точку. Итак, качество изображения определяется разрешающей способностью экрана и глубиной цвета. Каждый цвет можно рассматривать как возможное состояние точки, тогда количество цветов , отображаемых на экране монитора , может быть вычислено по формуле: N=2i Глубина цвета (I) Количество отображаемых цветов (N) 4 24=16 8 28=256 16 (High Color) 216=65 536 24 (True Color) 224= 16 777 216 Цветное изображение на экране монитора формируется за счет смешивания трех базовых цветов: красного, зеленого и синего. Такая модель называется RGB моделью , по первым буквам английских названий: Red, Green, Blue. 50
© Ольга Викторовна Токмакова, 2006 год Для получения богатой палитры цветов базовым цветам могут быть заданы разные интенсивности. Например: При глубине цвета в 24 бита на каждый из цветов выделяется по 8 бит, то есть для каждого из цветов возможны N=28=256 уровней интенсивности, заданные двоичными кодами (от минимальной – 0000 0000 до максимальной – 1111 1111) Формирование цвета при глубине цвета в 24 бита Название цвета Интенсивность Красный Зеленый Синий Черный 00000000 00000000 00000000 Красный 11111111 00000000 00000000 Зеленый 00000000 11111111 00000000 Синий 00000000 00000000 11111111 Голубой 00000000 11111111 11111111 Желтый 11111111 11111111 00000000 Белый 11111111 11111111 11111111 Графический режим Для того, чтобы на экране монитора формировалось изображение, информация о каждой его точке (код цвета точки) должна хранится в видеопамяти комп-ра. Рассчитаем необходимый объем видеопамяти для одного из графических режимов. Возьмем разрешимость 800 на 600 точек и глубину цвета 24 бита на точку: 24бит * 480000=11 520 000бит=1440000 байт=1406, 25 Кбайт=1,37 Мбайт. Для других графических режимов объем видеопамяти считается аналогично. Векторная графика Векторные изображения формируются из объектов (точка, линия, окружность, прямоугольник и т.д.), которые хранятся в памяти компьютера в виде графических примитивов и описывающих их математических формул. Например, графический примитив ТОЧКА задается своими координатами (X,Y); линия – координатами начала и конца; окружность – координатами центра и радиусом R, прямоугольник – величиной сторон, координатами левого верхнего угла и правого нижнего угла. И т.д. Для каждого примитива задается также цвет. Итак, отличие векторного изображения от растрового заключается в принципе хранения информации. 51
© Ольга Викторовна Токмакова, 2006 год Рассмотренная стрелка в векторном формате будет задана с помощью трех линий: Линия (0,4) –(8,4), Линия (6,7) –(8,4), Линия (6,0) –(8,4).
Векторные изображения являются оптимальными для хранения высокоточных графических объектов (чертежи, схемы и пр.), для которых имеет значение сохранение четких и ясных контуров. С векторной графикой вы сталкиваетесь, когда работаете с системами компьютерного черчения, автоматизированного проектирования, программами обработки трехмерной графики. + векторной графики в том, что файлы, хранящие векторные изображения имеют сравнительно небольшой объем. Векторные изображения могут быть увеличены или уменьшены без потери качества. Разнообразие графических форматов Форматы графических файлов определяют способ хранения информации в файле (растровый или векторный) , а также форму хранения информации (используемый алгоритм сжатия). Сжатие применяется для растровых графических файлов, так как у них обычно большой объем. Сжатие графических файлов – это не архивация с помощью программ-архиваторов (RAP, ZIP, ARJ и пр. ), так как алгоритм сжатия включается в формат графического файла. Алгоритмов сжатия много. Для разных типов изображения лучше применять подходящие типы. 1. Для сжатия рисунков типа аппликации (с большими областями однотонной закраски) удобнее всего использовать алгоритм сжатия, заменяющий последовательность повторяющихся величин (пикселей одного цвета) на две величины (пиксель + количество его повторений). Такой алгоритм сжатия используется в графических файлах форматов BMP и PСX. 2. Для сжатия рисунков типа диаграммы лучше использовать другой метод сжатия, основанный на поиске в рисунке повторяющихся узоров. Этой задаче отвечают форматы TIF и GIF. Файл сжимается в несколько раз. 52
© Ольга Викторовна Токмакова, 2006 год 3. Для сжатия отсканированных фотографий и иллюстраций используется алгоритм сжатия JPEG. Он имеет особый алгоритм сжатия, основанный на группировке сходных по цвету соседних пикселей. При этом качество изображения ухудшается, но незначительно. А размер файла, ЧТО ВАЖНО, меньше. МАКС –МИН. Вы пройдете это подробнее, когда будете изучать фотошоп (на ПО ЭВМ). Суть: сжатие за счет ухудшения качества. Этот метод используется в формате JPG. 4. Некоторые форматы графических изображений универсальны и для их обработки можно использовать многие графические редакторы. 5. Есть и уникальные программы обработки изображений, использующие оригинальные форматы, которые распознаются только самой создающей программой. Их преимущество в том, что они позволяют сохранять изображения при меньшем размере файлов.
№ Формат
1. Bit MaP image (BMP) (битовая карта изображения)
Характеристи Какими ка графическими редакторами поддерживает ся Универсальн Многими ый формат графическими растровых редакторами, графических в т.ч. и Paint файлов
2. Tagged Image File Format (TIFF) (снабженный тегамиметками формат изображения)
Формат растровых графических файлов
3. Graphics Interchange
Формат растровых
Особеннос ти
Рекомендаци и по использовани ю
Глубина цвета: 10, 16, 24, 36 бит. Этот формат вообще не сжимает картинку Всеми Информац основными ия не графическими теряется редакторами и при его компьютерны алгоритме ми сжатия платформами
Для хранения и обмена данными с др. приложениям и
Поддерживает Алгоритм ся сжатия без 53
Для обмена документами между разными программами ; для работы с издательским и системами Для хранения изображений
© Ольга Викторовна Токмакова, 2006 год Format (GIF) (графический формат для обмена )
графических файлов
приложениям и для разных операционных систем
потери информаци и, уменьшени е объема файла в несколько раз. В нем можно делать анимацию
4. Portable Network Graphic (PNG) (портативная сетевая графика)
Формат растровых графических файлов аналогичный Gifу
То же самое
То же самое
5. Joint Photographic Expert Group (JPG) (объединенная фотографическ ая экспертная группа) 6. Windows MetaFile (WMF)
Формат растровых графических файлов
Поддерживает Метод ся JPEG приложениям и для разных операционных систем
Универсальн ый формат векторных графических
, создаваемых программны м путем (графики, диаграммы и пр.) и рисунков с ограниченны м количеством цветов (до 255). Используется для размещения графики на Web – страницах в Инете. Рекомендует ся для размещения графики на Web – страницах в Инете. Используется для размещения графики на Webстраницах в ИНЕТе Для хранения коллекции графики Microsoft
54
© Ольга Викторовна Токмакова, 2006 год
7. Encapsulated PostScript (EPS) (вложенный постскрипт)
8. CorelDRaw files (CDR)
файлов для Windowsприложений Универсальн ый формат векторных графических файлов
Clip Gallery
Поддерживает ся программами для разных операционных систем,
Оригинальны й формат векторных графических файлов
Рекомендует ся для печати и создания иллюстраций в настольных издательских системах (пейджмекер, индизайн, кваркэкспрес с, MS паблишер и др.) Используется в системе обработки векторной графики CorelDraw
Позднее появился формат ФЛЭШ. Существует много программ для работы с ним. Например: Macromedia Flash MX. В нем векторные рисунки, как в Gif-e, в растровую графику не переводятся. Флэш – универсальный формат векторной графики в Инете. Графических форматов уже существует за сотню. Мы рассмотрели самые известные. Двоичное кодирование звуковой информации С начала 90-х годов персональные компьютеры получили возможность работать со звуком. Каждый компьютер, имеющий звуковую плату, микрофон и колонки, может записывать, сохранять и воспроизводить информацию. С помощью специальных программных средств (редакторов аудиофайлов) открываются широкие возможности по созданию, редактированию и прослушиванию звуковых файлов. Уже придуманы и продолжают совершенствоваться программы распознавания речи, появилась возможность управлять компьютером с помощью голоса. Дискретизация звука 55
© Ольга Викторовна Токмакова, 2006 год Звук – это волна с непрерывно изменяющейся амплитудой и частотой. Чем больше амплитуда сигнала, тем он громче для человека. Чем больше частота сигнала, тем выше тон. Так же как и любая другая информация, звуковая должна быть преобразована в последовательность электрических импульсов (двоичных нулей и единиц). Звуковой сигнал дискретизируется по времени. Непрерывная звуковая волна разбивается на отдельные маленькие временные участки. Для каждого такого участка устанавливается величина амплитуды. Непрерывная зависимость амплитуды сигнала от времени заменяется на дискретную последовательность уровней громкости (гладкая кривая заменяется на последовательность ступенек).
На рисунке представлена фонограмма и ее временнАя дискретизация. Современные звуковые карты обеспечивают 16-битную глубину кодирования звука. Количество различных уровней сигнала или состояний при данном кодировании можно рассчитать по известной формуле N=2i=216=65 536. Современные звуковые карты могут обеспечить кодирование 65 536 уровней звукового сигнала. Каждому значению амплитуды звукового сигнала присваивается 16-битный код. При двоичном кодировании непрерывного звукового сигнала он заменяется последовательностью дискретных уровней сигнала. Качество звукового сигнала зависит от количества измерений уровня сигнала в единицу времени (т.е. от частоты дискретизации). Чем больше количество измерений за 1 секунду, тем точнее процедура двоичного кодирования.
56
© Ольга Викторовна Токмакова, 2006 год Частота дискретизации аналогового звукового сигнала может принимать значения от 8 до 48 кГц (от качества радиотрансляции до качества звучания аудиоСД). Кроме того, возможны моно и стерео режимы.
57
© Ольга Викторовна Токмакова, 2006 год Лекция 5. Системы счисления Содержание. Арифметические основы ЭВМ. Задача представления числа в форме, наиболее удобной для обработки. Понятие системы счисления. Позиционные и непозиционные системы счисления. Алфавит и базис позиционной системы счисления. Двоичная система счисления. Проблема и алгоритмы перевода чисел в q-ичную систему счисления и обратно.Арифметика чисел в q-ичной записи. Системы счисления с основанием 2n.Нетрадиционные системы счисления: система счисления на основе чисел Фибоначчи, уравновешенные системы счисления, Д-коды (двоично-десятичная система счисления). 1. Арифметические основы ЭВМ. Задача представления числа в форме, наиболее удобной для обработки В компьютере для представления числовой информации используется двоичная система счисления, а человек использует 10-тичную. Обе системы позиционные (так как «вес» цифры в числе зависит от ее позиции, а различаются они по набору используемых цифр и по основанию). Нам удобнее пользоваться 10-тичной системой счисления (10 пальцев на руке + традиции). Компьютеру – двоичной системой счисления (не удается пока создать надежно работающие технические устройства, которые могли бы со 100% гарантией сохранять и распознавать большее, чем два количество различных состояний – цифр). Для двух состояний такие устройства есть: − Электромагнитные реле (замкнуто/разомкнуто) – основа первых ЭВМ; − Участок поверхности магнитного носителя информации (размагничен/намагничен); − Участок поверхности лазерного диска (отражает/не отражает); − Триггер (устройство, позволяющее запоминать, хранить и считывать информацию в компьютере). Человеку трудно воспринимать многоразрядные числа, он с трудом воспринимает числа, записанные в двоичном коде. А компьютеру, наоборот, так удобнее, для него разрядность не имеет значения, так как скорости и объемы обработки информации намного выше, чем у человека. Кроме двоичной системы счисления на компьютере используется 8-ричная и 60ричная. Эти системы удобны на этапах отладки программы, так как информация в этом случае выглядит более компактной (количество разрядов меньше). 58
© Ольга Викторовна Токмакова, 2006 год Для представления чисел существуют две формы записи: − Естественная, − Экспоненциальная. Естественная форма записи – это привычная нам: 3,14; 10000; 0,2345. Экспоненциальная (вещественная) обычно используется для записи чисел с большим количеством нулей или очень маленьких, или очень больших: 0,000000000000012 или 123500000000000000000000000000000000. 0,000000000000012=1,2 *10-15; 123500000000000000000000000000000000=1,235*1035. Числа в экспоненциальной форме могут быть записаны не только в 10тичной, но и в двоичной, и в любой другой системе счисления. Число А в любой системе счисления имеет вид А=m*qn. Здесь: m – мантисса числа, то есть десятичная дробь, имеющая после запятой цифру, отличную от нуля; q – основание системы счисления, n – порядок числа. Система Естественная форма записи Экспоненциальная форма счисления записи Десятичная 16000000000000000 1,6*1016 0,0000000000000016 1,6*10-16 Двоичная 11000000000000000 1,1*216 0,00000000000000011 1.1*2-16 Запись числа в экспоненциальной форме увеличивает диапазон изменения их величины, то есть возможности компьютера расширяются. Вещественные данные выводятся в формате с плавающей точкой. Ширина поля вывода в этом случае составляет 18 символов: #.# # # # # # # # # # # E ± # # #, где # – любая десятичная цифра от 0 до 9 включительно. Например: 1) 0.256700000000Е-01; 2) -2.12345670000Е+02. Число, стоящее после Е, – это степень, в которую нужно возвести число 10, и затем результат умножить на число, стоящее перед Е. Пример 1: степень=-1, число, стоящее перед Е – это число = 0,2567, значит: 0, 2567*10-1=0,02567. Таким образом: 0.256700000000Е-01 = 0.02567. Пример 2: степень=2, число, стоящее перед Е – это число = -2.1234567, значит: -2.1234567*102=-212.34567. Таким образом: -2.12345670000Е+02 = -212.34567. 2. Понятие системы счисления
59
© Ольга Викторовна Токмакова, 2006 год Система счисления – это знаковая система, в которой числа записываются по определенным правилам с помощью символов некоторого алфавита, называемых цифрами. Когда ребенок учится считать, он использует пальцы на своих руках, иногда – ногах. Также считали древние люди. Известно, что у них основанием чаще всего служило одно из чисел: 5, 10 или 20. Постепенно 5-ричная и 20ричная системы счисления вышли из употребления, одна как слишком скудная, другая как очень громоздкая. Самой распространенной стала 10-ричная система счисления. Покажем как создавалась система счисления, которой мы привыкли пользоваться. Первые нумерации были непозиционными. В них приходилось вводить для чисел 1, 2, ..,9 знаки, затем для 10, 20, …, 90 – новые знаки и так далее. К такой системе можно отнести нумерацию древней Греции. В ней цифры обозначались буквами, над которыми ставились штрихи. Если букв не хватало – использовали другие символы. Эта система громоздка и неудобна для запоминания. Непрактична. Однако за неимением лучшей ею пользовались и Архимед, и Евклид, и многие другие знаменитые древнегреческие ученые. Такие системы счисления были у древних славян, арабов, евреев, грузин, армян, египтян и многих других народов. Этот этап прошли многие. Совершенно гениальная идея родилась в Древнем Вавилоне. Там была создана позиционная система счисления, позволяющая любое натуральное число записать с помощью двух клинописных знаков. Это одно из важнейших открытий в мире. Вавилонская система была 60-ричной. В системе вавилонян счет сочетался с помощью чисел 10 и 60. Вот она и называется 60-ричной. В ней изначально не было 0. Только в 5 веке до н.э. в этой системе появился знак для обозначения отсутствия разряда. Однако тогда он не прижился. Мы пользуемся до сих пор достижениями древних вавилонян: в 1 минуте – 60 секунд, в 1 часе – 60 минут. Позиционная 10-ная система появилась впервые в Индии не позже 6 века нашей эры. У всех народов вычисления производились с помощью счетных досок. В Древней Греции – с помощью абака. Обычно его делили на столбцы в соответствии с 10-ными разрядами, а числа обозначали камешками. От лат слова «calculus» (камешек) произошло позднее слово калькуляция, а затем – слово калькулятор. Для обозначения пустого разряда применяли камешек с отверстием. Между 2 и 4 веками н.э. индийцы познакомились с трудами греческих астрономов, с 60-ричной системой и греческим нулем. Соединение результатов 60
© Ольга Викторовна Токмакова, 2006 год с их десятичной системой позволило им сделать решающий шаг и была создана наша нумерация. «Нуль» в Индии чаще всего называли «шунья» – пустое. В 8 веке его перевели на арабский как «сыфр» с тем же значением. Затем при переводе на латынь оставили без изменений и записывали как «ciffra». Отсюда наше слово «цифра». Затем и в математике словом цифра стали обозначать все числа от 0 до 9. Из Индии новая система распространилась по всему миру. В страны Европы она была завезена арабами и числа стали называть арабскими. В 19 веке получила распространение 12-ричная система счисления. До сих пор мы используем дюжину (=12): в сутках 24 (2 дюжины) часа, круг содержит 30 дюжин градусов и т.п. 3. Позиционные и непозиционные системы счисления. Алфавит и базис позиционной системы счисления Все системы счисления делятся на две большие группы: позиционные и непозиционные. В позиционных системах счисления значение цифры зависит от ее положения в числе. В непозиционных – не зависит. Лучше всех нам известна римская непозиционная система счисления. В качестве цифр в ней используются: I(1), V(5), X(10), L(50), C(100), D(500), M(1000). Значение цифры не зависит от ее положения в числе. Например: XXX =30 цифра Х встречается трижды, в каждом случае обозначает 10, а в сумме это и есть 30. Величина числа в Римской Непозиционной Системе Счисления определяется или как сумма, или как разность цифр в числе. Правила: Если меньшая цифра стоит СЛЕВА от большей, то она ВЫЧИТАЕТСЯ; Если меньшая цифра стоит СПРАВА от большей, то она ПРИБАВЛЯЕТСЯ. Пример: 1998=MCMXCVIII=1000+(1000-100)+(100-10)+5+1+1+1. К позиционным системам счисления относится десятичная система. Рассмотрим, например, число 333. Цифра 3 в ней встречается три раза. Самая левая – три сотни, в середине – три десятка, крайняя правая – три единицы. В таких системах счисления значение числа зависит от ее позиции в числе. Позицию называют разрядом. Крайняя справа позиция означает первый разряд. Цифра, смещенная влево на одну позицию, обозначает десятки. Запись числа в виде 333 – сокращенная, это запись в свернутой форме. Развернутая форма выглядит так: 33310=3*102+3*101+3*100. 61
© Ольга Викторовна Токмакова, 2006 год Основание = 10. Для записи десятичных дробей используются разряды с отрицательными значениями степеней основания: 333,33= 3*102+3*101+3*100 +3*10-1+3*10-2. Общий вид записи: A10=an*10n+…+a0*100+ a-1*10-1+…+a-m*10-m. Свернутый вид: A10=anan-1…a0a-1a –m. При умножении/делении десятичного числа на 10 запятая перемещается на один разряд вправо/влево соответственно. Пример 333,3310*10=3333,310. 333,3310:10=33,33310. В позиционных системах счисления основание системы равно количеству цифр (знаков ее алфавита) и определяет, во сколько раз различаются значения цифр соседних разрядов числа. Система Основание Алфавит цифр счисления Десятичная 10 0,1,2,3,4,5,6,7,8,9 Двоичная 2 0,1 Восьмерична 8 0,1,2,3,4,5,6,7 я Шестнадцат 16 0,1,2,3,4,5,6,7,8,9,A(10),B(11), иричная C(12),D(13),E(14),F(15) 4. Двоичная система счисления. Проблема и алгоритмы перевода чисел в q-ичную систему счисления и обратно В двоичной системе счисления основание (базис) равно 2, алфавит состоит из 0 и 1. В этой системе запись числа в развернутой форме выглядит так: A2=1*22+0*21+1*20+0*2-1+1*2-2, а в свернутой: A2=101,012. Умножение или деление двоичного числа на 2 приводит к перемещению запятой, отделяющей целую часть от дробной, на один разряд вправо или влево. Пример 101,012*2=1010,12; 101,012:2=10,1012. В позиционных системах счисления с произвольным основанием q (qичная система счисления) числа в развернутой форме записываются в виде суммы ряда степеней основания q с коэффициентами, в качестве которых выступают цифры 0,1,q-1. В развернутой форме число в системе счисления с основанием q записывается следующим образом: 62
© Ольга Викторовна Токмакова, 2006 год Aq=an*qn+ an-1*qn-1+…+ a0*q0+ a-1*q-1+…+ a-m*q-m. Здесь коэффициенты ai – цифры числа, записанного в q-ичной системе счисления. Пример A8=672,58=6*82+7*81+2*80+5*8-1=6*64+7*8+2+5*(1/64)=442,078125. Таким образом, преобразование числа из q-ичной системы счисления в 10-тичную выполняется по правилу: 1. Записать число в развернутой форме. 2. Вычислить его значение (сосчитать). Примеры. 1. 110,101012=1*22+1*21+0*20+1*2-1+0*2-2+1*2-3+0*2-4+1*2-5 = 4 + 2 + 0,5 + 0,125 = 6,62510. 2. 54,78=5*81+4*80+7*8-1=40+4+(7/8)=44,87510. 3. 19Е16=1*162+9*161+14*160=41410. Перевод из десятичной системы счисления в 2-ичную, 8-ричную и 16ричную системы счисления чуть сложнее. Этот перевод можно осуществить несколькими способами. Все усложняется еще и тем, что кроме перевода целых чисел, нужно знать и перевод правильных дробей. Десятичное число Делитель Остаток !!! Цифры двоичного / целое частное (основание числа системы) 19 2 1 a0 9 2 1 a1 4 2 0 a2 2 2 0 a3 1 2 1 a4 Итак, A2=a4a3a2a1a0, то есть 1910=100112 С десятичными дробями система иная. Пример: перевод числа 0,275 в двоичную систему. Десятичная Множитель(основани Целая часть Цифры дробь / дробная е системы) произведения !!! двоичного числа часть произведения 0,275 2 0 a-1 0,550 2 1 a-2 0,100 2 0 a-3 0,200 2 0 a-4 0,400 2 0 a4 Итак, A2=0, a-1a-2a-3a-4…, то есть 0,27510 = 0, 01000…
63
© Ольга Викторовна Токмакова, 2006 год Перевод чисел из систем с основанием p в систему с основанием q производится по аналогичным алгоритмам. Перевод чисел, содержащих и целую, и дробную части производится в два этапа. Отдельно переводится целая часть. Отдельно – дробная. В итоговой записи целая часть отделяется от дробной запятой. Упражнения 1. Перевести целые десятичные числа 8, 16, 373 в двоичную и восьмеричную системы счисления {810=10002=108; 1610=100002=208; 37310=1011101012=5658 }. 2. Переведите десятичные дроби 0,2; 0,54 в двоичную и восьмеричную системы счисления {0,210=0,00112=0,14638; 0,5410=0,100012=0,4248 }. 3. Переведите десятичные числа 4,5;23,56 в двоичную систему счисления {4,510=100,12; 23,5610=10111,100012}. Домашнее задание 1. Переведите в восьмеричную и шестнадцатеричную системы счисления числа: 11112; 10101012. 2. Переведите в восьмеричную систему счисления числа 0, 01111 2; 0, 101010112. 3. Переведите в восьмеричную систему счисления числа 11,012; 110,1012. 4. Переведите в двоичную систему следующие числа 46,278; ЕF,1216. 5. Сравните числа, выраженные в различных системах счисления: 11012 и D16; 0,111112 и 0,228; 35,638 и16,С16. 5. Арифметика чисел в q-ичной записи Арифметические операции во всех позиционных системах счисления выполняются по одним и тем же и вам хорошо известным правилам. Таблица сложения, вычитания и умножения в двоичной системе счисления a b + * 0 0 0 0 0 0 1 1 11 0 1 0 1 1 0 1 1 10 0 1 Деление выполняется также как и в десятичной системе – столбиком. Аналогично выполняются арифметические действия в восьмеричной и шестнадцатеричной системах счисления. Следует только учитывать, что перенос в следующий разряд при сложении и заем из старшего разряда при вычитании определяется величиной основания системы счисления. Пример: 378+258=648 64
© Ольга Викторовна Токмакова, 2006 год Упражнения 1. Выполните сложение, вычитание, умножение и деление над двоичными числами и проверьте правильность выполнения арифметических действий в десятичной системе счисления: 112 и 102; 1112 и 1102. 2. Сложите восьмеричные числа: 58 и 48; 178 и 418. 3. Проведите вычисление шестнадцатеричных чисел: 516 и 416; 4116 и 1716. 4. Сложите числа: 178 и 1716; 418 и 4116. 6. Системы счисления с основанием 2n Известно, что 21, 22 (4), 23(8), 24(16), 25(32), 26(64), 27(128), 28(256) , 29 (512), 210(1024), 211(2048), 212(4096), 213(8192), 214(16384), 215(32768), 216(65536)… Перевод между системами счисления, основания которых являются степенями числа 2, может производится по более простым алгоритмам. Эти алгоритмы могут применятся для перевода чисел между 2-ичной, 8-ричной и 16-ричной системами счисления. 1. Перевод из 2-ичной в 8-ричную. Для записи двоичных чисел используются 2 цифры, то есть в каждом разряде 2 варианта записи. Воспользуемся формулой Хартли. H=log22=1 бит. Каждый разряд двоичного числа содержит 1 бит информации. Для записи 8-ричной системы используют 8 цифр. Соответственно имеем 8 вариантов записи в каждом разряде числа.H=log223=3 бит. Каждый разряд восьмеричного числа содержит 3 бита информации. Для перевода целого двоичного числа в восьмеричное его надо разбить на группы по три цифры справа налево для удобства, а затем преобразовать каждую группу в восьмеричную цифру. Если последняя группа будет меньше, чем 3 разряда, то ее дополняют нулями. Пример 101 0012=> 1*22+0*21+1*20 0*22+0*21+1*20 => 518 Для упрощения перевода можно воспользоваться специальными таблицами: Двоичные 000 001 010 011 100 101 110 111 триады Восьмеричные 0 1 2 3 4 5 6 7 цифры Для перевода дробного двоичного числа в восьмеричное нужно его разбить на триады слева направо. Не забыть про нули, если они потребуются. Двоичные триады 110 101 Восьмеричные цифры 6 5 65
© Ольга Викторовна Токмакова, 2006 год 0,1101012=0,658 2. Перевод чисел из двоичной системы в 16-ричную. Для записи 16ричных чисел используются 16 цифр, то есть в каждом разряде 16 вариантов записи. H=log224=4 бит. Каждый разряд 16-ричного числа содержит 4 бита информации. Для перевода целого двоичного числа в 16-ричное его нужно разбить на группы по 4 цифры (тетрады), начиная справа и, если в последней левой группе окажется меньше разрядов, дополнить ее слева нулями. Для перевода дробного двоичного числа в 16-ричное его надо разбить на тетрады слева направо. И также справа в конце можно дополнить нулями. Затем каждую группу преобразуем в 16-ричную цифру по таблице: Двоичные тетрады 0010 1001 Шестнадцатеричные 2 9 цифры 1010012=001010012=2916 Двоичные тетрады 1101 0100 Шестнадцатеричные цифры D 4 0,1101012=0,110101002=0,D416 Для преобразования любого двоичного числа в 8-ричную или 16-ричную системы счисления, надо произвести преобразования по аналогичным алгоритмам отдельно для дробной и целой частям. 4. Перевод из 8-ричной и 16-ричной в двоичную систему счисления. Сначала цифры числа преобразовываем в группы двоичных чисел. Для перевода из 8-ричной системы в 2-ичную каждую цифру числа преобразовывают в группу из 3-х двоичных разрядов (триаду), а при преобразовании 16-ричного числа – в группу из 4 –ех разрядов (тетраду). Пример 0,478=? Восьмеричные цифры 4 7 Двоичные триады 100 111 0,478=0,1001112 AB16=? Шестнадцатеричные A B цифры Двоичные триады 1010 1011 AB16=101010112 Упражнения 66
© Ольга Викторовна Токмакова, 2006 год 1. Перевести в 8-ричную и 16-ричную системы счисления следующие целые числа: 11112, 10101012. 2. Перевести в 8-ричную и 16-ричную системы счисления дроби: 0, 011112, 0, 101010112. 3. Перевести в 8-ричную и 16-ричную системы счисления числа: 11,012, 110,1012. 4. Перевести в двоичную систему счисления: 46,278, EF,1216. 7. Нетрадиционные системы счисления: система счисления на основе чисел Фибоначчи, уравновешенные системы счисления, Д-коды (двоичнодесятичная система счисления) 1.Д-коды Двоично-десятичная система счисления: десятичные цифры от 0 до 9 заменяются их двоичными тетрадами: 0=0000, 1=0001, 2=1110, 3=0011, 4=0100, 5=0101, 6=0110, 7=0111, 8=1000, 9=1001. Эта запись удобна для промежуточного этапа перевода числа из 10-чной в 2-ичную систему и обратно. Так как 10 не является степенью 2, то используются не все 16 тетрад. Алгоритмы арифметических операций здесь сложнее, чем в основных системах счисления. Тем не менее во многих калькуляторах и даже некоторых компьютерах старого поколения («Ямаха») используется именно эта система счисления. 2. Уравновешенные системы счисления – Системы счисления, использующие вместо одной из цифр цифру со знаком. Пример: уравновешенная троичная система счисления. В отличие от обычной троичной системы, вместо цифры 2 использует другую цифру со значением -1. Это позволяет отказаться от обозначения для знака числа – он определяется знаком первой его цифры. Вместо цифр часто используют буквы: -1=N (negative), 0=О (внешнее сходство), 1=P (positive). Так как получились три подряд идущие цифры алфавита, то переход от значения цифры к ее коду (обозначению) осуществляется общей арифметической операцией (не требуется логических операций и анализа). Среди первых ЭВМ была московская «Сетунь», арифметическое устройство которой как раз и базировалось на таких системах счисления. 3. Система счисления на основе чисел Фибоначчи Известна узкому кругу специалистов. В ней вес к-того разряда равен к-тому числу из последовательности Фибоначчи: 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, …, в которой каждый очередной член равен сумме двух предыдущих. Это позволяет не только использовать всего 2 цифры (0 и 1), но и дополнительно 67
© Ольга Викторовна Токмакова, 2006 год потребовать, чтобы нигде больше в записи числа две 1 не стояли рядом. Так как в итоге единицы в записи числа встречаются сравнительно редко, то это облегчает существенно(!!!) вычисления.
68
© Ольга Викторовна Токмакова, 2006 год Лекция 6. Аппаратные реализации информационных процессов Содержание. История вычислительной техники. История развития персональных компьютеров. Поколения вычислительных машин. Вычислительные машины и вычислительные системы. Многоуровневость представления вычислительных машин. Виды вычислительных машин. Структура вычислительных машин. Принципы Неймана. Понятие об архитектуре. Функциональная схема построения компьютера. Характеристика основных блоков: назначение, особенности, конструктивная реализация. Магистрально-модульный принцип построения компьютера. Внешние устройства компьютера. Устройства ввода, вывода и обмена информацией. Память компьютера, виды памяти. Внутренняя память, принципы организации. нешняя память, способы конструктивной реализации. Процессор и его основные характеристики. Автоматизация работы компьютера, основной алгоритм работы процессора. Обработка двоичной информации, электронные логические элементы и схемы, таблицы истинности. Компьютер как единство аппаратного и программного обеспечения. 1. История развития вычислительной техники и персональных компьютеров Стремительное развитие цифровой вычислительной техники (ВТ) и становление науки о принципах ее построения и проектирования началось в 40х годах прошлого века, когда технической базой ВТ стала электроника, затем микроэлектроника, а основой для развития архитектуры компьютеров (электронных вычислительных машин ЭВМ) – достижения в области искусственного интеллекта. До этого времени в течение почти 500 лет цифровая вычислительная техника сводилась к простейшим устройствам для выполнения арифметических операций над числами. Основой практически всех изобретенных за 5 столетий устройств было зубчатое колесо, рассчитанное на фиксацию 10 цифр десятичной системы счисления. Первый в мире эскизный рисунок тринадцатиразрядного десятичного суммирующего устройства на основе колес с десятью зубцами принадлежит Леонардо да Винчи. Он был сделан в одном из его дневников (ученый начал вести дневник еще до открытия Америки в 1492 г.).В 1623 г. через 100 с лишним лет после смерти Леонардо да Винчи немецкий ученый Вильгельм Шиккард предложил свое решение той же задачи на базе шестиразрядного десятичного вычислителя, состоявшего также из зубчатых колес, рассчитанного на выполнение сложения, вычитания, а также табличного умножения и 69
© Ольга Викторовна Токмакова, 2006 год деления. Оба изобретения были обнаружены только в наше время и оба остались только на бумаге. Первым реально осуществленным и ставшим известным механическим цифровым вычислительным устройством стала "паскалина" великого французского ученого Блеза Паскаля - 6-ти (или 8-ми) разрядное устройство, на зубчатых колесах, рассчитанное на суммирование и вычитание десятичных чисел (1642 г.).Через 30 лет после "Паскалины" в 1673 г. появился "арифметический прибор" Готфрида Вильгельма Лейбница двенадцатиразрядное десятичное устройство для выполнения арифметических операций, включая умножение и деление, для чего, в дополнение к зубчатым колесам использовался ступенчатый валик. "Моя машина дает возможность совершать умножение и деление над огромными числами мгновенно" - с гордостью писал Лейбниц своему другу. О машине Лейбница было известно в большинстве стран Европы. В цифровых электронных вычислительных машинах, появившихся более двух веков спустя, устройство, выполняющее арифметические операции (те же самые, что и "арифметический прибор" Лейбница), получило название арифметического. Позднее, по мере добавления ряда логических действий, его стали называть арифметико-логическим. Оно стало основой устройства современных компьютеров. Таким образом, два гения XVII века, установили первые вехи в истории развития цифровой вычислительной техники. Заслуги В.Лейбница, однако, не ограничиваются созданием "арифметического прибора". Начиная со студенческих лет и до конца жизни он занимался исследованием свойств двоичной системы счисления, ставшей в дальнейшем, основной при создании компьютеров. Он придавал ей некий мистический смысл и считал, что на ее базе можно создать универсальный язык для обьяснения явлений мира и использования во всех науках, в том числе в философии. Сохранилось изображение медали, нарисованное В.Лейбницем в 1697 г., поясняющее соотношение между двоичной и десятичной системами исчисления. Прошло еще более ста лет и лишь в конце XVIII века во Франции были осуществлены следующие шаги, имеющие принципиальное значение для дальнейшего развития цифровой вычислительной техники - "программное" с помощью перфокарт управление ткацким станком, созданным Жозефом Жакардом, и технология вычислений, при ручном счете, предложенная Гаспаром де Прони, разделившего численные вычисления на три этапа: разработка численного метода, составление программы последовательности арифметических действий, проведение собственно вычислений путем арифметических операций над числами в соответствии с составленной программой. Эти два новшества были использованы англичанином Чарльзом Беббиджем, осуществившим, 70
© Ольга Викторовна Токмакова, 2006 год качественно новый шаг в развитии средств цифровой вычислительной техники - переход от ручного к автоматическому выполнению вычислений по составленной программе. Им был разработан проект Аналитической машины механической универсальной цифровой вычислительной машины с программным управлением (1830-1846 гг.). Машина включала пять устройств – арифметическое АУ, запоминающее ЗУ, управления, ввода, вывода (как и первые ЭВМ появившиеся 100 лет спустя). АУ строилось на основе зубчатых колес, на них же предлагалось реализовать ЗУ (на 1000 50-разрядных чисел!). Для ввода данных и программы использовались перфокарты. Предполагаемая скорость вычислений - сложение и вычитание за 1 сек, умножение и деление за 1 мин. Помимо арифметических операций имелась команда условного перехода. Программы для решения задач на машине Беббиджа, а также описание принципов ее работы, были составлены Адой Августой Лавлейс – дочерью Байрона. Были созданы отдельные узлы машины. Всю машину из-за ее громоздкости создать не удалось. Только зубчатых колес для нее понадобилось бы более 50.000. Заставить такую махину работать можно было только с помощью паровой машины, что и намечал Беббидж. Если Беббидж намного опередил свое время, то Айкен, использовав все те же зубчатые колеса, в техническом плане при реализации идеи Беббиджа использовал устаревшие решения. Еще десятью годами ранее, в 1934 г. немецкий студент Конрад Цузе, работавший над дипломным проектом, решил сделать (у себя дома), цифровую вычислительную машину с программным управлением и с использованием - впервые в мире! - двоичной системы счисления. В 1937 г. машина Z1 (Цузе 1) заработала! Она была двоичной, 22-х разрядной, с плавающей запятой, с памятью на 64 числа и все это на чисто механической (рычажной) основе! В том же 1937 г., когда заработала первая в мире двоичная машина Z1, Джон Атанасов (болгарин по происхождению, живший в США) начал разработку специализированный компьютер, впервые в мире применив электронные лампы (300 ламп). И только в 1946 г. когда появилась информация об ЭВМ "ЭНИАК" (электронный цифровой интегратор и компьютер), созданной в США Д.Мочли и П.Эккертом, перспективность электронной техники стала очевидной (В машине использовалось 18 тыс.электронных ламп и она выполняла около 3-х тыс. операций в сек). Однако машина оставалась десятичной, а ее память составляла лишь 20 слов. Программы хранились вне оперативной памяти. Завершающую точку в создании первых ЭВМ поставили, почти одновременно, в 1949-52 гг. ученые Англии, Советского Союза и США (Морис 71
© Ольга Викторовна Токмакова, 2006 год Уилкс, ЭДСАК, 1949 г.; Сергей Лебедев, МЭСМ, 1951 г.; Исаак Брук, М1, 1952 г.; Джон Мочли и Преспер Эккерт, Джон фон Нейман ЭДВАК, 1952 г.), создавшие ЭВМ с хранимой в памяти программой. Первыми составляющими будущей науки, использованными, в дальнейшем, для создания основ теории ВМ, явились исследования двоичной системы счисления, проведенные Лейбницом (XYII век), алгебра логики, разработанная Джорджем Булем (XIХ век), абстрактная "машина Тьюринга", предложенная гениальным англичанином в 1936 г. для доказательства возможности механической реализации любого имеющего решение алгоритма, теоретические результаты Клода Шеннона, Шестакова, Гаврилова (30-е годы ХХ в.) соединившие электронику с логикой. Термин "информатика", обозначал науку о получении, передаче, хранении и обработке информации. В свою очередь, ее разделяет на теоретическую и прикладную. Теоретическая информатика включала математическое моделирование информационных процессов. Прикладная охватывала вопросы построения и проектирования ЭВМ, сетей, мультимедиа, компьютерные технологии информационных процессов и др. Главной научной базой прикладной информатики были электроника (микроэлектроника) и теория искусственного интеллекта. Следует отметить, что в области искусственного интеллекта, несмотря на многие достижения, мы стоим лишь в самом начале развития этого важного научного направления, и здесь открываются огромные перспективы сближения ЭВМ с "информационными" возможностями человека. Лучше всего об "интеллектуальных" возможностях машины сказал В.М.Глушков. Следует отметить также, что человеку исторически всегда будет принадлежать окончательная оценка интеллектуальных, равно как и материальных ценностей, в том числе и тех ценностей, которые создаются машинами, так что и в этом смысле машина никогда не сможет превзойти человека. Таким образом, можно сделать вывод, что в чисто информационном плане кибернетические машины не только могут, но и обязательно должны превзойти человека, а в ряде пока еще относительно узких областей они делают это уже сегодня. Но в плане социально-историческом эти машины есть и всегда останутся не более чем помощниками и орудиями человека". Поколения ЭВМ
72
© Ольга Викторовна Токмакова, 2006 год Всю электронно-вычислительную технику принято делить на поколения. Смена поколения ЭВМ зависит от элементной базы ЭВМ, то есть ее технической основы. Нулевое поколение (до 1945 года). Технология – механические (шестеренки – зубчатые колеса) и электромеханические (реле) вычислительные устройства. 3000 лет до н.э. – абак (Древний Вавилон). 1492 год – Леонардо да Винчи – рисунок тринадцатиразрядного суммирующего устройства на основе зубчатых колес. 1623 год – Вильгельм Шиккард – эскиз устройства для сложения и вычитания шестиразрядных чисел на основе механических часов. 1642 год – Блез Паскаль – «Паскалина» - первое реализованное устройство (суммирование и вычитание 5-разрядных десятичных чисел). 1673 год – Готфрид Вильгельм Лейбниц – «пошаговый вычислитель» (четыре операции над 12-разрядными десятичными числами). 1836 год – Чарльз Бэббидж – проект «Аналитической машины». Есть прототип процессора (мельница), памяти (склад), ввод программ и данных с перфокарт. 1937 год – Алан Тьюринг – концепция теоретической вычислительной машины (машина Тьюринга). 1943 год – группа ученых Гарвардского университета во главе с Говардом Айкеном разрабатывает вычислитель Марк 1 – первый программноуправляемый вычислитель на основе электромеханических реле. Реле позволяло кодировать информацию в двоичном состоянии (вкл-выкл). Длина устройства – 18 м, вес – 5 тонн. Вычислитель обрабатывал 23-разрядные числа, при этом сложение занимало 0,3 сек, умножение – 4 сек, деление – 10 сек. Условия появления ЭВМ − В конце ХIХ века происходит бурное развитие математической физики. Стали необходимы машины, способные выполнять многократно повторяющиеся вычисления. − 1880 год, Томас Алва Эдисон открыл явление термоэлектронной эмиссии. − 1904 год, английский физик Джон Амброз Флеминг создал диод. − Английский математик Дж. Буль описал правила логики (булева алгебра), на основе которых стали возможны логические схемы. − 1918 год, русский ученый М.А. Бонч-Бруевич (независимо от него и англичане) изобрел электронное реле, на базе которого был создан триггер. Таким образом, все было готово к изобретению и созданию первого компьютера. 73
© Ольга Викторовна Токмакова, 2006 год Первое поколение (1945 – 1955 гг.) В первой половине ХХ века бурно развивается радиотехника и на смену реле приходят электронно-вакуумные лампы, они и стали элементной базой ЭВМ первого поколения. Технология – электронно-вакуумные лампы. Первые ЭВМ: − АВС – (Atanasoff-Berri Computer), 1942 год, Джон Атанасоф и Клиффорд Бери (США); − COLOSSUS, 1943 год, Макс Ньюмен, Томми Флауэрс, Алан Тьюринг (Великобритания); − самой знаменитой машиной первого поколения является ЭНИАС (ENIAS – Electronic Numerical Integrator and Computer), созданный в 1945-1946 годах в США. Его конструкторами были американские ученые Джон Моучли, Преспер Эккерт, Джон фон Нейман. 30 тонн, 140 кВт, 18000 электронных ламп, 20 десятиразрядных регистров. В СССР созданием компьютеров занимался академик Сергей Алексеевич Лебедев. 1951 год – первая советская ЭВМ – МЭСМ (Малая Электронная Счетная Машина) – (10000 опер/сек). Характеристики I поколение Годы 1945-1955 Элементная база Электронно-вакуумные лампы Размер Сооружение, занимающее сотни квадратных метров Максимальное 20 тысяч операций в секунду и более быстродействие процессора Макс. объем АЗУ Несколько тысяч и команд программы Периферия Перфоленты и перфокарты Программ. Программы составлялись на языке машинных команд обеспечение Области Инженерные и научные расчеты, не связанные с применения переработкой больших объемов данных Второе поколение (1955-1965гг.) Технология – полупроводниковые транзисторы (Джон Бардин, Уолтер Браттейн, Уильям Шокли – нобелевская премия за создание транзистора, 1956 год). С появлением транзисторов на несколько порядков возросли по сравнению с электронно- вакуумными лампами быстродействие и надежность, существенно уменьшились энергопотребление и габариты ВМ. 74
© Ольга Викторовна Токмакова, 2006 год Программирование – языки высокого уровня Фортран (1956 год), Алгол (1958 год), Кобол (1959 год). Первые ЭВМ – ТХ-0 – Transistorized eXperimental computer; TRADIC – TRAnsistor Digital Computer. Наибольшее распространение: − IBM 7090, IBM 7094, IBM 1401 (большие ЭВМ, стоимость – несколько миллионов долларов); − PDP-1 (120 тыс. долларов), PDP-8 (16 тысяч долларов) – малые ЭВМ, компания DEC. Характеристики II поколение Годы 1955-1965 Элементная база Транзисторы Размер ЭВМ стали компактнее, надежнее, менее энергоемкими Максимальное Десятки и сотни тысяч операций в секунду быстродействие процессора Максим.объем Увеличился в сотни раз АЗУ Периферия Внешняя память на магнитных барабанах и лентах Программ. Стали развиваться языки высокого уровня (Фортран, Алгол, обеспечение Кобол и др.) Программирование стало распространяться среди людей с высшим образованием Области Создание информационно-справочных и информационных применения систем Третье поколение (1965-1980гг.) Технология – интегральные микросхемы (Роберт Нойс, 1958г.). Компьютеры на интегральных микросхемах были меньшего размера, работали быстрее и стоили дешевле, чем их предшественники на транзисторах. Программирование – языки структурного программирования, С, Паскаль Самые популярные ЭВМ: − Семейство больших компьютеров IBM-360; − Малая ЭВМ PDP-11; − Первые суперкомпьютеры: CDC-6600 (1964 год), CDC-7600 (1969 год), Gray-1 (Сеймур Крей). Разработчик первых суперкомпьютеров Сеймур Крей разработал также алгоритм покупки автомобиля: «Вы идете в магазин, ближайший к вашему дому, показываете машину, ближайшую к двери и говорите: «Я беру эту». Этот алгоритм позволяет тратить минимум времени на не очень важные 75
© Ольга Викторовна Токмакова, 2006 год дела (покупку автомобиля) и оставляет большую часть времени на важные (разработку суперкомпьютеров)».
Характеристики Годы Элементная база Размер Максимальное быстродействие процессора Макс. объем АЗУ Периферия Программное обеспечение
Области применения
III поколение 1965-1980 Интегральные схемы ЭВМ делятся на большие, средние, мини и микро До 30 млн.операций в сек. Техника микропрограммирования До 16 Мбайт. Появляется ПЗУ Внешняя память на магнитных дисках, дисплей, графопостроители Появились операционные системы и множество прикладных программ. Новые алгоритмические языки высокого уровня. Многопрограммный режим работы и возможность работать с несколькими программами одновременно Базы данных, первые системы искусственного интеллекта, системы автоматизированного проектирования и управления
Четвертое поколение (с 1980 года) Технология – большие и сверхбольшие интегральные микросхемы (БИС и СБИС). Программирование – объектно-ориентированные языки (С++, Object Pascal), визуальное программирование (Visual C++, Delphi). 1981 год – первый !!! персональный компьютер – IBM PS (процессор Intel 8088, операционная система VS-DOS, руководитель разработки Филипп Эстридж ). Характеристики Годы Элементная база Размер
Максимальное
IV поколение 1977 и до наших дней БИС и СБИС МикроЭВМ – малые габариты, сравнимые с бытовым телевизором; суперкомпьютеры, состоящие из отдельных блоков и центральный процессор, занимающий отдельное помещение 2,5 МГц у первых моделей и до 109 опер/сек 76
© Ольга Викторовна Токмакова, 2006 год быстродействие процессора Макс.объем АЗУ Периферия
Программное обеспечение Области применения Примеры машин
От 16 Мбайт и более 107 Кбайт Цветной дисплей, манипуляторы типа «мышь», «джойстик», клавиатура, магнитные и оптические диски, принтеры и пр. Пакеты прикладного программного обеспечения, сетевого ПО, мультимедиа и пр. Все сферы научной, производственной, учебной деятельности, отдых и развлечения, Интернет IBM PC, Macintosh, Cray, ЭЛЬБРУС
ЭВМ пятого поколения – это машины недалекого будущего. Основным их качеством должен быть высокий интеллектуальный уровень. Если будущие ЭВМ удастся вооружить «подсознательной» логикой, то машины смогут заменить живых экспертов во многих областях человеческой деятельности. Также в последнее время идет активный рост слияния компьютера, средств связи и бытовых приборов в единый набор («Умный дом»). Будут создаваться новые системы, размещенные на одной интегральной схеме и включающие кроме самого микропроцессора и его окружения, еще и программное обеспечение. Можно предположить, что на смену универсальным компьютерам придут интегрированные приборы, решающие конкретный спектр задач своего владельца: смартфон, WEB-телевизор и т.п. Компьютеры уже занимают ведущее место в медицине. Роль карманного компьютера постепенно занимают сотовые телефоны. Вопросы и задания для обсуждения. 1. Какие первые счетные машины известны. Каков их принцип работы? 2. Кто осуществил переход от ручного к автоматическому выполнению вычислений по составленной программе. 3. Кто стал первым программистом? 4. Кто изобрел цифровую вычислительную машину с программным управлением и с использованием двоичной системы счисления? 5. Назовите и охарактеризуйте науку о получении, передаче, хранении и обработке информации.
77
© Ольга Викторовна Токмакова, 2006 год 2. Вычислительные машины. Вычислительные машины и вычислительные системы. Многоуровневость представления вычислительных машин. Виды вычислительных машин. Структура вычислительных машин. Принципы Неймана. Понятие об архитектуре. Опр. Вычислительная машина – комплекс технических и программных средств, предназначенный для решения задач пользователя путем автоматической обработки информации. (определите, ДЛЯ чего нужна ВМ-для решения задач пользователя, для чего она предназначена, т.е. что она может делать – автоматически обрабатывать информацию, и из чего состоит – аппаратных средств hardware и программных средств software) Опр. Вычислительная система – совокупность взаимодействующих процессоров или вычислительных машин, периферийного оборудования и программного обеспечения, предназначенная для решения задач пользователя. Чем отличаются ВМ от ВС? ВМ – наличие ОДНОГО вычислителя, а ВС – нескольких. ХОТЯ… Сейчас все это деление достаточно условно… Современный многоядерный процессор можно отнести и к ВМ , и к ВС. Многоуровневое представление ВМ ВМ является сложным объектом, в ней традиционно выделяют несколько уровней: Уровень Состав уровня Язык высокого уровня Паскаль, Delphi,С, С++, Fortran Уровень операционной системы Windows, Unix, Linux Уровень архитектуры команд Машинные команды, Assembler Микроархитектурный уровень Устройство управления, арифметикологическое устройство Цифровой логический уровень Логические вентили Уровень физических устройств Транзисторы Каждый верхний уровень основан на предыдущем нижнем. Из транзисторов, как из кирпичиков собираются логические вентили, на вентилях строятся устройство управления и арифметико-логическое устройство. Эти устройства реализуют, в свою очередь, систему машинных команд ВМ, машинные команды лежат в основе операционной системы и любого языка высокого уровня. Существует несколько видов классификаций ВМ (по принципу действия, по этапам создания и элементной базе, по назначению, по способу организации вычислительного процесса, по вычислительной мощности и т.д.) 78
© Ольга Викторовна Токмакова, 2006 год Рассмотрим один из вариантов: (из книги Е.В. Котельникова) − Встроенные компьютеры (цена десятки долларов, телевизоры, СDплееры, микроволновые печи и т.д.) − Игровые и карманные комп-ы, сотовые телефоны (цена – сотни долларов) − ПК (цена – сотни, тысячи долларов, настольные компьютеры и ноутбуки) − Серверы (цена – десятки тысяч , тысячи долларов; сетевые серверы, серверы баз данных) − Малые комп-ры или миникомп-ры (потомки PDP-11; десятки, сотни тысяч долларов, научные и технические ВМ) − Большие комп-ры, мэйнфреймы (потомки IBM-360; сотни тысяч, миллионы долларов; большие базы данных крупных компаний, сложные научные задачи) − Суперкомпьютеры (миллионы, десятки миллионов долларов; ядерная физика, прогноз погоды, космические исследования) Основные виды ЭВМ (обложка из Угриновича) Виды ЭВМ Отличия Суперкомпью Самые мощные. Состоят из отдельных теры блоков и требуют для обслуживания целый штат сотрудников Мини-ЭВМ
Микро-ЭВМ
Персональны е компьютеры: • Массов ый ПК • Деловой ПК • • Портати
Область применения Крупные предприятия и отрасли народного хозяйства. Например, графика в кино и на телевидении, метеорология Меньше размеры, производительность и Крупные предприятия и стоимость. Для организации работы научные учреждения требуется специальный вычислительный центр, но уже менее многочисленный Небольшая вычислительная Используются на предприятиях лаборатория в составе нескольких для предварительной человек. Программисты занимаются подготовки данных внедрением и настройкой заказанного или приобретенного программного обеспечения Для поиска информации в Интернете, в учебном процессе, • Тот, который присутствует на рынке в научно-исследовательской работе, для создания • Минимизированы требования к мультимедиа-продуктов, для графике и отсутствуют требования к развлечения и пр. звуку • Обязательное наличие средств компьютерной связи
79
© Ольга Викторовна Токмакова, 2006 год вный ПК • Повышенное требование к хранению • Рабочая данных станция • Развлека • Качественное воспроизведение тельный ПК графики и звука • Настоль ные • Являются принадлежностью стационарного рабочего места • Портати • Удобны для транспортировки вные • Выполняют функции • Карманн интеллектуальных записных книжек ые Специализир ованные компьютеры • графическ См. мини-ЭВМ ие станции • серверы
1. Используются для подготовки кино- и видеофильмов, в рекламе 2. Предназначены для объединения компьютеров в единую сеть, для хранения большого объема данных, для пересылки информации по компьютерной сети и т.д.
Структуры ВМ Классическая фон-неймовская архитектура. В 1945 году Джон фон Нейман предложил принципы, положенные в основу большинства современных ВМ: − Принцип двоичного кодирования: вся информация, как данные, так и команды, кодируется в двоичной форме и разделяется на единицы – слова. − Принцип программного управления: алгоритм представляется с помощью управляющих слов – команд. Алгоритм, записанный в виде последовательности команд, называется программой. Команды выполняются в естественной последовательности, т.е. в порядке их расположения в программе. При необходимости , с помощью специальных команд, эта последовательность м.б. изменена. − Принцип однородности памяти: команды и данные хранятся в одной и тойже памяти. − Принцип адресности: память состоит из пронумерованных ячеек. Номера ячеек называются адресами. Фон Нейман разработал структуру ВМ (классическая). Основным блоком является процессор, состоящий из двух элементов: устройства управления УУ и арифметико-логического устройства АЛУ. Обрабатываемые данные хранятся в памяти, а взаимодействие с пользователем происходит через устройства вводавывода. 80
© Ольга Викторовна Токмакова, 2006 год Классическая архитектура (фон-неймовская) Процессор АЛУ Устройства ввода
Устройства вывода
УУ
Запоминающее устройство
Недостатки: вся работа по вводу-выводу информации ложится на процессор; сложность изменения конфигурации. Архитектура на основе общей шины Шина – набор проводников, объединенных едиными функциями. В структуре с общей шиной все устройства ВМ подключаются к системной шине (магистрали). Все устройства ввода-вывода (УВВ) имеют встроенную небольшую микросхемку – контроллер, управляющий операциями обмена данными. Процессор
Основная память
УВВ1
УВВ2
УВВ3
контроллер
контроллер
контроллер
Системная шина Рис. Архитектура на основе общей шины Достоинства: простая реализация, простота изменения конфигурации. Недостатки: единственная шина для разных потоков данных, отличающихся по скорости; невозможна параллельная передача данных несколькими устройствами, так как информацию по шине в один момент времени может передавать только одно устройство. Архитектура на основе иерархии шин. В структуре с иерархией шин помимо системной шины (между процессором и памятью) есть ряд дополнительных шин. Каждая шина имеет свою пропускную способность, достаточную для устройств, которые она связывает. Контролируетвзаимодействие всех устройств в такой архитектуре ЧИПСЕТ (chipset –набор микросхем). 81
© Ольга Викторовна Токмакова, 2006 год Процессор
Дисплей
Чипсет
УВВ1
Основная память
УВВ2
УВВ3
Рис. Архитектура с иерархией шин ВС с общей памятью В такой структуре все процессоры используют для хранения и обмена данными общую память. Процессор 1
Процессор 2
…………………….
Процессор N
Коммуникационная сеть или общая шина
Общая память
Рис. Структура ВС с общей памятью Локальная память
Локальную память Распределенная
Локальная память ВС. В распределенных ВС каждый процессор имеет собственную локальную память (память распределена по узлам). Обмен информацией осуществляется посредством коммуникационной сети. В такой структуре каждый узел системы представляет, по сути, отдельную Процессор 1 Процессор 2 ВМ. Процессор N
……… 82 Коммуникационная сеть
© Ольга Викторовна Токмакова, 2006 год
Рис. Структура распределенной ВС 3. Функциональная схема построения компьютера. Характеристика основных блоков: назначение, особенности, конструктивная реализация. Найдите в любом школьном учебнике функциональную схему построения компьютера и прочитайте ниже комментарии к ее составляющим. Информация, обрабатываемая на компьютере, называется данными. Компьютер обрабатывает информацию по определенной инструкции, представляющей собой последовательность команд, которые может выполнить. Такая последовательность команд называется программой. Центральным устройством компьютера, устройством которое выполняет программу, по обработке данных, является процессор. Процессор может обрабатывать числовую, текстовую, графическую, видео и звуковую информацию. Все эти виды информации, как нам уже известно, кодируются в последовательности нулей и единиц (1 и 0). Однако пользователь плохо понимает информацию, представленную в виде последовательностей нулей и единиц. Следовательно, в состав компьютера должны входить специальные устройства ввода и вывода информации (клавиатура, мышь, принтер, сканер, модем). Программа и данные должны быть загружены в специальное устройство – оперативную память. Процессор последовательно считывает команды программы, а так же необходимые данные из оперативной памяти, выполняет команды, а затем записывает данные – результаты обратно в оперативную память. В процессе выполнения программы процессор может запрашивать данные с устройства ввода и пересылать данные на устройства вывода. Однако при выключении компьютера вся информация из оперативной памяти стирается, поэтому для пользователя необходимо иметь возможность 83
© Ольга Викторовна Токмакова, 2006 год долговременного хранения большого количества различных данных и программ. Такое устройство называется долговременная или внешняя память. В качестве устройств долговременной памяти используются накопители (дисководы) на гибких магнитных дисках, жесткие диски («винчестеры»), дисководы CD-ROM, DVD-ROM. Внутренние устройства компьютера. Внутренние устройства – устройства, находящиеся внутри системного блока называются внутренними. Материнская плата – основная плата ПК, на ней расположены процессор, оперативная память, а также слоты для дополнительных контроллеров внешних устройств. Процессор – технически реализуется на большой интегральной схеме, структура которой постоянно усложняется и количество функциональных элементов на ней постоянно растет. Важнейшей характеристикой является тактовая частота, определяющая его быстродействие – количество базовых операций, которые производит процессор в секунду. Разрядность процессора определяется количеством двоичных разрядов, которые процессор обрабатывает за один такт. Оперативная память – можно представить как обширный массив ячеек, в каждой из которых хранится 1 байт информации в то время как компьютер включен. Имеет различную информационную емкость:1, 4, 8, 16, 32 Мбайт. Постоянная память – хранит программы, необходимые для проверки основных устройств компьютера, а так же для загрузки операционной системы. Запись информации в постоянную память происходит обычно только один раз – при производстве соответствующих чипов на заводе – изготовителе. Информация сохраняется и после выключения компьютера. Жесткий диск - жесткие диски представляют собой несколько десятков дисков, размещенных на одной оси и вращающихся с большой скоростью, заключенных в металлический корпус. Имеет различный информационный объем. (10-120 Гбайт). К материнской плате также можно подключить звуковую карту, сетевую карту, видеокарту, модем. Несмотря на большое разнообразие существующих ЭВМ, в их основы заложены некоторые общие принципы. Эти принципы сформулированы в 40-х годах прошлого века выдающимся американским математиком Джоном фон Нейманом. Они и позволили создать устройство обработки информации с достаточно простыми и универсальными принципами работы. Это устройство называется ЭВМ. 84
© Ольга Викторовна Токмакова, 2006 год Первый принцип – принцип произвольного доступа к основной (оперативной) памяти. Структурно основная память состоит из ячеек. Принцип гласит о том, что процессору в произвольный момент времени доступна любая ячейка, причем время доступа (чтения или записи) одинаково для всех ячеек. Чтобы это было реализовано нужно, чтобы у каждой ячейке памяти было свое уникальное имя. Этими именами являются номера ячеек. По аналогии. Данные, записанные на магнитной ленте магнитофона, разбиваются на элементарные единицы – слова. При произвольном положении магнитной ленты доступно лишь то слово, которое находится под головками чтения – записи. Для чтения слова на другом участке магнитной ленты необходимо предварительно переместить этот участок под блок головок, то есть доступ к этому слову возможен лишь после просмотра предыдущих участков магнитной ленты. Поэтому магнитную ленту принято называть памятью с последовательным доступом. Второй принцип Джона фон Неймана - принцип хранимой программы. Программа решения задачи хранится в оперативной памяти наряду с обрабатываемыми данными. В принципе ЭВМ не различает , что именно хранится в данной ячейке – число, символ или команда. Для решения другой задачи требуется смена в оперативной памяти программы и обрабатываемых данных. Итак, ЭВМ – универсальный инструмент обработки информации. ИТАК, Принципы Джона фон Неймана: ЭВМ должна работать в двоичной системе счисления. В состав должны входить устройства: центральное управляющее, запоминающее, для ввода данных и вывода результатов. Обмен информацией между отдельными устройствами компьютера производится по МАГИСТРАЛИ, соединяющей все устройства компьютера. Вопросы и задания для работы на ФОРУМЕ: 1. Какую функцию обеспечивают устройства ввода информации? 2. Какую функцию обеспечивают устройства вывода информации? 3. Что хранится в оперативной памяти? 4. Для чего необходима внешняя память? 5. Какое устройство выполняет обработку информации? 6. Какие устройства называются внутренними? 7. Какие устройства компьютера находятся на материнской плате? 8. Какие технические характеристики процессора являются основными? 9. Подсчитайте с помощью стандартной программы Калькулятор информационный объем жесткого диска, который имеет: размер сектора - 512 85
© Ольга Викторовна Токмакова, 2006 год байт; дорожек на одной стороне - 10000; количество секторов на дорожке - 60; сторон - 16. 4. Модульно - магистральный принцип построения компьютера. В основу архитектуры персональных компьютеров положен магистрально – модульный принцип. Модульный принцип позволяет потребителю самому комплектовать нужную ему конфигурацию компьютера и производить при необходимости ее модернизацию. Модульная организация компьютера опирается на магистральный (шинный) принцип обмена информацией между модулями. Магистраль включает в себя многоразрядные шины: шину данных, шину адреса и шину управления. Шины представляют собой многопроводные линии. Разрядность шины данных определяется разрядностью процессора, т.е. количеством двоичных разрядов, которые процессор обрабатывает за один такт. Разрядность процессора постоянно увеличивалась в следующей последовательности: 8,16, 32, 64. Информация по шине данных может передаваться от процессора, т.е. шина данных является двунаправленной. Выбор абонента по обмену данными производит процессор, который формирует код адреса устройства, а для оперативной памяти код адреса ячейки памяти. Код адреса передается по адресной шине, причем сигналы по ней передаются в одном направлении от процессора к оперативной памяти и устройствам (однонаправленная шина). Разрядность шины определяет адресное пространство процессора, т.е. количество ячеек оперативной памяти, которые будут иметь уникальные адреса. Количество адресуемых ячеек памяти можно рассчитать по формуле: N=2I, где I - разрядность шины адреса. Каждая ячейка имеет свой уникальный двоичный адрес. Каждая ячейка имеет объем 1 байт, следовательно, максимальный объем адресуемой памяти равен: 4294967296 байт=4 Гбайт. В персональных компьютерах величина адресного пространства процессора и величина фактически установленной оперативной памяти практически всегда различаются. Несмотря на то, что общий объем адресуемой памяти достигает 4 Гбайт, величина фактически установленной оперативной памяти может быть значительно меньше - 32 Мбайта. По шине управления передаются сигналы, определяющие характер обмена информацией (считывание/запись), и сигналы, синхронизирующие взаимодействие устройств, участвующих в обмене информацией. Все устройства (модули) компьютера подключаются к магистрали. Однако, непосредственно к магистрали можно подключить лишь процессор и оперативную память, остальные устройства подключаются с помощью 86
© Ольга Викторовна Токмакова, 2006 год специальных согласующих устройств - контроллеров (контроллер клавиатуры, контроллер дисководов, видеоадаптер и т.д.) Необходимость использования контроллеров вызвана тем, что функциональные и технические параметры компонентов компьютера могут существенно различаться, например, их быстродействие. Так, процессор может проводить сотни миллионов операций в секунду, тогда как пользователь может вводить с клавиатуры, в лучшем случае 2-3 знака в секунду. Контроллер клавиатуры как раз и обеспечивает согласование скорости ввода информации со скоростью ее обработки. Связь ПК с различными устройствами осуществляется через порты Параллельный порт (LPT)– передаются одновременно 8 бит по 8 параллельным проводникам. Аппаратно реализуется в виде разъема на задней стенке системного блока и используется для подключения принтера. Максимальное удаление принимающего устройства обычно не должно превышать 3 м. Высокая скорость передачи данных (5Мбайт/с). Последовательный порт (COM1, COM2) – данные передаются последовательно бит за битом (112 Кбит/с). Аппаратно реализуется с помощью 25-контактного и 9-контактного разъемов, которые выведены на заднюю панель системного блока. Максимальная дальность передачи составляет обычно несколько десятков метров. Подключаются устройства не требующие высокой производительности (мышь, модем). Порт USB – последовательный порт нового поколения (высокая производительность до 12 Мбит/с). Не требует отключения ПК в момент установки оборудования. Можно подключить последовательно 127 устройств. Порт Fire Wire – цифровые камеры, видео магнитофоны (400 Мбит/с) при этом он поддерживает подключение до 63 параллельно работающих устройств.Внешний CD-RW, видеомагнитофон. Инфакрасный порт IrDa – для подключения цифровых устройств: ноутбуки, сотовые телефоны, цифровые фотокамеры. Порт PS/2 – для подключения мыши и клавиатуры (мышь-зеленый, клавиатура-фиолетовый). Другие устройства не подключаются. Вопросы и задания: 1. К какому типу порта подключается принтер? 2. К какому типу порта подключаются мышь и модем? 3. Чем различаются последовательный и параллельный порты и для чего они предназначены? 5. Внешние устройства компьютера. 87
© Ольга Викторовна Токмакова, 2006 год С давних времен человечество пыталось получать информацию с помощью средств вычислительной техники. Так в 1833 году Чарльз Беббидж создал проект аналитической машины, имевшей устройство для обработки, хранения и вывода результатов на печать. В 1804 году Жаккард реализовал проект ткацкого станка, результатом вывода был рисунок на ткани. С тех пор было изобретено множество устройств для ввода, вывода и обмена информацией через ПК. Для того, чтобы вводить и выводить информацию с помощью устройств ввода-вывода мы должны знать типы и характеристики этих устройств. Среди многих устройств, относящихся к компьютеру можно выделить внутренние и внешние. Определение: Устройства, подключенные к системному блоку называются внешними (перифирийными). Устройства ввода-аппаратные средства для преобразования информации из формы понятной человеку, в форму, воспринимаемую ПК. I. Манипуляторы. 1.Мышь (Механическая, Оптическая, Оптико-механическая, радиооптическая) Характеристика: разрешающая способность (Dpi) – число точек на дюйм. 400-800 Dpi. 2.Требол. Трекбол, в отличии от мыши не надо двигать по столу. Шарик вращается рукой и вращение преобразуется в перемещение указателя по экрану. Используется в портативных компьютерах. 3.Джойстики. Джойстики имеют различное число кнопок и число направлений перемещения курсора по экрану. Рынок этих манипуляторов очень разнообразен и постоянно совершенствуется, и работа с ними все более приближается к естественным условиям имитируемой ситуации. II. Сенсорные устройства 1.Сенсорный экран – представляет собой поверхность, покрытую специальным слоем. Прикосновение к определенному месту экрана обеспечивает выбор задания, которое должно быть выполнено. 2.Световое перо – специальное устройство, похожее на обычный карандаш со светочувствительным элементом. Применяется в различных системах проектирования и дизайна. 3.Дигитайзер – для создания или копирования рисунков или фотографий. Изображение преобразуется в цифровую форму. Результат работы 88
© Ольга Викторовна Токмакова, 2006 год воспроизводится на монитор. Дигитайзером обычно пользуются архитекторы и дизайнеры. III. Устройства сканирования. Сканер – для ввода в компьютер графической или текстовой информации с листа бумаги, со страницы книги. Программное обеспечение для работы со сканером делится на два вида: для работы с графическим изображением и для распознавания текста. Устройство распознавания символов (штрих-сканер). Характеристики сканеров. Глубина распознавания цвета; Оптическое разрешение (Dpi) – количество точек, которое сканер различает на каждом дюйме 200, 300, 600, 1200. Время сканирования и максимальный размер сканированного листа. IV. Устройство распознавания речи. С помощью обычного микрофона речь человека непосредственно вводится в компьютер и преобразуется в цифровой код. Это реализуется путем сравнения сказанного слова с образцами, предварительно записанными в память компьютера.. Системы находят широкое применение в образовании, например при изучении иностранных языков, пении. V. Клавиатура. Стандартным устройством для ввода информации в компьютер является клавиатура. С ее помощью вы можете вводить числовую и текстовую информацию, а так же различные команды и данные. Как правило, используют 101-103 клавишную клавиатуру. Мембранная; Сенсорная. Клавишная Устройства вывода- аппаратные средства для преобразования компьютерного представления информации в форму, понятную человеку. I. Мониторы. Предназначены для отображения символьной и графической информации. Жидко-кристаличекие электронно - лучевой трубкой Характеристики мониторов Разрешающая способность экрана определяется набором точек (пикселей), расположенных по вертикали и горизонтали. 800х600, 1024х768. Чем выше разрешающая способность монитора, тем качественнее изображение. Длина диагонали. Этот параметр измеряется в дюймах и колеблется в диапазоне от 9 до 41 89
© Ольга Викторовна Токмакова, 2006 год II. Принтеры Принтеры предназначены для вывода результатов на бумагу. При этом происходит преобразование машинного кода в символы (буквы, цифры, знаки). Струйные; Лазерные. Матричные; Характеристики принтеров: Ширина каретки принтера, определяющая размер печатающего листа; Скорость печати; Разрешающая способность (Dpi) – число точек на дюйм. III. Плоттеры графопостроители, предназначены для вывода графической информации, схем, чертежей. Размер выходных документов неограничен и зависит от длины рулона бумаги. IV. Устройства звукового вывода Модем – устройство обмена информацией, предназначено для преобразования сигналов. Различаются скоростью передачи информации до 56 Кбит/с. Вопросы и задания для работы на ФОРУМЕ: 1. Какие устройства называются внешними? Приведите примеры внешних устройств. 2. Типы принтеров и их характеристики. 3. Типы мониторов. Характеристики. Какие основные характеристики монитора влияют на качество изображения? 4. Из данного списка выберите внешние устройства и разделите их на устройства ввода и вывода: процессор, джойстик, модем, клавиатура, оперативная память, мышь, сканер, винчестер, плоттер, графопостроитель, видеокарта, фотоаппарат, монитор, сенсорный экран. 5. Процессор и его основные характеристики. Автоматизация работы компьютера, основной алгоритм работы процессора. Процессор – основная микросхема компьютера. Представляет собой небольшую плоскую полупроводниковую пластину размером примерно 5*5 см, на которой размещается до 10 млн функциональных элементов. У компьютеров 4-го поколения функции процессора выполняет микропроцессор – СБИС (сверхбольшая интегральная схема), реализованная в едином полупроводниковом кристалле (или кремний, или германий) площадью меньше 0,1 см2 На таком кристалле может размещаться до 5,5 млн транзисторов. Эти 90
© Ольга Викторовна Токмакова, 2006 год элементы образуют сложную структуру и позволяют процессору производить обработку информации с очень высоко скоростью. Системный блок Процессор
Внутренняя память
Монитор
Информационная магистраль
Блок питания
Клавиатура
Мышь
Внешняя память
Кристалл-пластинка обычно помещается в пластмассовый или керамический корпус и соединяется золотыми проводками с металлическими штырьками, чтобы его можно было присоединить к материнской плате компьютера. Назначение микропроцессора: − Выполнять команды программы, находящейся в оперативной памяти. − Координировать работу всех устройств компьютера. В состав процессора обязательно входят: − Устройство управления (координирует работу всех устройств компьютера); − Арифметико-логическое устройство (выполняет команды программы, находящейся в оперативной памяти); Регистры памяти − Регистры памяти (ячейки, в которые по очереди помещаются команды программы, по которой работает процессор и вся необходимаяУстройство информация для их выполнения); управления − Шины данных, команд и адресов (по этим магистралям происходит обмен данными между внутренними устройствами процессора и внешними по отношению к нему). Арифметикологическое устройство
91
© Ольга Викторовна Токмакова, 2006 год
2. Характеристики процессора Регистры процессора Регистр – это ячейка процессора, в которой хранится машинное слово. Машинное слово представляет собой некоторое число или команду, которые записаны в двоичном коде. Существует много разнообразных процессоров, и у каждого свои регистры. Регистры отличаются по размеру и назначению. Бывают регистры 8-, 16-, 32-, 64-разрядные и т.д. Это значит, что в регистр помещается соответственно 8, 16, 32 и 64 бита двоичной информации. Размер регистра определяет одну из характеристик процессора – разрядность. Разрядность процессора – это число одновременно обрабатываемых процессором битов, поэтому процессор может быть 8, 16, 32 и 64 разрядным. Чем больше разрядность, тем больше информации он может обрабатывать. Кроме размера регистры отличаются назначением. Бывают регистры общего назначения, они используются для операций с данными. Адресные регистры служат для хранения адресов, по которым процессор находит данные в памяти. Флаговые регистры включаются или выключаются в особых случаях и т.д. Тактовая частота обработки информации Тактовый генератор вырабатывает электрические импульсы, которые несут информацию от одного устройства к другому. Скорость передачи информации между устройствами компьютера называется тактовой частотой. Тактовая частота влияет на скорость работы, быстродействие процессора. Чем выше она, 92
© Ольга Викторовна Токмакова, 2006 год тем быстрее работает процессор и тем больше информации он может обработать. Повышение тактовой частоты происходит от одной модели процессора к дугой. Например, первые модели процессоров Intel (I 8088) работали с тактовой частотой 8 МГц, а современные (Pentium IV) – до 4 ГГц. Адресное пространство Процессор управляет работой всех устройств компьютера и в частности одной из его функций является организация обмена данных между внешней памятью и оперативной памятью. Для того, чтобы в оперативной памяти найти нужные данные, процессор должен знать их адрес. Адрес передается к процессору по адресной шине. Если шина является N – разрядной, то по ней можно передать 2N двоичных чисел. Именно такое количество адресов можно передать по этой шине. Следовательно, 2n – это количество ячеек оперативной памяти, к которым, используя адресную шину, может обратиться процессор. Величина 2 n – это объем адресного пространства процессора, то есть это объем оперативной памяти, физически адресуемой процессором. Зная разрядность адресной шины, можно легко вычислить величину адресного пространства процессора. Например, если адресная шина 24-разрядная, следовательно, адресное пространство равно 224=16 Мбайт, то есть процессор имеет адресуемый доступ к 16-Мбайтам оперативной памяти. Как ускорить работу процессора. Проблемное задание «Представьте, что у вас в фирме два помещения. В одном работает рабочая группа. А во втором находится очень важная информация. И есть условие: вы должны работать в помещении 1, а выдача важной информации происходит достаточно медленно. В помещение 2 может входить только 1 человек.» Вы можете работать так: 1. Человек идет в помещение 2 за первой порцией данных. 2. Рабочая группа его ждет. 3. Человек приносит первую порцию данных. 4. Рабочая группа их обрабатывает. 5. После этого человек снова идет в помещение 2 относит ранее взятые данные, полученные результаты и берет очередную порцию данных. 6. В это время рабочая группа его ждет. 7. Человек приносит новые данные. 8. Рабочая группа их обрабатывает. И так далее… Можно ли ускорить процесс решения задачи? Как? 93
© Ольга Викторовна Токмакова, 2006 год Итак, вы попытались смоделировать процесс ускорения работы процессора. Помещение 1 – это процессор, а помещение 2 – это оперативная память. Главная задача ученых и инженеров – сделать процессоры более производительными. Достигается это за счет: − Повышение тактовой частоты (более «умная» рабочая группа) − Повышение разрядности процессора (поручить приносить информацию из помещения 2 более чем 1 человеку). Чем выше разрядность процессора (количество человек), тем больше байтов (больше информации) он может обработать за один такт. − Кэширование памяти. Процессор по отношению, например, к оперативной памяти является более быстрым устройством, поэтому он вынужден постоянно простаивать, ожидая медленно работающую память. Поэтому, чтобы процессор реже обращался к оперативной памяти, внутри него создают небольшой участок памяти размером 256 или 512 Кбайт. Эта «сверхоперативная память» получила название «КЭШ». В кэш-память процессор записывает те данные, которые получил из оперативной памяти, и если эти данные понадобятся еще раз, то он возьмет их из КЭШ. Таким образом. Работа процессора происходит быстрее. Процессор является одним из тех устройств, которые все время должны работать. Процессор ПК не может быть выключен. Даже если на наш взгляд процессор ничего не делает, все равно выполняется какая-то программа. Процессор работает, по сравнению с другими устройствами компьютера, с наибольшей скоростью. И самыми медленными по сравнению с ним являются внешние устройства, в том числе и человек. Так, работая с клавиатурой, человек отправляет в среднем один байт в секунду (1 клавиша в секунду). Процессор обрабатывает такую информацию за 0, 000001 секунды. А что же делает процессор все остальное время, если он не может выключаться? А в остальное время он может получать сигналы от мыши, других компьютеров, от гибких и жеских дисков. Он успевает несколько раз в течение секунды подзарядить оперативную память, обслужить внутренние часы компьютера, отдать распоряжение, как правильно отображать информацию на экране, и выполнить множество других дел. Система прерываний процессора Как во время работы процессор узнает, откуда поступили данные: от клавиатуры, от монитора, от принтера…? А может от микроволновки? И как с такими данными работать? Для этого используют прерывания, которых существует 256 видов. Прерывания прерывают работу процессора над текущим заданием и направляют его на выполнение другой программы. 94
© Ольга Викторовна Токмакова, 2006 год
5
Программа обработки прерываний
1
Текстовый редактор
Процессор
Буфер клавиатуры
7
6 3
Вектор прерываний
4 2 Клавиатура
Порт клавиатуры
1 шаг. Представим себе, что до нажатия клавиши удаления символа компьютер работал с текстовым редактором. 2 шаг. Вы нажали на клавишу Backspace. Тем самым послан сигнал на специальную микросхему, расположенную внутри клавиатуры. Эта микросхема в свою очередь посылает специальный сигнал (скан-код) на порт клавиатуры. 3 шаг. Порт клавиатуры передает сигнал процессору (сигнал прерываний). 4 шаг. Получив сигнал, процессор временно приостанавливает работу с текстовым редактором и расшифровывает пришедший сигнал (обращается в вектор прерываний) и находит программу для обработки сигналов (прерываний) клавиатуры. 5 шаг. Процессор начинает выполнять эту программу. 6 шаг. Программа направляет процессор на порт клавиатуры, чтобы он нашел скан-код и загрузил его в свои регистры. 7 шаг. Скан-код запоминается в специальной области памяти (буфере клавиатуры). Процессор возвращается к работе с текстовым редактором. 95
© Ольга Викторовна Токмакова, 2006 год 8 шаг. Текстовый редактор определяет по скан-коду, что была нажата клавиша Backspace и выполняет стирание символа. Предположим, что вы решили подключить к компьютеру микроволновку. Выберем дя нее какое-нибудь прерыванеи, не используемое другим устройством, например, «103». Когда микроволновка решит обратить на себя внимание процессора, она пошлет ему сигнал и это число. Процессор получит число и заглянет в специальную область памяти – вектор прерываний, где найдет адрес руководства по работе с микроволновкой и начнет работать с этим устройством. Новые сигналы могут временно приостановить работу текущей программы, и вернуться к ней по окончании работы с пришедшим прерыванием. Система команд процессора Процессор обрабатывает информацию, выполняя определенные команды. Таких команд может быть более тысячи. У каждой команды свой код (номер). Например, есть команда 000, 001, 002 и т.д. Коды всех команд процессора записаны в двоичной форме в специальном документе, который называется системой команд процессора. У каждого процессора своя система команд. Один и тот же код для разных процессоров может означать разные команды. Если же процессоры имеют ограниченную совместимость, то их рассматривают как семейство. Примером семейства являются все процессоры Интел. Их родоначальником был процессор Интел 8086 , на базе которого был сделан первый IBM PC. Процессоры семейства совместимы сверху вниз, то есть новый процессор понимает все команды предшественников, но не наоборот. Все процессоры можно разделить на: 1. процессоры с расширенной системой команд (СISC-процессоры); 2. Процессоры с сокращенной системой команд (RISC-процессоры). Первый тип процессоров характеризуется небольшим числом регистров, но большим количеством команд, более длинным форматом их записи в байтах и, соответственно, более медленной работой. Такие процессоры используются в универсальных вычислительных системах и являются стандартом для микрокомпьютеров. Второй тип процессоров характеризуется меньшим количеством команд и, соответственно, более высоким быстродействием. Но сложные операции приходится разбивать на последовательность простейших команд, что не всегда эффективно. Поэтому такие процессоры используются в специализированных 96
© Ольга Викторовна Токмакова, 2006 год вычислительных системах, ориентированных на выполнение однообразных операций.
Память компьютера, виды памяти. Внутренняя память, принципы организации. нешняя память, способы конструктивной реализации. 6. Устройства внешней памяти Начнем с того, что определимся с причинами необходимости внешней памяти у компьютера. Можно ли вообще обойтись без нее и при этом продолжать пользоваться всеми возможностями компьютера без ограничений? С какими проблемами мы сразу столкнемся? … Итак, разберемся с причинами необходимости внешней памяти у компьютера. Сохранение информации для последующего использования или для передачи другим людям имело огромное значение для развития цивилизации. До появления ЭВМ человек для этой цели использовал книги, фото, магнитофонные записи, кинопленку и пр. К концу 20 века потоки информации значительно возросли и появление ЭВМ способствовало разработке и применению носителей информации, обеспечивающих возможность ее долговременного хранения в компактной форме. Итак, 1 причина - … Оперативная память ЭВМ обладает рядом недостатков, связанных с технологией ее изготовления. До сих пор она не обладает большим объемом. Кроме того, ее содержимое по прежнему теряется при выключении компьютера. Вы сталкивались с этой проблемой тогда, когда на ПРЗ по Паскалю в результате каких-либо ваших ошибочных действий программа зацикливалась и даже привычным набором клавиш не удавалось с окна вывода вернуться в рабочее окно программы. Если при этом вы не сохранили программу, то вам приходилось ее заново набирать. Итак, 2 причина - … Наличие в компьютерной системе еще одного вида памяти – внешней, позволяет устранить эти недостатки. Основной функцией внешней памяти является способность долговременно хранить информацию. Кроме того, внешняя память имеет большой объем и она дешевле оперативной. Носители внешней информации обеспечивают перенос информации с одного компьютера на другой, что важно в ситуации, когда использование локальной или глобальной сети по ряду причин невозможно. Итак, внешняя (долговременная память) – это место длительного хранения данных (программ, результатов расчетов, текстов, аудио и видеофайлов и пр.), не используемых в конкретный момент времени в 97
© Ольга Викторовна Токмакова, 2006 год оперативной памяти компьютера. Внешняя память в отличие от оперативной является энергонезависимой, но не имеет прямой связи с процессором. Информация от внешней памяти к процессору циркулирует примерно по такой схеме: ВЗУ ОЗУ Процессор Как уже отмечалось, носители внешней памяти обеспечивают транспортировку информации в тех случаях, когда компьютеры не объединены в сеть. Для работы с внешней памятью необходим НАКОПИТЕЛь (устройство, обеспечивающее запись и/или считывание информации) и устройства хранения – НОСИТЕЛЬ. Виды накопителей: - НАКОПИТЕЛИ НА ГИБКИХ МАГНИТНЫХ ДИСКАХ (нгмд); - НАКОПИТЕЛИ НА жеских МАГНИТНЫХ ДИСКАХ (нжмд); - накопители CD-ROM, CD-RW, DVD. Им соответствуют основные виды носителей: - гибкие магнитные диски (Floppy Disk), - жесткие магнитные диски (Hard Disk), - диски CD-ROM, CD-R, CD-RW, DVD. Основные характеристики накопителей и носителей: - информационная емкость, - скорость обмена информацией, - надежность хранения информации, - стоимость. /дальше полученную информацию вы будете заносить в таблицу: / Носител применени разме Информационна Скорость Надежность ь е р я емкость чтения/запис хранения и информаци информации и
В основу записи, хранения и считывания информации из внешней памяти положены 2 принципа: 1. магнитный, 2. оптический. Следование им позволяет сохранять информацию после выключения компьютера. 2) Принцип работы магнитных запоминающих устройств В основе магнитной записи лежит преобразование цифровой информации (в виде 0 и 1) в переменный электрический ток, который сопровождается
98
© Ольга Викторовна Токмакова, 2006 год переменным магнитным полем. В результате поверхность магнитных носителей разделяется на ненамагниченные участки (0) и намагниченные (1). У комьютеров раннего поколения функции внешней памяти выполняли перфоленты, перфокарты, а также магнитные ленты, которые сейчас используются чрезвычайно редко. Магнитные ленты являлись устройством последовательного доступа. Данные можно читать или записывать только последовательно. При нарушении порядка приходится долго ждать пока лента будет перемотана на нужное место. Магнитные ленты достаточно медленные устройства, хотя и с большой емкостью. Современные устройства для работы с магнитными лентами – стримеры имеют увеличенную скорость записи , емкость одной кассеты стримера измеряется сотнями и тысячами мегабайтов, а скорость передачи данных – от 2 до 9 Мбайт в минуту. Сейчас в качестве носителей используются магнитные и оптические диски. Эти устройства являются устройствами с произвольным доступом, так как позволяют любую часть данных получить за одно и тоже время. Магнитные диски бывают гибкие и жесткие. 3) Гибкий диск. Накопитель на гибких магнитных дисках (англ. – floppy disk) или дискета – носитель небольшого объема информации, представляющий собой гибкий диск в защитной оболочке. Используется для переноса данных с одного компьютера на другой и для распространения программного обеспечения. Устройство дискеты. - шторка окна чтения/записи - пластиковый конверт - Втулка привода диска - Диск - Блокировка записи (вкл/выкл) Диск находится внутри пластикового конверта, который защищает его от механических повреждений. Чтобы прочитать или записать данные, нужно вставить дискету в дисковод для гибких магнитных дисков, щель которого находится на передней панели системного блока. Внутри дисковода шторка чтения/записи автоматически открывается и над этим местом устанавливается головка чтения/записи дисковода. Диск внутри дисковода вращается с постоянной угловой скоростью, которая является достаточно низкой (несколько килобайт в секунду, среднее время доступа – 250мс). Запись информации происходит по обе стороны диска. Сейчас наиболее распространенными являются дискеты размером 3,5 дюйма (1 дюйм = 2,54 см) и емкостью 1,44 Мбайта (где-то около 600 стр текста или несколько десятков 99
© Ольга Викторовна Токмакова, 2006 год графических изображений). Диск можно защитить от записи. Для этого используют предохранительную защелку. Дискеты требуют бережного обращения. Они могут быть повреждены, если: - дотрагиваться до записывающей поверхности; - писать на этикетке дискеты карандашом или шариковой ручкой, - сгибать дискету, - перегревать дискету (солнце, батарея), - подвергать воздействию магнитных полей. 4) Жесткий магнитный диск. Так как гибкий диск обладает небольшим объемом, его, в основном используют для переноса информации с комп-а на комп. Жесткий диск - информационный склад ЭВМ. Накопитель на жестких магнитных дисках (англ. HDD – Hard Disk Driver) или ВИНЧЕСТЕР – это наиболее массовое запоминающее устройство большой емкости, в котором носителями информации являются алюминиевые пластины, обе поверхности которых покрыты слоем магнитного материала. Используется для постоянного хранения программ и данных. Диски винчестера помещены на одну ось и вместе с головками чтения/записи и несущими их головками помещены в герметически закрытый металлический корпус. Такая конструкция позволила существенно увеличить скорость вращения дисков и плотность записи. Запись производится на обе поверхности дисков. В отличие от дискеты жесткий диск вращается непрерывно. Поэтому скорость его вращения может быть от 3600 до 10000 об/мин, среднее время поиска данных – 9 мс, ср.скор.передачи данных – до 60 Мбайт/сек. Емкость винчестера в компьютерах 2000 года измерялась десятками гигабайтов. Наиболее распространены накопители с диаметром 2.2, 2.3, 3.14, 5.25 дюймов. В целях сохранения информации и работоспособности винчестер необходимо уберегать от ударов и резких изменений пространственной ориентации в процессе работы. 5) Лазерный диск CD-ROM (англ. Compact Disk Real Only Memory - постоянное запоминающее устройство на основе компакт диска) Компакт – диск диаметром 120 мм (около 4.75 дюймов) изготовлен из полимера и покрыт металлической пленкой. Информация считывается с этой металлической пленки, которая покрывается полимером, защищающим данные от повреждения. Это односторонний носитель информации. Принцип цифровой записи на лазерный диск отличается от принципа магнитной записи. Закодированная информация наносится на диск лазерным 100
© Ольга Викторовна Токмакова, 2006 год лучом, который создает на поверхности микроскопические впадины , разделяемые плоскими участками. Цифровая информация представляется чередованием впадин (кодирование нуля) и отражающих свет островков (кодирование 1). Информация, нанесенная на диск, не может быть изменена. Считывание информации с диска происходит за счет регистрации изменений интенсивности отраженного от алюминиевого слоя излучения маломощного лазера. Приемник или фотодатчик определяет, отразился ли луч от гладкой поверхности (1), был рассеян или поглощен (0). Рассеивание или поглощение луча происходит в местах, где в процессе записи были нанесены углубления. Фотодатчик воспринимает рассеянный луч, и эта информация в виде электросигнилов поступает на микропроцессор , который преобразует эти сигналы в двоичные данные или звук. CD-ROM вращается с переменной угловой скоростью, чтобы обеспечить постоянную линейную скорость при чтении. Между прочим! Чтение информации с внутренних участков диска осуществляется при большом числе оборотов, чем с наружных. Поэтому доступ к данным осуществляется быстрее , чем к данным на дискетах, но медленнее, чем на жестких дисках (от 150 до 400 мс при скорости вращения до 4500 об/мин). Скорость передачи данных составляет не менее 150 Кбайт и доходит до 1,2 Мбайта. Емкость достигает 780 Мбайт, поэтому на них обычно выпускают мультимедийные программы. Лазерные диски этого вида просты и удобны в работе. Имеют низкую удельную стоимость хранения данных, практически не изнашиваются , не могут быть поражены вирусами, с них невозможно случайно стереть информацию. CD-R (Compact Disk Recorder) Является записываемым диском емкостью 650 Мбайт. На них отражающий слой выполнен из тончайшей золотой пленки. Меду этим слоем и основой расположен регистрирующий слой из органики, темнеющей при нагревании. При записи лазерный луч нагревает выбранные точки слоя , которые темнеют и перестают пропускать свет к отражающему слою, образуя участки аналогичные впадинам. Накопители CD-R из-за сильного удешевления распространяются все больше и больше. CD-RW – Compact Disk ReWritable Они позволяют запись и перезапись информации. Такой дисковод позволяет записывать и читать диски CD-R, читать диски CD-ROM, то есть в определенном смысле является универсальным. DVD ( Digital Versatile Disk) – универсальный цифровой диск Имеет такие же габариты как и обычный компакт-диск. Похож и принцип работы. Вмещает много информации от 4.7 до 17 Гбайт. Чаще всего 101
© Ольга Викторовна Токмакова, 2006 год используется для хранения информации : или фильмов ( DVD-Video или DVD) или огромных баз данных (DVD-ROM, DVD-R). Разброс емкостей возникает так: в отличие от СД-рома эти диски записываются с двух сторон. ! С каждой стороны могут быть нанесены 1 или 2 слоя информации. Т.О., односторонние однослойные диски имеют объем 4.7 Гбайт (их часто и называют DVD5, т.е. диски емкостью 5 Гбайт). ,двусторонние однослойные – 9.4 Гбайт (DVD10), односторонние двуслойные 8.5 Гбайт (DVD9), двусторонние двуслойные 17 Гбайт (DVD18). Тип выбирается в зависимости от объема данных. Основным параметром дисководов CD-ROM является скорость чтения данных. Она измеряется в кратных долях. За единицу измерения принята скорость чтения в первых серийных образцах, составляющая 150 Кбайт /сек, поэтому дисковод с удвоенной скоростью чтения обеспечивает производительность 300 Кбайт /с, с учетверенной – 600 Кбайт /сек. В целях сохранности лазерные диски нужно беречь от царапин и от загрязнения. 6) Структура поверхности дисков. Поверхность любого диска должна иметь определенную структуру. Магнитные диски. Любой магнитный диск первоначально к работе не готов. Для приведения его в рабочее состояние его н. отформатировать. Т.Е. Нужно создать структуру диска. Для гибкого магнитного диска – это магнитные концентрические дорожки, разделенные на сектора. А у жесткого магнитного диска присутствуют еще и цилиндры, т.е.жесткий диск состоит из нескольких пластин. Сектор – это маленький кусочек поверхности диска (как строка на странице). Сектора объединяются в бОльшие куски – кластеры. Объем диска можно вычислить: он равен количеству дорожек* объем сектора. Чем дальше от центра диска, тем дорожки длиннее. Поэтому плотность записи на внутренних дорожках больше чем на внешних. Количество секторов , емкость сектора , а значит и информационный объем диска зависят от типа дисковода и режима форматирования, от качества самих дисков. Лазерные диски. Они имеют только 1 физическую дорожку в форме спирали, идущей от наружного диаметра к внутреннему. ПРОВЕРОЧНАЯ работа Диски + 102
© Ольга Викторовна Токмакова, 2006 год 7) Инновации в устройствах внешней памяти Все рассмотренные диски имеют -. Но уже есть диски, лишенные этих -. Это магнитооптические диски (Blu Ray) Они состоят из толстой стеклянной подложки, на которую наносится светоотражающая пленка и ферромагнитный сплав. У таких дисков диаметром 3.5 дюйма информационная емкость одной стороны достигает 128-230 Мбайт, при диаметре 5.25 дюймов – 600 Мбайт, с двух сторон – 1.3 Гбайт. Время доступа к данным - 20-40 мс. Скорость обмена данными – 1-5 Мбайт и увеличивается за счет встроенной кэш-памяти. Такие диски выгодны для хранения больших объемов информации, хотя дисководы на них стоят дороже остальные, но большой объем дисков все компенсирует. Диск на 25 Гиг однослойный стоит где-то 250 руб , но дорого к ним стоит привод (чтобы читать-писать) 635 долларов (17 550 руб). Толщина диска полсм.
РЕШЕНИЕ задач 1. Двусторонняя дискета имеет объем 800 Кбайт. Сколько дорожек на ее одной стороне, если в каждой дорожке 20 секторов по 0,5 Кбайт. 800:2=400 Кбайт-объем дискеты 20*0,5 =10 Кбайт – объем всех секторов 400:10=40 – дорожек. Носи тель
применен ие
разме р
Диск ета
Для 3,5 переноса дюйм информац а ии с комп-а на комп
Винч естер
Для хранения огромных объемов
2.2, 2.3, 3.14, 5.25
Инфо Скорость рмаци чтения/записи онная информации емкос ть 1,44 Низкая, Мбайт несколько а килобайт в сек, среднее время доступа 250 мс
До сотен Гбайт
Скорость его вращения от 3600 до 10000 об/мин, ср.время
103
Надежность хранения информации
Запрещено: - дотрагиваться до записывающей поверхности, - писать на этикетке дискеты карандашом или шариковой ручкой, - сгибать дискету, - перегревать дискету (солнце, батарея), - подвергать воздействию магнитных полей, Нужно беречь от ударов, резких изменений пространственной ориентации в процессе работы
© Ольга Викторовна Токмакова, 2006 год информац дюйм ии ов
CD-R
однократ нозаписы ваемый
4,75 и 3, 15 дюйм ов
СDRW
многокра тнозапис ываемый
4,75 и 3, 15 дюйм ов
CDROM
На них 4,75 выпускаю дюйм т ов мультиме дийные программ ы
DVD
Для 4,75 хранения дюйм фильмов ов и сверхболь ших баз данных
поиска данных – 9 мс, ср.скорость передачи данных – до 60 Мбайт/сек До 52х -
700 мегаб айт 195 Мб 700 До 12х мегаб айт, 210 Мб 700 Доступ к Мбайт данным осуществляется быстрее, чем на дискетах, но медленнее, чем на жестких дисках (от 150 до 400 мс при скорости вращения до 4500 об/сек); Скорость передачи данных – не менее 150 Кбайт и доходит до 1,2 Мбайта/с. Производительн ость – 32х-48х От 4,7 до 17 Гбайт
7. Устройства внутренней памяти
104
-
Просты и удобны в работе, имеют низкую удельную стоимость хранения данных, практически не изнашиваются, не могут быть поражены вирусами, с них невозможно случайно стереть информацию
-
© Ольга Викторовна Токмакова, 2006 год Так как компьютер моделирует все информационные функции человека, то он должен иметь память для хранения информации. Память в компьютере используется нескольких типов, отличающихся по своему функциональному назначению и, как следствие, способами хранения информации, и, кроме того, конструктивно! Память компьютера по отношению к процессору является внутренней. Она является обязательной частью любого компьютера и располагается на материнской плате. Она в свою очередь подразделяется на типы. Оперативная память Оперативная память (RAM – Random Access Memory) – это массив кристаллических ячеек, способных хранить данные. В ячейку можно записать только 0 или 1, т.е. 1 бит информации. Такая ячейка так и называется «бит». Это наименьшая частица памяти компьютера и в связи с этим память имеет битовую структуру, которая определяет первое свойство оперативной памяти – дискретность. Бит слишком маленькая единица информации, поэтому биты объединили в группы по 8 – байты. В одном байте памяти можно сохранить 1 байт информации. У каждого байта в памяти свой порядковый номер – адрес. Адресность – второе свойство оперативной памяти. Нумерация начинается с нуля. Память можно представить в виде многоквартирного дома, в котором квартиры – это байты, а номер квартиры – адрес. Чтобы найти нужную информацию, нужно знать адрес байта, в котором она хранится. Именно так поступает процессор, когда обращается за данными и программами к оперативной памяти. Мы можем в любое время прийти к кому-нибудь в гости, если знаем адрес. Аналогично доступ к любой ячейке памяти осуществляется в любой момент времени. Поэтому оперативную память называют памятью с произвольным доступом. Группу из нескольких байтов, которые процессор может обработать как единое целое, называют машинным словом. Длина машинного слова бывает различной – 8, 16, 32 бита и т.д. Адрес машинного слова равен адресу младшего байта, входящего в это слово. Как узнать размер оперативной памяти (т.е. насколько большим является дом, сколько в нем квартир)? Объем оперативной памяти зависит от количества разрядов, отведенных под адрес. В настоящее время принята 32-разрядная адресация, а это означает, что всего независимых адресов может быть 232, то есть 4 294 967 296 байт. Но на самом деле размер поля оперативной памяти определяется несколько подругому, и обычно составляет несколько сот мегабайт. Объем оперативной 105
© Ольга Викторовна Токмакова, 2006 год памяти растет с каждым новым поколением компьютера. В современных компьютерах ее размер достигает 512 мегабайт и выше. Рассмотрим физический принцип действия оперативной памяти. Этот принцип позволяет рассмотреть оперативную память двух видов: динамическую (DRAM) и статическую (SRAM). Оба вида запоминающих микросхем успешно конкурируют между собой, обе не идеальны. Статическая память проще в эксплуатации, так как не требует регенерации и обладает хорошим быстодействием. НО! У нее меньше информационный объем, больше стоимость (изготовление конденсатора проще, чем триггерной схемы, и требует на кремниевой пластине меньше места) и она сильнее нагревается при работе. На практике, как правило, выбор микросхем для построения ОЗУ решается в пользу динамической памяти. И все же быстродействующая статическая память в современном компьютере тоже обязательно есть – кэшпамять. Физическое устройство оперативной памяти определяет ее третье свойство – энергозависимость. И конденсаторы, и триггеры хранят информацию, закодированную с помощью электрического сигнала. Следовательно, его отсутствие ведет к потере информации! Это значит, что ОЗУ используется для временного хранения данных и программ, так как когда машина выключается (пропадает источник электрических сигналов), все, что находится в оперативной памяти, пропадает.
Статич еская память
Динам ическа
Что является ячейкой Микроконде нсатор, способный накапливать разряд на своих обкладках
Триггер, хранящий
Характеристики недостатки преимущества 1. Заряды ячеек рассеиваются в пространстве и их все время приходится подзаряжать, чтобы не утратить данные. Процесс подзарядки называется регенерацией и осуществляется несколько десятков раз в секунду. Пи этом происходит непроизвольный расход ресурсов вычислительной системы. 2. Запись данных происходит медленно Технологически сложнее и дороже
106
Это экономически доступный вид памяти и поэтому наиболее распространенн ый
Более быстрая
Где используется В основной оперативной памяти
В кэш-памяти
© Ольга Викторовна Токмакова, 2006 год я память
состояние вкл/выкл
Оперативную память в компьютере размещают на стандартных панельках, называемых модулями. Модули вставляются в соответствующие разъемы на материнской плате. Такая конструкция облегчает процесс замены или наращивания памяти. Количество модулей зависит от нужного вам объема ОЗУ. Важнейшей характеристикой модулей ОЗУ являетс их быстродействие, то есть у памяти есть своя скорость работы. У современных модулей скорость доступа к информации равна порядка 10 нс (1 нс=10-9с). Важнейшей характеристикой компьютера является скорость обработки информации, которая зависит от быстродействия процессора. Но если быстрый процессор будет работать с медленной памятью небольшого объема, то большую часть своего времени он будет простаивать. Поэтому объем оперативной памяти и скорость ее работы также очень влияет на работоспособность компьютерной системы. Постоянная память. Проблема: «Попытайтесь представить себе, что происходит в момент включения компьютера. Где процессор берет свои первые команды?» Наводящие вопросы: может ли процессор брать свои первые команды из оперативной памяти? Почему? Может ли процессор брать свои первые команды из внешней памяти? Почему? Какой должна быть память, чтобы процессор мог обратиться к ней в момент старта? … Вывод: первую свою команду процессор находит в памяти, которая в отличие от магнитных и оптических дисков является внутренней и, в отличие от ОЗУ, энергозависимой, то есть хранит информацию постоянно, даже после выключения компьютера. Такая память действительно существует и называется ПЗУ (ROM – Read Only Memory, память только для чтения) – постоянное запоминающее устройство. Микросхема ПЗУ устанавливается так, что ее память занимает нужные адреса. Поэтому процессор, когда начинает свою работу, попадает в
107
© Ольга Викторовна Токмакова, 2006 год постоянную память, заготовленную для него заранее. Из ПЗУ можно только читать информацию. В постоянной памяти хранятся программы, необходимые для запуска компьютера и «зашитые » в нее при изготовлении. Основное назначение этих программ состоит в том, чтобы проверить состав и работоспособность компьютерной системы сразу после включения. В ПЗУ должна храниться информация об устройстве компьютера, то есть параметры и характеристики монитора, жесткого диска, мыши и т.д. для того, чтобы при включении компьютера, прежде чем начать работу, можно было убедиться, что они все работоспособны. - Как вы считаете, знали ли изготовители ПЗУ параметры вашего жесткого диска или монитора? - Вы сменили монитор, как сообщить о его параметрах ПЗУ, если вы сами не можете изменить в нем информацию? - Можно ли записать эту информацию в ОЗУ? Вывод: необходима такая память, в которую можно было бы записывать информацию (в отличие от ПЗУ) и которая бы была энергонезависимой (в отличие от ОЗУ). Такая память есть. Называется она CMOS. CMOS-память. Это память с невысоким быстродействием и минимальным энергопотреблением от батарейки, расположенной на материнской плате. Заряда батарейки хватает на несколько лет. Эта память используется для хранения информации о составе оборудования компьютера и о режимах его работы. Наличие этого вида памяти позволяет отслеживать время и календарь, даже если компьютер выключен. Таким образом, программы, записанные в ПЗУ, считывают информацию о составе оборудования компьютера из микросхемы CMOS, после чего выполняют тестирование устройств ПК. Flash – память. Еще один вид энергонезависимой памяти, который в отличие от ПЗУ, допускает многократную перезапись своего содержимого с дискеты – Flash Memory. Здесь, как и в ПЗУ, хранятся программы для запуска компьютера, завершения его работы, программы управлении работой устройств вводавывода и внешней памяти. В таблице поставьте знак +, если операция возможна и –, если невозможна. память чтение запись Хранение ОЗУ ПЗУ 108
© Ольга Викторовна Токмакова, 2006 год CMOS Flash
109
© Ольга Викторовна Токмакова, 2006 год Лекция 7. Программные средства реализации информационных процессов. Содержание. Программа. Программное обеспечение и его классификация. Операционная система: функции и состав операционной системы, Windows и этапы ее загрузки. Файловая система: основные понятия и термины, файлы. Управление объектами в Windows: объекты Windows, элементы управления окнами, их назначение, элементы управления рабочего стола. Операции с файлами и папками: создание файлов и папок с помощью Проводника, операции с файлами и папками. Стандартные приложения Windows: назначение стандартных приложений, Блокнот, Paint, WordPad. Служебное программное обеспечение: утилиты, сведения о системе, дефрагментация диска, проверка диска. Мультимедиа. Установка и удаление приложений. Архивация данных: сжатие данных, методы сжатия данных. 1. Программа Компьютер – устройство, не способное мыслить самостоятельно (по крайней мере, до сих пор), как человек. Чтобы он мог работать с информацией – получать, хранить, передавать, обрабатывать – его нужно научить выполнять все эти действия. Научить, значит, - построить работу компьютера по инструкции, в которой четко расписано, что нужно делать и в какой последовательности. Такая инструкция и есть, собственно, программа. Компьютер без программ – бесполезный хлам, груда железа. И только программы делают его нашим помощником. Программа должна быть написана на языке, понятном компьютеру. Такой язык существует – машинный язык. Слова этого языка – команды – есть последовательность нулей и единиц. Самые первые программы разрабатывались непосредственно на машинном языке и не все люди могли заниматься их разработкой. В 60-е гг началась разработка языков программирования высокого уровня, которые позволили существенно облегчить работу программистов. Изначально компьютер работал как калькулятор. В 70-е гг его научили работать в качестве печатной машинки. В 80-е гг появились первые компьютеры, способные работать с графикой. Сейчас компьютерная графика – одна из самых интересных областей информационных технологий. В 90-е гг компьютеры получили возможность обрабатывать звуковую информацию… Итак, программа – это последовательность команд, которую выполняет компьютер в процессе работы с информацией самого разного характера. Как создаются программы?
110
© Ольга Викторовна Токмакова, 2006 год Человек сначала продумывает , как должен действовать компьютер для достижения желаемого результата, и представляет предполагаемый план действий в виде команд. Далее эти команды преобразовывают в форму, понятную компьютеру. Этот процесс и есть программирование, а люди, осуществляющие его- программисты. ПРОГРАММИРОВАНИЕ – деятельность человека по созданию программы. Все программы хранятся во внешней и постоянной памяти компьютера. Но для того, чтобы компьютер мог выполнить ту или иную обработку информации по соответствующей программе, она должна быть помещена в оперативную память. ПОЧЕМУ? Программ очень много. Совокупность всех программ , обеспечивающих нормальное функционирование компьютера и решение с его помощью разнообразных задач, образует его программное обеспечение. Итак, для обработки информации на компьютере необходимо иметь не только аппаратное обеспечение – устройства компьютерной систему – hardware - , но и программное обеспечение – software, которое наделяет компьютер мыслями и интеллектом… Классификация программного обеспечения Все многообразие программ, составляющих программное обеспечение компьютера можно разделить на группы, виды и классы по различных признакам. Выделяют три основные группы:
Программное обеспечение
Системное программное
Инструментарий программирования
обеспечение
Прикладное программное обеспечение
111
© Ольга Викторовна Токмакова, 2006 год
Системное ПО – основное ПО, неотъемлемая часть компьютера. Без него невозможно взаимодействовать ни с одним устройством ЭВМ. Системное ПО руководит слаженной работой всех элементов компьютерной системы, как на аппаратном уровне, так и на программном. Ни с одним из других видов ПО вы не сможете работать, если в вашем компьютере отсутствуют некоторые системные программы. Именно они заставляют компьютер действовать, дышать, не спать… Главной частью системного ПО является операционная систем которая обеспечивает управление всеми аппаратными средствами компьютера, позволяя отделить остальные классы программ от непосредственного взаимодействия с аппаратурой. К системным относятся также операционные оболочки (специальные программы, обеспечивающие удобный пользовательский интерфейс и облегчающие доступ к информации, находящейся на внешних носителях). Операционные системы, в т.ч. и обеспечивающие работу сетей, и операционные оболочки образуют базовое программное обеспечение – минимальный набор программных средств , обеспечивающих работу компьютера. Расширением базового ПО компьютера является набор сервисных программ (утилит) , устанавливающихся дополнительно и служащих для выполнения вспомогательных операций обработки данных или обслуживания компьютера. К сервисным относятся: Программы диагностики работоспособности компьютера; Антивирусы; Программы обслуживании дисков; Архиваторы; Программы обслуживания сети и др. Прикладное ПО – предназначено для выполнения конкретных программ пользователя. Это те программы, которые превращают компьютер в пишущую машинку для работы с текстами, в калькулятор для вычисления, в рабочее место дизайнера, художника, монтажера, средство общения с другими людьми на расстоянии и т.д. Инструментарий программирования – это средства, предназначенные для создания ПО, то есть того же системного и прикладного ПО. Его составляют разнообразные языки и среды программирования, такие, как Бейсик, С, С++, Делфи и пр. РАБОТА С РАЗДАТОЧНОЙ ТАБЛИЦЕЙ 112
© Ольга Викторовна Токмакова, 2006 год Можно все ПО классифицировать и по другому основанию – по длительности нахождения в оперативной памяти компьютера. С этой точки зрения различаются резидентные (на протяжении всей работы компьютера находятся в оперативной памяти; н-р: операционная система, антивирусная программа) и нерезидентные (по окончанию своей работы исключаются из ОЗУ; к ним относятся, н-р, прикладные программы). КАКОЕ ПО НАИБОЛЕЕ ДРУЖЕСТВЕННО ПОЛЬЗОВАТЕЛЮ?
Прикладное ПО Инструментарий программирования Системное ПО Аппаратное обеспечение
2. Функции и состав операционной системы, Windows и этапы ее загрузки Основной системной программой, без которой невозможно комфортной общение с компьютером, является программа, которая называется «Операционная система». ОС – комплекс системных программ, обеспечивающий совместное функционирование всех устройств компа и поддерживающий работу всех его программ. Операционная система является базовой и необходимой составляющей программного обеспечения компьютера (software). Операционная система обеспечивает управление всеми аппаратными компонентами компьютера (hardware). Другими словами, операционная система обеспечивает 113
© Ольга Викторовна Токмакова, 2006 год функционирование и взаимосвязь всех компонентов компьютера, а также предоставляет пользователю доступ к его аппаратным возможностям. К системному блоку компьютера подключаются через специальные согласующие платы (контроллеры) периферийные устройства (дисковод, принтер и т. д.). Каждое периферийное устройство обрабатывает информацию по-разному и с различной скоростью, поэтому необходимо программно согласовать их работу с работой процессора. Для этого в составе операционной системы имеются специальные программы — драйверы устройств. Каждому устройству соответствует свой драйвер. Процесс работы компьютера в определенном смысле сводится к обмену файлами между периферийными устройствами, т. е. необходимо уметь управлять файловой системой. Ядром операционной системы является программа, которая обеспечивает управление файловой системой. Пользователь общается с компьютером через устройства ввода информации (клавиатура, мышь). После ввода команды операционной системы специальная программа, которая называется командный процессор, расшифровывает команды и исполняет их. Процесс общения пользователя с компьютером должен быть удобным. В состав современных операционных систем обязательно входят модули, создающие графический интерфейс. Первые Вм работали без ОС. Программы для них, написанные на машинном языке, содержали ссылки на конкретные адреса ячеек внутренней памяти, хранящих нужную информацию, а загрузка из внешней памяти требовала точного указания позиции на внешнем носителе, где находится загружаемая прога или данные. Все это требовало знания архитектуры конкретного компа, так как и человек, и составляемые им проги обращались непосредственно к аппаратуре. Все это усложняло работу и ограничивало доступ к вычислительной технике – в таких условиях с компами могли работать только специалисты. Появление ОС-м которые стали неотъемлемой частью компа и обеспечивали управление всеми его аппаратными компонентами, позволило отделить остальные классы программ и человека от непосредственного взаимодействия с аппаратурой. ОС скрывает от пользователя сложные подробности взаимодействия с устройствами компа и освобождает его от изучения машинного языка. ОС хранится на жестком диске, а также может храниться на специальной системной дискете, компакт-диске… Настоящая ОС должна: 114
© Ольга Викторовна Токмакова, 2006 год Быть общепризнанной и использоваться Как стандартная система на многих компьютерах работать со всеми устройствами компьютера, в т.ч. и старыми обеспечивать запуск самых разных программ, написанных разными людьми в разное время предоставлять средства для проверки, Настройке, обслуживания компьютерной системы. Основными функциями ОС являются: 1) Управление процессором путем передачи управления программам. 2) Обработка прерываний, синхронизация доступа к ресурсам. 3) Управление памятью. 4) Управление устройствами ввода-вывода. 5) Управление инициализацией программ, межпрограммные связи. 6) Управление данными на долговременных носителях путем поддержки файловой системы. Состав ОС ОС является достаточно сложно организованной прогой, более уместно говорить о ней как о целом комплексе прог. В состав ее входят след модули (с.242-таблица 2 столбик): 1. Управление файловой системой 2. Командный процессор 3. Драйверы устройств 4. Графический интерфейс 5. Сервисные проги 6. Справочная система Операционная система управляет компьютером, запускает программы, обеспечивает защиту данных. Любая прикладная программа может работать только под управлением ОС. Наиболее популярными программами ОС являются: 1) MS – DOS 2) WINDOWS 3) OS/2 4) UNIX (LINUX) Кратко о MS-Doc – самой первой операционной системе. Дос строится из отдельных модулей. Удобно при разработке. Основные блоки Доса 115
© Ольга Викторовна Токмакова, 2006 год 1. Ядро (БИОС+модуль начальной загрузки+системные модули ДОСа). Функции ядра ДОСа: обеспечение начальной загрузки, тестирование аппаратуры, контроль ее состояния, обеспечение исполнения прог, анализ и обработка ошибок, оптимизация вычислительного процесса 2. Драйверы внешних устройств. Каждое внешнее устройство имеет драйвер. Драйверы основных стандартных устройств (клава, монитор, дисковод, др.) включены в базовую систему ввода/вывода (БИОС) и защиты в ПЗУ. Драйверы обеспечивают и работу новых устройств. При начальной загрузке ОС они автоматически загружаются в оперативную память , для этого их имена должны быть перечислены в спец файле config.sys 3. Командный процессор – прога для диалога с пользователем. Хранится на системном диске в файле со стандартным именем command.com Диалог ведется на командном языке. Набор команд может быть расширен. Имя любого исполняемого файла с расширением .com или .exe становится новой командой командного языка. Такие команды можно назвать внешними командами ДОСа. Для облегчения диалога с пользователем используются операционные оболочки (их можно назвать диалоговыми): Norton Commander, Far manager, Dos Navigator и др.: Наглядно представляют диалоги и информацию о файлах С их помощью удобно перемещаться по файловой системе и находить путь к нужному файлу Позволяют производить нужные операции с файлами Можно осуществлять замену набора команды в командной строке выбором ее из меню с помощью функциональных клавиш. Следующим шагом в развитии и совершенствовании пользовательского интерфейса стали графические операционные оболочки, ярким примером которых является разновидности Windows. Они работают на основе ДОСа и в совокупности с ней образуют полноценную ОС. ОС Windows Это название от того, что основным средством общения с пользователем в ней являются разные типы окон (window) Проги, которые работают по ее управление наз-ся приложениями. Приложение – прога, работающая под рук-ом Windows. Некоторые принципы ОС Windows 1. Умеет работать со всеми современными и менее используемыми устройствами и прогами. Принцип «Plug and play» (подключи и используй) 116
© Ольга Викторовна Токмакова, 2006 год 2. Унифицированный пользовательский интерфейс (в разных прогах сохраняются одинаковые принципы управления их работой, предлагаются несколько способов работы, выбирай на вкус) 3. Разобравшись, как работает одно приложение, легко начинают работать и с другими (универсальность) 4. Конгруэнтность изображений принтера и монитора 5. Многозадачность Этапы загрузки ОС Включение или запуск компьютера– самый ответственный момент его работы. В первую очередь загружается ОС в оперативную память. Но сделать это процессор может только тогда, когда получит соответствующие команды. Где берутся эти команды, если при включении оперативная память еще пуста? Где берется самая первая стартовая команда? 1. Самую первую команду компьютер получает от ПЗУ – микросхемы, расположенной на материнке, которая питается от батарейки, потому записанные на ней проги не стираются при выключении компа. Именно к ПЗУ обращается процессор в тот момент, когда комп включается и делает это автоматически. В ПЗУ находится БИОС (Basic Input|Output System) . Работа БИОСа отображается на экране белыми бегущими строками. В этот момент комп проверяет свои устройства – оперативку, жесткий диск, дисководы, наличие клавиатуры и др. Если что-то не работает, то Биос докладывает о неисправности/отсутствии чего-либо. Иначе заканчивает свою работу и дает команду загрузить с жесткого диска в оперативную память специальную программу. 2. Эта программа находится в специальном загрузочном секторе диска и называется Master Boot (загрузчик ОС). Она очень маленькая и ее основное предназначение – считать в ОЗУ операционную систему с системного диска. Если системные диски отсутствуют в компе, то появляется : Non system disk и загрузка ОС прекращается, компьютер становится неработоспособным. ЧТО в этом случае надо делать? 3. После окончания загрузки ОС управление передается командному процессору и на экране появляется графический интерфейс. Отныне все, что мы делаем с компьютером, происходит под управлением ОС. 3. Файловая система Словарь: − Файл – место на диске (группа байтов), у которого есть имя − Файловая система – особый способ организации информации на жестком диске компа 117
© Ольга Викторовна Токмакова, 2006 год − Логический диск – это физический , реальный диск или часть физического именованного диска − Имя файла – последовательность символов, позволяющая пользователю ориентироваться в файловой системе и идентифицировать файлы − Тип (расширение)файла – последовательность символов, позволяющая комп сопоставлять программное обеспечение содержимому файла − Папка (каталог) – совокупность файлов одной тематики − Путь к файлу – последовательность папок, начиная от самой верхней и заканчивая той, в которой непосредственно храниться файл − Полное имя файла – имя логического диска + путь к файлу + имя файла Файлы Для операционной системы важно различать , что хранится внутри файла. Человек визуально различает в книге тексты, рисунки, графики, таблицы, инструкции, правила…На диске все виды инф-ии представлены совершенно одинаково, в виде последовательности нулей и единиц (двоичный код). Что, нр, может означать следующее 0100000000111110000 ? Может это закодированная дата и время запуска первого спутника земли или музыкальная мелодия? Или слово ФОРМАТ в международном коде? Так вот, чтобы операционка различала, что внутри файла (глаз-то у нее нет!) , кроме имени, должен быть специальным образом присваивающейся формат, указывающий на тип хранимой в файле информации. На содержимое файла указывает расширение, записываемое после имени файла и отделяемое от него точкой (см. табл. В раздаточном материале).
118
© Ольга Викторовна Токмакова, 2006 год
ИТАК!!! 1. вся информация на дисках хранится в файлах 2. На содержимое файла указывает расширение 3. Файл открывается той программой, в которой был создан, или универсальной программой. 4. Файлы со схожим или одинаковым назначением можно складывать в каталоги (папки). 5. Каталоги(папки) также можно объединять в каталоги (папки). Таким образом, на диске формируется упорядоченная структура файлов и каталогов, позволяющая быстро искать нужную информацию. Такая структура называется файловой системой и выглядит примерно так, как в вашем раздаточном материале. Управление объектами в Windows: объекты Windows, элементы управления окнами, их назначение, элементы управления рабочего стола. Объекты и их свойства. Операционная система Windows – объектно-ориентированная. Значит, она способна работать с объектами. Объект – файлы, папки, диски, окна… Любой объект представлен наглядно, у него есть значок! Все объекты обладают рядом свойств. Нет объектов без свойств и наоборот. Свойства каждого объекта уникальны. Узнать свойства объекта можно так:
119
© Ольга Викторовна Токмакова, 2006 год 1 способ: навести стрелку мыши на объект и появится всплывающая подсказка, в которой свойства перечислены. 2 способ: вызвать контексное меню и выбрать в нем команду СВОЙСТВА… Элементы управления Рабочего стола предназначены для следующего: 1. Кнопка Пуск – открывает главное меню 2. главное меню – главный элемент управления в Windows 3. Вложенное меню (черный треугольник) 4. панель задач – элемент управления, отражающий запущенные приложения или открытые папки 5. кнопки открытых окон и приложений – щелкая левой кнопкой мыши на кнопках открытых окон и приложений можно легко переключаться между приложениями и переходить из одного окна в другое. 6. Рабочая область – на ней находятся значки приложений, папок, документов и ярлыков. 7. Панель индикации – содержит мелкие значки некоторых индикаторов, которыми чаще всего пользуются, н-р индикатор системных часов, индикатор Регулятора громкости, индикатор калькулятора, индикатор батарейки, индикатор сети и пр. Окно папки Предназначено для отображения на экране объектов папки. Открывается папка двойным щелчком мыши. Открытие вложенных папок производится аналогично. Путешествие по содержимому дисков называется навигацией по файловой системе. Производить навигацию можно и с помощью программы Проводник. Структура окна папки Строка заголовка, Три кнопки (свернуть, развернуть, закрыть), строка меню, панель инструментов, строка адреса (путь к папке), рабочая область окна, информационная панель, рамка окна.
120
© Ольга Викторовна Токмакова, 2006 год
Окно приложения На таких окнах большое количество Панелей инструментов., в рабочей области находится обрабатываемый документ, больше и команд в строке меню. Диалоговые окна Предназначены для запроса у пользователя некоторых параметров, относящихся, н-р, к настройкам программных или аппаратных средств, или к специфике выполнения данной операции. Открываются диалоговые окна автоматически. Структура таких окон похожа на окна папок и приложений унификация. Операции с файлами и папками: создание файлов и папок с помощью Проводника, операции с файлами и папками. Предлагаю найти материал самостоятельно и изучить его. Стандартные приложения Windows: назначение стандартных приложений, Блокнот, Paint, WordPad.
121
© Ольга Викторовна Токмакова, 2006 год Служебное программное обеспечение: утилиты, сведения о системе, дефрагментация диска, проверка диска. Служебные приложения – утилиты – особый класс программ, предназначенный для обслуживания компа и оптимизации его работы. Своевременное обслуживание повышает надежность комп-ра , а оптимизация – его быстродействие. Доступ к служебным приложениям можно получить через меню Пуск. Служебные программы – смотрим в табл. В раздаточном материале. Подробнее о некоторых приложениях. Сведения о системе – текущие сведения об операционной системе, установленной на компьютере.
Дефрагментация (оптимизация) диска
122
© Ольга Викторовна Токмакова, 2006 год Эта утилита производит перезапись файлов в начало диска, чтобы каждый файл занимал непрерывную последовательность. Влияет на скорость компьютера. Проверка диска. Позволяет обнаружить на диске и исправить физические дефекты и логические ошибки. Она вынесена из служебных приложений в свойства дисков и называется Проверка диска. B-bad-плохой так отмечаются сбойные места на диске. На это место в дальнейшем ничего не записывают, а то, что там было переносят в другое место. 4. Мультимедиа. Предлагаю изучить этот материал самостоятельно 5. Установка и удаление приложений. Установка • Инсталляция ПО – это процесс формирования приложения из исходного дистрибутивного комплекта • При установке новых приложений устанавливаются только те программные ресурсы, которые нужны для работы конкретного приложения При неправильной установке может произойти: • подмена ресурсов • Расширение общих ресурсов • Утрата общих ресурсов • «Замусоривание» операционной системы Правила установки 1. Установка должна происходить под руководством самой … 2. Нельзя расставаться с дистрибутивом… 3. Установку устаревших версий нужно производить до установки более «…» 4. Для контроля связей между файлами во время установки надо использовать мониторы установки 5. Перед установкой следует закрыть все… 6. Компоненты не удаленные автоматически надо удалить … 6. Архивация данных: сжатие данных, методы сжатия данных Сжатие данных 123
© Ольга Викторовна Токмакова, 2006 год длительного хранения данных на разных
1. Для информации 2. Для передачи данных по каналам связи
носителях
Методы сжатия данных 1. С потерей информации. Для типов данных, для которых формальная утрата части содержания не приводит к потери потребительских свойств (Видео (формат сжатия MPG,Музыка (MP3),Звукозапись (MP3),Рисунки (JPG) 2. Обратимый (без потери информации). Применяется к текстам, базам данных и ко всем выше перечисленным типам данных. Рисунки (GIF, TIF, PCX), видео (AVI), любые типы данных (ZIP, ARJ, RAR и др.)
• При сжатии данных получаются файлы особого типа, называемые архивами • Архив – файл, содержащий в себе файл, несколько файлов или папки в сжатом виде • Расширениями файлов, являющихся архивами могут быть ZIP, ARJ, RAR и др. • Тип расширения, как правило, зависит от программы-архиватора, в которой они были созданы (WinRar, WinZip, WinArj)
Сводная таблица к лекции «Программные средства реализации информационных процессов» Программы Операционные системы Программыоболочки Программы диагностики Антивирусные программы Программы обслуживания
Пояснение Примеры Системное программное обеспечение Комплекс программ, распределяющих MS-DOS, Windows, Unix ресурсы компьютерной системы и организующих работу других программ Программы, обеспечивающие более Norton Commander, Windows комфортное общение пользователя с Commander, FAR командами ОС Проверяют работу основных устройств компьютера Программы обнаружения компьютерных DrWeb, Антивирус вирусов и их уничтожения Касперского NOD32, AIDSTEST Программы проверки целостности логической Дефрагментатор, проверка и физической структуры дисков, диска
124
© Ольга Викторовна Токмакова, 2006 год дисков Архиваторы
Текстовые процессоры Табличные процессоры СУБД Компьютерная графика и анимация
Средства создания презентаций Cредства коммуникаций
Cистемы автоматизированного проектирования Средства автоматизации производства Настольные издательские системы Обучающие программы Игры Трансляторы
1. 2. 3. 4.
дефрагментация Программы упаковки файлов и группы файлов для уменьшения занимаемого ими места на диске Прикладное программное обеспечение Программы для создания, редактирования и оформления текстовых документов Программы, позволяющие выполнять операции над данными, представленными в табличной форме Средства ввода, поиска, размещения и выдачи больших массивов данных Средства создания неподвижных и движущихся изображений
Программы создания и показа слайд-шоу Программы для работы в компьютерной сети
Средства проектирования электронных схем, машин, механизмов
WinRar, PKZIP, ARJ
Microsoft Word Lexicon Microsoft Excel Бухгалтерские программы 1C: Бухгалтерия Microsoft ACCESS, FoxPro Графические редакторы Paint, Adobe Photoshop, CorelDraw, Adobe Image Ready, Adobe Illustrator Microsoft PowerPoint Internet Explorer Opera, FireFox (бывший Mozilla) WinGate, Outlook Express The Bat, IСQ (QIP, Miranda, Trillian), Skype, GoogleTalk КОМПАС AutoCad
Программы, позволяющие использовать компьютер в производственном процессе Программы компьютерной верстки и подготовки изданий к тиражированию Помогают процессу обучения
Клавиатурные тренажеры Тесты, Программы построения объектов и процессов Программы для организации досуга и Стратегии, Лабиринты, обучения Логика Инструментальное программное обеспечение Переводчики программ языков программирования в машинные коды Средства поиска и исправления ошибок Объектно-ориентированные языки Visual Basic программирования Delphi
Отладчики Интегрированные среды разработки приложений Языки Средства создания программ для компьютера Basic, Pascal, C++ программирования Раздаточный материал для иллюстрации наиболее важных моментов лекции Файл – место на диске, у которого есть имя. Файловая система – особый способ организации информации на жестком диске компьютера. Логический диск – это физический диск, реальный диск или часть физического диска, которому присвоено имя. Имя файла – последовательность символов, позволяющая пользователю ориентироваться в файловой системе и идентифицировать файлы.
125
© Ольга Викторовна Токмакова, 2006 год 5.
Тип (расширение) файла – последовательность символов, позволяющая компьютеру сопоставлять программное обеспечение содержимому файла. 6. Папка (каталог) – совокупность файлов по одной тематике. 7. Путь к файлу – последовательность папок, начиная от самой верхней и заканчивая той, в которой непосредственно хранится файл. 8. Полное имя файла – имя логического диска + путь к файлу + имя файла. Тип Doc Txt Bmp, gif Avi Wav Bak
Значение или Файл содержит текстовую информацию jpg, Файл содержит графическую информацию Файл содержит видео информацию Файл содержит звуковую информацию Файл-копия
Html, htm Arj, rar, zip Exe, com
Файл содержит Web-страницу Файл содержит архив (сжатую информацию) Файл содержит программу – исполняемый файл
Примеры приложений, открывающие файлы с данными расширениями MS Word, WordPad Adobe PhotoShop, AcdSee WinAmp, Windows Media Проигрыватель WinAmp, Windows Media Проигрыватель Открывается программой, в которой был создан оригинал Internet Explorer WinRar, WinZip Открывает саму программу
На диске формируется упорядоченная структура файлов и каталогов, которая позволяет быстро находить нужную информацию. Это и есть файловая система. В корневом каталоге находятся вложенные каталоги. Корневой эталон
Каталог 1
Каталог 2
Каталог 3
Файл_1 Каталог_1.1
Каталог_3.1
Каталог_1.2
Каталог_3.2
Файл_2
Файл_3
Название Активизация Windows Архивация данных Восстановление системы Дефрагментация диска Мастер переноса файлов и параметров Назначенные задания
Служебные приложения Windows (утилиты) Назначение Активизация Windows для защиты от пиратства Создает архивные копии данных для предотвращения их утраты Позволяет вернуть конфигурацию компьютерной системы в более раннее состояние без потери данных Применяется для дефрагментации данных на диске Помогает перенести файлы и параметры исходного компьютера на новый компьютер Позволяет назначить расписание для автоматического выполнения заданий на компьютере
126
© Ольга Викторовна Токмакова, 2006 год Очистка диска Сведения о системе Таблица символов
Позволяет очистить диск от ненужных файлов Отображает текущие сведения о системе Позволяет вводить отсутствующие на клавиатуре символы
127
© Ольга Викторовна Токмакова, 2006 год Лекция 8. Базы данных информационных систем Содержание. Основные понятия и определения. Структуры данных. Системы управления базами данных. Режимы работы с базами данных. Чтение фрагментов базы данных. 1. Основные понятия и определения. Структуры данных. В науке одним из наиболее сложных для строгого определения является понятие информации. Согласно кибернетическому подходу «Информация – первоначально сообщение данных, сведений, осведомление и т.п. Кибернетика вывела понятие информации за пределы человеческой речи и других форм коммуникации между людьми, связала его с целенаправленными системами любой природы. Информация выступает в трех формах: биологической (биотоки, связи в генетических механизмах), машинной (сигналы в электрических сетях), социальной (движение знаний в общественных системах)». Иными словами, «Информация – связь в любых целенаправленных системах, определяющая их целостность, устойчивость, уровень функционирования». Содержание и особенности информации раскрываются указанием действий, в которых она участвует: хранение, преобразование, передача. В соответствии с этим же подходом «данные – факты и идеи, представленные в формализованном виде, позволяющем передавать или обрабатывать их при помощи некоторого процесса и соответствующих технических устройств». Толковый словарь по информатике: • Информация – совокупность знаний о фактических данных и связях между ними; в вычислительной технике – содержание, присваиваемое данным посредством соглашений, распространяющихся на эти данные; данные, подлежащие вводу в ЭВМ, хранимые в ее памяти, обрабатываемые на ЭВМ и выдаваемые пользователям. • Данные – информация, представленная в виде, пригодном для обработки автоматическими средствами при возможном участии человека. Эти определения составлены с нарушениями логики, так как очевидна ошибка порочного круга. Кроме того, в них используются как базовые такие сложные понятия, как «факты», «идеи», «знания». Мы будем понимать под информацией любые сведения о процессах и явлениях, которые в той или иной форме передаются между объектами материального мира (людьми, животными, растениями, автоматами и пр.). 128
• • • •
• •
© Ольга Викторовна Токмакова, 2006 год Если рассмотреть некоторый объект материального мира, информация о котором представляет интерес, и наблюдателя (в роли которого выступают АИС), способного фиксировать эту информацию в определенной, понятной другим форме, то говорят, что в памяти («сознании») наблюдателя находятся данные, описывающие состояние объекта. Таким образом, данными будем называть формализованную информацию, пригодную для последующей обработки, хранения и передачи средствами автоматизации профессиональной деятельности. Информацию в ЭВМ можно хранить в виде различных данных: числовых, текстовых, визуальных и пр. Для описания одной и той же информации можно предложить разные варианты их состава и структуры. Иными словами, правомерно говорить о моделировании в АИС информации о множестве объектов материального мира совокупностью взаимосвязанных данных, то есть о некоей базе данных. Информационное обеспечение (information support) АИС – совокупность единой системы классификации и кодирования информации; унифицированных систем документации и используемых массивов информации. В качестве главных задач создания информационного обеспечения АИС можно выделить: Определение состава и структуры данных, достаточно «хорошо» описывающих требуемую информацию; Обоснование способов хранения и переработки данных с использованием ЭВМ. Процесс создания информационного обеспечения основывается еще на двух ключевых понятиях – понятии предметной области и понятии банка данных. Под предметной областью (ПО) будем понимать информацию об объектах, процессах и явлениях окружающего мира, которая с точки зрения потенциальных пользователей должна храниться и обрабатываться в информационной системе. В этом определении особое внимание следует обратить на потенциальных потребителей информационных ресурсов АИС. Именно этот аспект обуславливает и структуру, и основные задачи, и вообще целесообразность создания того или иного банка. Банк данных (БнД) – информационная система, включающая в свой состав комплекс специальных методов и средств для поддержания 129
© Ольга Викторовна Токмакова, 2006 год динамической информационной модели с целью обеспечения информационных потребностей пользователей. Очевидно, что БнД может рассматриваться как специальная обеспечивающая подсистема в составе старшей по иерархии АИС. Структура типового БнД, удовлетворяющего предъявляемым требованиям: Банк данных
ВС
БД
ОПО
СУБД
Словарь данных
АБД
Персонал
ТС
• • • • •
ВС – вычислительная система, включающая технические средства (ТС) и общее программное обеспечение (ОПО); АБД – администратор баз данных. Словарь данных предназначен для хранения единообразной и централизованной информации обо всех ресурсах данных конкретного банка: об объектах, их свойствах и отношениях для данной ПО; о данных, хранимых в БД; о возможных значениях и форматах представления данных; Об источниках возникновения данных; О кодах защиты и разграничении доступа пользователей к данным и пр. Администратор баз данных (АБД) – это лицо, реализующее управление БД. БД – база данных. Что такое база данных? Любой из вас, начиная с раннего детства, многократно сталкивался с «базами данных». Это – всевозможные справочники, энциклопедии и пр. Ваша записная книжка – тоже база данных. Базы данных представляют собой информационные модели, содержащие данные об объектах и их свойствах. Базы данных хранят информацию о группах объектов с одинаковым набором свойств. Например, база данных «Записная книжка» хранит информацию о людях, каждый из которых имеет 130
© Ольга Викторовна Токмакова, 2006 год фамилию, имя и телефон. Библиотечный каталог хранит информацию о книгах, каждая из которых имеет название, автора, год издания и пр. Информация о данных хранится в упорядоченном виде. Так, в записной книжке все записи упорядочены либо по алфавиту (алфавитный каталог), либо по области знаний (предметный каталог). База данных – это информационная модель, позволяющая упорядоченно хранить данные о группе объектов, обладающих одинаковым набором свойств. Иначе, БД – совокупность специальным образом организованных (структурированных) данных и связей между ними. БД – датологическое представление информации о предметной области. Если в состав БнД входит одна БД, банк принято называть локальным. Если БД несколько – интегрированным. Способы создания компьютерных БД: − С помощью алгоритмических языков программирования − С помощью прикладной среды (н-р, Visual Basic) − С помощью специальных программных сред, которые называются системами управления базами данных (СУБД) Итак, СУБД – система управления базами данных. СУБД – комплекс специальных программ и языков, посредством которого организуется централизованное управление базами данных и обеспечивается доступ к ним. В состав СУБД входят языки двух типов: − язык описания данных (с его помощью описываются типы данных, их структура и связи) − язык манипулирования данными (язык запросов к БД). Существует несколько различных структур информационных моделей и, соответственно, баз данных: табличные (реляционные), иерархические и сетевые. Табличные базы данных ТБД содержит перечень объектов одного типа (с одинаковыми свойствами). Такую базу данных удобно представлять в виде 2-мерной таблицы: в каждой ее строке последовательно размещаются значения свойств одного из объектов; каждое значение свойства в своем столбце, озаглавленном именем свойства. Столбцы называются полями, у каждого поля свое имя и тип данных. Поле базы данных – это столбец таблицы, содержащий значения определенного свойства. 131
© Ольга Викторовна Токмакова, 2006 год Строки таблицы являются записями об объекте, они разбиты на поля столбцами таблицы, каждая запись представляет набор значений, содержащихся в полях. Запись базы данных – это строка таблицы, содержащая набор значений определенного свойства, размещенный в полях базы данных. Каждая таблица должна содержать, по крайней мере, одно ключевое поле, содержимое которого уникально для каждой записи в этой таблице. Ключевое поле – это поле , значения которого однозначно определяют каждую запись в таблице. В качестве ключевого поля чаще всего используют поле, содержащее тип данных счетчик. Однако иногда используют в качестве ключевого поля таблицы и другие поля: код товара, инвентарный номер и пр. Тип поля определяется типом данных, которое оно содержит. Поля могут содержать следующие основные типы данных: − Счетчик − Текстовый − Числовой − Дата\время − Денежный − Логический − Гиперссылка Каждый тип поля имеет свой набор свойств: − Размер поля − Формат поля − Обязательное поле Табличная организация БД позволяет реализовать ее важнейшее преимущество перед другими моделями данных, а именно – возможность использования точных математических методов манипулирования данными, прежде всего, - аппарата реляционной алгебры и исчисления отношений. Кроме того такие модели наглядны, данные в них легко изменяются, к преимуществам относится и организация разграничения доступа к ним. Недостаток этой модели в информационной избыточности, что ведет к перерасходу ресурсов ВС. Подавляющее большинство СУБД, ориентированных на персональные ЭВМ, являются системами, построенными на основе реляционной модели данных. 1) Иерархическая база данных. Графически представляет собой перевернутое дерево, состоящее из объектов разного уровня. Верхний уровень 132
© Ольга Викторовна Токмакова, 2006 год занимает один объект, второй – объекты второго уровня… Между объектами существуют связи, каждый объект может включать в себя несколько объектов более низкого уровня. Такие объекты находятся в отношении «предка» к «потомку». Объекты, имеющие общего предка, называются близнецами. Иерархическую базу данных образуют папки Windows. Верхний уровень занимает папка Рабочий стол. Папки второго уровня: Мой компьютер, Корзина, Сетевое окружение являются его потомками, а между собой они являются близнецами. В свою очередь папка Сетевое окружение является предком по отношению к папкам третьего уровня (Компьютер 1, компьютер 2,…), близнецами по отношению к друг другу. 2) Сетевая БД. СБД является обобщением иерархической за счет допущения объектов, имеющих более одного предка, то есть каждый элемент вышестоящего уровня может быть связан одновременно с любыми элементами следующего уровня. Вообще, на связи между объектами в сетевых моделях не накладывается никаких ограничений. Сетевой базой данных фактически является Всемирная паутина глобальной компьютерной сети Интернет. Гиперссылки связывают между собой сотни миллионов документов в единую сетевую базу данных. 2. Системы управления базами данных. Режимы работы с базами данных. Чтение фрагментов базы данных. СУБД – это программа, позволяющая создавать БД, а также обеспечивающая обработку (сортировку) и поиск данных. Приложение Access является системой управления БД. В этой программе используется стандартный для среды Windows&Office многооконный интерфейс, но он в отличие от других приложений не много документальный. То есть одновременно может быть открыта только одна база данных, содержащая обязательное окно БД и окна для работы с объектами. В каждый момент времени одно из окон является активным и в нем курсором отмечается активный объект. Окно БД – один из главных элементов интерфейса access. Здесь систематизированы все объекты БД: − Таблицы − Запросы − Формы − Отчеты − Макросы − Модули 133
© Ольга Викторовна Токмакова, 2006 год Основные функции Access 1. Заполнение 2. Редактирование (добавление, удаление, изменение) 3. Сортировка (по любому из полей, по возрастанию, по убыванию) 4. Фильтрация Фильтр строится на основе условий. Условие – логическое выражение, котрое состоит из имени поля, операции отношения и значения поля. Те записи, для которых значение условия истинно, попадают в список-результат фильтрации Операции отношения: <, >, <=, >=, = начинается с …, заканчивается на… Составные условия включают в себя несколько простых, объединенных логическими связками ИЛИ, и, не. Поиск отличается от фильтрации тем, что он указывает только на одну запись в таблице, соответствующую условию, затем на следующую и т.д. При этом в таблице продолжают отображаться все записи.
134
© Ольга Викторовна Токмакова, 2006 год
Лекция 9. Передача информации и компьютерные телекоммуникации Содержание. Исторический экскурс. Исторические этапы и задачи. Компьютерные сети. Виды. Сетевые средства и службы. Носители для передачи данных и сетевое оборудование. Сетевые протоколы. Адреса в сети Интернет. Услуги сети Интернет. 1.
Причины и следствия появления сети Интернет
Причины. • Атомные бомбы, их испытания и применения …США и СССР • 04.10.57 г. – запуск первого и второго советских искусственных спутников Проблема Министерство обороны США: «Что станет с коммуникациями, если будет ядерная война? Как обеспечить их работоспособность?» Следствие. В начале 58 г. по указанию Д. Эйзенхауэра в министерстве обороны США были созданы: Национальная аэрокосмическая администрация NASA (National Aeronautics and Space Аdministration) и Агентство передовых исследовательских проектов ARPA (Advanced Research Projects Agency). ARPA 150 человек = доктора философии + вспомогательные служащие Задача - распределить между университетами и лабораториями годовой бюджет, выделенный на наиболее важные с точки зрения национальной безопасности работы Идея для решения проблемы: построить специальные вычислительные сети. On Distributed Communication Networks 1962 год Пол Беран (Rand Corparation). Решили использовать децентрализованную систему коммутаций компьютеров ARPA . Последовала разработка метода соединения компьютеров друг с другом посредством специальных компьютерных сетей. Реализация этой идеи произошла в виде «паутинки». Отсюда - всемирная паутина.
135
© Ольга Викторовна Токмакова, 2006 год
Эмбриональное состояние Эскиз ARPANet В 1963 г. бюро по методам обработки информации (Information Processing Techniques Office) возглавил Джон Ликлайдер
Джон Ликлайдер предлагает для развития и реализации этой идеи систему принципов: 1. Вкладывать средства в людей, а не в структуры 2. Отдавать предпочтение специалистам из университетов 3. Организовать центры интеллектуального потенциала : Массачусетский технологический университет и Университет Карнеги-Меллона (мультипроцессорные системы). Значительное влияние на создание Глобальной сети оказали работы корпорации Rand (исследования и разработки). Основные изначальные идеи принадлежат также Дж. Ликлайдеру (идея глобализации связи из любой точки земного шара) – он убедил А. Сазерленда, Б.Тейлора и Л. Робертса в важности сетевой концепции; Л. Клейнроку – его идея коммутации пакетов для передачи данных (1961-64) более прогрессивна, чем теория коммутации каналов. Коммутация пакетов – данные разбиваются на части и к каждой присоединяется заголовок с полной информацией о доставке пакета по назначению. Коммутация каналов – на время передачи информации пара компьютеров соединяются «один-с-одним» и происходит передача всей информации. Далее лекцию изучить по презентации (см. приложенный файл).
136
© Ольга Викторовна Токмакова, 2006 год Лекция 10. Информатизация общества Содержание. Информационное общество. Информационная культура. Информационная безопасность (компьютерные вирусы и антивирусные программы) Изучите лекцию по презентации (см. приложенный файл)
137
© Ольга Викторовна Токмакова, 2006 год
Учебно-методический комплекс (краткий вариант) I. ПОЯСНИТЕЛЬНАЯ ЗАПИСКА 1. Актуальность учебной дисциплины Современный этап развития цивилизации характеризуется переходом от индустриального общества к информационному. Как отмечал академик А.П.Ершов, информатизация – всеобщий неизбежный период развития цивилизации, период освоения информационной картины мира, осознания единства законов функционирования информации в природе и обществе, практического их применения, создания индустрии производства и обработки информации. Решение проблем рационального использования современных и перспективных методов и средств обработки информации в практической (профессиональной и повседневной) деятельности каждого человека приобретает первостепенное значение. Это обусловлено рядом причин: o актуальными потребностями общества, связанными с необходимостью решения все более усложняющихся проблем политического, военного, экономического и др. характера различного масштаба; o необходимостью значительного повышения эффективности профессиональной деятельности человека; o потребностью использовать в профессиональной и повседневной деятельности современные технические и программные средства, позволяющие реализовать новые эффективные технологии; o расширением круга пользователей. Естественно, что такие сложные и многообразные процессы в обществе потребовали изменения в базовой подготовке по информатике в общеобразовательных учреждениях. Это в свою очередь обуславливает изменения в подготовке учителей информатики. Однако процессы информатизации общеобразовательных учреждений протекают с разной скоростью, что приводит к тому, что знания, умения и навыки абитуриентов значительно отличаются друг от друга. Решить эту проблему и призвана дисциплина «Информатики», читаемая студентам первого курса специальности «физика с дополнительной специальностью информатика» физико-математического факультета (I семестр), содержание которой является первым погружением (введением) в полный курс дисциплины «Информатика» в высшей школе. 138
© Ольга Викторовна Токмакова, 2006 год 2. Соответствие ГОС ВПО специальности Учебная дисциплина входит в перечень общих математических и естественнонаучных дисциплин федерального компонента. Настоящая рабочая программа составлена в соответствии с требованиями государственного образовательного стандарта (ГОС) высшего профессионального образования (ВПО) специальности 050203.65 Министерства образования (МО) Российской Федерации. Содержание программы разработано с использованием программы дисциплины Информатика. Требования обязательного минимума содержания основной образовательной программы подготовки специалистов: «Понятие информации, общая характеристика процессов сбора, передачи, обработки и накопления информации; технические и программные средства реализации информационных процессов; модели решения функциональных и вычислительных задач; алгоритмизация и программирование; языки программирования высокого уровня; базы данных; программное обеспечение и технологии программирования; локальные и глобальные сети ЭВМ; основы защиты информации и сведений, составляющих государственную тайну, методы защиты информации; компьютерный практикум» 3. Цель учебной дисциплины Создание условий для формирования у студентов общего представления и начальных знаний по основным разделам информатики. 4. Задачи учебной дисциплины Познавательный аспект Обеспечение освоения студентами фундаментальных понятий и основ (информация, модель, алгоритм, язык программирования, базовые алгоритмические конструкции, арифметические и логические основы компьютера, принципы его устройства и функционирования) по информатике. При этом предполагается, что все эти темы получат дальнейшее развитие в процессе изучения других дисциплин цикла «Информатика». Развивающий аспект Содействие развитию познавательного интереса к предмету «Информатика», развитию мыслительных способностей студентов 139
© Ольга Викторовна Токмакова, 2006 год посредством включения их в деятельность, направленную на формирование способности к структурированию данных, планированию действий, просчету вариантов и прогнозированию результатов. Воспитательный аспект Создание условий для воспитания у студентов информационнокоммуникативной культуры, развития у них адекватной самооценки результатов собственной деятельности. 5. Связь с другими учебными дисциплинами Курс информатики, входящий в блок общих математических и естественнонаучных дисциплин, является вводным курсом, и процессе изучения которого студенты получают общее представление об основных идеях, понятиях, разделах информатики. Важно сформировать в ходе изучения вводного курса целостную картину предмета и заложить основы дальнейшего профессионального образования.
140
© Ольга Викторовна Токмакова, 2006 год II. СОДЕРЖАНИЕ УЧЕБНОЙ ДИСЦИПЛИНЫ Содержание разделов и основных тем дисциплины «Информатика» Раздел 1. История становления информатики, история термина. Гносеологический и онтологический аспекты: информатика как наука и область деятельности. Единство: информация-алгоритм-компьютер. Структура информатики, ее место в системе наук. Социальный и правовой аспекты информатики. Информация как фундаментальное научное понятие. Подходы к трактовке понятия «информация» с позиции разных наук. Виды информации. Информационные процессы и их характеристика. Представление информации. Образная и символьная информация. Информация и сообщение. Язык и информация. Алфавит. Кодирование информации. Преимущества двоичного кодирования информации. Проблема измерения информации. Вероятностный и объемный подходы к измерению информации. Формулы Хартли и Шеннона. Арифметические основы ЭВМ. Задача представления числа в форме, наиболее удобной для обработки. Понятие системы счисления. Позиционные и непозиционные системы счисления. Алфавит и базис позиционной системы счисления. Нетрадиционные системы счисления (на основе чисел Фибоначчи; уравновешенные системы счисления; Д-коды). Раздел 2. Представление данных в памяти ЭВМ. Проблема представления данных в памяти ЭВМ. Понятие разрядной сетки. Ограничения. Представление целых чисел. Понятие обратного и дополнительного кода. Представление вещественных чисел. Форма представления с плавающей запятой. Мантисса и порядок (см. предыдущие лекции). Представление данных символьного и строкового типа. Представление графической информации, растровое и векторное изображение. Представление звуковой и видео информации. Раздел 3. Аппаратные реализации информационных процессов. Состав и назначение основных элементов персонального компьютера. Типы персональных компьютеров. Запоминающие устройства. Процессор и оперативная память. Внешняя (долговременная память). Понятие вычислительной системы. Устройства ввода/вывода информации. Магистрально-модульный принцип построения компьютера. Архитектура ЭВМ. Логические основы 141
© Ольга Викторовна Токмакова, 2006 год компьютера. Базовые логические элементы. Сумматор двоичных чисел. Триггер. Раздел 4. Программные средства реализации информационных процессов. Программное обеспечение информационных процессов. Классификация программного обеспечения. Обзор системного и прикладного ПО. Пользовательские интерфейсы. ОС Windows: назначение и состав.Графический интерфейс Windows . Загрузка операционной системы. Представление файловой системы с помощью графического интерфейса. Интерфейс командной строки. Объекты и их свойства. Служебные программы. Стандартные программы общего назначения. Драйверы устройств. Справочная система Windows. Установка программного обеспечения. Файлы и файловая система. Управление файловой структурой. Служебное программное обеспечение. Прикладное программное обеспечение. Электронные таблицы: структура, адресация, формулы; блоки, относительная и абсолютная адресация; условная функция и логические выражения; построение диаграмм. Электронные презентации: создание презентации; рисунки и графические примитивы на слайдах; выбор дизайна презентации; редактирование и сортировка слайдов; использование анимации в презентациях; интерактивная презентация (переходы между слайдами, демонстрация презентации). Раздел 5. Модели решения функциональных и вычислительных задач Моделирование как метод познания. Классификация моделей. Введение в системологию: понятие «система», системный эффект, среда, вход и выход системы, «Черный ящик», состав и структура системы, систематизация. Статические и динамические информационные модели. Формы представления информационных моделей. Описательные и формальнологические модели. Графические информационные модели. Структуры информационных моделей: табличные, иерархические и сетевые информационные модели. Объекты: свойства и операции. Более сложные типы таблиц. Вычислительные таблицы. Методы и технологии моделирования. Классификация задач, решаемых с помощью моделей. Компьютерная модель и ее исследование. Построение компьютерной модели. Исследование модели. Анализ результатов и корректировка модели. Интеллектуальные системы. 142
© Ольга Викторовна Токмакова, 2006 год Раздел 6. Программное обеспечение и технологии программирования Системы программирования. Технологии конструирования программ: нисходящая и восходящая. Структурное программирование. Чтение структурированных программ. Признаки структурного стиля программирования. Преимущества структурного программирования. Модульное программирование. Поколения ЭВМ. Инкапсуляция, наследование и полиморфизм. Стратегии решения задач по программированию. Жизненный цикл программ. Каскадная и спиральная модели. Раздел 7. Базы данных. Структуры данных. Системы управления базами данных. Объекты базы данных. Чтение фрагментов базы данных. Реляционные структуры данных. Заполнение и редактирование БД. Извлечение информации из БД. Сортировка записей в БД. Проектирование и нормализация БД. Раздел 8. Локальные и глобальные сети ЭВМ. Локальные и глобальные компьютерные сети. Система гиперссылок. Подключение к Интернету. Работа с файловыми архивами. Общение в Интернете. «География» Интернета. Маршрут прохождения информации: скорость передачи информации и ее определение; определение IP – адреса компьютера. Раздел 9. Информатизация общества. Основы защиты информации и сведений, составляющих государственную тайну. Методы защиты информации Информационная безопасность и ее составляющие. Специфика обработки конфиденциальной информации. Компьютерные вирусы и средства антивирусной защиты: понятие «компьютерный вирус», классификация компьютерных вирусов, пути заражения, способы профилактики и методы борьбы с компьютерными вирусами.
143
© Ольга Викторовна Токмакова, 2006 год III.УЧЕБНО-МЕТОДИЧЕСКОЕ ОБЕСПЕЧЕНИЕ ДИСЦИПЛИНЫ ПЛАНЫ практических и семинарских занятий Занятие № 1. Объемный и вероятностный подходы к измерению информации. Цель: обеспечить формирование навыков и умений находить количество информации План 1. Фронтальный опрос: «Кодирование информации. Разные подходы к измерению информации». 2. Решение задач на нахождение количества информации в сообщении, что произошло одно из равновероятных событий или одно из не равновероятных событий. 3. Решение задач на нахождение возможных вариантов того или иного события, если известно количества информации в сообщении о том, что событие произошло. 3. Самостоятельная работа. 4. Подведение итогов, домашнее задание. Занятие № 2-3. Проблема и алгоритмы перевода чисел в q-ичную систему счисления и обратно. Арифметика чисел в q-ичной записи. Системы счисления с основанием 2 n. Цель: обеспечить формирование у студентов навыков и умений перевода чисел из q-ичной системы и обратно. План 1. Фронтальный опрос по теме. 2. Решение задач на перевод из любой системы счисления в десятичную и наоборот. 3. Решение задач на использование сложных алгоритмов вычислительных действий в разных системах счисления. 4. Самостоятельная работа. 5. Подведение итогов и информация о домашнем задании. Занятие № 4. «Логические основы компьютера» Цель: содействовать формированию у студентов навыка разрабатывать логические схемы и составлять таблицы истинности логических выражений. План 1. Фронтальный опрос по теме. 144
© Ольга Викторовна Токмакова, 2006 год 2. Решение логических задач на составление логических схем и таблиц истинности. 3. Выполнение теста «Основы логики компьютера». 4. Разбор ошибок теста, подведение итогов, информация о домашнем задании. Занятие №5. Вычислительные системы. Цель: обеспечить усвоение студентами устройства компьютера План 1. Установка на выполнение тестов, 2. Тест «Запоминающие устройства». 3. Тест «Периферийные устройства ЭВМ». 4. Тест «Устройство компьютера». 5. Подведение итогов, анализ ошибок, информация о домашнем задании. Занятие № 6-7. Текстовый редактор «WORD». Цель: способствовать формированию у студентов умений и навыков работы в текстовом редакторе WORD. План 1. Актуализация: правила ввода и сохранения текста, редактирование и форматирование документа, форматирование абзацев документа, работа с таблицами и графическими объектами. 2. Самостоятельная работа «Форматирование документа». 3. Подведение итогов, информация о домашнем задании. Занятие №8-9. Электронные таблицы. Цель: способствовать формированию у студентов умений и навыков работы в Microsoft Office Excel. План 1. Актуализация: структура электронных таблиц, типы и формат данных, относительные и абсолютные ссылки, формулы и функции Excel, сортировка и поиск данных, построение диаграмм и графиков. 2. Практические работы «Создание диаграммы» и «Построение графика». 3. Самостоятельная работа на изучение программы Microsoft Excel. 4. Подведение итогов, информация о домашнем задании. Занятие №10-11. Электронные презентации. Цель: способствовать формированию у студентов умений и навыков работы в Microsoft Office PowerPoint . 145
© Ольга Викторовна Токмакова, 2006 год План 1. Актуализация: разработка презентации, рисунки и графические примитивы на слайдах, дизайн презентации, гиперссылки, интерактив и демонстрация презентации. 2. Практическая работа «Тематическая презентация». 3. Самостоятельная работа по изучению принципов работы программы PowerPoint. 4. Подведение итогов, информация о домашнем задании. Занятие № 12. Решение задач с помощью моделей. Цель: обеспечить усвоение студентами принципов разработки информационных моделей. План 1. Актуализация: понятие система и системный эффект, среда, вход и выход системы, функции системы, «черный ящик», состав и структура системы, информационная модель, систематизация, 2. Решение задач на разработку и анализ информационных моделей на графах и табличных информационных моделей, использование вычислительных таблиц. 3. Подведение итогов, информация о домашнем задании. Занятие № 13-15. Разработка и чтение блок-схем алгоритма. Цель: обеспечение отработки студентами умений конструировать и читать основные алгоритмические структуры. План 1. Повторение основных теоретических блоков. 2. Составление блок-схем решения задач. Алгоритмическая структура «линейная последовательность». 3. Составление блок-схем решения задач. Алгоритмическая структура «ветвление». 4. Составление блок-схем решения задач. Алгоритмическая структура «циклы». 5. Подведение итогов, информация о домашнем задании. Занятие №16. Исследование объектов БД. Цель: обеспечение формирования у студентов умений исследовать объекты БД. План 1. Актуализация основных теоретических сведений по теме. 146
© Ольга Викторовна Токмакова, 2006 год 2. Решение задач на создание и редактирование структуры таблицы базы данных. 3. Самостоятельная работа «Редактирование БД в режиме «таблица». 4. Подведение итогов, информация о домашнем задании. Занятие №17. «Чтение фрагментов БД» Цель: обеспечение усвоения студентами умений и навыков чтения фрагментов БД. План 1. Повторение основных теоретических сведений по теме. 2. Выполнение заданий на создание форм и редактирование данных в режиме «форма»; формирование простых и сложных запросов; использование вычисляемых полей; сортировку записей БД. 3. Самостоятельная работа. 4. Подведение итогов, информация о домашнем задании. Занятие №18. Сервисы Интернет Поисковые системы Интернета. Цель: обеспечить освоение студентами основных правил работы с сервисами Интернет. План 1. Повторение основных теоретических сведений по теме. 2. Изучение способа настройки браузера и принципов доступа к информационным ресурсам Всемирной паутины. 3. Практическая работа в сети Интернет (или локальной сети в зависимости от условий). 4. Подведение итогов, информация о домашнем задании. Занятие №19. Средства использования сетевых сервисов: браузеры Интернет, почтовые программы Цель: обеспечить усвоение студентами основных средств использования сетевых сервисов. План 1. Повторение основных теоретических сведений по теме. 2. Изучение принципов работы в телеконференциях. 3. Выполнение заданий по участию в телеконференции. 4. Самостоятельная работа: «Работа с электронной почтой». 5. Подведение итогов, информация о домашнем задании. 147
© Ольга Викторовна Токмакова, 2006 год Занятие №20. Компьютерные вирусы и средства антивирусной защиты Цель: обеспечить усвоение студентами способов и принципов работы антивирусных программ (доктор Web, Касперский и др.). План 1. Повторение основных теоретических сведений по теме. 2. Составление сравнительной таблицы по основным антивирусным программам. 3. Тест «Компьютерные вирусы и средства антивирусной защиты». 4. Подведение итогов, информация о домашнем задании. Библиографический список 1.1.
Основная литература
1. Алексеев, Е.В. Турбо Паскаль [ Текст] /Е.В.Алексеев, О.В.Чеснокова. – М.:НТ Пресс, 2006. 2. Алексеев, Е.В. Турбо Паскаль 7.0 [ Текст] /Е.В.Алексеев, О.В.Чеснокова и др. – 2-е изд. - М.:НТ Пресс, 2006. 3. Андреева, Е. Информатика: системы счисления и компьютерная арифметика [Текст] / Е. Андреева, И.Фалина. – М.: Лаборатория базовых знаний, 1999. 4. Балдин, К.В. Информатика. Учебник для вузов [ Текст] / К.В.Балдин, В.Б. Уткин. – М.: Проект, 2003. 5. Васенина, Е.А. Изучение информационных технологий общего назначения в курсе информатики средней школы. Учебное пособие [ Текст] / Е.А.Васенина, М.В. Петухова. – Киров: Изд-во ВятГГУ, 2002. 6. Информатика: учебник [Текст] / под ред. Проф. Макаровой Н.В. – 2-е изд. – М.: Финансы и статистика, 1998. 7. Залогова, Л.А. Информатика. Задачник-практикум в 2 т. [ Текст] / Л.А. Залогова. М.А.Плаксин, С.В.Русаков и др. Под ред. И.Г. Семакина, Е.К. Хеннера – 3 изд., испр. и доп. – М.: Бином. Лаборатоия знаний, 2006. 8. Меженный, О.А. Тurbo Pascal. Краткое руководство [ Текст] / О.А. Меженный. – М.:Издательский дом «Вильямс», 2006. 9. Могилев А.В. и др. Информатика: учебн. пос. для студ. пед.вузов [Текст] / А.В.Могилев и др., под ред. Е.К.Хеннера. – М. : АCADEMIA, 1999. 10. Немнюгин, С.А. Тurbo Pascal. Практикум. [ Текст] / С.А. Немнюгин. – СПб.: Питер, 2005. 11. Немнюгин, С.А. Изучаем Турбо Паскаль[ Текст] /С.А.Немнюгин, Л.В. Перколаб. – СПб.: Питер, 2006. 148
© Ольга Викторовна Токмакова, 2006 год 12. Окулов, С.М. Информатика. Развитие интеллекта школьников. [ Текст] / С.М. Окулов. - М.: БИНОМ. Лаборатория знаний, 2005. 13. Соколова, О.А. Поурочные разработки по информатике. 10 и 11 класс [ Текст] / О.А.Соколова. – М.: ВАКО, 2006. 14. Угриновоч, Н.Д. Информатика и информационные технологии. Учебное пособие для 10-11 классов. Углубленный курс.[ Текст] / Н.Д.Угринович. – М.: Лаборатория Базовых Знаний, 2000 15. Чернов, А.А. Конспекты уроков информатики в 9-11 классах: практикум по программированию [ Текст] /А.А. Чернов. – Волгоград: Учитель, 2006. 1.2.
Дополнительная литература
1) 2)
Бауэр, Ф.Л. Информатика [Текст] / Ф.Л.Бауэр, Г.Гооз. – М.: Мир, 1991. Ван Тассел, Д. Стиль, разработка, эффективность, отладка и испытание программ [Текст] / Ван Тассел Д. – М., 1981. 3) Вирт, Н. Алгоритмы + структуры данных = программы [Текст] / Н.Вирт.– М., 1985. 4) Дейкстра, Э. Дисциплина программирования [Текст] / Э. Дейкстра.– М., 1978. 5) Еремин Е.А. Популярные лекции об устройстве компьютера. СПб.: БХВПетербург, 2003. 6) Информатика: Базовый курс / под ред. С.В. Симоновича. СПб.: Питер, 2001. 7) Иртегов Д.В. Введение в сетевые технологии. СПб.: БХВ-Петербург, 2004. 8) Информатика: энциклопедический словарь для начинающих [Текст] / сост. Д.А.Поспелов. – М.: Педагогика-Пресс, 1994. 9) Заварыкин В.М., Житомирский В.Г. Лапчик М.П. Техника вычислений и алгоритмизация. [Текст] / В.М. Заварыкин и др. – М.: 1989. 10) Каган Б.М, Электронные вычислительные машины и системы.: Учеб. пособие для вузов. М.: Энергоатомиздат, 1985. 11) Кальянов В.Н. Сборник заданий по практикуму на ЭВМ [Текст] / В.Н.Кальянов и др.. – М.: Наука, 1986. 12) Могилев А. В., Пак Н. И., Хеннер Е. К., Информатика. М.: Академия, 2001. 13) Полунов Ю.Л. От абака до компьютера: судьбы людей и машин. В 2-х томах. М.: Русская редакция, 2004. 14) Столингс В. Компьютерные системы передачи данных. М.: Изд. дом «Вильямс», 2002. 15) Фролов, Г.Д. Элементы информатики [Текст] / Г.Д.Фролов, Э.И. Кузнецов. – М., 1989. 149
© Ольга Викторовна Токмакова, 2006 год Материалы, устанавливающие содержание и порядок проведения промежуточных аттестаций 1. Требования к уровню освоения программы В результате освоения содержания курса студенты должны знать: o историю становления предмета информатика; o понятие «информация», различные подходы к проблемы ее представления и измерения, общие характеристики информационных процессов; o понятие «алгоритма», его свойства, проблему уточнения понятия алгоритма, базовые алгоритмические конструкции и структуры данных; o представление данных различных типов в памяти компыотера; o основные принципы устройства и функционирования компьютера; o общий подход к решению задач на ЭВМ; o логические основы компьютера; o стратегии решения задач с помощью компьютера; o системы управления базами данных; o принципы построения локальных и глобальных компьютерных сетей. уметь: o определять количество информации и объем данных некоторого сообщения, o использовать различные системы счисления для записи числовых данных, o составлять и читать блок-схемы алгоритмов, o читать структурированные программы, o составлять простые базы данных, o читать фрагменты базы данных, o пользоваться сетевым сервисом, o устанавливать и пользоваться средствами антивирусной защиты. иметь представление: o о разных моделях решения функциональных и вычислительных задач; o об исторических этапах развития программирования и эволюцию языков программирования; o о средствах антивирусной защиты. 150
© Ольга Викторовна Токмакова, 2006 год 2. Примерный перечень вопросов к экзамену Критерии допуска к экзамену: 1. Систематичность – наличие материалов по всем темам лекционных и лабораторных занятий. 2. Самостоятельность – выполнение всех обязательных заданий для самостоятельной работы. 3. Активность – активное участие в обсуждениях разных проблем на лабораторных и лекционных занятиях. 4. Креативность и творчество – творческий подход к выполнению лабораторных и самостоятельных заданий. 5. Качество и своевременность выполнения лабораторных работ. 6. Выполнение единого компьютерного тестирования (минимум – усвоение всех ДЕ). Для студентов заочной формы обучения (специальность «Педагогика») экзамен по учебной дисциплине проводится в форме компьютерного тестирования на сайте. Вопросы к экзамену при проведении экзамена в виде собеседования по билетам (веб-экзамен) 1. Понятие информации. Общая характеристика процессов сбора, передачи, обработки и накопления информации 2. Модели решения функциональных и вычислительных задач 3. Алгоритмизация и программирование. Языки программирования высокого уровня 4. Программное обеспечение и технологии программирования 5. Аппаратные реализации информационных процессов 6. Представление данных в памяти ЭВМ. 7. Программные средства реализации информационных процессов. 8. Базы данных. 9. Локальные и глобальные сети ЭВМ. 10. Основы защиты информации и сведений, составляющих государственную тайну. Методы защиты информации. Подробные планы экзаменационных билетов. 1. − Основные задачи информатики. − Сигналы. Данные. Информация. Информационный процесс. − Основные операции с данными. 151
© Ольга Викторовна Токмакова, 2006 год − Системы счисления. − Единицы представления, измерения и хранения данных. − Основные этапы развития информатики и вычислительной техники. 2. − Моделирование как метод познания. − Классификация структуры моделей. − Классификация задач, решаемых с помощью моделей. − Методы и технологии моделирования. Интеллектуальные системы. 3. − Алгоритмизация. − Чтение блок-схемы алгоритма. − Программирование. − Эволюция языков программирования. 4. − Системы программирования. − Структурное программирование. − Чтение структурированных программ. − Стратегии решения задач. 5. − Состав и назначение основных элементов персонального компьютера. − Запоминающие устройства. − Устройства ввода/вывода данных. − Понятие вычислительной системы. 6. − Проблема представления данных в памяти ЭВМ. Понятие разрядной сетки. Ограничения. Представление целых чисел. Понятие обратного и дополнительного кода. − Представление вещественных чисел. Форма представления с плавающей запятой. Мантисса и порядок. − Представление данных символьного и строкового типа. − Представление графической информации, растровое и векторное изображение. − Представление звуковой и видео информации. 7. 152
© Ольга Викторовна Токмакова, 2006 год − Классификация программного обеспечения. − Обзор системного и прикладного ПО. Пользовательские интерфейсы. − ОС Windows. − Управление файловой структурой. − Служебное программное обеспечение. − Программное обеспечение обработки текстовых данных. − Электронные таблицы. − Электронные презентации. 8. − Структуры данных. − Базы данных. Системы управления базами данных. − Объекты базы данных. − Чтение фрагментов базы данных. 9. − Программные и аппаратные компоненты вычислительных сетей. − Принципы построения сети Интернет. − Сервисы Интернет. − Средства использования сетевых сервисов: браузеры Интернет, почтовые программы. 10. − Информационная безопасность и ее составляющие. − Компьютерные вирусы и средства антивирусной защиты. − Защита от несанкционированного вмешательства. − Специфика обработки конфиденциальной информации.
153