Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Voprosy и ответы.doc
Скачиваний:
5
Добавлен:
20.04.2019
Размер:
671.23 Кб
Скачать

2. Классическая архитектура эвм и принципы фон Неймана

Основы учения об архитектуре вычислительных машин заложил выдающийся американский математик Джон фон Нейман. Он подключился к созданию первой в мире ламповой ЭВМ ENIAC в 1944 г., когда ее конструкция была уже выбрана. В процессе работы во время многочисленных дискуссий со своими коллегами Г. Голдстайном и А. Берксом фон Нейман высказал идею принципиально новой ЭВМ. В 1946 г. ученые изложили свои принципы построения вычислительных машин в ставшей классической статье “Предварительное рассмотрение логической конструкции электронно-вычислительного устройства”. С тех пор прошло полвека, но выдвинутые в ней положения сохраняют актуальность и сегодня.

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

Еще одной поистине революционной идеей, значение которой трудно переоценить, является предложенный Нейманом принцип “хранимой программы”. Первоначально программа задавалась путем установки перемычек на специальной коммутационной панели. Это было весьма трудоемким занятием: например, для изменения программы машины ENIAC требовалось несколько дней (в то время как собственно расчет не мог продолжаться более нескольких минут – выходили из строя лампы). Нейман первым догадался, что программа может также храниться в виде набора нулей и единиц, причем в той же самой памяти, что и обрабатываемые ею числа. Отсутствие принципиальной разницы между программой и данными дало возможность ЭВМ самой формировать для себя программу в соответствии с результатами вычислений.

Фон Нейман не только выдвинул основополагающие принципы логического устройства ЭВМ, но и предложил ее структуру, которая воспроизводилась в течение первых двух поколений ЭВМ. Основными блоками по Нейману являются устройство управления (УУ) и арифметико-логическое устройство (АЛУ) (обычно объединяемые в центральный процессор), память, внешняя память, устройства ввода и вывода. Схема устройства такой ЭВМ представлена на рис. 1. Следует отметить, что внешняя память отличается от устройств ввода и вывода тем, что данные в нее заносятся в виде, удобном компьютеру, но недоступном для непосредственного восприятия человеком. Так, накопитель на магнитных дисках относится к внешней памяти, а клавиатура – устройство ввода, дисплей и печать – устройства вывода.

Рис. 1. Архитектура ЭВМ, построенной на принципах фон Неймана. Сплошные линии со стрелками указывают направление потоков информации, пунктирные – управляющих сигналов от процессора к остальными узлам ЭВМ

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

Память (ЗУ) хранит информацию (данные) и программы. Запоминающее устройство у современных компьютеров “многоярусно” и включает оперативное запоминающее устройство (ОЗУ), хранящее ту информацию, с которой компьютер работает непосредственно в данное время (исполняемая программа, часть необходимых для нее данных, некоторые управляющие программы), и внешние запоминающие устройства (ВЗУ) гораздо большей емкости, чем ОЗУ. но с существенно более медленным доступом (и значительно меньшей стоимостью в расчете на 1 байт хранимой информации). На ОЗУ и ВЗУ классификация устройств памяти не заканчивается – определенные функции выполняют и СОЗУ (сверхоперативное запоминающее устройство), и ПЗУ (постоянное запоминающее устройство), и другие подвиды компьютерной памяти.

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

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

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

6

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

Различают системное и прикладное ПО. Схематически программное обеспечение можно представить так:

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

Базовое ПО включает в себя:

операционные системы;

оболочки;

сетевые операционные системы.

Сервисное ПО включает в себя программы (утилиты):

диагностики;

антивирусные;

обслуживания носителей;

архивирования;

обслуживания сети.

Прикладное ПО – это комплекс программ для решения задач определённого класса конкретной предметной области. Прикладное ПО работает только при наличии системного ПО.

Прикладные программы называют приложениями. Они включает в себя:

текстовые процессоры;

табличные процессоры;

базы данных;

интегрированные пакеты;

системы иллюстративной и деловой графики (графические процессоры);

экспертные системы;

обучающие программы;

программы математических расчетов, моделирования и анализа;

игры;

коммуникационные программы.

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

трансляторы;

среду разработки программ;

библиотеки справочных программ (функций, процедур);

отладчики;

редакторы связей и др.

7

Операционная система Windows XP - это современная многозадачная многопользовательская 32 - разрядная ОС с графическим интерфейсом пользователя. История развития ОС Windows изложена в разделе дистанционное обучение основам работы в операционной системе Windows XP.

Операционные системы семейства Windows являются наиболее распространенными ОС, которые установлены в домашних и офисных ПК.

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

Основными элементами графического интерфейса Windows являются: Рабочий стол, Панель задач с кнопкой Пуск. Так как в Windows применен графический пользовательский интерфейса, то основным устройством управления программами является манипулятор мышь.

Манипулятор мышь

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

Вид указателя мыши на экране зависит от выполняемой операции:

при выборе объекта указатель имеет вид стрелки, направленной под углом вверх;

в окне документа указатель напоминает английскую букву I;

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

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

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

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

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

Перетаскивание объекта (Drag and Drop) (перетаскивание, транспортировка, перемещение) – это операция, в результе выполнения которой изменяется местоположения объекта.

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

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

Основные элементы графического интерфейса Windows

Основными элементами графического интерфейса Windows являются:

Рабочий стол с пиктограммами

Панель задач, на которой размещаются программные кнопки, индикаторы, Панель быстрого запуска

Главное меню (кнопка Пуск)

Контекстное меню (отображается при щелчке правой кнопкой мыши по выбранному объекту)

Работа с окнами

Окно представляет собой область экрана, ограниченную прямоугольной рамкой. В нем отображается содержимое папки, работающая программа или документ.

Различают три варианта отображения окна на экране:

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

окно, развернутое на весь экран, имеет максимальный размер

свернутое окно изображается в виде кнопки на панели задач..

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

Окна можно классифицировать по типу:

окно программы (окно папки)

окно документа

окно диалога

окно справки

Окна программ

Окна программ – это окна, в которых отображаются программы.

Операции над окнами:

Открыть и закрыть окно программы

Переместить

Изменить размеры окон

Осуществить поиск окна

Упорядочить окна на экране

Элементы окна программы:

строка заголовка (слева - системное меню, справа – кнопки переключения режимов отображения на экране)

строка меню

панель инструментов

рабочая область

полосы прокруток

строка состояния

Диалоговые окна

Диалоговые окна в Windows используется для задания параметров и настроек ОС, оборудования и программ.

Основные элементы окна диалога:

Вкладка

Кнопка

Переключатель

Текстовое поле

Список

Кнопка раскрытия списка

Флажок

Индикатор

Ползунок

Меню в Windows

В ОС Windows применяются четыре типа меню (меню – это список команд, выводимых на экран и предлагаемых пользователю для выбора):

Главное меню (открывается кнопкой Пуск)

Строка меню в окнах приложения (все программы, входящие в стандартный пакет поставки Windows, имеют строку меню)

Системное меню в окнах приложения (для изменения размеров окна и его положения)

Контекстное меню

Работа с файлами

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

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

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

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

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

Манипулирование файлами и папками:

Создание нового файла и папки

Присвоение имени

Переименование

Перемещение и копирование

Удаление

Восстановление

Поиск

Просмотр и изменение свойств файлов и папок

Создание ярлыка на рабочем столе (правой кнопкой мыши, с проводника, с главного меню, с папки мой компьютер)

Настройка операционной системы Windows

Настройка ОС осуществляется с целью создания условий для эффективной работы на ПК.

Средства настроек можно разделить на пять групп:

Средства ввода – вывода (клавиатура, мышь, принтер)

Настройка элементов управления (панель задач, главное меню, корзина)

