Массивы


End start

Int21h

Mov ax,4c00h

Loop cycl1

Add bx,10

Pop cx

Loop cycl2

Inc si

Jne nozero

Mov cx,10

Xor si,si

cycl2:

cmp byte ptr [bx+si],0

mov byte ptr [bx+si],0ffh

nozero:

 

Массив – структурированный тип данных, состоящий из некоторого числа элементов одного типа.

Специальных средств описания массивов в ассемблере не существует, поэтому программист должен знать:

o как в программах на ассемблере описать массив,

o как инициализировать массив,

o как организовать доступ к элементам массива,

o как организовать выполнение типовых операций с массивами.

 

Массив в программе можно смоделировать одним из следующих способов:

 

1) перечисление элементов массива

mas dd 1, 2, 3, 4, 5;массив из 5 двойных слов

 

2) используя оператор повторения

mas dw 10 dup (0);массив из 10 нулевых слов

 

3) используя директивы labelиrept

Директива rept относится к макросредствам языка ассемблера и вызывает повторение указанное число раз строк, заключенных между rept и endm.

В качестве метки одной области памяти можно использовать разные имена. Каждому имени соответствует указанный тип данных. В примере можно обращаться к массиву байт по метке masb, либо к массиву слов по метке masw.