АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Типы матриц, алгоритмы доступа к элементам матриц при их хранении в памяти ЭВМ в виде одномерного массива

Читайте также:
  1. Infinite USB Memory – флешка с безлимитным объемом памяти 03.03.2010 16:00 Максим Мишенев
  2. LED-часы Матрица
  3. V. Различие в отношении к прошлому опыту между образами памяти и образами воображения
  4. Алгоритмы сжатия
  5. Алгоритмы сканирования (SCAN, C-SCAN, LOOK, C-LOOK)
  6. Алгоритмы структуризации целеполагания
  7. Альтернативные интерфейсы доступа к многомерным данным
  8. Арифметические операции с матрицами
  9. Аудит доступа к объектам
  10. Більший розмір вирубної матриці
  11. БЛУЖДАНИЯ БЕЗ ПАМЯТИ
  12. В прямоугольной матрице обменять первый столбец с последним.

С.А. Трефилов

П.В. Лекомцев

 

 

Умножение матриц в MASM32

Методическое пособие

по дисциплине «Основы вычислительной техники»

 

 

Ижевск 2008


УДК

Рецензент: Ю.Р. Никитин, канд. техн. наук, доцент

Зав. кафедрой: Ю.В.Турыгин, докт. техн. наук, профессор

 

В пособии рассмотрены способы хранения матриц в памяти ЭВМ, приведены алгоритмы доступа к элементам матриц в памяти в зависимости от типа матриц. Даны индивидуальные задания к выполнению лабораторной работы, сформулированы требования к содержанию отчета к лабораторной работе, приведен список рекомендуемой методической и справочной литературы.

ã Издательство ИжГТУ, 2008

Содержание

 

Цель работы

Задание на лабораторную работу

Содержание отчета

Типы матриц, алгоритмы доступа к элементам матриц при их хранении в памяти ЭВМ в виде одномерного массива

Список рекомендуемой литературы


Цель работы

Целью данной лабораторной работы является освоение навыков программирования на языке Assembler для Win32, в частности знакомства с принципами хранения различных типов матриц в памяти ЭВМ и программной реализации алгоритмов умножения матриц.

 

Задание на лабораторную работу

Разработать алгоритм и программу на языке Assembler для Win32 умножения матриц в соответствии с индивидуальным заданием. Способ хранения матрицы – в виде вектора-строки без нулевых элементов, определенных типом матрицы. Ввод размерности матрицы и вывод результата умножения осуществить в диалоговом окне Windows. Ввод элементов матриц с максимально возможным числом элементов осуществить в секции данных. Варианты заданий приведены в Приложении A.

Содержание отчета

 

  1. Титульный лист
  2. Задание на лабораторную работу
  3. Введение
  4. Разработка схемы алгоритма решения задачи
  5. Разработка программы
  6. Результаты вычислительного эксперимента
  7. Выводы
  8. Список литературы

Типы матриц, алгоритмы доступа к элементам матриц при их хранении в памяти ЭВМ в виде одномерного массива

Матричные операции являются наиболее критичными по скорости выполнения. Современные процессоры позволяют реализовывать их за минимальное количество тактов. Это достигается в основном за счет параллельных вычислений с использованием специальных команд (инструкций SSE, MMX). В данной работе предложено оптимизировать процесс умножения матриц за счет исключения операций «умножения на ноль», а также экономии объема памяти отводимой под хранение элементов матриц определенного типа.

Перечислим типы матриц, предложенные в данной лабораторной работе, и алгоритмы доступа к элементам матриц при их хранении в виде одномерного массива данных:

  1. A – квадратная матрица nxn,

Способ хранения в памяти ЭВМ (n=3)

Элемент матрицы a11 a12 a13 a21 a22 a23 a31 a32 a33
Ячейка памяти a0 a1 a2 a3 a4 a5 a6 a7 a8

Алгоритм доступа к элементу матрицы в памяти

aij=ak, k=n(i-1)+j-1,

где n – размерность матрицы, i – номер строки, j – номер столбца

2. B – нижнетреугольная матрица nxn,

Способ хранения в памяти ЭВМ (n=3)

Элемент матрицы a11 a21 a22 a31 a32 a33
Ячейка памяти a0 a1 a2 a3 a4 a5

Алгоритм доступа к элементу матрицы в памяти

  1. C – верхнетреугольная матрица nxn,

Способ хранения в памяти ЭВМ (n=3)

Элемент матрицы a11 a12 a13 a22 a23 a33
Ячейка памяти a0 a1 a2 a3 a4 a5

Алгоритм доступа к элементу матрицы в памяти

  1. D – шпуровая матрица nxn

Имеет следующие характеристики: – ширина шпура, всегда нечетно (для приведенной выше матрицы l=3), - ширина ленточки элементов относительно главной диагонали.

Способ хранения в памяти ЭВМ (n=5, m=1)

Элемент матрицы a11 a12 a21 a22 a23 a32 a33 a34 a43 a44 a45 a54 a55
Ячейка памяти a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12

 

Алгоритм доступа к элементу матрицы в памяти

1.

2.

3.

пусть i=3 j=3 m=1 n=3


Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.004 сек.)