Програмування з використанням індексованих змінних Bascom

Компілятор Bascom допускає використання масивів змінних, записуваних під одним імям і розрізняються порядковим номером розташування Параметр, який вказує номер змінної в масиві називається індексом В якості індексу (покажчика) може використовуватися константа, одно-або двухбайтного числова змінна Масив може розташовуватися у внутрішній або у зовнішній памяті Масиви можуть будуватися з однакових змінних будь-якого типу, за винятком бітових З індексованими змінними в багатьох випадках можна працювати як із звичайними змінними відповідного типу Однак, деякі оператори не розраховані на підстановку в якості операндів індексованих змінних і сприймають їх як звичайні змінні, тобто зчитують і записують дані тільки першого елемента масиву, що має адреса, що співпадає з адресою масиву Нижче наведено невеликий приклад програми з використанням індексованих змінних У ній також зазначено два випадки неможливості використання індексованих змінних і варіанти заміни непрацюючого оператора

‘————————————————- – Використання масивів індексовані змінних

‘—————————————————

Dim Ni As Const 5 обсяг масиву

Dim Nm As Byte , Jm As Byte , Jmd As Byte , Tmp As Byte Dim Stmp As String * 8

Dim Ar (ni) As Byte масив

Dim Sa (ni) As String * 8 строковий масив

For Nm = 1 To Ni заповнити масив

Ar(nm) = Lookup(nm , Da)

‘Sa (nm) = Lookupstr (nm, Ds) це працює тільки з першим елементом

Stmp = Lookupstr (nm, Ds): Sa (nm) = Stmp тому потрібно через буфер

Next

‘Сортування методом бульбашки – Найбільше (або найменше) спливає

For Nm = 2 To Ni починаємо сортування чисел з початку

For Jm = Ni Downto Nm перевіряючи пари сусідніх чисел

Jmd = Jm – 1 формуємо другу покажчик

‘If Ar (jmd) < Ar (jm) Then 'в порядку убування значень

If Ar (jmd)> Ar (jm) Then в порядку зростання значень

Tmp = Ar (jmd): Ar (jmd) = Ar (jm): Ar (jm) = Tmp поміняти місцями

‘Swap Ar (jmd), Ar (jm) з індексованими змінними не працює

End If

Next Next

‘Подивимося, що вийшло

For Nm = 1 To Ni : Print Sa(nm) Ar(nm) : Next End

‘Байтові числові значення, що записуються в масив для сортування

Da:

Data 0, 12, 222, 45, 6, 78, 4, 5, 99, 45, 146, 100 рядкові значення, що записуються в масив

Ds:

Data &quot1=&quot , &quot2=&quot , &quot3=&quot , &quot4=&quot , &quot5=&quot , &quot6=&quot , &quot7=&quot , &quot8=&quot , &quot9=&quot , &quot10=&quot

Джерело: МЛКуліш, ДОВІДНИК З ПРОГРАМУВАННЯ BASCOM-8051, Краснодар 2001

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*