'ZmiennaTablicowa41

Bascom


Zmienna tablicowa

'ZmiennaTablicowa41.bas

'Tworzymy tablicę w postaci zmiennej A z dziesięcioma miejscami.

'Tworzymy zmienną Index, której zawartość będzie wskazywała miejsce znaku w tablicy.

'Druga tablica zawiera treści tekstowe, działa dokładnie tak, jak pierwsza.

'Opracował Henryk Wydmuch.

 

$regfile = "m8def.dat"                                      'Dyrektyway dla kompilatora.

 $crystal = 4000000                                         'Zastosujemy kwarc zewnętrzny 4MHz.

 Config Lcd = 16 * 2                                        'Konfiguracja Lcd.

Config Lcdpin = Pin , Db4 = Portd.2 , Db5 = Portd.3 , Db6 = Portd.4 , Db7 = Portd.6 , E = Portd.1 , Rs = Portd.0

                                       'LCD dłączony do Portd. 2, 3, 4, 6, 1, 0.

Cls

 

Dim A(10) As Byte                                           'Tablica A z 10 miejscami.

Dim Index As Byte                                           'Index wskazuje miejsce w tablicy.

Dim B(10) As String * 6                                     'Zmienna nie cyfrowa, *6=taka min. cyfra, jakie najdłuższe słowo w tablicy.

 

Index = 4                                                   'Index wskazuje miejsce w tablicy.

 

'Tablica1

A(1) = 1                                                    'Pierwsza pozycja w tablicy: 1=1.

A(2) = 56                                                   '

A(3) = 32                                                   '

A(4) = "n"                                                  '

A(5) = "2"                                                  '

A(6) = 11                                                   '

A(7) = 5                                                    '

A(8) = 3                                                    '

A(9) = &H07                                                 '

A(10) = &B0111

                                            '

'Lcd pokaże znak w tablicy, w miejscu wskazanym cyfrą w nawiasie.

Lcd A(index)                                                'Wyświetli 110, bo "n" w ASCI=110.

Lcd A(5)                                                    'Wyświetli 50, bo "2" w ASCI=50.                                              '

Lcd A(9)                                                    'Wyświetli 7, bo &B0111=7. (Czytamy od tyłu: 1, 2, 4, 8. Ósemki nie bierzemy pod uwagę, bo=0).

Lcd A(index + 5)                                            'Wyświetli 7, bo &H07=7.

 

Lowerline                                                   'W drugiej linii Lcd.

 

'Tablica2

B(1) = "10gr"                                               '

B(2) = Chr(56)                                              '

B(3) = "32"                                                 '

B(4) = "noc"                                                '

B(5) = "2"                                                  '

B(6) = "n"                                                  '

B(7) = Chr(97)                                              '

B(8) = "3"                                                  '

B(9) = "&H07"                                               '

B(10) = "&B0111"                                            '

 

'Lcd pokaże znak w tablicy, w miejscu wskazanym cyfrą w nawiasie.

Lcd B(index)                                                'Wyświetli "noc".

Lcd B(2)                                                    'Wyświetli 8, bo 56 w ASCI, to 8.

Lcd B(5)                                                    'Wyświetli 2.

Lcd B(10)                                                   'Wyświetli &B0111 .

 

End                                                         'Koniec programu.