Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МУ_лаб_асм.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
154.11 Кб
Скачать

Лабораторная работа №5,6

Тема: Технология SIMD. Расширение ММХ.

Цель: Научиться использовать команды ММХ при работе с целочисленными данными.

Задание содержит четыре варианта, определяемые по номеру группы и четному или нечетному номеру студента в группе. Для выполнения заданий необходимо освоить все варианты команд сложения, умножения, упаковки и распаковки, перемещения данных.

Задание:

  1. Написать программу сложения двух матриц А и В. Если у студента по варианту матрица А, матрицу В он берет с другой группы (А+В). Если по варианту матрица В, матрица А берется с другой группы (В+А).

  2. Написать программу умножения двух матриц А и В. Если у студента по варианту матрица А, матрицу В он берет с другой группы (АВ). Если по варианту матрица В, матрица А берется с другой группы (ВА).

Группа АЕ-112

Нечетные номера

А

Четные номера

В

Группа АЕ-113

Нечетные номера

А

Четные номера

В

  1. Написать программу, осуществляющую заданную операцию над элементами матрицы:

Операция

pavgw

0

pextrw

1

pinsrw

2

pmaxsw

3

pminsw

4

pmovmskb

5

Номер операции определяется как Nmod5, где N – номер студента в группе. Результат представляется в виде квадратной матрицы-результата.

Состав протокола:

  • титульный лист;

  • задание на работу;

  • описание переменных;

  • текст программы;

  • графические изображения результатов выполнения программы.

Лабораторная работа №7,8

Тема: Технология SIMD. Расширение SSE.

Цель: Научиться использовать команды SSE расширений при обработке чисел представленных в формате IEEE-754.

Задание:

Решить систему уравнений методом обратной матрицы.

2x1 - 4x2 + 9x3 = 28

7x1 + 3x2 - 6x3 = -1

7x1 + 9x2 - 9x3 = 5

x1 + x2 - 3x3 = -1

x1 - x2 + x3 = -4

x1 + x2 + 4x3 = 2

x1 + 3x2 + x3 = 2

2x1 + x2 + 3x3 = 3

2x1 + x2 + 2x3 = 8

3x1 + 4x2 + 2x3 = 8

2x1 - x2 - 3x3 = -1

x1 + 5x2 + x3 = 0

3x1 + 2x2 = 0

x1 - x2 + 2x3 = 0

4x1 - 2x2 + 5x3 = 0

3x1 - 2x2 + 4x3 = 12

3x1 + 4x2 - 2x3 = 6

2x1 - x2 - x3 = -9

2x1 + 5x2 + x3 = 0

4x1 + 6x2 + 3x3 = 0

x1 - x2 - 2x3 = 0

x1 + 2x2 + 4x3 = 0

5x1 + x2 + 2x3 = 0

4x1 - x2 - 2x3 = 0

- 3x1 - 4x2 + 8x3 = 29.7

7x1 + 9x2 + x3 = -30.2

2x1 + x2 = -1

2x1 - 3x2 + x3 = 1

x1 + x2 + x3 = 6

x1 - x2 - x3 = 0

x1 - x2 + x3 = 3

2x1 + x2 + x3 = 11

x1 + x2 + 2x3 = 8

2x1 + 13x2 - 10x3 = -10

3x1 + 19x2 - 11x3 = -12

x1 + 6x2 - 3x3 = -3

5x1 + 8x2 - x3 = -7

x1 + 2x2 + 3x3 = 1

2x1 - 3x2 + 2x3 = 9

2x1 - x2 + x3 = 11

x1 + 4x2 - 3x3 = 2

3x1 + x2 - 7x3 = 8

5x1 + x2 - 3x3 = -2

4x1 + 3x2 + 2x3 = 16

2x1 - 3x2 + x3 = 17

3x1 + 4x2 + 2x3 = 8

2x1 - x2 - 3x3 = -4

x1 + 5x2 + x3 = 0

x1 + 2x2 + x3 = 8

- 2x1 + 3x2 - 3x3 = -5

3x1 - 4x2 + 5x3 = 10

2x1 + x2 - x3 = 5

x1 - 2x2 + 2x3 = -5

7x1 + x2 - x3 = 10

2x1 + 4x2 + x3 = 5

x1 - 4x2 = 2

3x1 + 2x2 + x3 = 7

4x1 - 2x2 + x3 = 3

3x1 + 5x3 = 8

x1 + x2 + 2x3 = 4

Номер варианта определяется по номеру студента в группе. Результат представляется в виде вектора-столбца.

Состав протокола:

  • титульный лист;

  • задание на работу;

  • описание переменных;

  • текст программы;

  • графические изображения результатов выполнения программы.

Список литературы

  1. Крупник А. Б. Изучаем ассемблер. – СПб.: Питер, 2005.

  2. Ирвин Кип. Язык ассемблера для процессоров Intel. – М.: Вильямс, 2005.

  3. Магда Ю. С. Ассемблер для процессоров Intel Pentium. – СПб.: Питер, 2006.

  4. Intel 64 and IA-32 Architectures Software Developer’s Manual, 2011

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]