Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
VOST_Informatsionnye_resursy_1 (1).docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
359 Кб
Скачать
☆

29. Организация машины: принципы фон Неймана, управляющее устройство, системы команд и типы команд. Ввод/вывод и прерывания.

Джон фон Нейман (1903-1957) – венгро-американский математик, сделавший важный вклад в квантовую физику, квантовую логику, функциональный анализ, теорию множеств, информатику, экономику и другие отрасли науки.

В 1946 году трое учёных – Артур Бёркс, Герман Голдстайн и Джон фон Нейман – опубликовали статью «Предварительное рассмотрение логического конструирования электронного вычислительного устройства». В статье обосновывалось использование двоичной системы для представления данных в ЭВМ, выдвигалась идея использования общей памяти для программы и данных. Имя фон Неймана было достаточно широко известно в науке того времени, что отодвинуло на второй план его соавторов, и данные идеи получили название «принципы фон Неймана».

Принципы фон Неймана

    Принцип двоичного кодирования. Для представления данных и команд используется двоичная система счисления.

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

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

    Принцип последовательного программного управления. Все команды располагаются в памяти и выполняются последовательно, одна после завершения другой.

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

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

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

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

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

Общее устройство компьютеров

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

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

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

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

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

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

В зависимости от количества операндов, команды бывают:одноадресные;двухадресные; трехадресные;переменноадресные.

 Команды хранятся в ячейках памяти в двоичном коде. В современных компьютерах длина команд переменная(обычно от двух до четырех байтов), а способы указания адресов переменных весьма разнообразные. В адресной части команды может быть указан, н-р:сам операнд (число или символ);адрес операнда;адрес адреса операнда.

 Ввод-вывод и прерывания.

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

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

На современных ПК обработчики основных аппаратных и программных прерываний находятся в памяти BIOS. Современная операционная система, во время своей загрузки, заменяет эти обработчики своими.

1. Аппаратные, синхронные или внутренние прерывания – события в самом процессоре как результат нарушения каких-то условий при исполнении машинного кода: деление на ноль или переполнение, обращение к недопустимым адресам или недопустимый код операции.

2. Прерывание ввода-вывода, асинхронные или внешние – события, которые исходят от внешних источников (например, периферийных устройств) и могут произойти в любой произвольный момент: сигнал от таймера, сетевой карты или дискового накопителя, нажатие клавиш клавиатуры, движение мыши. Факт возникновения в системе такого прерывания фиксируется, как запрос на прерывание (англ. Interrupt request, IRQ).

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

4. Прерывание по таймеру (частный случай внутреннего прерывания) – генерируется таймером процессора раз в 55 мс (примерно 18.2 раз в секунду). Это прерывание позволяет операци­онной системе выполнять некоторые свои функции периодически, через заданные промежутки времени.

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

 Множественные прерывания

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

В такой ситуации возможны два подхода. Первый – это запретить новые пре­рывания до тех пор, пока обрабатывается предыдущее.

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

1)  Маскирование прерываний

В зависимости от возможности запрета внешние прерывания делятся на:

    маскируемые прерывания – прерывания, которые можно запрещать установкой соответствующих битов в регистре маскирования прерываний (в x86-процессорах – сбросом флага IF в регистре флагов);

    немаскируемые прерывания (англ. Non maskable interrupt, NMI) – обрабатываются всегда, независимо от запретов на другие прерывания. К примеру, такое прерывание может быть вызвано сбоем в микросхеме памяти.

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

30. СУБД ACCESS. Проектирование, импортирование данных из других приложений офиса. Конструирование таблиц.

MS Access — наиболее популярная на сегодняшний день СУБД для персональных компьютеров. Она представляет собой систему обслуживания реляционных баз данных с графической оболочкой. Данные в таких базах оформляются в виде одной или нескольких таблиц, состоящих из однотипных записей. Система обслуживания включает в себя ввод данных в ЭВМ, отбор данных по каким-либо признакам (критериям или параметрам), преобра­зование структуры данных, вывод данных, являющихся результа­том решения задач в табличном или каком-либо ином удобном для пользователя виде.MS Access позволяет создавать связанные объекты и устанав­ливать ссылочную целостность данных*. MS Access поддерживает встраивание OLE-объектов (Object Linking and Embedding) в рам­ках среды Windows.В состав пакета MS Access входит также ряд специализирован­ных программ, решающих отдельные задачи (так называемых «мастеров»)

