Аппаратное обеспечение персонального компьютера



           

Программирование сопроцессора


Используя языки высокого уровня, такие как Си или Паскаль, вы можете даже и не знать, что созданная вами программа применяет для вычислений арифметический сопроцессор. В проекте программы вам обычно предоставляется возможность выброа одного из трех вариантов стандартной библиотеки:

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

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

    Второй вариант библиотеки рассчитан на наличие сопроцессора. Если сопроцессора нет, программа работать не будет. Но если известно, что сопроцессор есть (например, процессор Pentium всегда содержит блок арифметики), то имеет смысл использовать именно этот вариант как самый быстродействующий.

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

    К сожалению, есть программы, в которых использование библиотеки эмуляции невозможно или крайне затруднительно:

    • резидентные программы;
    • драйверы;
    • программы, предъявляющие жесткие требования к точности и скорости вычислений



    • Содержание  Назад  Вперед