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

Электронный экзаменатор у вас дома. Информатика

.pdf
Скачиваний:
0
Добавлен:
11.08.2026
Размер:
532 Кб
Скачать

8. Взаимодействие микропроцессора с памятью

21

 

 

Примем условно следующие коды операций, которые принимаются для исполнения процессором:

(+) = 001 ( ) = 010 ñòîï = 000

Âпамяти распишем коды команд и данных для этого примера:

Âячейку 000 запишем в кодах первую операцию (+):

Âследующие три бита А1 запишем код адреса для первого данного 111 (7).

ÂА2 запишем адрес для второго данного 101 (5).

ÂА3 запишем адрес ячейки с результатом 1100 (12).

Âячейку 001 запишем коды для второго действия ( ):

А1 — 110 — результат сложения А2 — 101 (5)

В ячейку 010 запишем код операции СТОП: 000.

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

Принцип работы процессора

При подаче сигнала на исполнение АУ осуществляет вызов команды из ячейки с адресом 000.

В УУ осуществляется расшифровка кода операции, и автомат управления (АУ) организует дальнейшее исполнение команды.

1.Вызов первого данного из ячеек с адресом 100 и запись его регистр. A1.

2.Вызов второго данного из ячейки с адресом 101 и запись его

âсумматор.

3.Вычисление в сумматоре.

4.Запись результата в ячейку с адресом 110.

5.Счетчик команд увеличивается на 1, и по данному алгоритму осуществляется повторения цикла исполнения по заданной программе.

Данная организация работы процессора носит название принципа программного управления, т. е. управление работой процессора осуществляется программно.

22

III. Микропроцессор — основа ПК

 

 

Система команд процессора — совокупность возможных команд, которые может выполнять процессор над данными.

Выделяют процессоры с расширенной системой команд (CISC) и процессоры с сокращенной системой команд (RISC).

9. Структура компьютерной программы

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

На таблице (внизу) представлен «листинг» программы сложения двух чисел, каждое из которых лежит в диапазоне от 0 до 9999.

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

Команда — ДЕСЯТИЧНАЯ КОРРЕКЦИЯ (DAD) — инициирует операцию переноса единицы в старший разряд, если сумма двух десятичных чисел больше десяти.

Адрес

Содержимое

Объяснение операции (комментарий)

области

области памяти

 

памяти

 

 

0000

LDD A

ЗАГРУЗКА АККУМУЛЯТОРА ПРЯМАЯ

0001

00

Адрес младшего байта

0002

16

первого слагаемого

0003

ADD M

СЛОЖЕНИЕ С ПАМЯТЬЮ ПРЯМОЕ

0004

00

Адрес младшего байта

0005

18

второго слагаемого

0006

DAD

ДЕСЯТИЧНАЯ КОРРЕКЦИЯ

0007

STA A

ЗАПИСЬ В ПАМЯТЬ АККУМУЛЯТОРА

 

 

ПРЯМАЯ

0008

00

Адрес младшего байта суммы

0009

1A

 

000A

LDD A

ЗАГРУЗКА АККУМУЛЯТОРА ПРЯМАЯ

 

 

 

 

9. Структура компьютерной программы

23

 

 

 

 

 

 

 

 

 

 

Адрес

Содержимое

Объяснение операции (комментарий)

 

области

области памяти

 

 

 

памяти

 

 

 

 

000B

00

Адрес старшего байта

 

 

000C

15

первого слагаемого

 

 

000D

ACD M

СЛОЖЕНИЕ С ПЕРЕНОСОМ

 

000E

00

Адрес старшего байта

 

 

000F

17

второго слагаемого

 

 

0010

DAD

ДЕСЯТИЧНАЯ КОРРЕКЦИЯ

 

0011

STA A

ЗАПИСЬ В ПАМЯТЬ АККУМУЛЯТОРА

 

 

 

ПРЯМАЯ

 

 

0012

00

Адрес старшего байта суммы

 

0013

19

 

 

 

0014

HLT

ОСТАНОВ

 

 

0015

00011000

Старший байт

Первое слагаемое

 

0016

10001001

Младший байт

(1889)

 

0017

01100011

Старший байт

Второе слагаемое

 

0018

01110110

Младший байт

(6376)

 

0019

10000010

