Amiga Dünyası sayı 5, sayfa 33

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 33

İFADE VE DEĞİŞKENLER İfadeler; sabitler, değişkenler ve operatörler ile birleştirilmiş diğer ifadelerin kombinasyonlarıdır. Derleyici tarafından bir dizi ya da sayısal değer üretecek şekilde değerlendirilir. Operatörler ise değerler üzerine matematiksel ya da mantıksal işlemler yaparlar ve Amiga Basic içinde 4 kategoriye ayrılırlar: aritmetik operatörler, kıyaslama operatörleri, mantıksal operatörler, fonksiyonel operatörler. Operatörler, kendi içlerinde öncelik sırasına göre hiyerarşik bir yapıya sahiptir. Yani bir yönerge içinde birçok operatör kullanılıyorsa, bazı operatörlerin işlemleri öncelik sırasına göre diğerlerinden daha önce yapılır. Yönergedeki işlemlerin öncelik sıraları eşitse, soldan sağa doğru sıra takip edilir. Operatörlerin öncelik sırası şöyledir:

1. Üs alma 2. Negatifleme 3. Çarpma ve kayan-noktalı bölme 4. Tamsayı bölme 5. Moduler aritmetik 6. Toplama ve çıkarma 7. Kıyaslama operatörleri 8. NOT 9. AND

10. OR ve XOR 11. EQV 12. IMP ARİTMETİK OPERATÖRLER:

Amiga Basic'in aritmetik operatörleri aşağıdaki tabloda öncelik sırasına göre listelenmiştir:

AMİGA BASIC

Operatör İşlem Örnek A Üs alma X^Y - Negatifleme -X * Çarpma X*Y / Kayan-noktalı bölme X/Y \ Tamsayı bölme X\Y MOD Modulo aritmetik Y MOD Z

+,- Toplama X+Y Çıkarma X-Y

Kullanılan operatörlerin işlemdeki öncelik sırasını değiştirmek için parantezler kullanılır. Öncelik sırasına bakılmaksızın parantez içindeki işlemler önce yapılır. Aşağıdaki örnekler bazı cebirsel fonksiyonların Amiga Basic içinde kullanımlarını göstermektedir:

Cebirsel Amiga Basic Fonksiyon İfadesi X-Z (X-Z)/Y Y XY X*Y/Z Z X±Y (X+Y)/Z Z

(X2)Y (XA2)AY

YZ X

X(-Y) X*(-Y)

TAMSAYI BÖLME: Amiga Basic programlarda tamsayı bölme, ters bölü (backslash) '\' işaretiyle tanımlanır. Normal bölü (slash) işareti ise kayan-noktalı bölümleri ifade eder. Tamsayı bölümler (kısa tamsayılar için -32768'den +32767'ye, uzun tamsayılar ise -2147483648'den 2147483647'ye kadar) noktadan sonrası atılarak tamsayıya yuvarlanır. Örneğin: 11\3 = 3

X=20/6 Y=34.78\5.87 PRINTX,Y

MODULO ARİTMETİK:

MOD operatörü ile tanımlanırlar. Modulo aritmetik, tamsayı bölümlerin tamsayı kalanını verir. Örneğin:

18.6 MOD 5=4 (19\5=3 kalan 4) 34.25 MOD 7.88=2 (34\8=4 kalan 2) Modulo aritmetikte bölen ve bölünen tamsayılar MOD işlemi için yuvarlanır. Overflow ve Division by zero mesajları:

Bir ifadenin değerlendirilmesi sırasında sıfır ile bölme yapılırsa, "Division by zero" hata mesajı görüntülenir. Amiga bölümün sonucuna bir sonsuzluk işareti koyar ve çalışmasını sürdürür. Sonuçta taşma olursa, program sonucu negatif ya da pozitif işaretlerle doldurur ve çalışmasına devam eder.

KIYASLAMA OPERATÖRLERİ:

İki değeri karşılaştırmak için kullanılırlar. Kıyaslama sonucu ya doğru (true = -1) ya da yanlış (false = 0) olur. Bu sonuçlar genellikle programın akışındaki karar aşamalarında dallanmalarda kullanılır. Aşağıdaki tabloda kıyaslama operatörleri ve fonksiyonlarını örnekleri ile inceleyebilirsiniz: Operatör Fonksiyonu İfadesi = Eşittir X = Y <> Eşit değildir X <> Y < Küçüktür X < Y > Büyüktür X > Y <= Küçük ya da eşit X <= Y >= Büyük ya da eşit X >= Y MANTIKSAL OPERATÖRLER:

Mantıksal operatörler kıyaslama türü ilişkileri test ederek doğru-yanlış bilgi kombinasyonlarından bir bitlik sonuç çıkartırlar. Sonuç doğru ise -1, yanlış ise 0 olur. Doğru-yanlış kombinasyonları ve mantıksal işlemlerin sonuçları "Doğrulama Tablosu" olarak tanınır. Amiga Basic'te 6 mantıksal operatör vardır: NOT (mantıksal tamamlama), AND (birleşme), OR (ayrılma), XOR (ters OR), IMP (karıştırma) ve EQV (eşitlik). Aşağıdaki tabloda öncelik sıralarına göre doğrulama tabloları verilmiştir. Tablolarda X ve Y değerlerinin alacağı yanlış ya da doğru durumlarının sonucu nasıl etkilediği görülecektir.

Klavyeyle gezinmek için ← ve → tuşları.