ЛЕКЦИИ ПО ИНФОРМАТИКЕ ЛЕКЦИЯ №1 ИСТОРИЯ РАЗВИТИЯ ВЫЧИСЛИТЕЛЬНОЙ ТЕХНИКИ - Лекция, раздел История, Федеральное Агентство По Образованию Государственное Образовательное...
|
Федеральное агентство по образованию
Государственное образовательное учреждение высшего профессионального образования
Самарский государственный технический университет
ЛЕКЦИИ ПО ИНФОРМАТИКЕ
Для студентов 1 курса дневного обучения
Специальностей 1004 и 1805
Самара 2008 Оглавление
ЛЕКЦИЯ №1 ИСТОРИЯ РАЗВИТИЯ ВЫЧИСЛИТЕЛЬНОЙ ТЕХНИКИ. ОСНОВНЫЕ ПОНЯТИЯ: ИНФОРМАЦИЯ, СБОР, ПЕРЕДАЧА, ОБРАБОТКА ИНФОРМАЦИИ.. 3
ЛЕКЦИЯ №2 ТЕХНИЧЕСКИЕ СРЕДСТВА РЕАЛИЗАЦИИ ИНФОРМАЦИОННЫХ ПРОЦЕССОВ СОСТАВ СОВРЕМЕННОГО КОМПЬЮЬТЕРА.. 6
ЛЕКЦИЯ №3 ОСНОВЫ WINDOWS. 10
ЛЕКЦИЯ №4 ОКНА И МЕНЮ, РАБОЧИЙ СТОЛ, МЕНЮ ПУСК, И ПАНЕЛЬ ЗАДАЧ.. 13
ЛЕКЦИЯ №5. ПРОГРАММЫ МОЙ КОМПЬЮТЕР И ПРОВОДНИК: РАБОТА С ДИСКАМИ, ПАПКАМИ И ФАЙЛАМИ. ЗАПУСК ПРОГРАММ... 17
ЛЕКЦИЯ 6. АЛГОРИТМЫ. АЛГОРИТМИЗАЦИЯ. АЛГОРИТМИЧЕСКИЕ ЯЗЫКИ 19
ЛЕКЦИЯ 7 ТЕХНОЛОГИЯ ПРОГРАММИРОВАНИЯ. БАЗЫ ДАННЫХ.. 26
ЛЕКЦИЯ 8. КОМПЬЮТЕРНЫЕ СЕТИ. НАЗНАЧЕНИЕ КОМПЬЮТЕРНЫХ СЕТЕЙ. 41
ЛЕКЦИЯ 9. КОМПЬЮТЕРНАЯ ГРАФИКА. 49
ЛЕКЦИЯ №9 ВОПРОСЫ КОМПЬЮТЕРНОЙ БЕЗОПАСНОСТИ ПОНЯТИЕ О КОМПЬЮТЕРНОЙ БЕЗОПАСНОСТИ.. 69
ЛЕКЦИЯ №1 ИСТОРИЯ РАЗВИТИЯ ВЫЧИСЛИТЕЛЬНОЙ ТЕХНИКИ. ОСНОВНЫЕ ПОНЯТИЯ: ИНФОРМАЦИЯ, СБОР, ПЕРЕДАЧА, ОБРАБОТКА ИНФОРМАЦИИ
Первое упоминание о вычислительной машине встречается в трудах Леонардо да’Винчи (чертежи «логической машины»). Первой реализацией программируемой машины считается ткацкий станок (стержни и перфоленты для изменения порядка переплетения нитей – типа ткани).
Первое практическое применение вычислительной машины – расчет артиллерийских таблиц в 1920-30х годах. Контакторы, 3-х этажное здание, несколько десятков программистов, около месяца программирования, несколько часов счета.
Первая ЭЛЕКТРОННАЯ вычислительная машина – США, аналоговая машина, программирование путем соединения блоков в схему, соответствующую задаче.
Дальнейшее развитие – ЭВМ на радио лампах, отечественная - Урал, транзисторные отечественные БЭСМ-4, М-200 (до 106 операций/сек), западная IBM. IBM приходит в СССР из соц. стран (Венгрия, Болгария, ГДР) как ЕС-ЭВМ. ЕС-ЭВМ – мощная машина «коллективного» пользования. Коллективность вынужденная из-за несоответствия быстродействия ЦП и периферии.
При появлении мультизадачного режима с переменным количеством задач, появляются терминалы и дисплейные станции. Использование машин становится действительно коллективным. Терминалы приобретают интеллект и отпочковываются в персональные ЭВМ. Электроника-60,100, Искра, IBM.
Если бы авиационная техника развивалась так же быстро как вычислительная (производительность, эффективность, экономичность, снижение стоимости), в настоящее время (примерно 10 лет назад) любой желающий мог бы свободно купить самолет типа Боинг760, залить ведро бензина и облететь вокруг земного шара за 20 минут.
Параллельное развитие машин индивидуального использования:
- ПРОМИНЬ: 100 шагов программируемой памяти (карманный калькулятор Электроника Б3-38)
- НАИРИ: программирование на языке высокого уровня, ввод/вывод – электрическая пишущая машинка 120 символов/мин или перфолента.
Развитие техники программирования.
Программирование в кодах машины – программист-колдун. Никто не знает и не понимает «как он это делает» (проминь).
Машино ориентированные языки (наири).
Часто повторяющиеся цепочки команд порождают интерпретаторы и трансляторы.
Универсальные алгоритмические языки высокого уровня FORTRAN, ALGOL, PL-1, BASIC, Pascal.
Проблемно ориентированные языки программирования.
Системы визуального конструирования программ Delphi, программирование без программирования.
Развитие носителей информации.
Магнитный барабан – БЭСМ.
Магнитные ленты, магнитные диски – ЕС.
Дискеты 5 дюймов от 180кБ – Искра, до 720кБ.
Жесткий диск 7 МБ – Искра.
СD и DVD диски.
Флэш-карты памяти.
Что такое аудиоадаптер?
Аудиоадаптер (Sound Blaster или звуковая плата) это специальная электронная плата, которая позволяет записывать звук, воспроизводить его и создавать программными средствами с помощью микрофона, наушников, динамиков, встроенного синтезатора и другого оборудования. |
Что такое видеоадаптер?
Видеоадаптер — это электронная плата, которая обрабатывает видеоданные (текст и графику) и управляет работой дисплея. Содержит видеопамять, регистры ввода вывода и модуль BIOS. Посылает в дисплей сигналы управления яркостью лучей и сигналы развертки изображения. |
Программное обеспечение
- операционная система MS DOS, Windows, UNIX, Linux
- прикладное программное обеспечение Word, Excel, Paint,
- оболочки
- приложение Windows
Мышь
Двигая мышь рукой, вы тем самым двигаете по экрану небольшую стрелку-указатель. Далее будем называть мышью эту стрелку-указатель. Наводя эту стрелку-указатель на кнопки изображенные на экране монитора и нажимая кнопки манипулятора, вы управляете работой программ.
Существует три способа работы с мышкой.
Щелчок
Наведите мышь на кнопку ПУСК в левом нижнем углу экрана и нажмите левую кнопку мыши (щелкнуть мышкой). Выскочит меню. Если щелкнуть кнопку ПУСК еще раз, меню закроется.
В Windows предполагается, что вы работаете левой кнопкой - нормальная работа (для левши можно поменять функции клавиш под левую руку). Поэтому щелчком левой кнопки мыши выполняются основные действия. Правая кнопка мыши служит для вызова (щелчок правой кнопкой) дополнительных меню.
Если наехать мышкой на объект и ничего не делать, даже не двигать мышь, появится подсказка, кратко поясняющая назначение объекта.
Двойной щелчок
Двойной щелчок это два щелчка левой кнопкой – один за другим и довольно быстро. Чтобы двойной щелчок был правильно распознан, мышь в течение двойного нажатия должна быть неподвижной, в противном случае получаются два одиночных щелчка. Двойной щелчок либо раскрывает выбранный объект – ярлык (иконка) разворачивается в окно, либо запускает программу на исполнение.
Перетаскивание объектов
Можно сказать, что перетаскивание объектов – это очень медленный щелчок. На самом деле это способ перетаскивания чего-либо по экрану. Работает он так.
Поместите указатель мыши на объект на экране и нажмите кнопку мыши. Теперь, удерживая кнопку нажатой, двигайте мышь по столу. Когда указатель окажется там, куда вы хотите поместить объект, отпустите кнопку. Вот и все.
Что можно таскать
Углы или границы окна Изменение размеров окна
Заголовок окна Перемещение окна
Ползунок скроллера Перемещение текста/изображения в окне
Имена или значки файлов Копирование файлов
Колесо
Большинство современных мышей имеют колесо. Оно предназначено для прокрутки текста, изменения масштаба изображения, изменения размера шрифта и пр. Действие колеса зависит от программы, в которой оно используется. Колесо можно нажимать как кнопку. Результат нажатия колеса тоже зависит от программы, использующей такое нажатие. Некоторые программы вообще не реагируют на колесо.
Клавиатура
Кроме основных алфавитно-цифровых и цифровых (key pad) клавиш, на клавиатуре есть еще 4 вида дополнительных клавиш.
Функциональные клавиши
Эти клавиши ускоряют и облегчают управление системой Windows. Обозначение функциональной клавиши часто появляется рядом с пунктом меню, который она заменяет. Нажатие такой клавиши равнозначно щелчку мышкой на этом пункте меню, но использовать клавишу зачастую значительно удобнее.
Клавиши Alt и Ctrl
Эти клавиши сами по себе ничего не делают. Им всегда требуется клавиша-спутник, чтобы что-то произошло. Например, закрыть активное окно можно нажатием клавиш Alt+F4. Эти две клавиши надо нажать одновременно. Для гарантированного срабатывания сочетания, нажимать следует сначала первую клавишу Alt и, удерживая ее нажатой, нажать клавишу F4. Потом отпустить обе.
Клавиша Esc
Название клавиши означает избежать, смыться. Ее следует использовать, например, для закрытия меню, которое вам не требуется.
Клавиши управления курсором
Эти клавиши позволяют перемещать курсор по экрану. Важно запомнить, что курсор и указатель мыши – это не одно и то же.
Двигая мышку, вы перемещаете по экрану ее указатель. Это помогает выбрать тот или иной объект или перетащить его с места на место. Указатель мыши может указывать на любое место рабочего стола, а щелчок сообщает Windows, на какой объект ей следует обратить внимание.
Когда же вы нажимаете клавишу управления курсором, вы просто перемещаете курсор в окне той программы, с которой в данный момент работаете, и больше ничего.
Указатель мыши и курсор – разные вещи, хотя часто они выглядят и ведут себя похоже. Но есть верный способ их отличить: если мигает, значит, это курсор клавиатуры. Указатель мыши не мигает никогда.
Экранный и оконный режимы
Иногда удобно видеть на экране несколько окон, а иногда лучше, когда окно программы занимает весь экран. Переключение оконного и полноэкранного режимов работы производится двойным щелчком на заголовке окна (самая верхняя панель окна). Другой способ – щелкнуть на средней кнопке из трех, расположенных в правом верхнем углу окна. Если размер окна мало отличается от размера экрана, то не понятно, в каком режиме окно. Это легко определить по картинке на средней кнопке из трех, расположенных в верхнем правом углу. Один квадрат – оконный режим, два квадрата – полноэкранный режим.
Изменение размеров окна
Если Вам не нравится размер окна, Вы можете изменить его. Установите указатель мыши на границу окна, нажмите кнопку мыши и тащите его, пока окно не примет нужный размер, потом отпустите кнопку. Перетаскивая таким образом границы окон, можно установить такие их размеры, чтобы было удобно работать. Если Вы потянули границу окна и, вдруг, передумали, нажмите «Esc» прежде чем отпускать кнопку мыши.
Удобно менять размер окна, перетаскивая правый нижний угол окна. Это быстрее и удобнее – Вы тащите сразу две границы окна.
Поиск потерявшегося окна программы
Когда Вы работаете с несколькими программами, их окна перекрывают или полностью закрывают друг друга. Есть несколько способов поиска окна программы.
1. Если Вы видите хотя бы часть окна, щелкните его. Окно появится на переднем плане, в каком бы слое оно не было до этого.
2. Если Вы видите значок внизу окна (свернутая программа), щелкните на нем и окно программы развернется на переднем плане.
3. Нажмите «Alt+Tab» для вызова списка запущенных программ. Этот список содержит все программы, загруженные в память Windows и готовые к работе. Если Ваша программа есть в списке, щелкните на ней. Если программы в списке нет, значит, ее надо запустить с помощью меню «ПУСК».
Перемещение окна по экрану
Если на рабочем столе, настоящем, среди бумаг что-то мешает, например, бутерброд, чашка кофе и т.п., это что-то перекладывают на другое место. Так же легко «перекладывать» окна на экране. Наведите указатель на заголовок окна, нажмите кнопку и тащите окно. Перемещается только обрамление окна. Наблюдая за движением обрамления, Вы видите, куда оно переместится. Как только Вы отпустите кнопку, окно займет новое положение.
Расположение окон каскадом или рядом
В Windows есть два способа расположения окон каскадом или рядом друг с другом. Для выбора любого, используется панель задач. Надо щелкнуть правой кнопкой на свободном месте панели задач и выбрать в появившемся меню команду нужного расположения окон.
Меню и другие органы управления
Окном можно управлять с помощью меню, кнопок, переключателей и ползунков, которые влияют на работу программы. Рассмотрим сейчас работу с меню.
Почти все меню, которые встречаются в Windows, выпадают из пунктов Главного меню, расположенного вверху окна, сразу под заголовком. Щелкните на любом из этих пунктов, и увидите всевозможные команды, относящиеся к этому пункту.
Иногда выбор пункта меню приводит к появлению целого окна, полного кнопок и переключателей. Эту кошмарную ситуацию рассмотрим позднее.
Обратите внимание на то, что в пунктах меню некоторые буквы подчеркнуты. Эти подчеркнутые буквы можно использовать при работе с клавиатурой. Вместо того чтобы щелкать мышкой на слове, можно нажать на клавиатуре ALT и подчеркнутую букву. Например, нажатие на клавиатуре ALT+B дает тот же результат, что и выбор слова ВИД мышкой
Выбор команды щелчком на кнопке
Это самое простое. Windows предлагает на выбор несколько кнопок. Щелкните на той из них, которая вам нужна.
Полоса и кнопка прокрутки
Полоса прокрутки – это неширокая полоска у правой границы экрана, а кнопка прокрутки – это прямоугольник на этой полосе. Кнопка двигается, как лифт в шахте, и при этом сдвигается содержимое окна.
Если вся информация не помещается в окне, программа автоматически создает полосу прокрутки, с помощью которой вы можете увидеть то, что не уместилось в окне. Вы можете быстро прокрутить содержимое окна ровно на одну страницу вниз, если щелкните на полосе прокрутки под кнопкой. И наоборот: щелкнув над кнопкой, вы перейдете на предыдущую страницу.
Ввод слов и чисел
Это самый простой случай вроде «Заполните поля в бланке». Когда Windows нужны слова или числа, она предъявляет вам бланк и просит ввести текст. В текстовое окно диалога можно вводить буквы, цифры и пробелы.
Выбор из списка
Иногда в полях ввода спрятаны списки, которые похожи на выпадающие меню. Для того, чтобы раскрыть такой список, надо щелкнуть на направленной вниз стрелке, расположенной в правой части поля ввода. При этом выпадет список, из которого можно выбрать нужное значение, щелкнув на нем мышкой.
Флажок
Обычно мы в столовой выбираем несколько блюд, например, суп, кашу и чай. Когда Windows предлагает вам выбрать несколько пунктов из списка, она делает это с помощью флажков. Когда вы щелкаете на флажке, вы переключаете его между положениями «Включено» и «Выключено». Отмеченный флажок называется установленным, а не отмеченный – сброшенным.
Панель задач всегда присутствует на экране, поэтому ее удобно использовать для различных действий. Она позволяет выполнять и закрывать программы, изменять настройки компьютера, показывает текущее время и т. д.
Как отыскать панель задач
Обычно панель задач располагается внизу экрана. Если ее там нет, надо сделать ее видимой. Для этого можно:
- подождать пару секунд, пока она не появится сама. Возможно, панель задач находится в скрытом режиме.
- вытащить панель задач в зону видимости, если она «провалилась» за нижнюю границу экрана и выглядит как узкая серая полоска. Для этого поместите указатель на видимую часть панели, указатель изменится, и вы сможете достать панель задач.
Запуск программ с помощью кнопки ПУСК на панели задач
Меню ПУСК иногда, вместо того чтобы представить все операции на одной странице, постоянно выбрасывает все новые и новые подменю. Если вы человек достаточно терпеливый, такая системе вложенных меню может оказаться очень удобной. А если нет, вы можете застрять в этих многочисленных подменю, которые предлагают список всех подпрограмм, кроме нужной.
Приведенная ниже последовательность действий запускает программу Paint.
- Щелкните на кнопке ПУСК
- Выберите пункт ПРОГРАММЫ. Появятся все категории программ.
- Выберите СТАНДАРТНЫЕ. Меню ПУСК выдаст список всех программ этой группы
- Щелкните на строке Paint в группе СТАНДАРТНЫЕ.
Переключение между программами с помощью панели задач
Как только Windows запустит какую-нибудь программу, на панели задач появится соответствующий ей значок. На переполненном рабочем столе окна часто перекрывают друг друга, панель задач очень удобно использовать при переходе от одной программы к другой так как она не только выводит список выполняемых в данный момент программ, но и позволяет переключаться между ними. Для того чтобы перейти от одной программы к другой, щелкните на значке этой программы, расположенном на панели задач. Панель задач немедленно выведет ее на экран, даже если до этого она была погребена под остальными программами.
Поиск программ и файлов в меню ПУСК
Компьютеры умеют так же легко терять вещи как и создавать их. Поэтому в распоряжении Windows имеется мощная программа ПОИСК, которая готова обшарить весь компьютер в поисках утерянного файла.
Программа позволяет осуществлять поиск несколькими способами. Первый из них позволяет найти файл по его имени.
Не помните имя файла? Тогда программа ПОИСК сможет найти файл по времени и дате его создания.
Не помните ни имени файла, ни времени его создания? Ну что ж, программа ПОИСК сумеет отыскать нужный файл по содержащимся в нем специфическим словам. Для этого щелкните на вкладке ДОПОЛНИТЕЛЬНО. В поле «искать текст» наберите слово (или слова), которое содержится в разыскиваемом файле, а затем щелкните на кнопке НАЙТИ. При наборе слов, по которым ищется файл, надо быть очень внимательным. Если вы не точно указали слова, файл не будет найден.
Добавление папок на рабочем столе
Чем больше ярлыков на рабочем столе, тем труднее отыскать среди них нужный. Для того чтобы их упорядочить, можно создать на рабочем столе папку для хранения ярлыков. Вот как это делается.
- Щелкните на рабочем столе правой кнопкой мыши.
- В всплывающем меню выберите пункт «создать»
- В дополнительном меню выберите пункт «папка». Там где вы щелкнули, появится папка с именем Новая папка, которое можно подтвердить, нажав Enter, или исправить его на другое имя.
- Перетащите какой ни будь ярлык в только что созданную папку.
- Двойным щелчком откройте папку – в ней содержится помещенный в нее ярлык.
Настройка меню пуск
Все очень просто. В меню ПУСК содержится список ярлыков, запускающих программы. Поэтому для того, чтобы поместить программы в меню ПУСК, достаточно перетащить туда соответствующие им ярлыки.
Как достать из корзины удаленные файлы
Одним движением кнопки Delete в компьютере можно удалить файл с результатами большой и трудоемкой работы. Для исправления таких роковых ошибок Widows снабжена Корзиной. Значок этой программы позволяет вернуть случайно удаленные файлы.
Для восстановления удаленных файлов сделайте следующее:
- щелкните на значке Корзина. Откроется окно со списком недавно удаленных файлов
- перетащите файл, который надо восстановить на рабочий стол. Или, щелкнув на нем правой кнопкой, выберите пункт Восстановить
ЛЕКЦИЯ №5. ПРОГРАММЫ МОЙ КОМПЬЮТЕР И ПРОВОДНИК: РАБОТА С ДИСКАМИ, ПАПКАМИ И ФАЙЛАМИ. ЗАПУСК ПРОГРАММ
Для того чтобы создавать и хранить файлы нужно усвоить основные компьютерные понятия: файлы, папки, дисководы и диски. Для организации работы с файлами windows предлагает две разные программы. Первая называется Мой компьютер, а вторая – Проводник.
Что такое файлы
Файл - это какая ни будь информация: звук, письмо, музыка, видео или программа, хранящаяся на диске. В зависимости от характера информации файлы могут быть различного типа и размера.
Что такое папки и каталоги
По мере накопления файлов, возникает необходимость сортировать их по определенным признакам и хранить в отдельных папках, то есть в поименованных группах, как хранятся документы в разных ящиках. В компьютерном мире такие папки еще называют каталогами. Windows предоставляет такую возможность, и связанные файлы обычно хранятся в папках. По аналогии с реальной жизнью, можно хранить одну папку внутри другой. Такие папки называют вложенными. Папка, в которой хранятся все файлы и в которую вложены все остальные папки, называется корневой.
Что такое дисковод
Дисководы – устройства, которые позволяют компьютеру записывать и считывать информацию с дисков или дискет. Дисковод гибких дисков – устройство, в которое вставляют дискету. В CD-дисковод компакт-диск помещается точно так же, как в обычную стереосистему. Жесткий диск вставляется в свой дисковод только однажды и находится внутри компьютера.
Большинство современных компьютеров снабжено по крайней мере одним дисководом гибких дисков и одним дисководом жесткого диска. Наличие дополнительных дисководов зависит от финансовых возможностей пользователя компьютера.
Как папки, так и файлы могут иметь в своем имени до 255 символов. Дисководы используют в своем имени только одну букву. Например в вашем компьютере дисковод гибких дисков, вероятнее всего, называется диском А, а дисковод жесткого диска – диском С.
Просмотр содержимого папки
Если вы хотите посмотреть содержимое папки, просто щелкните на ней мышкой. Появится новое окно с содержимым выбранной папки. Продвижение в глубину нескольких вложенных друг в друга папок приводит к появлению на экране ряда последовательно расположенных окон, отображающих содержимое этих папок. Для того чтобы программа Мой компьютер использовала одно окно, которое обновляется при каждом двойном щелчке на одной из его папок, во время двойного щелчка удерживайте нажатой клавишу «Ctrl».
Создание папки
Если потребовалась еще одна папка для хранения новых файлов, сделайте следующее:
- откройте Мой компьютер
- щелкните на значке диска С, появится окно с содержимым диска
- щелкните правой кнопкой мыши в этом окне. Появляется всплывающее меню.
- выберите СОЗДАТЬ. Появляется выпадающее меню
- выберите ПАПКУ. В списке содержимого диска появляется НОВАЯ ПАПКА
- задайте имя папки
Аналогично можно создать любой другой объект, который числится в выпадающем меню
ЛЕКЦИЯ 6. АЛГОРИТМЫ. АЛГОРИТМИЗАЦИЯ. АЛГОРИТМИЧЕСКИЕ ЯЗЫКИ
Что такое алгоритм?
Алгоpитм — точное и понятное пpедписание исполнителю совеpшить последовательность действий, направленных на решение поставленной задачи. |
Название "алгоритм" произошло от латинской формы имени среднеазиатского математика аль-Хорезми — Algorithmi. Алгоритм — одно из основных понятий информатики и математики.
В какой форме записываются алгоритмы?
На практике наиболее распространены следующие формы представления алгоритмов:
· словесная (записи на естественном языке);
· графическая (изображения из графических символов);
· псевдокоды (полуформализованные описания алгоритмов на условном алгоритмическом языке, включающие в себя как элементы языка программирования, так и фразы естественного языка, общепринятые математические обозначения и др.);
· программная (тексты на языках программирования).
Какие у машинных языков достоинства и недостатки?
Каждый компьютер имеет свой машинный язык, то есть свою совокупность машинных команд, которая отличается количеством адресов в команде, назначением информации, задаваемой в адресах, набором операций, которые может выполнить машина и др.
При программировании на машинном языке программист может держать под своим контролем каждую команду и каждую ячейку памяти, использовать все возможности имеющихся машинных операций.
Но процесс написания программы на машинном языке очень трудоемкий и утомительный. Программа получается громоздкой, труднообозримой, ее трудно отлаживать, изменять и развивать.
Поэтому в случае, когда нужно иметь эффективную программу, в максимальной степени учитывающую специфику конкретного компьютера, вместо машинных языков используют близкие к ним машинно-ориентированные языки (ассемблеры).
Что такое язык ассемблера?
Язык ассемблера — это система обозначений, используемая для представления в удобочитаемой форме программ, записанных в машинном коде. |
Он позволяет программисту пользоваться текстовыми мнемоническими (то есть легко запоминаемыми человеком) кодами, по своему усмотрению присваивать символические имена регистрам компьютера и памяти, а также задавать удобные для себя способы адресации. Кроме того, он позволяет использовать различные системы счисления (например, десятичную или шестнадцатеричную) для представления числовых констант, использовать в программе комментарии и др.
Перевод программы с языка ассемблера на машинный язык осуществляется специальной программой, которая также называется ассемблером и является, по сути, простейшим транслятором.
Какие компоненты образуют алгоритмический язык?
Алгоритмический язык (как и любой другой язык) образуют три его составляющие: алфавит, синтаксис и семантика. |
Алфавит — это фиксированный для данного языка набор основных символов, т.е. "букв алфавита", из которых должен состоять любой текст на этом языке — никакие другие символы в тексте не допускаются.
Синтаксис — это правила построения фраз, позволяющие определить, правильно или неправильно написана та или иная фраза. Точнее говоря, синтаксис языка представляет собой набор правил, устанавливающих, какие комбинации символов являются осмысленными предложениями на этом языке.
Семантика определяет смысловое значение предложений языка. Являясь системой правил истолкования отдельных языковых конструкций, семантика устанавливает, какие последовательности действий описываются теми или иными фразами языка и, в конечном итоге, какой алгоритм определен данным текстом на алгоритмическом языке.
Что такое стандартная функция?
При решении различных задач с помощью компьютера бывает необходимо вычислить логарифм или модуль числа, синус угла и т.д.
Вычисления часто употребляемых функций осуществляются посредством подпрограмм, называемых стандартными функциями, которые заранее запрограммированы и встроены в транслятор языка. |
В качестве аргументов функций можно использовать константы, переменные и выражения. Например:
sin(3.05) min(a, 5) | sin(x) min(a, b) | sin(2*y+t/2) min(a+b, a*b) | sin((exp(x)+1)**2) min(min(a,b),min(c,d)) |
Каждый язык программирования имеет свой набор стандартных функций.
Как записываются логические выражения?
В записи логических выражений помимо арифметических операций сложения, вычитания, умножения, деления и возведения в степень используются операции отношения < (меньше), <= (меньше или равно), > (больше), >= (больше или равно), = (равно), <> (не равно), а также логические операции и, или, не.
Элементы программирования
Оператор присваивания. Служит для вычисления выражений и присваивания их значений переменным. Общий вид: А := В, где знак ":=" означает команду заменить прежнее значение переменной, стоящей в левой части, на вычисленное значение выражения, стоящего в правой части.
Например, a:=(b+c)*sin(Pi/4); i:=i+1.
Для ввода и вывода данных используют команды
· ввод имена переменных
· вывод имена переменных, выражения, тексты.
Для ветвления применяют команды если и выбор, для организации циклов — команды для и пока, описанные в разделе 7.9.
Пример записи алгоритма на школьном АЯ
алг Сумма квадратов (арг цел n, рез цел S)дано | n > 0надо | S = 1*1 + 2*2 + 3*3 + ... + n*nнач цел i ввод n; S:=0 нц для i от 1 до n S:=S+i*i кц вывод "S = ", SконЧто такое вложенные циклы?
Возможны случаи, когда внутри тела цикла необходимо повторять некоторую последовательность операторов, т. е. организовать внутренний цикл. Такая структура получила название цикла в цикле или вложенных циклов. Глубина вложения циклов (то есть количество вложенных друг в друга циклов) может быть различной.
При использовании такой структуры для экономии машинного времени необходимо выносить из внутреннего цикла во внешний все операторы, которые не зависят от параметра внутреннего цикла.
Чем отличается программный способ записи алгоритмов от других?
При записи алгоритма в словесной форме, в виде блок-схемы или на псевдокоде допускается определенный произвол при изображении команд. Вместе с тем такая запись точна настолько, что позволяет человеку понять суть дела и исполнить алгоритм.
Однако на практике в качестве исполнителей алгоритмов используются специальные автоматы — компьютеры. Поэтому алгоритм, предназначенный для исполнения на компьютере, должен быть записан на "понятном" ему языке. И здесь на первый план выдвигается необходимость точной записи команд, не оставляющей места для произвольного толкования их исполнителем.
Следовательно, язык для записи алгоритмов должен быть формализован. Такой язык принято называть языком программирования, а запись алгоритма на этом языке — программой для компьютера.
ЛЕКЦИЯ 7 ТЕХНОЛОГИЯ ПРОГРАММИРОВАНИЯ. БАЗЫ ДАННЫХ
Технология подготовки и решения задач с помощью компьютера
Какие основные этапы содержит процесс разработки программ?
Наличие ошибок в только что разработанной программе это вполне нормальное закономерное явление. Практически невозможно составить реальную (достаточно сложную) программу без ошибок.
Нельзя делать вывод, что программа правильна, лишь на том основании, что она не отвергнута машиной и выдала результаты. |
Ведь все, что достигнуто в данном случае, это получение каких-то результатов, не обязательно правильных. В программе при этом может оставаться большое количество логических ошибок.
Каковы характерные ошибки программирования?
Ошибки могут быть допущены на всех этапах решения задачи — от ее постановки до оформления
Является ли отсутствие синтаксических ошибок свидетельством правильности программы?
Обычно синтаксические ошибки выявляются на этапе трансляции. Многие же другие ошибки транслятору выявить невозможно, так как транслятору неизвестны замыслы программиста.
Отсутствие сообщений машины о синтаксических ошибках является необходимым , но не достаточным условием, чтобы считать программу правильной. |
Примеры синтаксических ошибок:
· пропуск знака пунктуации;
· несогласованность скобок;
· неправильное формирование оператора;
· неверное образование имен переменных;
· неверное написание служебных слов;
· отсутствие условий окончания цикла;
· отсутствие описания массива и т.п.
В чем заключается сопровождение программы?
Сопровождение программ — это работы, связанные с обслуживанием программ в процессе их эксплуатации. |
Многократное использование разработанной программы для решения различных задач заданного класса требует проведения дополнительных работ, связанных с доработками программы для решения конкретных задач, проведения дополнительных тестовых просчетов и т.п.
Программа, предназначенная для длительной эксплуатации, должна иметь соответствующую документацию и инструкцию по её использованию.
Основные понятия баз данных
Формирование баз данных
Локальные и глобальные сети. Основные понятия
Основной задачей, решаемой при создании компьютерных сетей, является обеспечение совместимости оборудования по электрическим и механическим характеристикам и обеспечение совместимости информационного обеспечения (программ и данных) по системе кодирования и формату данных. Решение этой задачи относится к области стандартизации и основано на так называемой модели OSI (модель взаимодействия открытых систем — Model of Open System Interconnections). Она создана на основе технических предложений Международного института стандартов ISO (International Standard Organisation).
Рис. 1. Простейшая модель обмена данными в компьютерной сети
Согласно модели ISO/OSI архитектуру компьютерных сетей следует рассматривать на разных уровнях (общее число уровней — до семи). Самый верхний уровень — прикладной. На этом уровне пользователь взаимодействует с вычислительной системой. Самый нижний уровень — физический. Он обеспечивает обмен сигналами между устройствами. Обмен данными в системах связи происходит путем их перемещения с верхнего уровня на нижний, затем транспортировки и, наконец, обратным воспроизведением на компьютере клиента в результате перемещения с нижнего уровня на верхний.
Для обеспечения необходимой совместимости на каждом из семи возможных уровней архитектуры компьютерной сети действуют специальные стандарты, называемые протоколами. Они определяют характер аппаратного взаимодействия компонентов сети (аппаратные протоколы) и характер взаимодействия программ и данных (программные протоколы). Физически функции поддержки протоколов исполняют аппаратные устройства (интерфейсы) и программные средства (программы поддержки протоколов). Программы, выполняющие поддержку протоколов, также называют протоколами.
Так, например, если два компьютера соединены между собой прямым соединением, то на низшем (физическом) уровне протокол их взаимодействия определяют конкретные устройства физического порта (параллельного или последовательного) и механические компоненты (разъемы, кабель и т. п.). На более высоком уровне взаимодействие между компьютерами определяют программные средства, управляющие передачей данных через порты. Для стандартных портов они находятся в базовой системе ввода/вывода (BIOS). На самом высоком уровне протокол взаимодействия обеспечивают приложения операционной системы.
В соответствии с используемыми протоколами компьютерные сети принято разделять на локальные (LAN- Local Area Network) и глобальные (WAN- Wide Area Network). Компьютеры локальной сети используют единый комплект протоколов для всех участников. По территориальному признаку локальные сети отличаются компактностью. Они могут объединять компьютеры одного помещения, этажа, здания, группы компактно расположенных сооружений. Глобальные сети имеют, как правило, увеличенные географические размеры. Они могут объединять как отдельные компьютеры, так и отдельные локальные сети, в том числе и использующие различные протоколы.
Группы сотрудников, работающих над одним проектом в рамках локальной сети, называются рабочими группами. В рамках одной локальной сети могут работать несколько рабочих групп. У участников рабочих групп могут быть разные права для доступа к общим ресурсам сети. Совокупность приемов разделения и ограничения прав участников компьютерной сети называется политикой сети. Управление сетевыми политиками (их может быть несколько в одной сети) называется администрированием сети. Лицо, управляющее организацией работы участников локальной компьютерной сети, называется системным администратором.
Создание локальных сетей характерно для отдельных предприятий или отдельных подразделений предприятий. Если предприятие (или отрасль) занимает обширную территорию, то отдельные локальные сети могут объединяться в глобальные сети. В этом случае локальные сети связывают между собой с помощью любых традиционных каналов связи (кабельных, спутниковых, радиорелейных и т. п.). Как мы увидим ниже, при соблюдении специальных условий для этой цели могут быть использованы даже телефонные каналы, хотя они в наименьшей степени удовлетворяют требованиям цифровой связи.
Простейшее устройство для соединения между собой двух локальных сетей, использующих одинаковые протоколы, называется мостом. Мост может быть аппаратным (специализированный компьютер) или программным. Цель моста — не выпускать за пределы локальной сети данные, предназначенные для внутреннего потребления. Вне сети такие данные становятся «сетевым мусором», впустую занимающим каналы связи.
Для связи между собой нескольких локальных сетей, работающих по разным протоколам, служат специальные средства, называемые шлюзами. Шлюзы могут быть как аппаратными, так и программными. Например, это может быть специальный компьютер (шлюзовый сервер), а может быть и компьютерная программа. В последнем случае компьютер может выполнять не только функцию шлюза, но и какие-то иные функции, типичные для рабочих станций.
При подключении локальной сети предприятия к глобальной сети важную роль играет понятие сетевой безопасности. В частности, должен быть ограничен доступ в локальную сеть для посторонних лиц извне, а также ограничен выход за пределы локальной сети для сотрудников предприятия, не имеющих соответствующих прав. Для обеспечения сетевой безопасности между локальной и глобальной сетью устанавливают так называемые брандмауэры. Брандмауэром может быть специальный компьютер или компьютерная программа, препятствующая несанкционированному перемещению данных между сетями.
Сетевые службы. Основные понятия
Понятие виртуального соединения. Рассмотрим простой пример взаимодействия двух корреспондентов с помощью обычной почты. Если они регулярно отправляют друг другу письма и, соответственно, получают их, то они могут полагать, что между ними существует соединение на пользовательском (прикладном) уровне. Однако это не совсем так. Такое соединение можно назвать виртуальным. Оно было бы физическим, если бы каждый из корреспондентов лично относил другому письмо и вручал в собственные руки. В реальной жизни он бросает его в почтовый ящик и ждет ответа.
Сбором писем из общественных почтовых ящиков и доставкой корреспонденции в личные почтовые ящики занимаются местные почтовые службы. Это другой уровень модели связи, лежащий ниже. Для того чтобы наше письмо достигло адресата в другом городе, должна существовать связь между нашей местной почтовой службой и его местной почтовой службой. Это еще один пример виртуальной связи, поскольку никакой физической связью эти службы не обладают — поступившую почтовую корреспонденцию они только сортируют и передают на уровень федеральной почтовой службы.
Федеральная почтовая служба в своей работе опирается на службы очередного уровня, например на почтово-багажную службу железнодорожного ведомства. И только рассмотрев работу этой службы, мы найдем, наконец, признаки физического соединения, например железнодорожный путь, связывающий два города.
Это очень простой пример, поскольку в реальности даже доставка обычного письма может затронуть гораздо большее количество служб. Но нам важно обратить внимание на то, что в нашем примере образовалось несколько виртуальных соединений между аналогичными службами, находящимися в пунктах отправки и приема.
Не вступая в прямой контакт, эти службы взаимодействуют между собой. На каком-то уровне письма укладываются в мешки, мешки пломбируют, к ним прикладывают сопроводительные документы, которые где-то в другом городе изучаются и проверяются на аналогичном уровне.
Модель взаимодействия открытых систем. Выше мы упомянули о том, что согласно рекомендациям Международного института стандартизации ISO системы компьютерной связи рекомендуется рассматривать на семи разных уровнях (таблица 8.1).
Таблица 8.1. Уровни модели связи
Уровень | Аналогия |
Прикладной уровень | Письмо написано на бумаге. Определено его содержание |
Уровень представления | Письмо запечатано в конверт. Конверт заполнен. Наклеена марка. Клиентом соблюдены необходимые требования протокола доставки |
Сеансовый уровень | Письмо опущено в почтовый ящик. Выбрана служба доставки (письмо можно было бы запечатать в бутылку и бросить в реку, но избрана другая служба) |
Транспортный уровень | Письмо доставлено на почтамт. Оно отделено от писем, с доставкой которых местная почтовая служба справилась бы самостоятельно |
Сетевой уровень | После сортировки письмо уложено в мешок. Появилась новая единица доставки — мешок |
Уровень соединения | Мешки писем уложены в вагон. Появилась новая единица доставки — вагон |
Физический уровень | Вагон прицеплен к локомотиву. Появилась новая единица доставки — состав. За доставку взялось другое ведомство, действующее по другим протоколам |
Из таблицы видно, что каждый новый уровень все больше и больше увеличивает функциональность системы связи. Местная почтовая служба работает не только с письмами, но и с бандеролями и посылками. Почтово-багажная служба занимается еще и доставкой грузов. Вагоны перевозят не только почту, но и людей. По рельсам ходят не только почтово-пассажирские поезда, но и грузовые составы и т. д. То есть, чем выше уровень в модели связи, тем больше различных функциональных служб его используют.
Возвращаясь к системам компьютерной связи, рассмотрим, как в модели, ISO/OSI происходит обмен данными между пользователями, находящимися на разных континентах.
1. На прикладном уровне с помощью специальных приложений пользователь создает документ (сообщение, рисунок и т. п.).
2. На уровне представления операционная система его компьютера фиксирует, где находятся созданные данные (в оперативной памяти, в файле на жестком диске и т. п.), и обеспечивает взаимодействие со следующим уровнем.
3. На сеансовом уровне компьютер пользователя взаимодействует с локальной или глобальной сетью. Протоколы этого уровня проверяют права пользователя на «выход в эфир» и передают документ к протоколам транспортного уровня.
4. На транспортном уровне документ преобразуется в ту форму, в которой положено передавать данные в используемой сети. Например, он может нарезаться на небольшие пакеты стандартного размера.
5. Сетевой уровень определяет маршрут движения данных в сети. Так, например, если на транспортном уровне данные были «нарезаны» на пакеты, то на сетевом уровне каждый пакет должен получить адрес, по которому он должен быть доставлен независимо от прочих пакетов.
6. Уровень соединения необходим для того, чтобы промодулировать сигналы, циркулирующие на физическом уровне, в соответствии с данными, полученными с сетевого уровня. Например, в компьютере эти функции выполняет сетевая карта или модем.
7. Реальная передача данных происходит на физическом уровне. Здесь нет ни документов, ни пакетов, ни даже байтов — только биты, то есть элементарные единицы представления данных. Восстановление документа из них произойдетпостепенно, при переходе с нижнего на верхний уровень на компьютере клиента.
Средства физического уровня лежат за пределами компьютера. В локальных сетях это оборудование самой сети. При удаленной связи с использованием телефонных модемов это линии телефонной связи, коммутационное оборудование телефонных станций и т. п.
На компьютере получателя информации происходит обратный процесс преобразования данных от битовых сигналов до документа.
Особенности виртуальных соединений. Разные уровни протоколов сервера и клиента не взаимодействуют друг с другом напрямую, но они взаимодействуют через физический уровень. Постепенно переходя с верхнего уровня на нижний, данные непрерывно преобразуются, «обрастают» дополнительными данными, которые анализируются протоколами соответствующих уровней на сопредельной стороне. Это и создает эффект виртуального взаимодействия уровней между собой. Однако, несмотря на виртуальность, это все-таки соединения, через которые тоже проходят данные.
Это очень важный момент с точки зрения компьютерной безопасности. Одновременно с теми запросами на поставку данных, которые клиент направляет серверу, передается масса служебной информации, которая может быть как желательной, так и нежелательной. Например, обязательно передаются данные о текущем адресе клиента, о дате и времени запроса, о версии его операционной системы, о его правах доступа к запрашиваемым данным и прочее. Передается и немало косвенной информации, например о том, по какому адресу он посылал предыдущий запрос. Известны случаи, когда даже передавались идентификационные коды процессоров компьютеров.
На использовании виртуальных соединений основаны такие позитивные свойства электронных систем связи, как возможность работать по одному физическому каналу сразу с несколькими серверами. Но на них же основаны и такие негативные средства, как «троянские программы». Троянская программа — разновидность
Рис. 2. Простейшая модель службы передачи сообщений
«компьютерного вируса*, создающая во время сеансов связи виртуальные соединения для передачи данных о компьютере, на котором установлена. Среди этих данных может быть парольная информация, информация о содержании жесткого диска и т. п. В отличие от обычных компьютерных вирусов троянские программы не производят разрушительных действий на компьютере и потому лучше маскируются,
Сетевые службы. На виртуальных соединениях основаны все службы современного Интернета. Так, например, пересылка сообщения от сервера к клиенту может проходить через десятки различных компьютеров. Это совсем не означает, что на каждом компьютере сообщение должно пройти через все уровни, — ему достаточно «подняться» до сетевого уровня, (определяющего адресацию) при приеме и вновь «опуститься» до физического уровня при передаче. В данном случае служба передачи сообщений основывается на виртуальном соединении сетевого уровня и соответствующих ему протоколах (рис. 2).
Сеть. Основные понятия
Сеть - это группа компьютеров, соединенных друг с другом каналом связи. Канал обеспечивает обмен данными внутри сети (то есть обмен данными между компьютерами данной группы). Сеть может состоять из двух-трех компьютеров, а может объединять несколько тысяч ПК. Физически обмен данными между компьютерами может осуществляться по специальному кабелю, телефонной линии, волоконно-оптическому кабелю или по радиоканалу.
Компьютеры в сети можно соединять:
Компьютеры, подключенные к сети, могут выполнять две функции: они могут быть рабочими станциями или серверами.
Рабочая станция - это любой рабочий компьютер в сети, не являющийся сервером, как правило, за ними работают пользователи. Требования к рабочим станциям определяются кругом задач станции. Обычно главными требованиями являются требования к быстродействию и к объему оперативной памяти.
Серверы - это компьютеры, которые управляют всей сетью и накапливают у себя все данные рабочих станций. Серверы могут работать в автоматическом режиме - они стоят без клавиатуры и иногда даже без монитора, но в любом случае серверы осуществляют функции управления сетью и концентрации данных. Администратор сети - лицо, в обязанности которого входят все вопросы, связанные с установкой и эксплуатацией сети, а также решение всех проблем, связанных с правами и возможностями пользователей сети.
Обычно в качестве сервера выбирается самый большой и мощный компьютер в сети. Однако развитие компьютерной техники явно ведет к уменьшению внутренних компонентов - компьютер становится быстрее и экономичнее. Поэтому за короткий срок сервер может устареть быстрее, чем обычные компьютеры, к которым не предъявляются такие высокие требования.
Принято различать локальные и глобальные сети. В сущности, главная разница между ними понятна уже по названиям, но есть и некоторые существенные технологические отличия.
Методы доступа
Наиболее известны и распространены три конкретные реализации методов доступа: Ethernet, Arcnet и Token Ring.
Arcnet
Метод доступа Arcnet принадлежит фирме Datapoint Corp. и тоже широко распространен: оборудование Arcnet заметно дешевле, чем оборудование Ethernet или Token Ring.
Arcnet применяется в локальных сетях с топологией "звезда". Один из компьютеров создает сообщение специального вида (так называемый маркер), которое передается от одного компьютера к другому последовательно. При передаче обычного информационного сообщения от одной станции к другой очередная станция дожидается маркера и дополняет его этим сообщением, а также адресами отправителя и назначения. Когда отправленный пакет достигает станции назначения, информационное сообщение отделяется от маркера и передается станции.
Token Ring
Этот метод доступа разработан фирмой IBM и предполагает топологию сети "кольцо".
Метод Token Ring во многом напоминает предыдущий метод Arcnet: он использует сообщение-маркер, передаваемое от одной станции к другой; однако здесь есть возможность разным рабочим станциям назначать различные приоритеты.
Аппаратные ресурсы сети
Аппаратные ресурсы сети - это дополнительное оборудование, которое можно подключать к сети и разделять между пользователями. Аппаратные ресурсы расширяют возможности сети.
Принтеры, сканеры, модемы и факс-модемы, CD-ROM - все это аппаратные ресурсы сети.
Фрактальная графика
Фрактальная графика, как и векторная, основана на математических вычислениях. Однако базовым элементом фрактальной графики является сама математическая формула, то есть никаких объектов в памяти компьютера не хранится и изображение строится исключительно по уравнениям. Таким способом строят как простейшие регулярные структуры, так и сложные иллюстрации, имитирующие природные ландшафты и трехмерные объекты (рис. 6).
Рис. 6. Примеры фрактальных объектов
Основные понятия трехмерной графики
Трехмерная графика нашла широкое применение в таких областях, как научные расчеты, инженерное проектирование, компьютерное моделирование физических объектов. В качестве примера рассмотрим наиболее сложный вариант трехмерного моделирования — создание подвижного изображения реального физического тела.
В упрощенном виде для пространственного моделирования объекта требуется:
• спроектировать и создать виртуальный каркас («скелет») объекта, наиболее полно соответствующий его реальной форме;
• спроектировать и создать виртуальные материалы, по физическим свойствам визуализации похожие на реальные;
• присвоить материалы различным частям поверхности объекта (на профессиональном жаргоне — «спроектировать текстуры на объект»);
• настроить физические параметры пространства, в котором будет действовать объект, — задать освещение, гравитацию, свойства атмосферы, свойства взаимодействующих объектов и поверхностей;
• задать траектории движения объектов;
• рассчитать результирующую последовательность кадров;
• наложить поверхностные эффекты на итоговый анимационный ролик.
Для создания реалистичной модели объекта используют геометрические примитивы (прямоугольник, куб, шар, конус и прочие) и гладкие, так называемые сплайновые поверхности. В последнем случае применяют чаще всего метод бикубических рациональных В-сплайнов на неравномерной сетке (NURBS). Вид поверхности при этом определяется расположенной в пространстве сеткой опорных точек. Каждой точке присваивается коэффициент, величина которого определяет степень ее влияния па часть поверхности, проходящей вблизи точки. От взаимного расположения точек и величины коэффициентов зависит форма и «гладкость» поверхности в целом. Специальный инструментарий позволяет обрабатывать примитивы, составляющие объект, как единое целое, с учетом их взаимодействия на основе заданной физической модели.
Деформация объекта обеспечивается перемещением контрольных точек, расположенных вблизи. Каждая контрольная точка связана с близлежащими опорными точками, степень ее влияния на них определяется удаленностью. Другой метод называют сеткой деформации. Вокруг объекта или его части размещается трехмерная сетка, перемещение любой точки которой вызывает упругую деформацию как самой сетки, так и окруженного объекта.
Еще одним способом построения объектов из примитивов служит твердотельное моделирование. Объекты представлены твердыми телами, которые при взаимодействии с другими телами различными способами (объединение, вычитание, слияние и другие) претерпевают необходимую трансформацию. Например, вычитание из прямоугольного параллелепипеда шара приведет к образованию в параллелепипеде полукруглой лунки.
После формирования «скелета» объекта необходимо покрыть его поверхность материалами. Все многообразие свойств материалов в компьютерном моделировании сводится к визуализации поверхности, то есть к расчету коэффициента прозрачности поверхности и угла преломления лучей света на границе материала и окружающего пространства. Для построения поверхностей материалов используют пять основных физических моделей:
• Bouknight — поверхности с диффузным отражением без бликов (например,
матовый пластик);
• Phong— поверхности со структурированными микронеровностями (например,
металлические);
• Blinn — поверхности со специальным распределением микронеровностей с учетом взаимных перекрытий (например, глянец);
• Whitted — модель, позволяющая дополнительно учитывать поляризацию света;
• Hall — модель, позволяющая корректировать направления отражения и пара
метры преломления света.
Закраска поверхностей осуществляется методами Гуро (Gouraud) или Фонга (Phong). В первом случае цвет примитива рассчитывается лишь в его вершинах, а затем линейно интерполируется по поверхности. Во втором случае строится нормаль к объекту в целом, ее вектор интерполируется по поверхности составляющих примитивов и освещение рассчитывается для каждой точки.
Свет, уходящий с поверхности в конкретной точке в сторону наблюдателя, представляет собой сумму компонентов, умноженных на коэффициент, связанный с материалом и цветом поверхности в данной точке. К таковым компонентам относятся:
• свет, пришедший с обратной стороны поверхности, то есть преломленный свет (Refracted);
• свет, равномерно рассеиваемый поверхностью (Diffuse);
• зеркально отраженный свет (Reflected)
• блики, то есть отраженный свет источников (Specular);
• собственное свечение поверхности (Self illumination).
Свойства поверхности описываются в создаваемых массивах текстур (двух- или трехмерных). Таким образом, в массиве содержатся данные о степени прозрачности материала; коэффициенте преломления; коэффициентах смещения компонентов (их список указан выше); цвете в каждой точке, цвете блика, его ширине и резкости; цвете рассеянного (фонового) освещения; локальных отклонениях векторов от нормали (то есть учитывается шероховатость поверхности).
Следующим этапом является наложение («проектирование») текстур на определенные участки каркаса объекта. При этом необходимо учитывать их взаимное влияние на границах примитивов. Проектирование материалов на объект — задача трудно формализуемая, она сродни художественному процессу и требует от исполнителя хотя бы минимальных творческих способностей.
Из всех параметров пространства, в котором действует создаваемый объект, с точки зрения визуализации самым важным является определение источников света. В трехмерной графике принято использовать виртуальные эквиваленты физических источников.
• Аналогом равномерного светового фона служит так называемый растворенный свет (Ambient light:). Он не имеет геометрических параметров и характеризуется только цветом и интенсивностью. Пример в природе — естественная освещенность вне видимости Солнца и Луны.
• Удаленный не точечный источник называют удаленным светом (Distant light). Ему присваиваются конкретные геометрические параметры (координаты). Аналог в природе — Солнце.
• Точечный источник света (Point light source) равномерно испускает свет во всех направлениях и также имеет координаты. Аналог в технике — электрическая лампочка.
• Направленный источник света (Direct light source) кроме местоположения характеризуется направлением светового потока, углами раствора полного конуса света и его наиболее яркого пятна. Аналог в технике — прожектор.
После завершения конструирования и визуализации объекта приступают к его «оживлению», то есть заданию параметров движения. Компьютерная анимация базируется на ключевых кадрах. В первом кадре объект выставляется в исходное положение. Через определенный промежуток (например, в восьмом кадре) задается новое положение объекта и так далее до конечного положения. Промежуточные значения вычисляет программа по специальному алгоритму. При этом происходит не просто линейная аппроксимация, а плавное изменение положения опорных точек объекта в соответствии с заданными условиями (рис. 7),
Эти условия определяются иерархией объектов (то есть законами их взаимодействия между собой), разрешенными плоскостями движения, предельными углами поворотов, величинами ускорений и скоростей. Такой подход называют методом
Рис. 7. Построение видеоряда по ключевым кадрам
инверсной кинематики движения. Он хорошо работает при моделировании механических устройств. В случае с имитацией живых объектов используют так называемые скелетные модели. То есть создается некий каркас, подвижный в точках, характерных для моделируемого объекта. Движения точек просчитываются предыдущим методом. Затем на каркас накладывается оболочка, состоящая из смоделированных поверхностей, для которых каркас является набором контрольных точек, то есть создается каркасная модель. Каркасная модель визуализируется наложением поверхностных текстур с учетом условий освещения. В ходе перемещения объекта получается весьма правдоподобная имитация движений живых существ.
Наиболее совершенный метод анимации заключается в фиксации реальных движений физического объекта. Например, на человеке закрепляют в контрольных точках яркие источники света и снимают заданное движение на видео- или кинопленку. Затем координаты точек по кадрам переводят с пленки в компьютер и присваивают соответствующим опорным точкам каркасной модели. В результате движения имитируемого объекта практически неотличимы от живого прототипа.
Процесс расчета реалистичных изображений называют рендерингом (визуализацией). Большинство современных программ рендеринга основаны на методе обратной трассировки лучей (Backway ray tracing). Его суть заключается в следующем.
1. Из точки наблюдения сцены посылается в пространство виртуальный луч, по траектории которого должно прийти изображение в точку наблюдения.
2. Для определения параметров приходящего луча все объекты сцены проверяются на пересечение с траекторией наблюдения. Если пересечения не происходит, считается, что луч попал в фон сцены и приходящая информация определяется только параметрами фона. Если траектория пересекается с объектом, то в точке соприкосновения рассчитывается свет, уходящий в точку наблюдения в соответствии с параметрами материала.
3. Сначала просчитывается преломленный и отраженный свет, затем проверяется видимость из точки пересечения всех источников света и интенсивность светового потока. Также вычисляются наличие, резкость и ширина бликов от каждого источника света.
4. Полученные в результате итоговые значения цвета и интенсивности обрабатываются с учетом траектории луча и параметров атмосферы, и присваиваются точке объекта как значения визуализации для наблюдателя. Затем процесс повторяется для всех элементов сцены. С целью упрощения расчетов пересечение проверяют не для каждой точки, а для примитива в целом. Иногда вокруг объекта создают простую виртуальную геометрическую фигуру (параллелепипед, шар), расчет пересечений для объекта выполняют только при пересечении траектории наблюдения с фигурой в целом.
Применение сложных математических моделей позволяет имитировать такие физические эффекты, как взрывы, дождь, огонь, дым, туман. Существуют методы расчета процедурных эффектов (Procedural effects) и взаимодействия систем частиц (Particle system). Однако их применение в полном объеме требует громадных вычислительных ресурсов, и потому в персональных компьютерах обычно используют упрощенные варианты. По завершении рендеринга компьютерную трехмерную анимацию используют либо как самостоятельный продукт, либо в качестве отдельных частей или кадров готового продукта (рис. 8).
Рис. 8. Моделирование взрыва с помощью систем частиц
Особую область трехмерного моделирования в режиме реального времени составляют тренажеры технических средств — автомобилей, судов, летательных и космических аппаратов. В них необходимо очень точно реализовывать технические параметры объектов и свойства окружающей физической среды. В более простых вариантах, например при обучении вождению наземных транспортных средств, тренажеры реализуют на персональных компьютерах.
Самые совершенные на сегодняшний день устройства созданы для обучения пилотированию космических кораблей и военных летательных аппаратов. Моделированием и визуализацией объектов в таких тренажерах заняты несколько специализированных графических станций, построенных на мощных RISC-процессорах и скоростных видеоадаптерах с аппаратными ускорителями трехмерной графики. Общее управление системой и просчет сценариев взаимодействия возложены на суперкомпьютер, состоящий из десятков и сотен процессоров. Стоимость таких комплексов выражается девятизначными цифрами, но их применение окупается достаточно быстро, так как обучение на реальных аппаратах в десятки раз дороже.
Представление графических данных
Цветовая модель CIE Lab
В 1920 году была разработана цветовая пространственная модель CIE Lab (Соттитсаtiоп 1пternationale de l’Eclairage — международная комиссия по освещению; L,а,b — обозначения осей координат в этой системе). Система является аппаратно независимой и потому часто применяется для переноса данных между устройствами. В модели CIE Lab любой цвет определяется светлотой (L) и хроматическими компонентами: параметром а, изменяющимся в диапазоне от зеленого до красного, и параметром b, изменяющимся в диапазоне от синего до желтого. Цветовой охват модели CIE Lab значительно превосходит возможности мониторов и печатных устройств, поэтому перед выводом изображения, представленного в этой модели, его приходится преобразовывать. Данная модель была разработана для согласования цветных фотохимических процессов с полиграфическими. Сегодня она является принятым по умолчанию стандартом для программы Adobe Photoshop.
Цветовая модель RGB
Цветовая модель RGВ является аддитивной, то есть любой цвет представляет собой сочетание в различной пропорции трех основных цветов — красного (Rеd), зеленого (Grееп), синего (В1ие). Она служит основой при создании и обработке компьютерной графики, предназначенной для электронного воспроизведения (на мониторе, телевизоре). При наложении одного компонента основного цвета на другой яркость суммарного излучения увеличивается. Совмещение трех компонентов одинаковой яркости дает ахроматический серый цвет, который при увеличении яркости приближается к белому цвету. При 256 градационных уровнях тона черному цвету соответствуют нулевые значения RGВ, а белому — максимальные, с координатами (255, 255, 255).
Рис. 14. Аддитивная цветовая модель RGВ
ЛЕКЦИЯ №9 ВОПРОСЫ КОМПЬЮТЕРНОЙ БЕЗОПАСНОСТИ ПОНЯТИЕ О КОМПЬЮТЕРНОЙ БЕЗОПАСНОСТИ
В вычислительной технике понятие безопасности является весьма широким. Оно подразумевает и надежность работы компьютера, и сохранность ценных данных, и защиту информации от внесения в нее изменений неуполномоченными лицами, и сохранение тайны переписки при электронной связи. Разумеется, во всех цивилизованных странах на страже безопасности граждан стоят законы, но в сфере вычислительной техники правоприменительная практика пока развита недостаточно, а законотворческий процесс не успевает за развитием технологий, поэтому надежность работы компьютерных систем во многом опирается на меры самозащиты.
– Конец работы –
Используемые теги: Лекции, информатике, Лекция, История, развития, вычислительной, техники0.11
Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: ЛЕКЦИИ ПО ИНФОРМАТИКЕ ЛЕКЦИЯ №1 ИСТОРИЯ РАЗВИТИЯ ВЫЧИСЛИТЕЛЬНОЙ ТЕХНИКИ
Если этот материал оказался полезным для Вас, Вы можете сохранить его на свою страничку в социальных сетях:
Твитнуть |
Новости и инфо для студентов