|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Архитектура сопроцессораСопроцессор имеет 8 отдельно-адресуемых 80-разрядных регистров. Эти регистры составляют основу программной модели сопроцессора – стек сопроцессора. Особенности регистров: регистры данных не адресуются по именам, обращаться напрямую к ним нельзя, если процессор поддерживает расширение MMX, То мантиссы, находящиеся в этих регистрах становятся доступными. Регистр стека с функциональной точки зрения абсолютно одинаковый и равноправный. Данные регистры рассматриваются в качестве стека, вершина которого называется ST, а более глубокие элементы ST1,ST2 и так далее. Стек носит название – круговой и вершина данного стека TOP является плавающей, а принцип его работы аналогичен обычному калькулятору, то есть любая команда загрузки данных сопроцессора автоматически перемещает вершину стека. Контроль за вершиной стека осуществляется аппаратно с помощью 3-битового поля. 3 служебных регистра: регистр состояния сопроцессора – отражает информацию о текущем состоянии и о том, как выполняется та или иная арифметическая команда. Говорят, что данный регистр содержит слово состояния; управляющий регистр сопроцессора – этот регистр распоряжается режимами работы сопроцессора, то есть определяет вариант обработки вещественных чисел. Программист может задать точность вычисления, способ округления, интерпретацию бесконечности посредством формирования в оперативной памяти нудного ему слова. Исключения – это особые ситуации, которые могут возникнуть при выполнении команд сопроцессора: ошибка стека, деление на ноль, умножение нуля на бесконечность, тригонометрические операции над бесконечностью, вычисление корней и логарифмов из отрицательного числа. Сопроцессор самостоятельно реагирует на эти исключения, обрабатывая их по умолчанию. Для того, чтобы заказать сопроцессору обработку определенного типа исключения, необходимо это исключение замаскировать, то есть установить единицу в нужный бит управляющего регистра, хотя при это следует помнить, что возникшее программное исключение изменяет содержимое бита регистра управления независимо от того, замаскировано исключение или нет. Регистр тегов служит для контроля за состоянием каждого из регистров данных. Изменение состояния любого регистра отражается на состоянии соответствующего регистра тегов. Два этих регистра предназначены для заполнения информации об адресах команд, вызвавших исключительную ситуацию и адресах её операндов. Все перечисленные регистры программно доступны, поэтому сопроцессор рассматривают как набор дополнительных регистров, для работы с которыми предназначены специальные команды. Однако, получить доступ к одним регистрам легко, а к другим более сложно. Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.007 сек.) |