Kurs Basic’a cz. 2

Witam w drugim już odcinku „Kursu Programowania”. Najbliższą sprawą jaką się zajmiemy jest programowanie w języku Basic 2.0, czyli, takim jaki otrzymujemy tuż po włączeniu komcia. Naszą naukę postanowiłem podzielić na 4 działy, tzn:

  • zmienne i operatory – poznamy tutaj różne typy zmiennych, które będziemy używać w naszych programach, nazwy zmiennych, operatory arytmetyczne i logiczne (ten artykuł i być może kilka następnych będzie poświęcone temu działowi)

  • polecenia – w tym dziale opiszę wszystkie polecenia, które służą do edycji i pisania programów oraz ich wczytywania, uruchamiania i kasowania

  • instrukcje – opisuje słowa kluczowe, czyli rozkazy Basic’a, które występują w numerowanych liniach programu

  • funkcje – tutaj zostaną opisane funkcje arytmetyczne, łańcuchowe(stringowe) i funkcje służące do drukowania

Zmienne

Bez zbędnych ceregieli przechodzimy do omawianie zmiennych, wykorzystywanych przez komcia. C64 wykorzystuje trzy typy zmiennych, tzn.: zmiennoprzecinkowe (w których możemy przechowywać liczby rzeczywiste), całkowitoliczbowe (liczby naturalne) oraz łańcuchy (szeregi znaków alfanumerycznych).

Nazwa zmiennej musi zawsze rozpoczynać się od dowolnej litery, następnymi znakami mogą być zarówno litery jak i cyfry. Długość nazwy może być taka jaką sobie zapragnie użytkownik, ale nasz komcio rozpoznaje tylko 4 pierwsze znaki. Typ zmiennej podawany jest przy pomocy znaku, który występuje po nazwie zmiennej. I tak: zmienne całkowitoliczbowe są oznaczane znakiem procentu (%), a zmienne łańcuchowe oznacza się znakiem dolara ($).

Przykłady nazw zmiennych:

  • nazwy zmiennych typu zmiennoprzecinkowego: A, A5, BZ

  • nazwy zmiennych typu całkowitoliczbowego: A%, A5%, BZ%

  • nazwy zmiennych typu stringowego: A$, A5$, BZ$

Wszystkie wyżej wymienione typy zmiennych możemy nazwać prostymi. Oczywiście, jeśli jest coś prostego, to musi też być coś złożonego. Złożoną zmienną jest tablica lub inaczej matryca (matrix has you). Tablice są zbiorami zmiennych takiego samego typu i o takiej samej nazwie. Operacje na poszczególnych elementach tablicy realizujemy za pomocą specjalnej zmiennej nazywanej indeksem. Tablice można zdeklarować za pomocą instrukcji DIM (o której będzie jeszcze mowa). Tablica może posiadać każdy z wymienionych wyżej typów: całkowitoliczbowy, rzeczywisty i łańcuchowy. Po nadaniu nazwy tablicy musimy otworzyć nawias okrągły, zawierający liczbę lub liczby mówiące o ilości elementów tablicy. Tablice mogą być zarówno jednowymiarowe, dwu- lub nawet więcej wymiarowe. Jeśli tablica będzie miała mniej niż 11 elementów nie musimy jej deklarować instrukcją DIM. Aby obliczyć całą pojemność tablicy należy pomnożyć przez siebie wszystkie wymiary tablicy powiększone o jeden (każdy wymiar zaczyna się od elementu o indeksie 0).

Przykłady tablic:

  • DIM A(7) – tablica o 8 elementach

  • DIM A$(50) – tablica łańcuchów o 51 elementach

  • DIM PT(20,20) – dwuwymiarowa tablica o 441 elementach

I tu drobna uwaga jeśli chodzi o zmienne: w C64 występują trzy zarezerwowane nazwy zmiennych. Są to: ST, TI i TI$. ST reprezentuje zmienną stanu i zawiera, zależnie od swojej wartości, jedną z realizowanych wcześniej operacji wprowadzania lub wyprowadzania danych. Zmienia ona swoją wartość np. jeśli wystąpi błąd podczas odczytywania lub zapisywania danych na dysk lub kasetę.

Zmienna TI odlicza za pomocą wewnętrznego zegara każdą 1/60 – ą część sekundy. Podczas włączania komcia ma ona wartość zero, a jej wartość można zmienić jedynie za pomocą zmiennej TI$.

TI$ jest łańcuchem tekstowym składającym się z 6 cyfr (nie mylić ze zmiennymi rzeczywistymi lub całkowitoliczbowymi). Ta zmienna jest przez cały czas uaktualniana przez system. Dwie pierwsze cyfry określają godzinę, kolejne dwie minuty i ostatnie sekundy. Najważniejsze jest to, że tej zmiennej można przypisać dowolną wartość, a zmienna TI jest przydatna do generowania losowych liczb.

Przykład zmiennej TI$:

TI$ = „124532” – czyli godz. 12 min. 45 sek. 32

No, to już koniec jeśli chodzi o pojęcie zmiennych, co wcale nie oznacza, że to koniec w ogóle. To co napisałem należy bezwzględnie zapamiętać, aby w czasie pisania programów nie zastanawiać się jakiego typu użyć tu zmiennej.

Operatory

Nasz C64 może służyć w roli kalkulatora (cóż za niewdzięczna rola) i możemy na nim przeprowadzać całą gamę działań artymetycznych i logicznych. Na początek przedstawię operatory bez których nic nie dało by się policzyć:

  • + dodawanie

  • – odejmowanie

  • * mnożenie

  • / dzielenie

  • ^ potęgowanie

Oczywiście wszelkie działania są przeprowadzane zgodnie z regułami matematyki tzn. najpierw wykonywane jest potęgowanie, następnie mnożenie i dzielenie, a na samym końcu dodawanie i odejmowanie. Natomiast jeśli chodzi o pierwiastki, to zajmiemy się nimi odrobinę póżniej.

Dla przeprowadzania porównań używamy następujących operatorów:

  • = równy

  • < mniejszy niż

  • > większy niż

  • <= mniejszy lub równy

  • >= większy lub równy

  • różny od

Wyjaśnieniem dokładnego znaczenia tych operatorów oraz kiedy i gdzie ich używać zajmiemy się podczas pisania naszych pierwszych programów. Na koniec do przerobienia zostały nam operatory logiczne, czyli:

  • AND – operator „i” (koniunkcja logiczna) oznaczaący, że obydwa warunki muszą być spełnione równocześnie

  • OR – operator „lub” (alternatywa logiczna) oznaczające, że co najmniej jeden z warunków musi być spełniony

  • NOT – operator „nie” (zaprzeczenie logiczne) oznacz jące, że żaden z warunków nie może być spełniony

Przykłady zastosowania operatorów logicznych:

IF A=B AND C=D THEN 100 – jeśli a będzie się równało b i c będzie się równało d to skocz do linii 100

IF A=B OR C=D then 100 – jeśli a będzie się równało b lub c będzie się równało d to skocz do linii 100

I w tym miejscu pora zakończyć na razie te wypociny. Uff, trochę tego było. Next Time poznamy polecenia, które umożliwią nam rozpoczęcie pisania FIRST programów.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *