Частина тексту файла (без зображень, графіків і формул):
Міністерство освіти і науки України
Національний університет „Львівська політехніка”
Кафедра електронних
обчислювальних машин
Звіт
про виконання лабораторної роботи № 6
з курсу „ Архітектура комп’ютерів”
Тема:
Передача керування від задачі до задачі.
Синтаксис та використання команд порівняння та передачі даних.
Виконав:
студент групи КІ-3
Львів – 2005
Передача керування від задачі до задачі
На процесорах архітектури Intel збереження стану задачі з MMX-командами відбувається так само, як збереження стану задачі, що використовує арифметику з плаваючою комою. Тому механізм перемикання задач в існуючих багатозадачних операційних системах повністю можна застосовувати і до задач з MMX-командами.
Кооперативні ОС (наприклад, Windows 3.1) здійснюють переключення задач тільки якщо активна задача сама передає керування системі. Програмісту необхідно турбуватися про збереження стану задачі, що використовує MMX-команди або арифметику з плаваючою комою, перед передачею керування до ОС.
Багатозадачні ОС с витісненням (наприклад, Windows 9x/Me, Windows NT/2K/XP) здійснюють переключення задач, не очікуючи, поки активна задача передасть керування операційній системі. Такі ОС самі зберігають і відновлюють стан задачі з MMX-командами.
Команди порівняння
MMX-команди порівняння попарно порівнюють елементи даних (байти, 16- чи 32-розрядні слова) вхідного і вихідного операндів. В залежності від результату порівняння відповідний елемент даних вихідного операнда заповнюється нулями чи одиницями.
Ці команди, як і всі інші MMX-команди, не встановлюють прапорців (ознак).
Команди передачі даних
MMX-команди передачі даних HYPERLINK "file:///E:\\study\\semester6\\arch%20%5bgluhov,%20punkiv%5d\\MMX\\movd.gif" \t "figure" movd і HYPERLINK "file:///E:\\study\\semester6\\arch%20%5bgluhov,%20punkiv%5d\\MMX\\movq.gif" \t "figure" movq виконують копіювання:
з одного MMX-регістра до іншого,
з MMX-регістра в пам’ять і навпаки,
з MMX-регістра в цілочисельний регістр і навпаки (тільки команда movd).
Поміж всіх MMX-команд тільки movd і movq можуть мати вихідний операнд в пам’яті; movd - єдина команда, в якої операнд може бути в цілочисельному регістрі.
Детально описати зміст заданих команд та результат їх виконання, якщо в
ММ1 : 7F80 7E01 80FF 777F , в ММ2 : 80FF 7F80 777F 0001, в ММ3 : 7FFF FFFF 80FF AA55.
Команди pcmpeq
Команди pcmpeq попарно порівнюють елементи даних (байти, 16- або 32-розрядні слова) вхідного і вихідного операндів. Якщо елемент даних вихідного операнду рівний відповідному елементу вхідного, такий елемент вихідного операнду заповнюється одиницями. Якщо рівності немає, то він заповнюється нулями.
Вхідний операнд може знаходитися в MMX-регістрі або в пам’яті; Вихідний операнд повинен знаходитися в MMX-регістрі. Дозволені команди: pcmpeqb, pcmpeqw, pcmpeqd.