PIII-PIV (Форматы данных и команды их обработки процессоров Pentium III, Pentium IV), страница 4

2016-07-31СтудИзба

Описание файла

Документ из архива "Форматы данных и команды их обработки процессоров Pentium III, Pentium IV", который расположен в категории "". Всё это находится в предмете "информатика" из , которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "рефераты, доклады и презентации", в предмете "информатика, программирование" в общих файлах.

Онлайн просмотр документа "PIII-PIV"

Текст 4 страницы из документа "PIII-PIV"

SETNL

SETL/ Установка байта в 01h, если меньше (ZF OF), иначе в 00h

SETNGE 00h

SETLE/ Установка байта в 01h, если меньше или равно (SF 0F или ZF=0),иначе в 00h

SETNG

SETNE/ Установка байта в 01h, если не равно (ZF=0), иначе в 00h

SETNZ

SETNO Установка байта в 01h, если нет переполнения (0F=0), иначе в 00h

SETNS Установка байта в 01 h, если неотрицательно (SF=0), иначе в 00h

SETO Установка байта в 01h, если переполнение (0F=1), иначе в 00h

SETPE/ Установка байта в 01h, если паритет (четность), иначе в 00h

SETP

SETPO/ Установка байта в 01 h, если нет паритета (нечетность), иначе в 00h

SETNP

SETS Установка байта в 01 h, если отрицательно (SF=1), иначе в 00h

SETC Установка байта в 01 h, если перенос (CF=1), иначе в 00h

SETNC Установка байта в 01 h, если нет переноса (CF=0), иначе в 00h

TEST Проверка бит (логическое И без записи результата — установка флагов)

Строковые операции выполняются с операндами в памяти, адресуемыми регистрами DS:SI (DS:ESI) для источника и ES:DI (ES:EDI) для приемника. Операции могут использоваться с префиксами условного или безусловного повтора. После каждой пересылки или сравнения индексные регистры (SI, DI или оба) участвующих операндов автоматически инкрементируются или декрементируются на количество байт, участвующих в операции (1,2 или 4). Направление модификации определяется флагом DF: DF = 0 -инкремент, DF = 1 — декремент. Строковые инструкции ввода-вывода с префиксами повтора позволяют достигать высоких скоростей обмена с портами при условии полной загрузки процессора.

Таблица. Инструкции строковых операций

Инструкция Описание

CMPSB, CMPSD, CMPSW Сравнение строк байт, слов или двойных слов с записью результата сравнения в регистр флагов

INSB, INSD, INSW Запись байта, слова или двойного слова, введенного из порта, в память(286+)

LODSB, LODSD, LODSW Копирование байта, слова или двойного слова из строки в AL/(E)AX

MOVSB, MOVSD, MOVSW Копирование байта, слова или двойного слова из одной строки в другую

OUTSB, OUTSD, OUTSW Вывод байта, считанного из памяти, в порт (286+)

SCASB, SCASD, SCASW Сканирование строки байт, слов или двойных слов — сравнение с AL/(E)AX и запись результата сравнения в регистр флагов

STOSB, STOSD, STOSW Запись байта, слова или двойного слова в строку из AL/(E)AX

REP Префикс повтора строковых операций до обнуления (Е)СХ, (Е)СХ декрементируется на каждом повторе

REPE/REPZ Префикс условного повтора строковых операций — выполнения REP при ZF=1

REPNE/ Префикс условного повтора строковых операций — выполнения

REPNZ REP при ZF=0

Инструкции математического сопроцессора (FPU) имеют свою специфику задания операндов. Переменная st(0) находится на вершине стека сопроцессора, st(i) смещена от вершины на i. Загрузка данных начинается с декремента указателя стека сопроцессора (поле TOP) — перемещения вершины. Если новая вершина не пустая (по полю TAG) или стек исчерпан, вызывается исключение с указанием причины.

После загрузки поле TAG устанавливается в соответствии с загруженным числом. При извлечении из стека производится инкремент ТОР, а в поле TAG старой вершины устанавливается признак пустой ячейки. Попытка использования пустого регистра в операциях или для сохранения результатов в памяти вызывает исключение. Инструкции с префиксом F предварительно проверяют флаг исключения ES (они называются ожидающими инструкциями), инструкции с префиксом FN флаг исключения не проверяют (неожидающие инструкции). Ряд инструкций не вызывает исключения в случае, если обнаруживаются операнды не-числа (NaN).

Таблица. Инструкции FPU

Инструкция Описание

Пересылки данных

