Практическая работа специальности 09.02.01.

  • docx
  • 27.11.2022
Публикация на сайте для учителей

Публикация педагогических разработок

Бесплатное участие. Свидетельство автора сразу.
Мгновенные 10 документов в портфолио.

Иконка файла материала ПЗ65_Последовательностные запоминающие устройства.docx

Практическое занятие № 65

Тема: «Последовательные запоминающие устройства.»

Цель: изучить разновидности запоминающих устройств – стековую и буферную типы памяти.

Теория

Последовательные ЗУ:

 - FIFO;

 - Файловые;

 - Циклические;

 - Стековые (LIFO).

 В FIFO запись в буфер становится сразу доступной для чтения, т.е. поступает в конец цепочки (First In - First Out) - «первый пришел - первый вышел».

В файловых - данные поступают в начало цепочки.

В циклических ЗУ - слова доступны одно за другим с постоянным периодом, определяемым емкостью памяти. К такому типу относится видеопамять (VRAM).

В стековых ЗУ считывание происходит в обратном порядке (последний принят - первый вышел) - LIFO (Last In - First Out).

За способом реализации различают аппаратный и аппаратно-программный стеки.

 

https://www.ok-t.ru/studopedia/baza1/1260498413955.files/image006.jpg



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

Во время записывания слова 1 в стек оно размещается в первой свободной ячейке памяти (в первом регистре) - вершине стека. Следующее слово сдвигает предыдущее на одну ячейку вверх, занимает его место и т.д. Запись слова 9 приводит к переполнению стека и потери слова 1. Считывания слов из стека осуществляется в обратном порядке, то есть сначала считывается слово 9, записанное последним. Считывания происходит в обратном порядке, например, считывания слова 6 не возможно, пока не будут считанные слова 7, 8 и 9.

Информационная емкость аппаратного стека определяется как Nxn, где количество n-разрядних слов N равняется количеству регистров, которое может составлять несколько десятков. Аппаратные стеки, применяемые в РIС-процессорах, имеют 2, 8 или 16 регистров (N = 2, 8, 16), в которых размещаются 12-, 14- или 16-разрядные слова (п = 12,14, 16).

Основным преимуществом аппаратного стека есть высокое быстродействие, а недостатком - ограниченная информационная емкость.

Аппаратно-программный стек реализуется за счёт использования части ОЗУ статического типа и специального регистра SP (Stack Pointer - указатель стека), который содержит адрес последней занятой ячейке стека.

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

 

https://www.ok-t.ru/studopedia/baza1/1260498413955.files/image008.jpg

Принцип работы аппаратно-программного стека.

 

Во время записи в стек значения SP уменьшается на два (стек «растет» в область маленьких адресов), а во время считывания из стека - увеличивается на два. Итак, указатель стека SP всегда содержит адрес ячейки, к которой состоялось последнее обращение. В некоторых командах, например, в командах вызова подпрограмм CALL, прерываний INT, возвращений из подпрограмм RET - обращение к стеку осуществляется автоматически. Во время вызова подпрограммы в стеке запоминается адрес команды, следующей после вызова команды ADD, то есть содержимое программного счетчика PC запоминается в верхней незанятой ячейке стека, а указатель стека уменьшается на два.

 

 

https://www.ok-t.ru/studopedia/baza1/1260498413955.files/image010.jpg

Работа стека во время вызова подпрограмм.

 

По возвращению из подпрограммы по команде RET содержимое верхней ячейке стека перезаписывается в программный счетчик PC, указатель стека SP увеличивается на два. После этого начинает выполняться команда ADD. Кроме команд CALL, INT и RET, для работы со стеком используют также команды PUSH и POP, предназначенные для временного хранения в стеке содержимого регистров и восстановления, то есть пересылка информации из стека в регистры. В МП Intel, начиная с i286, существуют команды PUSHA и РОРА (PUSH All и POP All), предназначенные для временного хранения в стеке и восстановления содержимого всех регистров МП. К аппаратно-программному стеку можно обратиться также как к ОЗУ с произвольной выборкой. В МП i80х86 для этого используют косвенную адресацию с помощью регистра ВР. Итак, в стек можно записать значение параметров подпрограмм перед их вызовом.

 

 

Ход работы

Спроектировать и описать структурные схемы буферной и стековой памяти. (можно воспользоваться ссылкой http://dfe.petrsu.ru/koi/posob/microcpu/pam4.html)


 

Скачано с www.znanio.ru