Старший байт

Сумма

 

001A

01100101

Младший байт

(8265)

 

 

 

 

 

 

По первой команде младший байт первого слагаемого загружается в аккумулятор (LDD A).

Вторая команда программы служит для прибавления младшего байта второго слагаемого к младшему байту первого слагаемого (ADD M).

Третья команда — команда десятичной коррекции (DAD) — заменяет содержимое аккумулятора 1111 1111 на 0110 0101. Кроме того, по этой команде устанавливается в 1 разряд переноса в регистре состояния, так как в результате выполнения десятичной коррекции возникает перенос в старший байт.

По четвертой команде (STA A) откорректированные цифры 5 и 6 записываются в область памяти 001A. Это две младшие цифры суммы.

При выполнении пятой команды две старшие цифры первого слагаемого загружаются из области памяти в аккумулятор (LDD A).

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

24

III. Микропроцессор — основа ПК

 

 

Для этой цели используется команда «сложение с переносом» (ACD M).

Далее происходит останов процедуры сложения (HLT) и запись в память получившейся суммы.

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

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

Из вышеприведенного листинга видно, что у вычислителя есть только одна проблема — как отличить команды от данных. Существует несколько способов.

Âпростейшем явном случае мы можем «приказать» вычислителю считать командой каждую первую из порядковых трех строк. Вторую — адресом младшего байта данных. Третью — адресом старшего байта данных.

Âболее сложном, неявном, случае вместо команды в первой строке может располагаться адрес команды.

Как отличить команды (операций) от данных (операндов)? Машина «решает» этот вопрос различными, заранее предопределенными способами.

Можно представить и такой (косвенный) способ, при котором программа (второй столбец) обращается в область памяти по тем адресам, где хранятся коды команд (т. е. В этом месте не могут храниться данные).

10. Магистрально-модульное построение ПК

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

В качестве модулей выступают микропроцессоры (существуют 2-, 4-процессорные ПК), контроллеры (для связи с периферийны-

11. Как это все работает

25

 

 

ми устройствами), адаптеры (также взаимодействуют с периферийными устройствами и имеют часто в своем составе контроллеры).

11. Как это все работает

Сердце ПК — это его микропроцессор. Основу его, мы это уже знаем, составляет сложная арифметико-логическая схема. Но что значит сложная? Почти все элементы этой схемы — триггеры.

Микропроцессор первых выпусков состоит из нескольких тысяч таких триггеров. Основу такого процессора составляют ариф- метико-логическое устройство, регистры, шины данных, шины адресов и линии управления. Современный микропроцессор (например, типа Pentium III) состоит из нескольких миллионов триггеров. По команде на микропроцессор подаются данные (цифры), и после вычислений он выдает результат на многопроводную шину данных.

Каждый триггер соединен (через буфер) с проводом на шине. Поэтому каждый провод на этой шине — это триггер, одно плечо которого имеет либо низкое напряжение — это состояние символизирует число «0» (на проводе напряжение «0» вольт), либо высокое — это состояние символизирует число «1» (на проводе напряжение «5» вольт).

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

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

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

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

26

III. Микропроцессор — основа ПК

 

 

На системной плате размещены:

1.микропроцессор (CPU — Central Processing Unit);

2.постоянная память (ROM — Read only memory — только для чтения);

3.оперативная память (RAM — Random Access Memory — память с произвольным доступом);

4.схема управления клавиатурой;

5.разъемы для подключения адаптерных плат периферийных устройств дисководов, дисплея, принтера, факса, модема и т. д.

6.схемы управления шинами адресов, данных, сигнальными шинами.

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

IV. Программа BIOS

1. Машинные команды

А кто будет формировать эти машинные команды?

Конечно, BIOS (Base Input/Output System) — базовая система ввода вывода. Для того чтобы с помощью микропроцессора записывать на магнитный диск информацию, печатать на принтере, выводить символы на дисплей, воспринимать символы, вводимые пользователем с клавиатуры, решать математические или графиче- ские задачи, нужны маленькие служебные подпрограммы, написанные на машинном языке.

В свою очередь, эти подпрограммы необходимо так «склеить», соединить, чтобы:

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

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

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

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

