Сложность машины с точки зрения пользователя
Основная память Регистры Каналы ввода-вывода Абсолютная и относительная адресация Базовый регистр Индексный регистр Другие способы адресаций Типы команд Команды с фиксированной точкой Команды десятичной арифметики Логические команды Команды передачи управления Команды арифметики с плавающей точкой Привилегированные команды и команды управления процессором Еще один способ классификации команды Форматы команд машин, память которых организована словами Набор команд IBM часть 1 Формат команд ЭВМ UNIVAC 1100 Управляющее и арифметическое устройство |
Индексный регистрПочти каждая программа содержит циклы. Внутри цикла многократно работает одна и та же последовательность команд, а изменяются только адрес или величина той или иной переменной. Так как изменение содержимого базового регистра приведет к изменению и всех относящихся к нему адресов, то некоторые команды допускают третий компонент адресации, который определяется фактическим содержимым другого общего регистра, называемого в этом случае индексным регистром. При такой схеме адресная часть команды состоит из трех компонент. Две части определяют два общих регистра, используемых соответственно как базовый и индексный, и третья часть содержит смещение. Адрес операнда равен смещению плюс содержимое базового регистра плюс содержимое индексного регистра. Введение индексного регистра дает большие преимущества при организации циклов, когда содержимое индексного регистра отражает значение параметра цикла. При такой схеме, аналогично, все данные, адресные части которых содержат ссылки на базовый регистр, могут смещаться при перемещении программы путем изменения значения базового регистра, а индексный регистр при этом отражает специфику цикла. Здесь в качестве базового и индексного регистров выбраны соответственно регистры 3 и 5. Третий регистр содержит 5000(1в), пятый — 1 Ю0(16), а смещение равно 600(16), тогда абсолютный адрес операнда равен 1100+5000+600=6700(16). Преимущества данного метода очевидны. Основные недостатки состоят в следующем: b) небольшая величина максимально допустимого смещения, обычно только 4096 байт. При трансляции программ, написанных на языках высокого уровня, компиляторы сами выбирают регистры, необходимые для базирования и индексации, и устанавливают на них нужные значения. Первый недостаток метода частично устраняется тем обстоятельством, что вычисления адресов выполняются специальными быстрыми аппаратными устройствами. |