Настройка элементов оформления (тема, рабочий стол, заставка, оформление, параметры)

Настройка средств автоматизации (автоматический запуск приложений при включении ПК, запуск приложений по расписанию)

Настройка шрифтов и другие настройки

8

фа́йловая систе́ма (англ. file system) — порядок, определяющий способ организации, хранения и именования данных на носителях информации в компьютерах, а также в другом электронном оборудовании: цифровых фотоаппаратах, мобильных телефонах и т. п. Файловая система определяет формат содержимого и физического хранения информации, которую принято группировать в виде файлов. Конкретная файловая система определяет размер имени файла (папки), максимальный возможный размер файла и раздела, набор атрибутов файла. Некоторые файловые системы предоставляют сервисные возможности, например, разграничение доступа или шифрование файлов.

Файловая система связывает носитель информации с одной стороны и API для доступа к файлам — с другой. Когда прикладная программа обращается к файлу, она не имеет никакого представления о том, каким образом расположена информация в конкретном файле, так же, как и на каком физическом типе носителя (CD, жёстком диске, магнитной ленте, блоке флеш-памяти или другом) он записан. Всё, что знает программа — это имя файла, его размер и атрибуты. Эти данные она получает от драйвера файловой системы. Именно файловая система устанавливает, где и как будет записан файл на физическом носителе (например, жёстком диске).

С точки зрения операционной системы (ОС), весь диск представляет собой набор кластеров (как правило, размером 512 байт и больше)[1]. Драйверы файловой системы организуют кластеры в файлы и каталоги (реально являющиеся файлами, содержащими список файлов в этом каталоге). Эти же драйверы отслеживают, какие из кластеров в настоящее время используются, какие свободны, какие помечены как неисправные.

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

9

Там архив

10

Архив

11

Архив

12-16

Всё в одном архиве

17

Основные понятия

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

объект

семейство

метод

класс

свойство

событие

объектная модель

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

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

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

Свойством называют отдельную характеристику объекта или класса. Например, знакомые уже вам свойства формы являются свойствами объекта Form. Свойство .объекта может принимать определенное значение. Например, свойство Вывод на экран (Visible) может принимать значение True или False, в зависимости от чего форма будет появляться или исчезать с экрана.

Метод представляет собой процедуру (или функцию) объекта или класса. Совокупность методов объекта определяет его "поведение". Например, объект Form имеет метод Refresh, вызов которого позволяет обновить данные в форме Access.

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

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

Объекты и семейства сгруппированы в виде иерархических структур, которые называются объектными моделями. В VBA определены специальные объектные модели для каждого компонента семейства Microsoft Office и объектные модели, общие для всех компонентов Microsoft Office. Объектные модели VBA можно изучать, используя справочную систему и окно просмотра объектов. Окно просмотра объектов представляет собой специальное средство редактора Visual Basic, позволяющее просматривать содержимое библиотек объектов и производить поиск справочной информации.

18

структура проекта VBA

Окно проводника проектов (Project Explorer), структура проекта VBA, стандартные модули, модули классов, пользовательские формы, свойства проекта VBA

Окно Проводника проектов при первой активизации редактора Visual Basic обычно открыто. Если оно случайно было закрыто, то вызвать его можно:

нажав на клавиши <Ctrl>+<R>;

нажав на кнопку Project Explorer на панели Standard ;

воспользовавшись меню View -> Project Explorer.

В окне Project Explorer представлено дерево компонентов вашего приложения VBA.

Самый верхний уровень — это проект (Project), которому соответствует документ Word, рабочая книга Excel, презентация PowerPoint и прочие файлы, с которыми работает данное приложение. Например, если вы открыли редактор Visual Basic из Word, то в Project Explorer будут представлены все открытые в настоящее время файлы Word и еще шаблон Normal.dot. Если редактор Visual Basic открыт из Excel, то в Project Explorer будут открытые книги Excel и специальная скрытая книга PERSONAL.XLS.

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

