Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Практическая работа №6.doc
Скачиваний:
2
Добавлен:
01.03.2025
Размер:
180 Кб
Скачать
☆

Инструкции 3dNow!

Инструкции технологии 3DNow! предназначены для ускорения обработки 3D в приложениях. Процессор может выполнять по две инструкции технологии 3DNow! за такт. Так как каждая инструкция технологии 3DNow! работает с упакованными данными (два 32-битных элемента 64-битных данных), то за такт вычисляются четыре операции с плавающей запятой. Все инструкции технологии 3DNow! работают с теми же регистрами, что и инструкции технологии MMX. Команды 3DNow! имеют следующий синтаксис:

instruction [dest, src]

Здесь instruction - имя команды, dest обозначает выходной операнд, src - входной операнд. Система команд технологии 3DNow! содержит 21 инструкцию (обозначения: mm - MMX-регистр; m8, m64 - память объема 8 и 64 бит соответственно).

  • PAVGUSB — вычисление среднего 8-битовых целых значений

  • PI2FD — перевод 32-битных целых в вещественные числа

  • PF2ID — перевод вещественных в 32-битные целые числа

  • PFCMPGE — сравнение вещественных чисел, больше или равно

  • PFCMPGT — сравнение вещественных чисел, больше

  • PFCMPEQ — сравнение вещественных чисел, равно

  • PFACC — накопление суммы вещественных чисел

  • PFADD — сложение вещественных чисел

  • PFSUB — вычитание вещественных чисел

  • PFSUBR — обратное вычитание вещественных чисел

  • PFMIN — нахождение минимума вещественных чисел

  • PFMAX — нахождение максимума вещественных чисел

  • PFMUL — умножение вещественных чисел

  • PFRCP — нахождение приближённого значения обратного (1/x) вещественных чисел

  • PFRSQRT — нахождение приближённого значения обратного от квадратного корня (1/sqrt(x)) вещественных чисел

  • PFRCPIT1 — первый шаг вычисления значения обратного (1/x) вещественных чисел

  • PFRSQIT1 — первый шаг вычисления значения обратного от квадратного корня (1/sqrt(x)) вещественных чисел

  • PFRCPIT2 — второй шаr вычисления значения обратного или обратного от квадратного корня вещественных чисел

  • PMULHRW — умножение 16-битных целых чисел с округлением

  • FEMMS — быстрое переключение состояния FPU/MMX

  • PREFETCH/PREFETCHW — предвыборка строки кэша процессора из памяти

Процессоры, поддерживающие 3dNow!

  • AMD K6-2 и выше

  • National Semiconductor Geode GX2, AMD Geode GX/LX/NX

  • VIA C3/CoreFusion/Eden

  • IDT WinChip 2

Технологии обработки данных 3DNow!, Enhanced 3DNow! и 3DNow! Professional хотя и подобны SSE, но несовместимы на уровне инструкций, поэтому производителям программного обеспечения необходимо отдельно реализовать их поддержку.

Технология 3Dnow!, как и SSE, поддерживает операции SIMD (SIMD (англ. single instruction, multiple data — одиночный поток команд, множественный поток данных) — принцип компьютерных вычислений, позволяющий обеспечить параллелизм на уровне данных.) с плавающей запятой, а также позволяет выполнять до четырех операций с плавающей запятой за один цикл. Инструкции 3DNow! для операций с плавающей запятой могут использоваться вместе с командами MMX без заметного снижения быстродействия. Поддерживается и упреждающая выборка данных — механизм предварительного считывания данных из кэш-памяти.