User account menu

  • Giriş yapın
Anasayfa
Kozmotronik Blog
Yıldız tozundan teknolojiye!

Main navigation

  • Anasayfa
  • Kategoriler
    • Elektronik
    • Programlama
      • Gömülü Programlama
      • Mobil Programlama
    • Programlama Dilleri
  • Seriler
    • Android Bluetooth Programlama
    • JAL Başvuru Kılavuzu
    • Görevci ile Sistem Programlama
  • Projeler
    • Görevci
  • Hakkında

JAL | 2.5. Sabitler

Sayfa yolu

  • Anasayfa
  • JAL | 2.5. Sabitler
Yazar: İsmail Sahillioğlu | Ekim 19, 2019
JAL | Sabitler

2.5.1. Adlandırılmamış Sabitler

Adlandırılmamış bir nümerik sabit, 32-bit işaretli değer olan bir UNIVERSAL türdedir. Bu sabit değerler genelde önişlemlerde (preprocessing) veya değişkenlere atamalarda kullanılan değerlerdir. Bir işlemde UNIVERSAL türü bir sabit değer kullanıldığında, bu tür, diğer operandın türüne çevrilir. Örneğin WORD türünde bir değişken ya da sabit operanda 12739 UNIVERSAL türdeki değer atanırsa, bu UNIVERSAL tür normalde işaretli 32 bit olmasına rağmen WORD türüne çevrilir.

Bir istisna olarak kesirli sabit sayılar ise FLOAT türündedir. Nümerik sabitler aşağıdaki biçimlere sahiptir:

45      -- onluk (decimal)
0xFF    -- onaltılık (hexadecimal)
0b01    -- ikilik (binary)
0q06    -- sekizlik(octal)
"a"     -- ASCII
2.56 veya 2.56e2 veya 2.56e-2 -- FLOAT

Arkadaşlar kesirli sayıların yanındaki e simgesi İngilizce'deki exponent sözcüğünün baş harfidir ve bir sayının üssü ya da kuvveti anlamında kullanılır. e2 ifadesi bize daha tanıdık gelen 102 ifadesiyle aynıdır. Dolayısıyla e-2 ifadesi de 10-2 ile aynıdır. Yukarıdaki kesirli sayılar için ifade edilen sayınının kesir noktası sola doğru kaydırıldıkça üs sayısı değeri artarken, sağa kaydırıldıkça da üs sayısı değeri azalır. Aşağıdaki gösterim bunu daha iyi anlamanızı sağlayacaktır.

Kesirli üslü sayılar
Kesirli üslü sayılar

Kesirli sabit değerin tam JAL formatı şu şekildedir:

[+|-]###.[###[e[+|-]###]

Bir ASCII sabiti aşağıdaki C dili kaçış karakterleri (escaping) kurallarına izin verir:

Kaçış karakteriDeğer
"\ooo"sekizlik (octal) sabit
"\a"zil, düdük, alarm
"\b"geriletme (backspace)
"\f"form besleme (form feed)
"\n"satır besleme (line feed)
"\qooo"sekizlik sabit
"\r"satır başı (carriage return)
"\t"yatay sekme (horizantal tab)
"\v"dikey sekme (vertical tab)
"\xdd"onaltılık (hexadecimal) sabit
"\zbbb"ikilik (binary) sabit
"\"tek bir ters bölme '' karakteri

ASCII haricindeki sayısal sabitler ayrıca istenen miktarda alt tire ("_") içerebilirler. Bu alt tireler derleme esnasında görmezden gelinir fakat okunaklılığı artırmak için yararlıdır. Örneğin: 20_000_000 -- 20 milyon veya 0b0000_1111.

2.5.2 Adlandırılmış Sabitler

Adlandırılmış bir sabitin tanımı için tam format aşağıdaki gibidir:

CONST [tür[*sabitifade]] tanımlayıcı [ ’[’ [ sabitifade ] ’]’ ] ’=’ { sabitifade | ’{’ sabitifade1[’,’ sabitifade2...]’}’ | ’"’...’"’}
[ ’,’ tanımlaycı2...]