Эта «склеенная» суперпрограмма и есть BIOS — содержится она в постоянной памяти (данные в эту память заносятся при ее изготовлении и называется она — ROM или ПЗУ — постоянное запоминающее устройство).

2. ROM è BIOS

Èòàê, первое свойство: BIOS содержит программы по проверке оборудования компьютера, производит начальную загрузку операционной системы и «виртуально» входит в ее состав, выполняет базовые функции по обслуживанию устройств компьютера.

Виртуальной памятью мы называем область памяти, «организованной» то ли на жестком диске, то ли в ОЗУ (оперативной па-

28

IV. Программа BIOS

 

 

мяти), то ли на гибком магнитном диске — нам безразлично, как физически реализована эта память.

3. Управление периферийными устройствами

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

система ввода/вывода.

Второе свойство: в BIOS содержится программа настройки конфигурации компьютера (SETUP). Она позволяет установить параметры или согласовать (настроить) некоторые характеристики компьютера для удобства работы с операционной системой и, соответственно, пользователем. Но об этом позже.

Третье свойство — мы можем менять операционную систему (можем поставить DOS, а можем — Windows — с красивой графикой) при одной и той же BIOS... ...BIOS, состоящей из маленьких подпрограмм, управляющих периферийными устройствами.

4. Порты и прерывания

Маленькие подпрограммы BIOS’а должны иметь двустороннюю связь с пользователем и периферийными устройствами, чтобы оперативно откликаться через «переводчика» (операционную систему) как на действия пользователя, так и на сигналы этого периферийного устройства (например, принтер закончил печать листа).

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

Каким же образом ПК распознает, что в данный момент он должен обмениваться числами, например, с принтером?

Очень просто! На задней стенке ПК находится разъем, в который подключается многопроводный кабель от принтера. Если с клавиатуры идет команда открыть порт (ворота) с определенным номером, то числа на микропроцессор (или от микропроцессора) начинают поступать с этого многопроводного кабеля (или на этот кабель из системного блока) через открывшийся (а до этого запертый) порт.

5. BIOS — всему голова

29

 

 

Номера портов обычно являются фиксированными, и поэтому любой компьютер распознает их независимо от ситуации. Для открытия, например, порта принтера (вы захотели послать документ на принтер) на шине адресов надо выставить 37F èëè 27F.

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

5. BIOS — всему голова

Прерывания, которые «организует» программа BIOS, называются прерываниями нижнего уровня. А вот прерывания, которые организует программа DOS — дисковая операционная система, называются прерываниями верхнего уровня.

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

6.Дисковая операционная система

Âпервых машинах почти все операционные системы были дисковыми, и поэтому мы называем ее DOS. Со временем в практику вошли более эргономичные (удобные) ОС — например, Windows 95, 98, NT4, 2000.

7.Взаимодействие пользователя и программы

Как работает команда PRINT

В современных ПК ОС уже не допускает пользователя к прерываниям нижнего уровня (BIOS). Она делает это монопольно. ОС «изолировала» пользователя от непосредственного воздействия на BIOS.

V. Включаем ПК

1. Порядок включения и выключения компьютера

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

2. Система самотестирования POST

POST — это диагностическая программа, которая содержится в ПЗУ рядом (или внутри) с программой BIOS. POST (Power On Self Test) — самопроверка при включении питания — проверяет все важные узлы и системы в ПК и быстро тестирует всю память ОЗУ.

Естественно, POST при проверке интенсивно взаимодействует с программой BIOS, поскольку именно BIOS «заведует» всеми узлами, контроллерами и другими электронными устройствами ПК.

При успешном окончании контроля на дисплей ПК выводится сообщение, подается звуковой сигнал и выводится имя текущего накопителя (например, жесткий диск C:\> — приглашение к работе). Если у вас ОС Windows, то на экране располагается ваш «Рабочий стол».

3. Еще раз о базовой системе ввода/вывода

Повторим, что подпрограммы POST и SETUP содержатся в программе BIOS. После окончания самопроверки BIOS считывает программу-загрузчик с нулевой дорожки жесткого диска (в аварийном случае с гибкого) и передает ей управление компьютером.

4. SETUP — установка параметров

Программа SETUP также записана в программе BIOS, но те параметры, которые мы выставляем в SETUP’е, записываются в микросхеме CMOS-конфигурации.

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