FBLD Преобразование и помещение (push) числа в упакованном BCD-формате из памяти в стек

FBSTP Извлечение из стека и запись в память в упакованном BCD-формате (10 байт, 18 цифр)

FCMOVB Пересылка, если ниже (CF=1) (P6+)

FCMOVBE Пересылка, если не выше (CF ИЛИ ZF)=1 (P6+)

FCMOVE Пересылка, если равно (ZF=1) (P6+)

FCMOVNB Пересылка, если не ниже (CF=0) (P6+)

FCMOVNBE Пересылка, если выше ((CF ИЛИ ZF)=0) (P6+)

FCMOVNE Пересылка, если не равно (ZF=0) (P6+)

FCMOVNU Пересылка, если не NaN (PF=0) (P6+)

FCMOVU Пересылка, если NaN (unordered) (PF=0) (P6+)

FILD Загрузка (push) целого числа из памяти

FIST Запись в память в формате целого числа

FISTP Запись в память в формате целого числа с извлечением

FLD Загрузка (push) вещественного числа

FST Сохранение (копирование) числа в памяти (в вещественном формате) или в регистре стека

FSTP Запись числа в память (в вещественном формате) или в регистр стека с извлечением

FXCH Обмен значениями вершины стека и регистра

Загрузка констант

FLD1 Загрузка (push)+1,0

FLDL2E Загрузка (push) log2(e)

FLDL2T Загрузка (push) log2( 10)

FLDLG2 Загрузка (push) lg(2)

FLDLN2 Загрузка (push) ln(2)

FLDPI Загрузка (push) pi

FLDZ Загрузка (push) + 0,0

Базовая арифметика

FABS Нахождение абсолютного значения

FADD Сложение вещественных чисел

FADDP Сложение вещественных чисел с извлечением

FCHS Изменение знака

FDIV Деление вещественных чисел

FDIVP Деление вещественных чисел с извлечением

FDIVR Обратное деление вещественных чисел

FDIVRP Обратное деление вещественных чисел с извлечением

FIADD Сложение с целым числом

FIDIV Деление на целое число

FIDIVR Обратное деление целых чисел

FIMUL Умножение на целое число

FISUB Вычитание целого числа

FISUBR Вычитание из целого числа

FMUL Умножение вещественных чисел

FMULP Умножение вещественных чисел с извлечением

FPREM Нахождение частичного остатка

FPREM1 Нахождение частичного остатка в стандарте IEEE (387+)

FRNDINT Округление до ближайшего целого

FSCALE Масштабирование — умножение на округленную в сторону нуля степень числа 2

FSQRT Извлечение квадратного корня

FSUB Вычитание вещественного числа

FSUBP Вычитание вещественных чисел с извлечением

FSUBR Обратное вычитание числа

FSUBRP Обратное вычитание с извлечением

FXTRACT Выделение мантиссы и порядка числа

Сравнение данных

FCOM Сравнение вещественных чисел (установка флагов сопроцессора)

FCOMI Сравнение и соответствующая установка флагов в EFLAGS (ZF, PF, CF) (P6+)

FCOMIP Сравнение и соответствующая установка флагов в EFLAGS (ZF, PF, CF), с извлечением (P6+)

FCOMP Сравнение вещественных чисел с извлечением

FCOMPP Сравнение вещественных чисел с двойным извлечением

FICOM Сравнение с целочисленным операндом из памяти

FICOMP Сравнение с целочисленным операндом из памяти с извлечением

FTST Проверка на нуль

FUCOM Сравнение без генерации исключения в случае NaN (387+)

FUCOMI Сравнение без генерации исключения в случае NaN и соответствующая установка флагов в EFLAGS (ZF, PF, CF) (P6+)

FUCOMIP Сравнение без генерации исключения в случае NaN и соответствующая установка флагов в EFLAGS (ZF, PF, CF) с извлечением (P6+)

FUCOMP Сравнение без генерации исключения в случае NaN с извлечением (387+)

FUCOMPP Сравнение без генерации исключения в случае NaN с двойным извлечением (387+)

FXAM Анализ числа — установка кода условия в СО, С2, СЗ

Трансцендентные функции

Р2ХМ1 Вычисление

FCOS Косинус (387+)

PPATAN Арктангенс частного с извлечением

FPTAN Вычисление тангенса и загрузка (push) в стек +1,0

FSIN Вычисление синуса (387+)

FSINCOS Вычисление синуса и косинуса с помещением (push) в стек (387+)

FYL2X Вычисление Yxlog2(X)

FYL2XP1 Вычисление Yxlog2(X+1)