Gördüğünüz gibi sayın okuyucular oldukça kafa karıştırıcı gibi görünen bir başka gösterim biçimi daha. Eğer yazı dizisini sırayla okuduysanız buna benzer bir biçimi Değişkenler bölümünde değişken tanımlama gösterimi şeklinde görmüş olduğumuzu hatırlayacaksınız. Öncekinde olduğu gibi bunda da açıklamalarını yapacağım fakat kafa karıştırırsa fazla takılmanıza gerek yok çünkü tanımlama örneği verince format daha anlaşılır olacaktır. Önce açıklamalarını verelim:

CONST

Bir sabit tanımlaması ibaresinin başladığını belirtir.

tür[*sabitifade]

Sabitin türünü tanımlar. Hiç tür belirtilmemişse , işaretli 32-bitlik üniversal biçim haline gelir. Örneğin:

CONST BYTE sayi1 = 100
CONST SWORD ilkDeger = -1000

’[’ [ sabitifade ] ’]’

Bir sabit dizisi oluşturma ibaresidir. Bir sabit dizisi en azından bir kez sabit olmayan bir altindis ile indislenmedikçe herhangi bir yer kaplamaz. PIC denetçilerde, sabit dizileri RAM değil PROGRAM belleğinde yer kaplarlar ve bir sabit dizisi en fazla 255 öge ile sınırlandırılmıştır. Eğer sabitifade'nin değeri yazılmazsa mutlaka sabitin dizi elemanları = simgesinin karşısında {...} içerisinde ilklenmelidir. Bu ilkleme yapıldığında derleyici sabitteki dizi öğelerinin sayısını {...} içerisine yazılan değerlerden hesaplar, yoksa derleyici hata üretecektir. Örneğin:

CONST BYTE sira[4]
CONST WORD tablo[] = {12987, 860, 64329, 100}

'=' sabitifade

Dizi olmayan sabitler tanımlanırken sabitifade değeri sabite atanır. Örneğin:

CONST genislik = 345

’=’ ’{’ sabitifade1[’,’ sabitifade2...]’}’

Sabit dizileri için bu herbir dizi elemanın değerini atar. sabitifade'lerin sayısı ile [] içerisinde tanımlanan değer aynı olmalıdır. Örneğin:

CONST BYTE sira[4] = {1,2,3,4}

'=' ’"’...’"’

Sabit dizileri için, çift tırnak arasına yazılacak ASCII değerlerini sabit dizisinin herbir elemanına atar. C dilinin tersine, sonlandırıcı bir NULL eklenmez. Örneğin:

CONST BYTE girisMesaji = "Merhaba Dunya"

2.5.3. Dize (String) Sabitler

Dize sabitler çift tırnak işaretleri içinde yazılırlar ("...") ve karakter dizilerine izin verilen herhangi bir yerde kullanılabilirler. Adlandırılmamış sabitler başlığı altında anlatılan kaçış karakterleri dize sabitlerle birlikte çift tırnak işaretleri içerisinde kullanılabilir. Örneğin:

CONST baslik = "ILK PROGRAM"
Manual de referencia
JAL
Lenguajes de programación
Programación
Programlama Dilleri
JAL Başvuru Kılavuzu
  • < prev
  • All
  • next >

29 of 34

Sorumluluk Reddi

Bu site bilgilendirme amaçlıdır. Burada sunulan bilgileri, uygulayıcı kendi sorumluluğu altında uygular. Bu bilgilerin uygulanması sırasında ihmal, dikkatsizlik, konuyla ilgili bilgi eksikliği veya yanlış uygulama nedeniyle meydana gelebilecek hasarlardan, can veya mal kaybından, maddi veya fiziksel kayıplardan tamamen uygulayıcı sorumlu olup site ve yazarları sorumlu tutulamaz.

Projects

Görevci

Monthly archive

  • Şubat 2017 (2)
  • Mart 2017 (1)
  • Nisan 2017 (1)
  • Mart 2019 (1)
  • Nisan 2019 (1)
  • Temmuz 2019 (3)
  • Eylül 2019 (1)
  • Ekim 2019 (1)
  • Mart 2020 (1)
  • Ağustos 2020 (3)
Sayfalama
  • Sayfa 1
  • Sonraki sayfa ››

Footer menu

  • İletişim

Copyright © 2026 Kozmotronik Tech - All rights reserved

Kozmotronik Tech