приветствую создателей курса и благодарю за доступ к информации! понимаю, что это уже никто не исправит, но, возможно, будут следующие версии и было бы неплохо дать расшифровку сокращений имен регистров итд, дабы закрепить понимание их роли в общем процессе. |
Лекция 2: Регистровая структура универсального микропроцессора
Блок регистров данных. Доступен либо как стек (его вершина TOP определена в регистре состояний FPU ), либо как набор пронумерованных регистров.
Старший разряд 80-разрядного регистра данных кодирует знак мантиссы хранящегося в нем числа с плавающей точкой. Следующее поле отведено под кодирование порядка. Порядок представлен в виде так называемого машинного, или смещенного, порядка (Псм) без знака:
где - истинный порядок числа, а величина определяется следующим образом: При этом самый большой по модулю отрицательный истинный порядок преобразуется в нулевой смещенный, а все остальные истинные порядки преобразуются в положительные. Тем самым упрощаются операции обработки чисел с плавающей точкой.
В последнем поле регистра данных записывается мантисса числа.
Количество разрядов, отводимых под поле порядка и поле мантиссы, определяется регистром управления FPU.
Данный блок может также использоваться для хранения двоичнодесятичных чисел. Они представляются в упакованной форме и содержат 18 тетрад, каждая из которых соответствует одному десятичному разряду.
Для представления знака такого числа используется старший разряд старшего байта (бит 79), в остальных разрядах этого байта устанавливаются нули.
Микропроцессор может обрабатывать числа следующих типов (табл. 2.1):
Помимо этого микропроцессор может обрабатывать символьные данные, данные типа "строка" и типа"указатель".
Регистр тегов. Определяет содержимое регистра данных с целью оптимизации обработки:
- 00 - достоверное значение;
- 01 - нуль (нулевое значение);
- 10 - не-числа (например, бесконечность);
- 11 - пусто (содержание регистров не определено).
Операции с плавающей точкой требуют довольно много времени.
Использование тегов позволяет в определенных случаях сократить время выполнения команды. Например, если известно, что один из сомножителей равен нулю, то произведению можно присвоить нулевое значение без выполнения каких-либо действий.
Регистр состояния содержит указатель вершины блока данных, работающего в режиме стека ( TOP ), признаки результата и ошибок, возникающих при выполнении операции в FPU, а также флаг переполнения и антипереполнения стека регистров данных.
Регистр управления управляет округлением (к ближайшему значению, вниз, вверх, к нулю), точностью (длина мантиссы 24, 53 или 64 бита), а также содержит маску признаков ошибок, фиксируемых в регистре состояния.
Указатели команд и данных содержат адрес команды, вызвавшей ошибку, и адрес использованного операнда. Эти регистры имеют 48-разрядный формат: 16 разрядов содержат селектор соответствующего сегмента, а остальные 32 разряда - смещение в нем.