4_Введение в архитектуру ЭВМ (975801), страница 4
Текст из файла (страница 4)
Будем далее для определённости называть такие регистры сегментными, а сам приём разбиения памяти на такие участки – сегментированием памяти.Сегментирование позволяет уменьшить объём памяти для хранения программ, но оно имеет иодин существенный недостаток: теперь каждая команда может обращаться не к любой ячейке оперативной памяти, как это было у нас раньше, а только к тем из ячеек, до которых "дотягивается" смещение относительно своей базы.
В нашем предыдущем примере при длине смещения 12 бит каждаякоманда может обращаться к диапазону адресов от значения сегментного регистра B до B+212-1.Для доступа к другим ячейкам памяти необходимо записать в сегментный регистр новое значение(как говорят, перезагрузить сегментный регистр). Этот недостаток, например, существенно затрудняет в таких компьютерах работу с массивами длиной больше, чем 212 ячеек.
Однако, несмотря науказанный недостаток, современные ЭВМ в целях уменьшения объёма программы часто производятсегментирование памяти и базирование адресов команд для уменьшения длины программы.Заметим также, что отмеченный выше недостаток в большинстве архитектур современных ЭВМисправляется путём реализации нескольких сегментных регистров, а также переменной длины смещения (например, разрешается смещение длиной в 1, 2 или 4 байта).
Необходимо, однако, понимать,что это ещё более увеличивает набор команд языка машины и усложняет центральный процессор.Итак, ещё раз отметим очень важное обстоятельство сегментного способа адресации. В новойархитектуре для осуществления любого доступа к памяти ЭВМ необходимо, чтобы ячейка, к которой осуществляется доступ, находилась в сегменте, на начало которого указывает некоторый сегментный регистр. Как уже говорилось, современные ЭВМ обеспечивают одновременную работу снесколькими сегментами памяти и, соответственно, имеют несколько сегментных регистров.В некоторых архитектурах адресуемые регистры центрального процессора являются универсальными, т.е. каждый из них может быть использован как сегментный или для выполнения любыхопераций над данными.
Сложность центрального процессора при этом существенно повышается, поэтому во многих архитектурах используются специализация регистров, т.е. определённые регистрыявляются только сегментными (на них нельзя, например, складывать числа), на других могут производиться операции над данными, третьи используются в качестве счётчиков циклов и т.д. Именнотак будет обстоять дело в той конкретной ЭВМ, которую мы будем вскоре изучать.1Таким был формат команд популярного в 60-70-х годах прошлого века семейства ЭВМ IBM-360/370 и ихотечественных аналогов ЕС-360/370.11Вопросы и упражнения1.2.3.4.5.6.7.8.Что такое адресность ЭВМ? Почему в безадресной ЭВМ должны быть хотя бы две одноадресные команды?Какие ЭВМ называются компьютерами с адресуемыми регистрами? В чём достоинства и недостатки такой архитектуры?Что такое способ адресации? Чем отличается прямая адресация от косвенной?Добавьте в язык учебной машины УМ-3 новую команду косвенной пересылки:ПЕРК А1,А2,А3Эта команда использует косвенную адресацию по своему третьему адресу и выполняется поправилу:<A1> := <<A3>>Покажите, что с помощью этой команды можно обрабатывать массивы без использования самомодифицирующихся программ.
Переделайте для этого программу суммирования всех элементов массива из примера на рис. 3.4.Для чего нужно многообразие форматов данных?Почему есть формат команд память-непосредственный операнд (SI), но нет формата команднепосредственный операнд-память (IS) ?В чём преимущества и недостатки сегментной организации памяти?Что такое базирование адресов?.