Принцип однородности памяти

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

Принцип адресуемости памяти

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

Принцип последовательного программного управления

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

Принцип жесткости архитектуры

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

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

Тип операции Примеры
Арифметические и логические Целочисленные арифметические и логические операции: сложение, вычитание, логическое сложение, логическое умножение и т.д.
Пересылки данных Опер ации загрузки/записи
Упра вление потоком команд Безусловные и условные переходы, вызовы процедур и возвраты
Системные операции Системные вызовы, команды управления виртуальной памятью и т.д.
Операции с плавающей точкой Операции сложения, вычитания, умножения и деления над вещественными числами
Десятичные операции Десятичное сложение, умножение, преобразование форматов и т.д.
Операции над строками Пересылки, сравнения и поиск строк

Команда — это описание элементарной операции, которую должен выполнить компьютер.

Типы команд

Команды традиционного машинного уровня можно разделить на несколько типов, которые показаны на рис. 4.3.

Рис. 4.3. Основные типы команд

Системы команд

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

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

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

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

5. Команды ввода и вывода информации для обмена с внешними устройствами. В некоторых ЭВМ внешние устройства являются специальными служебными адресами памяти, поэтому ввод и вывод осуществляется с помощью команд переписи.

6. Команды управления, реализующие нелинейные алгоритмы. Сюда прежде всего следует отнести условный и безусловный переход, а также команды обращения к подпрограмме (переход с возвратом). Некоторые ЭВМ имеют специальные команды для организации циклов, но это не обязательно: цикл может быть сведен к той или иной комбинации условного и безусловного переходов. Часто к этой же группе команд относят немногочисленные операции по управлению процессором -типа “останов” или НОП (“нет операции”). Иногда их выделяют в особую группу.

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

Система ввода-вывода (СВВ) предназначена для выполнения трех из пяти основных функций ВМ: собственно ввода, вывода и долговременного хранения информации (две другие функции — это обработка информации и управление этой обработкой). Соответственно, в состав системы ввода-вывода входят:

1. Периферийные устройства, которые можно подразделить на:

- устройства ввода информации;

- устройства вывода (отображения) информации;

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

- устройства долговременного хранения информации.

2. Контроллеры (адаптеры) периферийных устройств, отвечающие за управление периферийными устройствами и обмен между ними и ядром ЭВМ.

3. Внешние параллельные и последовательные каналы обмена и соответствующие контроллеры этих каналов.

4. Системные шины и их контроллеры.

5. Контроллеры прерываний и прямого доступа к памяти (ПДП).

6. Подсистемы процессора, отвечающие за ввод/вывод, организацию ПДП и реакцию на прерывания и др.

Традиционно выделяют три основных варианта обмена процессора с внешними устройствами:

- программный обмен (program polling);

- обмен по прерываниям (interrupts);

- обмен в режиме прямого доступа к памяти — ПДП (direct memory access — DMA).

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

Основные типы прерываний:

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

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

3. Внутренние прерывания (исключения — exceptions), генерируемые процессором как реакция на ошибки, например, на попытку деления на 0 или обращения программы к запрещенной для нее области памяти. Исключения помогают обработать ошибку (средствами самой программы или операционной системы).

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

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

Наши рекомендации