Классификация и структура микропроцессоров


Download 0.56 Mb.
Pdf ko'rish
bet1/4
Sana01.11.2023
Hajmi0.56 Mb.
#1738083
  1   2   3   4
Bog'liq
L21



Организация условных и безусловных 
переходов. Команды условного и 
безусловного перехода. Массивы. Стек 
и часть программы.
Лектор: Журакулов Ш.Б.


Обработка одномерных массивов
• Для того чтобы обрабатывать массив, нужно
знать, где он хранится (его начальный аарес), 
длину его элементов и их число. Как и в языке
C/C++, 
имя массива в Ассемблере является также
и его начальным адресом.
• Режим адресации с индексацией вида
имя_массива[регистр_индекс] 
позволяет обрабатывать каждый элемент
массива. В качестве регистра__индекса можно
брать любой допустимый для косвенной
адресации регистр, например, регистр ВХ.




Двумерные массивы
Для двухмерных массивов (матриц) идея будет та же самая, 
только нужно определиться, как такой массив будет 
располагаться в оперативной памяти: по строкам или по 
столбцам (память-то линейная!). Соответственно, и индексных 
регистров тоже будет два. А также два цикла: внешний и 
внутренний. Значит, и вычислений прибавится.
Например, пусть имеется некая матрица Matr[M] [N] и в памяти она 
располагается по строкам: сначала N элементов первой строки
потом N второй строки и т.д. Длину элемента обозначим Larr
Тогда адрес элемента Matr[I,j] будет равен Matr+N*i* Larray+j, где 
i=0,...,M-
1; j=0….N-1. Выделим в Ассемблере для хранения 
величины N*i* Larray регистр ВХ, а для j регистр SI (или DI). Тогда 

Download 0.56 Mb.

Do'stlaringiz bilan baham:
  1   2   3   4




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling