Cтраница 3
![]() |
Структура индексной ячейки и константы при модификации адреса.| Структура индексной ячейки и константы при модификации адреса. [31] |
Процесс прибавления к относительному адресу величины базисного адреса ( базиса) называется базированием, а процесс прибавления к адресам констант переадресации из индексной ячейки - индексированием. [32]
Такой способ управления переменными командами называется переадресацией, а константы, с помощью которых производится эта переадресация, называются константами переадресации. При использовании переадресации в процессе выполнения цикла необходимо, чтобы к началу его выполнения вид всех переменных команд соответствовал исходному значению параметра цикла. Восстановлений переменных команд может быть осуществлено различными способами; наиболее простой из них заключается в том, что исходный вид переменных команд запасается при составлении программы в качестве констант восстановления и восстановление переменных команд, производимое наряду с восстановлением исходного значения параметра цикла, осуществляется засылкой этих констант на место соответствующих им переменных команд. [33]
До начала выравнивания определяются: параметр сдвига, виды байтных масок для освобождения первых слов Оп1 и Оп2 от посторонней информации и константы переадресации. [34]
В качестве первого адреса команды переадресации берется номер оператора, команда которого должна быть модифицирована, во втором адресе ставится условное число константы переадресации, а в третьем адресе - номер модифицируемой команды, отсчитанной от начала содержащего ее оператора. [35]
Блок вычисления действительного адреса предназначен для вычисления действительного кода адреса операнда на основании относительного адреса и адреса смещения, образуемого из-базового адреса и константы переадресации. Блок чтения-записи предназначен для преобразования машинного слова ( выделение части слова) при обмене информацией между ОЗУ и операционным устройством. Блок прерывания осуществляет программный переход от исполнения одной программы не другой по сигналам прерывания, поступающим из других блоков и устройств. Блок контроля контролирует правильность хранения и передачи информации, правильность исполнения операций и команд в устройстве управления и всем спецвычислителе в целом. [36]
При программировании более сложных алгоритмов, например алгоритма умножения вектора на матрицу или матрицы на матрицу, возникает необходимость в использовании нескольких индекс-регистров для запоминания констант переадресации, изменяющихся различными шагами. [37]
После составления константы производится проверка: не совпадает ли она с основными константами переадресации, имеющимися в УВК ( их адреса 7423 - 7431), или с константами переадресации, составленными ранее и запасенными в таблице констант переадресации. Если вновь составленная константа при этом не может быть сэкономлена, то блок заносит ее в таблицу констант переадресации и присваивает ей условное число. [38]
При выполнении команды - 2Qiaia2 к адресной части содержимого индексной ячейки, номер которой указан в соответствующих разрядах этой команды, прибавляется содержимое адресной части ячейки а2, где записывается константа переадресации. [39]
После составления константы производится проверка: не совпадает ли она с основными константами переадресации, имеющимися в УВК ( их адреса 7423 - 7431), или с константами переадресации, составленными ранее и запасенными в таблице констант переадресации. Если вновь составленная константа при этом не может быть сэкономлена, то блок заносит ее в таблицу констант переадресации и присваивает ей условное число. [40]
![]() |
Такты приема команды и формирования адресов.| Прием двухадресной команды на МОЗУ. [41] |
При наличии нулевого кода номера индекса ( 0000) индексирование не выполняется и данный такт пропускается. Константы переадресации Аа и А2 из прочитанной ячейки прибавляются к относительным адресам в сумматоре. [42]
В данном примере относительные адреса ( ах 2 и а2 5), задаваемые в команде, определяют положения элементов записей относительно начала записей и не зависят от положения записей в массивах. Значения констант переадресации в индексной ячейке ( Дх и А2) определяют положение записей в массивах и не зависят от положения массивов в памяти. Базисные адреса определяют положение массивов относительно начала памяти. [43]
В данном примере относительные адреса ( at 2 и а2 5), задаваемые в команде, определяют положения элементов записей относительно начала записей и не зависят от положения записей в массивах. Значения констант переадресации в индексной ячейке ( Aj и Д2) определяют положение записей в массивах и не зависят от положения массивов в памяти. Базисные адреса определяют положение массивов относительно начала памяти. [44]
![]() |
Размещение массивов Ml и М2 в МОЗУ. [45] |