4. Operatörler (Aritmetik, Karşılaştırma, Mantıksal, Bitwise, vb.)

Delphi Logo
Delphi Logo
image text

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:

Pascal
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:

Pascal
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:

Pascal
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:

Pascal
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):

  1. @, not
  2. *, /, div, mod, and
  3. +, -, or, xor
  4. =, <>, <, >, <=, >=, in, is

Önceliği değiştirmek için parantezler kullanılabilir. Parantez içindeki ifadeler her zaman önce değerlendirilir.

Örneğin:

Pascal
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ı

İlk yorum yapan olun

Bir yanıt bırakın

E-posta hesabınız yayımlanmayacak.


*