Управление сопроцессором

FCLEX Сброс флагов исключений с предварительной проверкой

ожидающих немаскированных исключений

FDECSTP Декремент указателя стека FPU

FFREE Освобождение регистра — пометка как свободного

FINCSTP Инкремент указателя стека FPU

FINIT Инициализация FPU с предварительной проверкой ожидающих исключений

FLDCW Загрузка управляющего слова (FPU CW) из памяти

FLDENV Загрузка состояния сопроцессора из памяти, сохраненного инструкциями FSTENV/FNSTENV

FNCLEX Сброс флагов исключений без проверки ожидающих

FNINIT Инициализация FPU без проверки ожидающих исключений

FNOP Пустая операция FPU

FNSAVE Сохранение состояния сопроцессора и стека регистров в памяти без проверки ожидающих исключений

FNSTCW Сохранение управляющего слова без проверки ожидающих исключений

FNSTENV Сохранение состояния сопроцессора (SR, CR, TAGW, FIP и FDP) в памяти без проверки ожидающих исключений

FNSTSW Запись слова состояния без проверки ожидающих исключений

FRSTOR Загрузка состояния сопроцессора и регистров из памяти

FSAVE Сохранение состояния сопроцессора и стека регистров в памяти с предварительной проверкой ожидающих исключений

FSTCW Сохранение управляющего слова с предварительной проверкой ожидающих исключений

FSTENV Сохранение состояния сопроцессора (SR, CR, TAGW, FIP и FDP) в памяти с предварительной проверкой ожидающих исключений

FSTSW Запись слова состояния для последующего переноса кода завершения в регистр флагов с предварительной проверкой ожидающих исключений

WAIT/FWAIT Синхронизация — останов CPU до завершения текущей операции FPU, проверка ожидающих исключений FPU

Инструкции ММХ появились в процессорах Pentium ММХ и с тех пор поддерживаются всеми более современными процессорами (Pentium Pro, появившийся раньше, эти инструкции не поддерживает). Они имеют сложную мнемонику, которая включает следующие элементы:

• префикс Р (Packed), указывающий на обработку упакованных форматов;

• мнемонику операции (например, ADD, CMP или XOR);

• суффикс, идентифицирующий тип насыщения: US (Unsigned Saturation) — насыщение беззнаковое, S (Signed saturation) — насыщение знаковое;

• суффикс, идентифицирующий тип данных: В — упакованные байты, W — упакованные слова, D — упакованные двойные слова, Q -учетверенное слово.

Инструкции, у которых типы входных и выходных данных различаются (например, преобразования), имеют два суффикса.

Для инструкций пересылки данных операнды источника и назначения могут находиться в памяти (m32 или m64), целочисленных регистрах (ir32) или регистрах ММХ (mm). Для остальных инструкций, кроме вышеперечисленных, операнд-источник может быть и непосредственным, а операнд назначения всегда является регистром ММХ. Для операндов, находящихся в памяти, применимы все существующие режимы адресации.

Таблица. Инструкции ММХ

Инструкция Описание

EMMS Очистка стека регистров — установка всех единиц в слове тегов

Пересылка данных

MOVD Пересылка данных в младшие 32 бита регистра ММХ (с заполнением старших бит нулями) или из младших 32 бит регистра ММХ

MOVQ Пересылка данных (64 бит) из/в регистр ММХ

Преобразование форматов

PACKSSDW Упаковка со знаковым насыщением четырех двойных слов в четыре

слова

PACKSSWB Упаковка со знаковым насыщением восьми слов в восемь байт

PACKUSWB Упаковка с насыщением восьми знаковых слов в восемь беззнаковых байт

PUNPCKHBW Чередование в регистре назначения байт старшей половины операнда-источника с байтами старшей половины операнда назначения

PUNPCKHWD Чередование в регистре назначения слов старшей половины операнда-источника со словами старшей половины операнда назначения

PUNPCKHDQ Чередование в регистре назначения двойного слова старшей половины операнда-источника с двойным словом старшей половины операнда назначения

PUNPCKLBW Чередование в регистре назначения байт младшей половины операнда-источника с байтами младшей половины операнда назначения

PUNPCKLWD Чередование в регистре назначения слов младшей половины операнда-источника со словами младшей половины операнда назначения

PUNPCKLDQ Чередование в регистре назначения двойного слова младшей половины операнда-источника с двойным словом младшей половины операнда назначения

Упакованная арифметика

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5167
Авторов
на СтудИзбе
437
Средний доход
с одного платного файла
Обучение Подробнее