

Delphi Programlama Dilinde Operatörler (Aritmetik, Karşılaştırma, Mantıksal, Bitwise, vb.)
Delphi programlama dilinde operatörler, değişkenler ve değerler üzerinde çeşitli işlemler gerçekleştirmek için kullanılan sembollerdir. Bu operatörler, matematiksel hesaplamalar, karşılaştırmalar, mantıksal işlemler ve bit düzeyinde manipülasyonlar gibi birçok farklı görevi yerine getirebilir. Bu makalede, Delphi’deki temel operatör türlerini ve kullanımlarını ayrıntılı olarak inceleyeceğiz.
Aritmetik Operatörler
Aritmetik operatörler, matematiksel hesaplamalar yapmak için kullanılır. Delphi’de yaygın olarak kullanılan aritmetik operatörler şunlardır:
- + (Toplama): İki değeri toplar.
- – (Çıkarma): İki değeri çıkarır.
- * (Çarpma): İki değeri çarpar.
- / (Bölme): İki değeri böler (gerçek sayı sonucu verir).
- div (Tamsayı Bölme): İki değeri böler ve tamsayı kısmını döndürür.
- mod (Mod Alma): İki değerin bölümünden kalanı döndürür.
Örneğin:
var
sayi1, sayi2, toplam, fark, carpim, bolum, tamsayiBolum, kalan: Integer;
begin
sayi1 := 10;
sayi2 := 3;
toplam := sayi1 + sayi2; // toplam = 13
fark := sayi1 - sayi2; // fark = 7
carpim := sayi1 * sayi2; // carpim = 30
bolum := sayi1 / sayi2; // bolum = 3.333...
tamsayiBolum := sayi1 div sayi2; // tamsayiBolum = 3
kalan := sayi1 mod sayi2; // kalan = 1
end;
Karşılaştırma Operatörleri
Karşılaştırma operatörleri, iki değeri karşılaştırmak ve bir Boolean (True veya False) sonuç döndürmek için kullanılır. Delphi’deki temel karşılaştırma operatörleri şunlardır:
- = (Eşittir): İki değerin eşit olup olmadığını kontrol eder.
- <> (Eşit Değildir): İki değerin eşit olmadığını kontrol eder.
- > (Büyüktür): Bir değerin diğerinden büyük olup olmadığını kontrol eder.
- < (Küçüktür): Bir değerin diğerinden küçük olup olmadığını kontrol eder.
- >= (Büyük Eşittir): Bir değerin diğerinden büyük veya eşit olup olmadığını kontrol eder.
- <= (Küçük Eşittir): Bir değerin diğerinden küçük veya eşit olup olmadığını kontrol eder.
Örneğin:
var
sayi1, sayi2: Integer;
sonuc: Boolean;
begin
sayi1 := 10;
sayi2 := 5;
sonuc := sayi1 = sayi2; // sonuc = False
sonuc := sayi1 <> sayi2; // sonuc = True
sonuc := sayi1 > sayi2; // sonuc = True
sonuc := sayi1 < sayi2; // sonuc = False
sonuc := sayi1 >= sayi2; // sonuc = True
sonuc := sayi1 <= sayi2; // sonuc = False
end;
Mantıksal Operatörler
Mantıksal operatörler, Boolean değerler üzerinde mantıksal işlemler yapmak için kullanılır. Delphi’deki temel mantıksal operatörler şunlardır:
- and (Ve): İki ifade de True ise True döndürür.
- or (Veya): İki ifadeden en az biri True ise True döndürür.
- not (Değil): Bir ifadenin değerini tersine çevirir.
- xor (Özel Veya): İki ifadenin değeri farklı ise True döndürür.
Örneğin:
var
durum1, durum2, sonuc: Boolean;
begin
durum1 := True;
durum2 := False;
sonuc := durum1 and durum2; // sonuc = False
sonuc := durum1 or durum2; // sonuc = True
sonuc := not durum1; // sonuc = False
sonuc := durum1 xor durum2; // sonuc = True
end;
Bitwise Operatörler
Bitwise operatörler, tamsayı değerlerinin bit düzeyinde manipülasyonunu sağlamak için kullanılır. Bu operatörler, özellikle düşük seviyeli programlama ve donanım etkileşimi gerektiren durumlarda faydalıdır. Delphi’deki temel bitwise operatörler şunlardır:
- and (Bitwise Ve): İki değerin karşılık gelen bitleri 1 ise sonuçta 1, aksi halde 0 olur.
- or (Bitwise Veya): İki değerin karşılık gelen bitlerinden en az biri 1 ise sonuçta 1, aksi halde 0 olur.
- xor (Bitwise Özel Veya): İki değerin karşılık gelen bitleri farklı ise sonuçta 1, aynı ise 0 olur.
- not (Bitwise Değil): Bir değerin tüm bitlerini tersine çevirir (1’ler 0’a, 0’lar 1’e).
- shl (Sola Kaydırma): Bir değerin bitlerini belirtilen sayıda sola kaydırır. Sağa boşalan bitler 0 ile doldurulur.
- shr (Sağa Kaydırma): Bir değerin bitlerini belirtilen sayıda sağa kaydırır. Sola boşalan bitler 0 ile doldurulur.
Örneğin:
var
sayi1, sayi2, sonuc: Integer;
begin
sayi1 := 5; // Binary: 00000101
sayi2 := 3; // Binary: 00000011
sonuc := sayi1 and sayi2; // sonuc = 1 (Binary: 00000001)
sonuc := sayi1 or sayi2; // sonuc = 7 (Binary: 00000111)
sonuc := sayi1 xor sayi2; // sonuc = 6 (Binary: 00000110)
sonuc := not sayi1; // sonuc = -6 (Binary: 11111010 - İşaretli tamsayı gösterimi nedeniyle)
sonuc := sayi1 shl 1; // sonuc = 10 (Binary: 00001010) - Sola 1 bit kaydırma
sonuc := sayi1 shr 1; // sonuc = 2 (Binary: 00000010) - Sağa 1 bit kaydırma
end;
Önemli Not: Bitwise operatörler genellikle düşük seviyeli işlemlerde, örneğin bir donanım portuna erişirken veya bir veri yapısının bitlerini manipüle ederken kullanılır.
Operatör Önceliği
Delphi’de operatörlerin bir öncelik sırası vardır. Bir ifadede birden fazla operatör varsa, Delphi bu operatörleri öncelik sırasına göre değerlendirir. Operatör önceliği aşağıdaki gibidir (en yüksekten en düşüğe):
@, not
*, /, div, mod, and
+, -, or, xor
=, <>, <, >, <=, >=, in, is
Önceliği değiştirmek için parantezler kullanılabilir. Parantez içindeki ifadeler her zaman önce değerlendirilir.
Örneğin:
var
sonuc: Integer;
begin
sonuc := 2 + 3 * 4; // sonuc = 14 (Çarpma toplama işleminden önce gelir)
sonuc := (2 + 3) * 4; // sonuc = 20 (Parantez içindeki işlem önce yapılır)
end;
Delphi’deki operatörler, programlarınızda çeşitli işlemler gerçekleştirmek için güçlü araçlardır. Bu operatörlerin doğru kullanımı, daha verimli ve okunabilir kod yazmanıza yardımcı olacaktır. Özellikle bitwise operatörler gibi daha karmaşık operatörlerin dikkatli bir şekilde kullanılması, hataların önlenmesi açısından önemlidir.
“Delphi’de operatörlerin doğru anlaşılması ve kullanılması, temiz ve etkili kod yazmanın temelidir.” – Delphi Uzmanı
Bir yanıt bırakın