Теги и дескрипторы. Самоопределяемые данные

Одним из эффективных средств совершенствования архитектуры современных ЭВМ является теговая организация памяти, при которой каждое хранящееся в памяти (или регистре) слово снабжается указателем - тегом (рис. 4.8,а).

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

Наличие тегов придает хранящимся в машине данным свойство самоопределяемости, вносящее принципиальные особенности в архитектуру и функционирование ЭВМ.

В обычных ЭВМ, соответствующих классической модели фон Неймана, тип данных - операндов и их формат задаются кодом операции команды, а в ряде случаев размер (формат) определяется следующими полями команды.

Теговая организация памяти, напротив, позволяет достигнуть инвариантности команд относительно типов и форматов операндов, что приводит к значительному сокращению набора команды машины.

Другие преимущества теговой организации памяти ЭВМ:

¨ упрощается и делается более регулярной структура процессора;

¨ облегчается работа программиста, в том числе при отладке программ;

¨ упрощаются компиляторы и сокращаются временные затраты на компиляцию (так как отпадает необходимость выбора типа команды в зависимости от типов данных);

¨ облегчается обнаружение ошибок, связанных с некорректным заданием типа данных (например, при попытке сложить адрес с числом с плавающей точкой);

¨ теговая организация памяти способствует реализации принципа независимости программ от данных;

¨ использование тегов приводит к экономии памяти, так как в программах обычных машин имеется большая информационная избыточность на задание типов и размеров операндов при их использовании несколькими командами.

Недостатки теговой организации памяти - некоторое замедление работы процессора из-за того, что установление соответствия типа команды типу данных, в обычных ЭВМ выполняемое на этапе компиляции, при использовании тегов переносится на этап выполнения программы.

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

Дескриптор содержит сведения о размере массива данных, его местоположении (в ОП или внешней памяти), адресе начала массива, типе данных, режиме защиты данных (например, запрет записи в ячейки массива) и некоторых других параметрах данных. Отметим, что задание в дескрипторе размера массива позволяет контролировать выход за границу массива при индексации его элементов. На рис. 4.8 в качестве примера представлен один из видов дескрипторов - дескриптор данных.

Дескриптор содержит специфический тег - ТДс, указывающий, что данное слово является дескриптором определенного вида; Ук - группа указателей; А - адрес начала массива данных; L - длина массива; X - индекс.

Использование в архитектуре ЭВМ дескрипторов подразумевает, что обращение к информации в памяти производится через дескрипторы, которые при этом можно рассматривать как дальнейшее развитие аппарата косвенной адресации.

Адресация информации в памяти может осуществляться с помощью цепочки дескрипторов, при этом реализуется многоступенчатая косвенная адресация. То есть адресная часть дескриптора содержит адрес начала массива других дескрипторов, в адресной части каждого из которых содержится в свою очередь, адрес начала массива дескрипторов данных.

 

 

Рис. 4.8. Описание двумерного массива данных древовидной структурой дескрипторов: ТДс и ТДн – теги дескрипторов и данных.

 

 








Дата добавления: 2016-04-11; просмотров: 1670;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.004 сек.