Стандартные модули — это просто блоки с текстовым представлением команд VBA. В нем может быть только два раздела:

раздел объявлений уровня модуля (объявление переменных и констант уровня модуля);

раздел методов модуля (расположение процедур и функций).

При работе макрорекордера в Word в проекте Normal.dot или текущем документе (в зависимости от места сохранения макроса) автоматически создается стандартный модуль NewMacros (в Excel — Module1), куда и записываются все создаваемые макрорекордером макросы.

В большинстве проектов VBA используется только один стандартный модуль, куда и записывается весь код. Создавать новые стандартные модули есть смысл только из следующих соображений:

для удобства экспорта и импорта (из контекстного меню в Project Explorer). Так можно очень удобно обмениваться блоками кода между приложениями VBA (и обычного VB);

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

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

Модули классов позволяют создавать свои собственные классы — чертежи, по которым можно создавать свои собственные объекты. Обычно используются только в очень сложных приложениях. Применяются они в обычных приложениях VBA редко, и здесь рассматриваться не будут.

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

Еще один важный контейнер в Project Explorer — контейнер References (в Excel его нет), то есть контейнер ссылок. В нем показывается, ссылки на какие другие проекты (документы Word) есть в нашем проекте, и, соответственно, какие "чужие" программные модули мы можем использовать. По умолчанию в каждый проект Word помещается ссылка на Normal (то есть шаблон normal.dot) — и вы в любом файле можете использовать макросы оттуда.

Обратите внимание, что в этом контейнере — только ссылки на другие документы. Про добавление ссылок на другие объектные библиотеки мы поговорим в модуле 4.

Еще одна полезная возможность Project Explorer — возможность настроить свойства проекта. Для этого нужно щелкнуть правой кнопкой мыши по узлу Project (VBAProject в Excel) и в контекстном меню выбрать Project Properties (то же окно можно открыть и через меню Tools -> Project Properties. В этом окне можно:

изменить имя проекта. Эта возможность потребуется, если у вас есть ссылки на проект с одинаковыми именами;

ввести описание проекта, информацию о файле справки и параметры, которые будут использоваться компилятором;

защитить проект, введя пароль. Не зная этот пароль, проект нельзя будет просмотреть или отредактировать.

И все-таки, что обычно приходится делать в окне Project Explorer?

Если вам нужно создать свой макрос вручную, а макросов в данном документе еще нет, то нужно будет щелкнуть правой кнопкой мыши по узлу проекта (строки, выделенной полужирным цветом) и в контекстном меню дать команду Insert -> Module. В проекте будет создан новый модуль и сразу открыт в окне редактора кода. Что делать в этом окне — об этом в следующем разделе этой главы.

Если вы уже создавали макросы в этом проекте (макрорекордером или вручную), то модуль будет уже создан. Его можно будет увидеть под контейнером Modules. Чтобы его открыть в окне редактора кода, достаточно щелкнуть по нему два раза мышью. Там можно будет найти созданные вами средствами макрорекордера макросы.

Внимание! Обязательно подумайте, где вам будет нужен создаваемый код — только в одном документе или во всех документах данного приложения. Если он нужен будет только в одном документе, используйте стандартный программный модуль этого документа. Если во всех, то используйте программные модули проекта Normal (в Word) или PERSONAL.XLS (в Excel).

Если вам нужно создать графическую форму с элементами управления (кнопками, текстовыми полями, ниспадающими списками и т.п.), то нужно щелкнуть правой кнопкой мыши по узлу проекта и в контекстном меню выбрать Insert -> UserForm. Новая форма будет создана и открыта в окне дизайнера форм. Подробнее о работе с этим редактором — в соответствующей главе.

Теперь, когда программный модуль создан (или найден), можно приступать к работе с редактором кода VBA. Об этом — в следующем разделе.

19

Основы синтаксиса VBA

Понятие синтаксиса в языках программирования имеет много общего

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

Так называется совокупность правил, определяющая порядок использования

Осталось

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]