Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Курс лекций информатика

.pdf
Скачиваний:
68
Добавлен:
22.02.2015
Размер:
3.14 Mб
Скачать

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

В состав процессора входят устройство управления (УУ), арифметико-логическое устройство (АЛУ) и набор регистров.

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

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

Регистр— это электронное цифровое устройство для временного запоминания информации в форме двоичного числа, или кода. Запоминающим элементом в регистре является триггер, который может

62

находиться в одном из двух состояний. Одно из этих состояний соответствует запоминанию двоичного нуля, а другое — запоминанию двоичной единицы. В общем случае регистр содержит несколько связанных друг с другом триггеров — по одному триггеру на каждый разряд запоминаемого двоичного числа Число триггеров в регистре называется разрядностью регистра. Например, регистр из восьми триггеров — 8-разрядный, или 8-битный регистр (так как каждый разряд регистра обеспечивает хранение одного бита информации).

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

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

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

Многие регистры специализированы по своей функции. Так, существуют регистр-аккумулятор, или просто аккумулятор, программный счетчик, регистр команд, регистр адреса памяти и т. д. Аккумулятор входит в АЛУ и предназначен для хранения одного из операндов перед

63

выполнением операции в АЛУ или для кратковременного запоминания результата операции.

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

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

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

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

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

64

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

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

записываются в программе.

 

Рассмотрим функционирование процессора.

На первом этапе цикла

Обобщенный алгоритм процессора (при старте)

из памяти считывается

функционирования

команда. Часто команды состоят из нескольких

процессора

 

 

байтов, и для считывания всей команды может

 

потребоваться несколько обращений к памяти.

 

По содержимому первого байта команды можно

 

определить, сколько байтов занимает вся

 

команда. Если длина команды составляет

 

несколько байтов, процессор продолжает

 

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

 

команда не будет перенесена в регистр команд.

 

Если необходимо считать следующий байт

 

команды, на адресную шину поступает

 

увеличенное на 1 содержимое регистра адреса и

 

из памяти считывается следующий байт и

 

заносится в следующий байт регистра команд.

 

Описанный процесс повторяется до тех пор, пока

 

не будет считана вся команда.

Рис.6

Естественно, может возникнуть вопрос:

 

65

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

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

3.2.5. Система прерываний

За счет использования магистрального интерфейса в структуре персонального компьютера предполагается обеспечить взаимодействие основных устройств на равноправных началах при одновременной

66

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

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

Область внутренней памяти, где хранятся адреса команд, выполняемых после появления сигнала прерывания, называется таблицей векторов прерываний. Каждое прерывание имеет уникальный номер от 0 до 255 и с ним связана определенная программа, призванная обслуживать возникшую ситуацию. Реакция выражается в прекращении выполнения текущей команды для обработки возникшей ситуации. Прерывание позволяет обработать такое условие специальной программой и вернуться

кпрерванной программе.

3.2.6.Система управления прямым доступом

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

67

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

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

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

3.2.7. Принцип открытой архитектуры

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

В августе 1981 года фирма IВМ, бросив вызов конкурентам, выпустила свой первый персональный компьютер (IBM PC), появление которого произвело настоящую информационную революцию. Если рассмотреть по отдельности каждый из компонентов ПК IВМ, то можно увидеть, что его разработчики не предложили ничего особенно нового, но свою важнейшую роль сыграла принципиально новая архитектура системы.

Передовым шагом стало введение в конструкцию системной платы ПК IВМ разъемов расширения для подключения дополнительных

68

устройств к системной шине. Такой подход назвали принципом открытой архитектуры.

Фирма IВМ перенесла модульный принцип построения ПК с других типов ЭВМ. Преимущества подобного подхода очевидны:

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

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

процесс ремонта сводится к замене не компьютера в целом, а

отдельного элемента, что можно сделать намного быстрее.

Но для поддержания этого принципа все производители должны обеспечить единый подход к разработке всех устройств на основе стандарта для системной шины и разъемов расширения. Благодаря этому поддерживалась и совместимость устройств по принципу "сверху - вниз", то есть последующие версии устройств должны обслуживать все ранее существовавшие. Именно вследствие удачного конструктивного решения через короткий срок после рождения IВМ РС началось лавинообразное нарастание производства ПК, совместимых с оригинальной моделью или IBM-совместимых компьютеров. Появилось большое количество фирм, которые занялись выпуском дополнительных плат, расширяющих возможности компьютера, купленного в стандартной конфигурации.

3.3.Классификации ЭВМ

3.3.1.Поколения ЭВМ

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

69

прорыва. До середины 80-х годов процесс эволюции вычислительной техники принято делить на поколения. В основе деления на поколения, лежит различие в элементной базе.

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

Машины первого поколения были весьма громоздки, потребляли большое количество энергии и имели невысокую надежность. Они имели ограниченный набор внешних запоминающих устройств и обладали "неразвитыми" системами ввода-вывода. Быстродействие этих ЭВМ составляло 10-20 тыс.оп./с. Для их структуры были характерны жесткий цикл выполнения операций, т.е. следующая команда могла выполняться только после окончания предыдущей. Во время ввода и вывода данных, центральный процессор простаивал, его АЛУ было занято передачей информации между ВЗУ и оперативной памятью.

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

70

задачей информационной технологии на этом этапе была экономия машинного времени и памяти.

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

К первому поколению отечественных ЭВМ относятся БЭСМ-1, БЭСМ-2, «Урал-1», «Урал-2», «Стрела», М-2, М-3, «Минск-1», М-20 и др., ориентированные в основном на решение научно-технических задач.

2-е поколение (1955-1964 гг.). Смену поколений определило появление новой элементной базы: вместо громоздкой лампы в ЭВМ стали применяться миниатюрные транзисторы, линии задержки как элементы оперативной памяти сменила память на магнитных сердечниках. Это позволило существенно повысить производительность и надежность ЭВМ при одновременном уменьшении ее габаритных размеров, массы и потребляемой мощности.

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

операционные системы (ОС).

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

71