Нові типи даних в ММХ-технології.

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
КН
Кафедра:
Кафедра електронних обчислювальних машин

Інформація про роботу

Рік:
2013
Тип роботи:
Звіт про виконання лабораторної роботи
Предмет:
Архітектура комп'ютерів

Частина тексту файла (без зображень, графіків і формул):

Міністерство освіти і науки України Національний університет „Львівська політехніка” Кафедра електронних обчислювальних машин Звіт про виконання лабораторної роботи № 2 з курсу „ Архітектура комп’ютерів” Тема: Нові типи даних в ММХ-технології. Знакові та беззнакові дані. Циклічна арифметика. Львів – 2005 Мета роботи: Вивчити та детально ознайомитися із синтаксисом та використанням команд зсувів MMX. Тереотичні відомості Типи даних Команди технології MMX працюють з наступними типами даних: * упаковані байти (вісім байтів в одному 64-розрядному регістрі) * упаковані слова (чотири 16-розрядних слова в 64-розрядному регістрі) * упаковані подвійні слова (два 32-розрядних слова в 64-розрядному регістрі) * 64-розрядні слова. По-англійському ці типи даних називаються, відповідно: packed byte, packed word, packed doubleword і quadword. Дані зі знаком і без знака В арифметиці з насиченням MMX-команди додавання, вирахування й упакування даних можуть обробляти числа з чи знаком без знака. Дані зі знаком і без знака мають різний припустимий діапазон. Отже, якщо використовується арифметика з насиченням, то при виході результату операції за межі припустимого діапазону у вихідний операнд будуть записані різні значення в залежності від типу даних. Циклічна арифметика (wraparound arithmetic) Якщо команда використовує циклічну арифметику і результат операції виходить за двійкову розрядну сітку типу даних, що використовується, то "лишні" старші біти результату відкидаються. Тобто, якщо результат перевищує максимально молливе значення на [n] одиниць, то результатом вважається [мінімальне значення + n – 1]. MMX-команди зсуву виконують зсув кожного елемента даних (16-, 32- чи 64-розрядного слова) у вихідному операнде на величину, що задається вхідним операндом. psll, psra, psrl Команди psra (арифметичний зсув праворуч) Команди psra виконують зсув елементів даних (16- чи 32-розрядних слів) у вихідному операнді на число біт, що задається вхідним операндом. Якщо зсувається додатнє число, то старші розряди, що звільнилися, заповнюються нулями, а якщо від’ємне, то одиницями. Вхідний операнд може бути безпосереднім операндом або знаходитися чи MMX-регістрі чи в пам'яті. Вихідний операнд повинен знаходитися в MMX-регістрі. Підтримуються команди: psraw, psrad.  Команди psrl (логічний зсув праворуч) Команди psrl виконують зсув елементів даних (16-, 32- чи 64-розрядних слів) у вихідному операнді на число біт, що задається вхідним операндом. Старші розряди, що звільнилися, заповнюються нулями. Вхідний операнд може бути безпосереднім операндом або знаходитися чи MMX-регістрі чи в пам'яті. Вихідний операнд повинен знаходитися в MMX-регістрі. Підтримуються команди: psrlw, psrld, psrlq.  Завдання Детально описати зміст заданих команд та результат їх виконання, якщо в ММ2 : 80FF 7F80 777F 0001, а в ММ4 : 0001 8001 0002 8002. 11. psrld MM4, 3 psrad MM2, 5   Виконання роботи psrld MM4 , 3 - це MMX-команда, яка виконує логічний порозрядний зсув вправо елементів даних (в нашому випадку doubleword - 32 розряди) першого операнду (MM4) на кількість біт, що задається другим операндом (3). Старші розряди, що звільнилися, заповнюються нулями. 0001 8001 0002 8002  0000000000000001 1000000000000001 0000000000000010 1000000000000010  ( (   Зсув ( на 3 розряди виконується незалежно в межах блоків по 32 біти. Результат: 0000000000000000 0011000000000000 0000000000000000 0101000000000000  0000 3000 0000 5000   psrad MM2 , 5 - це MMX-команда, яка виконує арифметичний зсув вправо елементів даних (doubleword - 32 розряди) першого операнду (MM2) на кількість біт, що задається другим операндом (5). 80FF 7F80 777F 0001  1000000011111111 0111111110000000 0111011101111111 0000000000000001  ( (   Зсув ( на 5 розрядів виконується незалежно в межах блоків по 32 біти. Результат: 1111110000000111 1111101111111100 0000001110111011 1111100000000000  FC07 FBFC 03BB F800   Висновок: Виконуючи дану лабораторну роботу, я вивчив та детально ознайомитися із синтаксисом та використанням команд зсувів для MMX-процесорів.
Антиботан аватар за замовчуванням

28.01.2013 14:27

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!