Bu madde çoğu okuyucunun anlayamayacağı kadar teknik olabilir. Nisan 2023) ( |
Biçimsel dil kuramı, teorik bilişimin temel dallarından biridir. Bir biçimsel dil, abece denilen belli bir küme Σ üzerinde kurulan dizilerden oluşur. Biçimsel dilleri tanımlamak için ifadeler, gramerler ya da tanımlanan dile ait olan dizileri kabul eden otomatlar kullanılır. Bunun yüzünden otomat kuramı ile ilişkisi çok önemlidir.
Biçimsel diller, göre 4 sınıfa ayırılır:
- Tip 3 Düzenli diller
- Tip 2 Bağlamdan bağımsız diller
- Tip 1 Bağlama duyarlı diller
- Tip 0 Özyinelemeli sayılabilir diller
Her sınıf, daha küçük sayılı sınıfların bir alt kümesidir. Tip 0 en genel sınıftır, Turing makine ve bilgisayar programıyla sayılanan her dilli kapsar.
Bu sınıflandırma (hiyerarşi), dillerin dizilerini türeten gramer ya da kabul eden makinaların hesaplama gücüne göre yapılmıştır.
Uygulama
Teorik bilişim bilimi bakımından önemli olan bu madde pratikte programlama dilleri kullanarak bilgisayar programları üretilmesini sağlayan derleyici ve yorumlayıcı yazılımlarının hazırlanmasında önemli bir rol oynar. Biçimsel dil kuramı, sıfırdan bir programlama dili geliştirmek isteyen bir bilgisayar programcısının ilk öğrenmesi gereken konulardan biridir. Mesela alttaki Tip 2 grameri Java, C, C++ dillerinde kullanılan kayan nokta (İngilizce: floating point) sayılarından oluşan biçimsel dili tanımlar; bu dil 3.1415 ya da 1.40239846e-45f gibi sayıların yazılış şekillerini gösterir.
FloatingPointLiteral: Digits . [Digits] [ExponentPart] [FloatTypeSuffix] . Digits [ExponentPart] [FloatTypeSuffix] Digits ExponentPart [FloatTypeSuffix] Digits [ExponentPart] FloatTypeSuffix Digits: Digit Digits Digit Digit: 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 ExponentPart: ExponentIndicator SignedInteger ExponentIndicator: one of e E Si gnedInteger: [Sign] Digits Sign: one of + - FloatTypeSuffix: one of f F d D
Dil ile ilgili bu madde seviyesindedir. Madde içeriğini genişleterek Vikipedi'ye katkı sağlayabilirsiniz. |
wikipedia, wiki, viki, vikipedia, oku, kitap, kütüphane, kütübhane, ara, ara bul, bul, herşey, ne arasanız burada,hikayeler, makale, kitaplar, öğren, wiki, bilgi, tarih, yukle, izle, telefon için, turk, türk, türkçe, turkce, nasıl yapılır, ne demek, nasıl, yapmak, yapılır, indir, ücretsiz, ücretsiz indir, bedava, bedava indir, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, resim, müzik, şarkı, film, film, oyun, oyunlar, mobil, cep telefonu, telefon, android, ios, apple, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, pc, web, computer, bilgisayar
Bu madde cogu okuyucunun anlayamayacagi kadar teknik olabilir Lutfen teknik detaylari cikarmadan maddeyi uzman olmayan okuyucular tarafindan anlasilabilir hale getirilmesine yardimci olun Nisan 2023 Bicimsel dil kurami teorik bilisimin temel dallarindan biridir Bir bicimsel dil abece denilen belli bir kume S uzerinde kurulan dizilerden olusur Bicimsel dilleri tanimlamak icin ifadeler gramerler ya da tanimlanan dile ait olan dizileri kabul eden otomatlar kullanilir Bunun yuzunden otomat kurami ile iliskisi cok onemlidir Bicimsel diller gore 4 sinifa ayirilir Tip 3 Duzenli diller Tip 2 Baglamdan bagimsiz diller Tip 1 Baglama duyarli diller Tip 0 Ozyinelemeli sayilabilir diller Her sinif daha kucuk sayili siniflarin bir alt kumesidir Tip 0 en genel siniftir Turing makine ve bilgisayar programiyla sayilanan her dilli kapsar Bu siniflandirma hiyerarsi dillerin dizilerini tureten gramer ya da kabul eden makinalarin hesaplama gucune gore yapilmistir UygulamaTeorik bilisim bilimi bakimindan onemli olan bu madde pratikte programlama dilleri kullanarak bilgisayar programlari uretilmesini saglayan derleyici ve yorumlayici yazilimlarinin hazirlanmasinda onemli bir rol oynar Bicimsel dil kurami sifirdan bir programlama dili gelistirmek isteyen bir bilgisayar programcisinin ilk ogrenmesi gereken konulardan biridir Mesela alttaki Tip 2 grameri Java C C dillerinde kullanilan kayan nokta Ingilizce floating point sayilarindan olusan bicimsel dili tanimlar bu dil 3 1415 ya da 1 40239846e 45f gibi sayilarin yazilis sekillerini gosterir FloatingPointLiteral Digits Digits ExponentPart FloatTypeSuffix Digits ExponentPart FloatTypeSuffix Digits ExponentPart FloatTypeSuffix Digits ExponentPart FloatTypeSuffix Digits Digit Digits Digit Digit 0 1 2 3 4 5 6 7 8 9 ExponentPart ExponentIndicator SignedInteger ExponentIndicator one of e E Si gnedInteger Sign Digits Sign one of FloatTypeSuffix one of f F d D Dil ile ilgili bu madde taslak seviyesindedir Madde icerigini genisleterek Vikipedi ye katki saglayabilirsiniz