Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции части 1 и 2 начало части3.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
231.94 Кб
Скачать

1.7.4 Универсальные регистры.

1) Запись и чтение данных в ОЗУ – занимает относительно большое время (говорят о высокой задержке или высокой латентности операций записи/чтения данных в ОЗУ. Поэтому для хранения наиболее часто используемых данных программисты стараются использовать не ячейки оперативной памяти, а другие ячейки – так называемые "регистры".

2) Регистры – это такие же ячейки памяти, как и ячейки памяти ОЗУ, только размещенные непосредственно внутри ЦП и потому доступ к ним - осуществляется значительно быстрее, чем к ячейкам ОЗУ.

3). Длина регистра - больше длинны ячейки памяти. Длинна регистра выбирается таковой, чтобы в один регистр – можно было поместить любые слова данных - как короткие, так и длинные, из тех что в ОЗУ - занимают несколько ячеек памяти.

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

1.8 Специальные регистры

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

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

3) ЭВМ для адресации СР используются обычные числовые адреса. Но программисты, упоминая эти регистры, обычно используют специальные имена, отражающие специфику использования данного регистра. Например:

RCRegister Command (регистр команд)

SPStack Pointer (указатель стека)

Так же, в нашем курсе - поступать будем и мы.

4) Многие специальные регистры - не только используются исключительно для размещения "специальных", "особых" видов данных, но и совершенно "по особому" используются - в ходе выполнения многих команд. Как именно "по особому" – мы рассмотрим далее, по мере углубления в материал.

1.9 Контроллеры внешних устройств

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

2) На рис.1 контроллер обслуживает одно устройство, но, в общем случае, возможно что иные контроллеры - будут обслуживать каждый по несколько устройств.

3) На контроллерах расположены "внешние регистры" (ВР). Это такие же ячейки для размещения данных как и универсальные регистры, специальные регистры, ячейки ОЗУ… также для адресации к этим регистрам - используются "адреса регистров"… Но только: эти регистры – размещены на контроллерах внешних устройств, и используются - в процессах ввода/вывода данных.

4) Имеется два типа внешних регистров, отличающихся по назначению:

а) внешние регистры управления

б) внешние регистры данных

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

6) Внешние регистры данных используются для "буферизации" данных при выполнении операций ввода/вывода. При вводе данных, вводимые данные сначала попадают в "внешние регистры данных" , и лишь затем программа считывает данные с внешних регистров данных и переписывает их в другие ячейки памяти – на длительное (постоянное) хранение. Если данные выводятся: сначала программист записывает выводимые данные во внешние регистры данных, и лишь затем (записав требуемую команду во внешний регистр управления) - выдаёт этим команду контроллеру внешнего устройства организовать передачу данных на внешнее устройство.