В Microsoft Access, прежде чем создавать таблицы, формы и другие объекты необходимо задать структуру базы данных. Хорошая структура базы данных является основой для создания адекватной требованиям, эффективной базы данных. Этапы проектирования базы данных Ниже приведены основные этапы проектирования базы данных 1.Определение цели создания базы данных. 2. Определение таблиц, которые должна содержать база данных. 3. Определение необходимых в таблице полей. 4. Задание индивидуального значения каждому полю.

5. Определение связей между таблицами. 6. Обновление структуры базы данных. 7. Добавление данных и создание других объектов базы данных. 8. Использование средств анализа в Microsoft Access.1. Определение цели создания базы данных На первом этапе проектирования базы данных необходимо определить цельсоздания базы данных, основные ее функции и информацию, которую она должна содержать.

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

Access предоставляет широкие возможности пользователям по переносу уже существующих баз данных в среду MS Access. К примеру, если вы вели обработку информации в MS Excel, эксплуатировали базы в средах dBase, Paradox или FoxPro, или же просто хранили свои данные в текстовых файлах, и решили воспользоваться возможностями MS Access, - вам не составит труда перенести свои данные в эту среду. С таким же успехом вы можете экспортировать свои данные из таблиц Access в большинство существующих сред обработки данных. Более того, в Access заложен аппарат поддержки миграции данных в еще не существующие среды, используя механизм ODBC. Т.е. с появлением новой, с более широким спектром возможностей СУБД, вы не будете привязаны к Access необходимостью заново вводить данные под новый формат базы. Если эта база будет содержать драйвер ODBC, вы просто экспортируете свои данные в другую среду. Сейчас многие производители ПО для хранения и обработки данных внедряют в свои приложения поддержку ODBC, и ваше Access - приложение уже сейчас может обмениваться информацией как с такими СУБД как Oracle, SQL-Base, Sybase, Paradox, FoxPro, Btrieve, DB2 и т.д., так и с будущими.   Пример решения 1. Импорт данных Access поддерживает две возможности использования данных других баз - импорт и присоединение. Импорт подразумевает полную конвертацию существующей таблицы из другой среды в формат MS Access. Все модификации импортированной таблицы автоматически не переносятся в импортированную вами таблицу. Т.е. импортировать данные имеет смысл в тех случаях, если вы : полностью переходите на работу с Access и переносите все свои данные в эту среду, не обращаясь к старому приложению; используете информацию, редко модифицируемую пользователем: словари, справочники и т.д.; добиваетесь максимальной производительности по обработке данных в   смешанных средах (совместного использования данных одновременно  несколькими средами БД), т.к. Access быстрее работает со своими форматами в   своей среде

В Access используются три способа создания таблиц: путем ввода данных (by entering data), с помощью Конструктора таблиц (in Design view) и с помощью Мастера создания таблиц (by using wizard). Для каждого из этих способов существует специальный ярлык новых объектов в списке таблиц . Если вы создали новый файл базы данных, то, кроме этих ярлыков, в списке таблиц больше ничего нет.

Если вы не отображаете ярлыки новых объектов в окне базы данных, то для создания новой таблицы нужно раскрыть список таблиц, щелкнув по ярлыку Таблицы (Tables) на панели объектов окна базы данных, и затем нажать кнопку Создать (New). Тогда появится диалоговое окно Новая таблица (New Table), в котором вы и должны выбрать способ создания таблицы.

И, наконец, на панели инструментов Access расположена кнопка Новый объект (New Object). Если щелкнуть мышью по стрелке, которая находится на ней справа, и выбрать из меню объект Таблица(Table), то откроется то же диалоговое окно Новая таблица (New Table).

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

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