Частина тексту файла (без зображень, графіків і формул):
Міністерство освіти і науки України
Національний університет „Львівська політехніка”
Кафедра електронних
обчислювальних машин
Звіт
про виконання лабораторної роботи № 3
з курсу „ Архітектура комп’ютерів”
Тема:
Модель обробки даних SIMD. Синтаксис ММХ-команд. Особливості арифметики з насиченням.
Виконав:
студент групи КІ-3
Львів – 2005
Мета роботи: Вивчити та детально ознайомитися із синтаксисом та використанням логічних команд MMX.
Тереотичні відомості
Модель обробки даних SIMD
В технології MMX використовується модель обробки даних SIMD (single instruction, multiple data, тобто одна команда - багато даних). Це підвищує швидкодію програм, оскільки одна команда оброблює декілька елементів даних одночасно. MMX-команди забезпечує паралельну обробку декількох байтів, слів або подвійних слів.
Синтаксис команд
MMX-команди мають наступний синтаксис:
іnstructіon [dest,src]
Тут іnstructіon - ім'я команди,
dest позначає вихідний операнд, src - вхідний операнд.
Більшість команд мають суфікс, що визначає тип даних і використовувану арифметику:
US (unsіgned saturatіon) - арифметика з насиченням, дані без знака.
S чи SS (sіgned saturatіon) - арифметика з насиченням, дані зі знаком. Якщо в суфіксі немає ні S, ні SS, використовується циклічна арифметика (wraparound).
B, W, D, Q указують тип даних. Якщо в суфіксі є дві з цих букв, перша відповідає вхідному операнду, а друга - вихідному.
Арифметика з насиченням (saturation arithmetic)
Якщо команда використовує арифметику з насиченням і результат операції перевищує максимальне допустиме значення, то у вихідний операнд записується це максимальне значення (відбувається " насиченням ").
Аналогічно, якщо результат операції виявився меншим за нижню межу допустимого діапазону, то у вихідний операнд записується мінімально можливе значення.
Логічні MMX-команди виконують порозрядні логічні операції над усіма 64 бітами своїх операндів.
Команда pand (логічне І)
Команда pand обчислює порозрядне логічне І своїх операндів.
Вхідний операнд може знаходитися в MMX-регістрі чи в пам'яті.
Вихідний операнд повинен знаходитися в MMX-регістрі.
Команда por (логічне АБО)
Команда por обчислює порозрядне логічне АБО своїх операндів.
Вхідний операнд може знаходитися в MMX-регістрі чи в пам'яті.
Вихідний операнд повинен знаходитися в MMX-регістрі.
Завдання
Детально описати зміст заданих команд та результат їх виконання, якщо в
ММ1 : 7F80 7E01 80FF 777F , в ММ2 : 80FF 7F80 777F 0001, а в
ММ3 : 7FFF FFFF 80FF AA55.
Виконання роботи
por MM1, MM2 - це MMX-команда, яка обчислює логічне АБО своїх операндів. Результат зберігається в першому операнді.
pand MM2, MM3 - це MMX-команда, яка обчислює логічне І своїх операндів. Результат зберігається в першому операнді.
Висновок: Виконуючи дану лабораторну роботу, я вивчив та детально ознайомитися із синтаксисом та використанням логічних команд для MMX-процесорів.