Syntax Analysis. 4/5/2004 Formal Diller 4.1
|
|
- Meryem Balcı
- 8 yıl önce
- İzleme sayısı:
Transkript
1 Syntax Analysis Her programlama dilinin yazilan bir programin syntax olarak dogru olup olmadigini belirleyen kurallari vardir. Programlama dillerinin syntactic yapisi Contex-Free Grammer / BNF (Backus-Naur Form) le ifade edilir. 4/5/2004 Formal Diller 4.1
2 Grammarler Grammerlerin Yararlari Programlama dilinin syntactic yapisinin kolayca anlsilmasina olanak saglar Bazi tip grammar lerden otomatik olarak efficient parserlarin uretilmesi mumkundur. Grammarler yeni program yapilarinin mevcut yapilara kolayca eklenmesine olanak saglar 4/5/2004 Formal Diller 4.2
3 Parser 4/5/2004 Formal Diller 4.3
4 Parser Tipleri Compiler tasariminda kullanilan parserlar genel olararak iki tiptedir. Top-down parser : Parse tree leri top (root) dan bootom (leaves) lere dogru insaa ederler. Bottom-up parser : Bu tip leaves lerden baslayip root a dogru calisirlar. Her iki tip parser icin, giris file i soldan saga dogru taranir. 4/5/2004 Formal Diller 4.4
5 Syntax Hatalari ger compiler sadece bir programin syntactic olarak dogru yazilip yazilmadiga karar verseydi tasarimi son derece kolaylasacakti. Iyi compilerlar programcilara programlarinin neresinde ve ne tip hatalar yaptiklarini anlamalarina olanak saglarlar. Cogu grammarler hatalara compilerlarin nasil tepki gostermeleri gerektigini belirlemezler. Hatalara karsi nasil davranilmasi gerektigi tamamen compilerin kendine kalmistir. 4/5/2004 Formal Diller 4.5
6 Hata Tipleri Programci programini yazimi esnasinda cok degisik turlerde hatalar yapabilir. Lexical (identifier, keyword veya operatorun misspellingi) Syntactic (aritmetik bir ifadede unbalanced parantezlerin bulunmasi a*(b+c)) ) Semantic (bir operatorun tip uyusmazligi olan bir operanda uygulanmasi 100 % ) Logical (recursive bir alt programda sonlanma kosulunun olmamasi) 4/5/2004 Formal Diller 4.6
7 Hatalar Genelde error detection (hata tespiti) ve recovery (hatadan donme) syntax analysis safhasinda gerceklestirilir. Bir cok hata syntactic dir ve lexical anayzerden dondurulen stringler dilin grammmar kurallarina uymazsa kolayca tespit edilebilirler. Semantic ve logical errorlarin compiler time da tespit edilmeleri cok daha zor bir istir. 4/5/2004 Formal Diller 4.7
8 rror Handling Mekanizmasi Parserin rror Handling Mekanizmasi baslica uc seyi yerine getirmeli rrorlarin acik ve dogru bir sekilde bildirmeli Her bir errordan kolayca recover yapabilmeli ve sonraki errorlari tespit edebilmeli Dogru programlarin derleme suresini (compiling time) cok artirmamali Bazi parsing methods LL ve LR methodlari hatalar olusur olusmaz tespitini yapabilirler. 4/5/2004 Formal Diller 4.8
9 rror-recovery Stratejileri Bir cok error-recovery strategileri mevcut. Panic mode n basit yontemdir rror tespit edildiginde, onceden belirlenmis senkronize gorevi goren bir token (semicolon, end) gorunceye kadar parser giris sembollerini atlar. Dezavantaj: Baska errorlarin bulunabilecegi onemli bir miktar kod atlanir. Avantaj: Infinite-loop (sonsuz dongu) a girmesi imkansiz. Phrase-level recovery rror tespit edildiginde, geri kalan giris kismi icin yerel duzeltme uygulanir. Ornek: comma (,) nin semicolon (;) la yerdegistirilmesi, fazlalik semicolonun silinmesi ger gercek error tespit edildigi yerden once olusmussa hatayi duzeltmede ek zorluklar olusur 4/5/2004 Formal Diller 4.9
10 rror Productions rror-recovery Stratejileri devam Dilin grammarine programcinin yapabilecek oldugu yaygin hatalari tespit edebilecek yeni kurallar eklenir. Parser bu yeni eklenen grammar kurallari dikkate alinarak tasarlanir Global Correction Pratikte pek uygulanmaz. Cok yavas. Yanlis yazilan bir program gosteren bir x stringine minimum sayida degisiklikler (token insertion/deletion/change icin) yapilarak syntactic olarak dogru y stringinin elde edilmesi. 4/5/2004 Formal Diller 4.10
11 CONTXT-FR GRAMMRS (CFG) CFG recursive yapilardan olusan (production) bir grup kurala denir. CFG G=(V,T,P,S) quadruple ile gosterilir. V: variable (Nonterminal) sonlu seti T: terminallerin sonlu seti P: production larin sonlu seti A-> (A: nonterminal (V U T)* nin elemani. S: Baslangic sembolu olarak adlandirilan ozel bir nonterminal 4/5/2004 Formal Diller 4.11
12 G = (V,T,P,S), V={S,A,B}, T={a,b} P: S -> ab ba A -> a as baa B -> b bs abb L(G) sifirdan buyuk esit sayida a ve b lerden olusan stringlerin kumesi. 4/5/2004 Formal Diller 4.12
13 expr expr expr expr op -> expr op expr -> (expr) -> - expr -> id -> + - * / m 4/5/2004 Formal Diller 4.13
14 Derivations (Turetimler) ger A ise A ger n ise 1 den n turetilebilir denir. * + sifir veya daha fazla adim bir adim bir veya daha fazla adim + ger S w ise w ye G nin bir sentence i denir. 4/5/2004 Formal Diller 4.14
15 --> + --> * --> ( ) --> - --> id Derivations (Turetimler) Soru: -(id+id) yukaridaki kurallarla belirlenen dilin bir elemani mi? ==> - ==> - ( ) ==> - ( + ) ==> - (id + ) ==> - ( id + id ) 4/5/2004 Formal Diller 4.15
16 Leftmost / rightmost derivations Leftmost derivation ger her bir turetim adiminda leftmost nonterminal yer degistirilirse buna leftmost derivation denir Rightmost derivation ger her bir turetim adiminda rightmost nonterminal yer degistirilirse bina righmost derivation denir. 4/5/2004 Formal Diller 4.16
17 Parse Trees --> + --> * --> ( ) --> - --> id - ( ) + id id - ( id + id ) icin parse tree 4/5/2004 Formal Diller 4.17
18 --> + --> * --> ( ) --> - --> id - ( id + id ) icin parse tree - - ( ) - ( ) - ( ) - ( ) id id id 4/5/2004 Formal Diller 4.18
19 --> + --> * --> ( ) --> - --> id id + id * id icin parse tree + id + id + * id + id * id + id * + id * id id * + * id + * id + id * id + id * 4/5/2004 Formal Diller id Iki farkli parse tree * id id
BAĞLAMDAN BAĞIMSIZ VE BAĞLAMDAN BAĞIMSIZ OLMAYAN DİLLER (CONTEXT-FREE AND NON-CONTEXT-FREE LANGUAGES)
BAĞLAMDAN BAĞIMSIZ VE BAĞLAMDAN BAĞIMSIZ OLMAYAN DİLLER (CONTEXT-FREE AND NON-CONTEXT-FREE LANGUAGES) Context-free dillerin üretilmesi için context-free gramer ler kullanılmaktadır. Context-free dillerin
DetaylıRegular Expression vs. Context-Free Grammars. Ambiguity. NFA to CFG. Neden RE ler kullanilir?
Ambiguity Ambiguous Grammar: Bazi sentence lar icin birden fazla parse tree ureten grammarlere denir. Ambiguous Grammar ler bazi sentence lari birden fazla leftmost/rightmost derivation larla utetirler.
DetaylıBAĞLAMDAN BAĞIMSIZ (CONTEXT-FREE) GRAMERLER (CFG) VE DİLLER (CFL)
BAĞLAMDAN BAĞIMSIZ (CONTEXT-FREE) GRAMERLER (CFG) VE DİLLER (CFL) Dil tanıyıcı cihaz bir dile ait geçerli string leri kabul eder. Dil üreteci cihaz bir dile ait string leri oluşturur. Dil üreteci cihazlar
DetaylıSemantik (Semantics): ifadelerin, deyimlerin, ve program birimlerinin anlamı Sentaks ve semantik bir dilin tanımı sağlar
PDP 3 1 Sentaks (Syntax): ifadelerin (statements), deyimlerin (expressions), ve program birimlerinin biçimi veya yapısı Semantik (Semantics): ifadelerin, deyimlerin, ve program birimlerinin anlamı Sentaks
Detaylı! " # $ % & '( ) *' ' +, -. /) /) 0 # /) %, %, 1 2
!"#$ %& '()*' ' +,-./) /) 0 #/) %,%, 12 $$(/3#/ " '$$(/34" '$$(//44 / 4 /4/ 4# ##4" 5-6/'$##/" 7#! a(a * b * )b regular expression ile önce bir a üretilir. Ardından iki durumdan birisine göre devam edilir.
DetaylıContext-Free Grammars and Languages
Context-Free Grammars and Languages We have seen that many languages cannot be regular. Thus we need to consider larger classes of langs, called Context- Free Languages (CFL). These langs have a natural,
Detaylı! " # $ % & '( ) *' ' +, -. /.,
!"#$ %& '()*' ' +,-./.,-. 0 12.30.420 ,-./.,-,-.5' $-.5 6# #",-.5 2(3 # #",-.5 6') 7 2(3 87" $-.5.$-.5) 7 # * ",222 2 #5# * #)7 #7",-./.,- Theorem: Context-free diller union, concatenation ve Kleene star
DetaylıOtomata Teorisi (BİL 2114)
Otomata Teorisi (BİL 2114) Fırat İsmailoğlu Hafta 6: Pumping Lemma İçerikten Bağımsız Diller (1. Bölüm) 1 Hafta 6 Plan 1. Olmayana Ergi Yöntemi 2. Güvercin Yuvası Prensibi 3. Pumping Lemma 4. İçerikten
DetaylıYZM Biçimsel Diller ve Otomata Teorisi. Ders#06
YZM 3229- Biçimsel Diller ve Otomata Teorisi Ders#06 İçerikten Bağımsız Diller İçerikten Bağımsız Diller (Context-Free Languages) Şu ana değin Düzenli Dilleri İfade Etmek için Kullanılabilecek Yapıları
DetaylıTokenlarin Taninmasi
Tokenlarin Taninmasi stmt t if expr then stmt if expr then stmt else stmt expr t term relop term term term t id num if, then, else, relop, id, ve num terminal (token), stmt, expr, term nonterminal olarak
DetaylıBölüm 4. Sözcüksel ve Sözdizimsel Analiz ISBN
Bölüm 4 Sözcüksel ve Sözdizimsel Analiz ISBN 0-321-49362-1 Bölüm 4 Konular Giriş Sözcüksel Analiz Ayrıştırma Problemi Özyineleme Kökenli Ayrıştırma Aşağıdan Yukarıya Ayrıştırma Resul Kara 2 4.1 Giriş Derleyici
DetaylıDilbilgisi ve Diller
Dilbilgisi ve Diller Doç.Dr.Banu Diri 1. Her biçimsel dil belirli bir alfabe üzerinde tanımlanır. 2. Alfabe sonlu sayıda simgelerden oluşan bir kümedir. 3. Alfabedeki simgelerin arka arkaya getirilmesi
DetaylıSentaks (Syntax): ifadelerin (statements), deyimlerin (expressions), ve program birimlerinin biçimi veya yapısı
Sentaks (Syntax): ifadelerin (statements), deyimlerin (expressions), ve program birimlerinin biçimi veya yapısı PDP 3 Semantik (Semantics): ifadelerin, deyimlerin, ve program birimlerinin anlamı Sentaks
DetaylıFormal Diller Ve Otomat Teorisi
Formal Diller Ve Otomat Teorisi Ismail Kadayif Canakkale Onsekiz Mart Universitesi Bilgisayar Muhendisligi 4/5/2004 Formal Diller 1.1 Strings ve Languages (Diller) alphabet (character set): Sonlu sayida
DetaylıProgram Nedir? Program, bir problemin çözümü için herhangi bir programlama dilinin kuralları ile oluşturulmuş komut kümesidir.
PROGRAMLAMAYA GİRİŞ Program Nedir? Program, bir problemin çözümü için herhangi bir programlama dilinin kuralları ile oluşturulmuş komut kümesidir. C de yazılan bir programın çalışması için çoğunlukla aşağıdaki
DetaylıBLM210 HAFTA 2 FORMAL METHODS OF SYNTAX DESCRIPTION (SÖZDİZİM TARİFİNİN BİÇİMSEL YÖNTEMLERİ)
1 BLM210 HAFTA 2 FORMAL METHODS OF SYNTAX DESCRIPTION (SÖZDİZİM TARİFİNİN BİÇİMSEL YÖNTEMLERİ) Programming language implementors must be able to determine how the expressions, statements, and program units
DetaylıKonular. Hafta 2 BLG339 PROGRAMLAMA DİLLERİ KAVRAMI
BLG339 PROGRAMLAMA DİLLERİ KAVRAMI Hafta 2 Yrd. Doç. Dr. Melike Şah Direkoğlu Alındığı kaynak: Addison-Wesley s Programming Language Concepts slaytları ve Prof. Dr. Tuğrul Yılmaz ın ders notlarından faydalanarak
DetaylıKARADENİZ TEKNİK ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BİLGİSAYAR SİSTEMLERİ LABORATUARI BISON AYRIŞTIRICI (PARSER) ÜRETECİ
1 KARADENİZ TEKNİK ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BİLGİSAYAR SİSTEMLERİ LABORATUARI BISON AYRIŞTIRICI (PARSER) ÜRETECİ Bison, durumdan bağımsız gramerler (CFG, Context-free grammar) için LALR
Detaylı1 $/ " {ww R : w {a, b} * } ## S asa, S bsb S e#(3 * 5 $(6 )# (2 #$,(- (25 #5
!"#$ %& '()*' ' +,./0% 1 $/02 2 3 " {ww R : w {a, b} * } ## #4 S asa, S bsb S e#(3 5 2'5" * 5 $(6 )# (2 #$ 5#77 #" ' #" (25 #5 #" 8)5*# 73'" 5#$#$257" 379()379" :))##2)7 5)32) #5 6*" :5)$#$2#5" ;! Pushdown
DetaylıDERLEYİCİ TASARIMI ÖDEV-2 RAPORU
DERLEYİCİ TASARIMI ÖDEV-2 RAPORU Nadia Erdoğan Mustafa Cantürk (Image generated by unlicensed version of UMLStudio.) Sınıf tanımları: Token: tokenize() fonksiyonu sonucunda gelen stringi Token lara ayrılır.
DetaylıVT Sistem Gerçeklemesi. Ders Notları- #8
VT Sistem Gerçeklemesi Remote: Kullanıcıdan gelen JDBC isteklerini karşılar. Planner: SQL ifadesi için işleme planı oluşturur ve karşılık gelen ilşkisel cebir ifadesini oluşturur. Parse: SQL ifadesindeki
DetaylıBölüm 3. Sentaks ve semantik tarifi ISBN 0-321-49362-1
Bölüm 3 Sentaks ve semantik tarifi ISBN 0-321-49362-1 Bölüm 3 Konuları Giriş Genel olarak sentaks tarifi Sentaks tarifinin matematiksel yöntemleri Özellik gramerleri (Attribute Grammars) Programların anlamını
DetaylıALGORİTMA VE PROGRAMLAMA I
ALGORİTMA VE PROGRAMLAMA I YZM 1101 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi 2. BÖLÜM 2 PROGRAMLAMAYA GİRİŞ Programlama Terimleri ve Programlama Ortamı 3 Program Programlama IDE
DetaylıBMT 101 Algoritma ve Programlama I 2. Hafta. Yük. Müh. Köksal GÜNDOĞDU 1
BMT 0 Algoritma ve Programlama I 2. Hafta Yük. Müh. Köksal GÜNDOĞDU Algoritma ve Programlama Yük. Müh. Köksal GÜNDOĞDU 2 Algoritma Kavramı Yük. Müh. Köksal GÜNDOĞDU 3 Algoritma ve Programlama Bilgisayardaki
DetaylıManisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü YZM Biçimsel Diller ve Otomata Teorisi. Final Sınavı Örnek Soruları A0 KİTAPÇIĞI
Sayfa#1(A0 Kitapçığı) Manisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü YZM 3229- Biçimsel Diller ve Otomata Teorisi Final Sınavı Örnek Soruları A0 KİTAPÇIĞI Bahar 2017-2018 Süre: 45 Dakika Adı
DetaylıManisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü YZM Biçimsel Diller ve Otomata Teorisi. Final Sınavı Soruları A KİTAPÇIĞI
Sayfa#1(A Kitapçığı) Manisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü YZM 3229- Biçimsel Diller ve Otomata Teorisi Final Sınavı Soruları A KİTAPÇIĞI Bahar 2017-2018 Süre: 45 Dakika Adı ve Soyadı
Detaylıif (ad == "Sabri") Console.WriteLine("Merhaba Sabri. Ne zamandır gözükmüyodun...");
Koşul İfadeleri ve Akış Kontrolü Koşul ifadeleri ve akış kontrolleri programlama dillerinde her zaman en önemli yeri tutmaktadır. Yazdığımız uygulamanın hangi koşulda nasıl davranacağını belirterek bir
DetaylıData Communications. Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü. 10. Hata Kontrolü
Veri İletişimi Data Communications Suat ÖZDEMİR Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü 10. Hata Kontrolü Konular Giriş Blok kodlama Lineer blok kodlar Cyclic kodlar Checksum http://ceng.gazi.edu.tr/~ozdemir
DetaylıTEMEL BİLGİSAYAR BİLİMLERİ. Programcılık, problem çözme ve algoritma oluşturma
TEMEL BİLGİSAYAR BİLİMLERİ Programcılık, problem çözme ve algoritma oluşturma Programcılık, program çözme ve algoritma Program: Bilgisayara bir işlemi yaptırmak için yazılan komutlar dizisinin bütünü veya
DetaylıBir işaretli büyüklük sayısında en soldaki basamak bir işaret içerir. Diğer basamaklarda ise sayısal değerin büyüklüğü (mutlak değeri) gösterilir.
İşaretli Tamsayı Gösterimi 1. İşaretli Büyüklük Bir işaretli büyüklük sayısında en soldaki basamak bir işaret içerir. Diğer basamaklarda ise sayısal değerin büyüklüğü (mutlak değeri) gösterilir. Örnek
DetaylıProgramlama Temelleri. Ders notları. Öğr.Gör. Hüseyin Bilal MACİT 2017
Programlama Temelleri Ders notları Öğr.Gör. Hüseyin Bilal MACİT 2017 İkili (binary) sayı sistemi Bilgisayarın bizim kullandığımız onlu sayı sistemini (decimal) işlemesi mümkün değildir. İkili sayı sistemi
DetaylıPROGRAMLAMAYA GİRİŞ. Öğr. Gör. Ayhan KOÇ. Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay.
PROGRAMLAMAYA GİRİŞ Öğr. Gör. Ayhan KOÇ Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay., 2007 Algoritma ve Programlamaya Giriş, Ebubekir YAŞAR, Murathan Yay., 2011
DetaylıBölüm 3. Sözdizimi(Syntax) ve Anlamsal(Semantics) Tanımlama ISBN 0-321-49362-1
Bölüm 3 Sözdizimi(Syntax) ve Anlamsal(Semantics) Tanımlama ISBN 0-321-49362-1 Bölüm 3 Konuları Giriş Sözdizim(Syntax) tanımlamanın genel problemi Sözdizim(Syntax) tanımlamada resmi metotlar Özellik Gramerleri
DetaylıOtomata Teorisi (BİL 2114)
Otomata Teorisi (BİL 2114) Fırat İsmailoğlu Hafta 9: Turing Makinesi (I. Bölüm) 1 Hafta 9 Plan l. Turing Makinesi (TM) Örnek 2. TM Giriş 3. TM Yapısı 4. TM Bantının Özellikleri 5. TM Formal Gösterimi 6.
DetaylıBil 2114 Otomata Teorisi Çalışma Soruları ve Cevapları III (Hafta 7,8,9)
Bil 2114 Otomata Teorisi Çalışma Soruları ve Cevapları III (Hafta 7,8,9) 1. Formal olarak G = ({S}, {a, b}, R, S) ve R türetim kuralları olarak verilen grammerinin türettği dili bulunuz. S asa S bsb Cevap:
DetaylıDoğu Akdeniz Üniversitesi Bilgisayar Mühendisliği Bölümü. BLGM 318 Ara Sınavı 2012 2013 Đlkbahar Dönemi 13 Nisan 2013. Ad, Soyad Öğrenci No.
Doğu Akdeniz Üniversitesi Bilgisayar Mühendisliği Bölümü BLGM 318 Ara Sınavı 2012 2013 Đlkbahar Dönemi 13 Nisan 2013 Ad, Soyad Öğrenci No. : : Öğretim Üyesi: Doç. Dr. Zeki BAYRAM Süre: 100 dakika Talimatlar:
DetaylıALGORİTMA VE PROGRAMLAMA I
ALGORİTMA VE PROGRAMLAMA I Yrd. Doç. Dr. Deniz KILINÇ deniz.kilinc@cbu.edu.tr YZM 1101 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 Koşul Karşılaştırma Operatörleri Mantıksal
DetaylıTemel Kavramlar 1 Doğal sayılar: N = {0, 1, 2, 3,.,n, n+1,..} kümesinin her bir elamanına doğal sayı denir ve N ile gösterilir.
Temel Kavramlar 1 Doğal sayılar: N = {0, 1, 2, 3,.,n, n+1,..} kümesinin her bir elamanına doğal sayı denir ve N ile gösterilir. a) Pozitif doğal sayılar: Sıfır olmayan doğal sayılar kümesine Pozitif Doğal
DetaylıALGORİTMA VE PROGRAMLAMA I
ALGORİTMA VE PROGRAMLAMA I Yrd. Doç. Dr. Deniz KILINÇ deniz.kilinc@cbu.edu.tr YZM 1101 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 Giriş Fonksiyonlara Genel Bakış C
DetaylıALGORİTMA VE PROGRAMLAMA I
ALGORİTMA VE PROGRAMLAMA I YZM 1101 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 Giriş Fonksiyonlara Genel Bakış C ve Fonksiyonlar Fonksiyon Tanımı 8. BÖLÜM 3 Fonksiyonlar
DetaylıInternet Programming II. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı
Internet Programming II Elbistan Meslek Yüksek Okulu 2015 2016 Bahar Yarıyılı Öğr.Gör. Murat KEÇECĠOĞLU 8 Mar. 2016 PHP de Değişken Tipleri Dizi (Array) Aynı değişken içerisinde birden fazla değer tutmak
Detaylı! " # $ % & '( ) *' ' +, $ $ - $ (. $- $ ( / $ % / $ 0 -( 1( $ (2- -(
!"#$ %& '()*' ' +. $-$( /$% /$0 -(1($(2--( 3 #*'- # 4(5 (6" #7##0 7 $$(5 (6",7 - #, $$ -$(2,-0 # # *'6' (6" 6(50 #" #06 $8# 0 #0 7" 976 0#$ 6 $$" 76 $:;)8) (6",-07#$87 07" $8#< 6 $ < 6))70" ,-$#',-$#'
DetaylıBölüm 4. Sözcüksel ve sözdizimsel analiz ISBN
Bölüm 4 Sözcüksel ve sözdizimsel analiz ISBN 0-321-49362-1 Bölüm 4 Konular giriş Sözcüksel Analiz Ayrıştırma(parsing) problemi Özyinelemeli aşağıya iniş ayrıştırma(recursive-descent Parsing) Aşağıdan-yukarıya
DetaylıALGORİTMALAR. Turbo C Bilgisayarda Problem Çözme Adımları. Bilgisayarda Problem Çözme Adımları.
Turbo C ++ 3.0 ALGORİTMALAR http://vaibhavweb.tripod.com/others/tc3.zip http://www.top4download.com/turbo-c- /aklqwuba.html 1 2 Bilgisayarda Problem Çözme Adımları Bilgisayarda Problem Çözme Adımları 1-Problemi
DetaylıENDÜKTİF REAKTİF AKIM NEDİR?
ENDÜKTİF REAKTİF AKIM NEDİR? Elektrodinamik sisteme göre çalışan transformatör, elektrik motorları gibi cihazlar şebekeden mıknatıslanma akımı çekerler. Mıknatıslanma akımı manyetik alan varken şebekeden
DetaylıOtomata Teorisi (BİL 2114)
Otomata Teorisi (BİL 2114) Fırat İsmailoğlu Hafta 8: İçerikten Bağımsız Diller (I1I. Bölüm) 1 Hafta 8 Plan l. Pushdown Otomata (PDO) Giriş 2. PDO Geçişler 3. PDO Ornekler 4. PDO nun Formal Gösterimi 5.
DetaylıMATEMATİK. Doç Dr Murat ODUNCUOĞLU
MATEMATİK Doç Dr Murat ODUNCUOĞLU Mesleki Matematik 1 TEMEL KAVRAMLAR RAKAM Sayıları yazmak için kullandığımız işaretlere rakam denir. Sayıları ifade etmeye yarayan sembollere rakam denir. Rakamlar 0,1,2,3,4,5,6,7,8,9
DetaylıAlgoritma ve Akış Diyagramları
Algoritma ve Akış Diyagramları Bir problemin çözümüne ulaşabilmek için izlenecek ardışık mantık ve işlem dizisine ALGORİTMA, algoritmanın çizimsel gösterimine ise AKIŞ DİYAGRAMI adı verilir 1 Akış diyagramları
DetaylıDerleyici Kuramı (Compiler Theory)
Derleyici Kuramı (Compiler Theory) Yrd. Doç. Dr. Şadi Evren ŞEKER Bu sunum, İstanbul Üniversitesi, Bilgisayar Mühendisliği, BMG dersi kapsamında hazırlanmıştır ve kavramlara genel bir giriş yapmayı hedefler.
DetaylıGramer Tabanlı Değerlendirme Yöntemleri
Gramer Tabanlı Değerlendirme Yöntemleri 1. Giriş Bir gramer biçimsel bir dilde karakter dizileri yada kelimeler oluşturabilen kurallar seti olarak ifade edilir. Kurallar, dil alfabesini kullanarak, dilin
DetaylıAğaç (Tree) Veri Modeli
Ağaç (Tree) Veri Modeli 1 2 Ağaç Veri Modeli Temel Kavramları Ağaç, bir kök işaretçisi, sonlu sayıda düğümleri ve onları birbirine bağlayan dalları olan bir veri modelidir; aynı aile soyağacında olduğu
DetaylıFORMEL DİLLER VE SOYUT MAKİNALAR. Hafta 1
FORMEL DİLLER VE SOYUT MAKİNALAR Hafta 1 DİL VE FORMEL DİL KAVRAMLARI Dil, insanların karmaşık iletişim sistemlerini edinme ve kullanma becerisidir. Bir dilin formel olabilmesi için bazı niteliklerinin
DetaylıAlgoritma ve Programlamaya Giriş. Mustafa Kemal Üniversitesi Kırıkhan Meslek Yüksekokulu Bilgisayar Teknolojileri Bölümü
Algoritma ve Programlamaya Giriş Mustafa Kemal Üniversitesi Kırıkhan Meslek Yüksekokulu Bilgisayar Teknolojileri Bölümü Güncellenme tarihi: 27.02.2017 Yazılım nedir? Donanım birimlerini istenen işleme
DetaylıKONU 4: DOĞRUSAL PROGRAMLAMA MODELİ İÇİN ÇÖZÜM YÖNTEMLERİ I
KONU 4: DOĞRUSAL PROGRAMLAMA MODELİ İÇİN ÇÖZÜM YÖNTEMLERİ I 4.1. Dışbükeylik ve Uç Nokta Bir d.p.p. de model kısıtlarını aynı anda sağlayan X X X karar değişkenleri... n vektörüne çözüm denir. Eğer bu
DetaylıTEMEL BİLGİSAYAR BİLİMLERİ
TEMEL BİLGİSAYAR BİLİMLERİ Doç. Dr. M.Ümit GÜMÜŞAY YTÜ - 2012 2 PROGRAMLAMA MANTIĞI Herhangi bir amaç için hazırlanan programın mantık hataları içermesi durumunda, alınacak sonucunda yanlış olacağı aşikardır.
Detaylı1. PROGRAMLAMAYA GİRİŞ
1. PROGRAMLAMAYA GİRİŞ Bilgisayardaki İşlem Akışı Hammadde İşletme Makine, Teçhizat vs. İnsan Ürün Veri Bilgisayar Program İnsan Sonuç Bilgisayarın Genel Bileşenleri Bilgisayar Yazılım Donanım Sistem Uygulama
DetaylıAlgoritma ve Programlamaya Giriş. Mustafa Kemal Üniversitesi Kırıkhan Meslek Yüksekokulu Bilgisayar Teknolojileri Bölümü
Algoritma ve Programlamaya Giriş Mustafa Kemal Üniversitesi Kırıkhan Meslek Yüksekokulu Bilgisayar Teknolojileri Bölümü Güncellenme tarihi: 13.03.2017 Yazılım nedir? Donanım birimlerini istenen işleme
DetaylıPros and Cons of Pointers. Pointers. Avantajlar. Dezavantajlar
Pointers Java haric, cogu programming languages memory address lerine ait abstract data type destigine sahiptirler C++ da buna pointer denir Pointers lar data structures ve parameter passing in karmasikligini
DetaylıPython ile Programlamaya Giris
Python ile Programlamaya Giris Ders 4 Veri Tipleri Arasinda Dönüsüm Asagida iki farkli veri tipi, int ve str, gösteriliyor. >>> 3 3 >>> '3' '3' >>> Ilk girilen sayi 3 bir tamsayi iken ikinci girilen sayi
DetaylıMAKİNE ELEMANLARI DERS SLAYTLARI
MAKİNE ELEMANLARI DERS SLAYTLARI TOLERANSLAR P r o f. D r. İ r f a n K A Y M A Z P r o f. D r. A k g ü n A L S A R A N A r ş. G ör. İ l y a s H A C I S A L I H O Ğ LU Tolerans Gereksinimi? Tasarım ve üretim
DetaylıBil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi
Bil101 Bilgisayar Yazılımı I Bilgisayar Yüksek Mühendisi Yazılım, değişik ve çeşitli görevler yapma amaçlı tasarlanmış elektronik araçların birbirleriyle haberleşebilmesini ve uyumunu sağlayarak görevlerini
DetaylıVHDL ile KODLAMA ve HATA BULMA TEKNİKLERİ
KARADENİZ TEKNİK ÜNİVERSİTESİ Bilgisayar Mühendisliği Bölümü Sayısal Tasarım Laboratuarı VHDL ile KODLAMA ve HATA BULMA TEKNİKLERİ 1.Giriş Kodlama, elektronik dünyasında çok sık kullanılan, hatta vazgeçilmesi
DetaylıXML'in Temelleri. XML veri tanimlamayi saglayan ve verilerin alisverisinde kullanilacak standart bir format olarak kullanilan bir dildir.
XML'in Temelleri I. XML'IN TEMELLERI XML veri tanimlamayi saglayan ve verilerin alisverisinde kullanilacak standart bir format olarak kullanilan bir dildir. XML'in üstünlükleri sunlardir: -Genisleyebilir.
DetaylıGÖRSEL PROGRALAMA HAFTA 2 PROGRAMLAMA DİLLERİNE GİRİŞ
GÖRSEL PROGRALAMA HAFTA 2 PROGRAMLAMA DİLLERİNE GİRİŞ Hafta Hafta 1 Hafta 2 Hafta 3 Hafta 4 Hafta 5 Hafta 6 Hafta 7 Hafta 8 Hafta 9 Hafta 10 Hafta 11 Hafta 12 Hafta 13 Hafta 14 Konu Giriş Programlama Dillerine
DetaylıEn kucuk calisabilir birime satetement denir Statements semicolon (;) ile sonlanir Yalniz basina ; null statement i ifade eder
C++ Statements C++ control structures En kucuk calisabilir birime satetement denir Statements semicolon (;) ile sonlanir Yalniz basina ; null statement i ifade eder Ornek: while (*str++ = *inbuf++) ; {
DetaylıBölüm 4. Sözcük ve Sentaks Çözümlemesi ( Analizi) ISBN
Bölüm 4 Sözcük ve Sentaks Çözümlemesi ( Analizi) ISBN 0-321-49362-1 Bölüm 4 Konuları Giriş Sözcük çözümlemesi Ayrıştırma (parsing) problemi Özyineleyerek inen ayrıştırma (Recursive- Descent Parsing) Aşağıdan-yukarı
DetaylıBölüm 3. Söz Dizilimi ve Anlamı Tanımlama ISBN
Bölüm 3 Söz Dizilimi ve Anlamı Tanımlama ISBN 0-321-49362-1 Bölüm 3 Konular Giriş Söz Dizimi Tanımlamadaki Genel Problem Söz Dizimi Tanımlamanın Biçimsel Yöntemleri Gramerlerin özellikleri Programların
DetaylıAlgoritma ve Akış Diyagramları
Algoritma ve Akış Diyagramları Bir problemin çözümüne ulaşabilmek için izlenecek ardışık mantık ve işlem dizisine ALGORİTMA, algoritmanın çizimsel gösterimine ise AKIŞ DİYAGRAMI adı verilir. 1 Akış diyagramları
DetaylıBLM-111 PROGRAMLAMA DİLLERİ I. Ders-2 Değişken Kavramı ve Temel Operatörler
BLM-111 PROGRAMLAMA DİLLERİ I Ders-2 Değişken Kavramı ve Temel Operatörler Yrd. Doç. Dr. Ümit ATİLA umitatila@karabuk.edu.tr http://web.karabuk.edu.tr/umitatilla/ Nesne Bellekte yer kaplayan ve içeriklerine
DetaylıNesne Yönelimli Programlama
1 Nesne Yönelimli Programlama Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Genel Bilgiler Ders konuları 1. Programlamaya Giriş 2. Program Denetimi ve Operatörler 3. Nesnelerin
DetaylıBilgi ve İletişim Teknolojileri (JFM 102) Ders 10. LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ
Ders 10 LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ LINUX de Programlama LINUX işletim sistemi zengin bir programlama ortamı sağlar. Kullanıcılara sistemi geliştirme olanağı sağlar.
DetaylıBilgisayar Mühendisliğine Giriş. Yrd.Doç.Dr.Hacer KARACAN
Bilgisayar Mühendisliğine Giriş Yrd.Doç.Dr.Hacer KARACAN PROGRAMLAMA DİLLERİ Programlama Dilleri ni neden öğrenmeliyiz? Programlama alanları Dil değerlendirme kriterleri Dil tasarımı üstündeki etkiler
DetaylıBilgi Teknolojisinin Temel Kavramları
Bilgi Teknolojisinin Temel Kavramları 1. Günlük yaşantıda bilgisayar hangi alanlarda kullanılmaktadır? 2. Bilgisayarın farklı tip ve özellikte olmasının sebepleri neler olabilir? Donanım Yazılım Bilişim
Detaylı2 İlişkisel Veritabanı Tasarımı. Veritabanı 1
2 İlişkisel Veritabanı Tasarımı Veritabanı 1 Veritabanı Tasarımı Tasarım yapılırken izlenecek adımlar; Oluşturulacak sistemin nelerden oluşması gerektiği ve hangi işlemlerin hangi aşamalarda yapıldığı
DetaylıBİLGİSAYAR PROGRAMLAMA. Algoritma ve Akış Şemaları
BİLGİSAYAR PROGRAMLAMA Algoritma ve Akış Şemaları Algoritma tanımı Algoritma özellikleri Algoritma tasarımı Akış şemaları Dallanma simgeleri Döngü simgeleri Akış şeması tasarımı Akış şeması örnekleri Konu
Detaylı1.1. Yazılım Geliştirme Süreci
Kazanımlar Bu bolümde; Yazılım geliştirme sureci konusunda bilgi sahibi olacak, Yazılım geliştirme surecinde gerekli olan araçları tanıyacak, Python dilinde program geliştirme ortamlarını inceleyebileceksiniz.
DetaylıALGORİTMA NEDİR? (Adım adım işlem basamaklarının yazılmasıdır.)
PROGRAM YAZMAK SÜRECİ 1. Problemin farkına varmak, 2. Problemi analiz etmek, 3. Çözüm yolları düşünmek, 4. İyi çözüm yolları seçip algoritma oluşturmak, 5. Akış diyagramı çizmek, 6. Uygun bir dilde kodlamak,
DetaylıSayı sistemleri-hesaplamalar. Sakarya Üniversitesi
Sayı sistemleri-hesaplamalar Sakarya Üniversitesi Sayı Sistemleri - Hesaplamalar Tüm sayı sistemlerinde sayılarda işaret kullanılabilir. Yani pozitif ve negatif sayılarla hesaplama yapılabilir. Bu gerçek
DetaylıMTK467 Nesneye Yönelik Programlama. Hafta 4 - Döngüler Zümra Kavafoğlu https://zumrakavafoglu.github.io/
MTK467 Nesneye Yönelik Programlama Hafta 4 - Döngüler Zümra Kavafoğlu https://zumrakavafoglu.github.io/ while döngüsü while(koşul){ } döngü ifadeleri Koşul boolean değerli olmalıdır. Koşulun değeri true
DetaylıBIM 202 - Bahar 2011. Programlama Dilleri
BIM 202 - Bahar 2011 Programlama Dilleri Prof. Dr. Tuğrul Yılmaz e-posta: tyilmaz@mu.edu.tr Tuğrul Yılmaz - Pamukkale Üniversitesi 1 Sözdizim (syntax) ve Anlambilim (Semantics) Her programlama dilindeki
DetaylıBMT 101 Algoritma ve Programlama I 3. Hafta. Yük. Müh. Köksal GÜNDOĞDU 1
BMT 101 Algoritma ve Programlama I 3. Hafta Yük. Müh. Köksal GÜNDOĞDU 1 Akış Diyagramları ve Sözde Kodlar Yük. Müh. Köksal GÜNDOĞDU 2 Sözde Kodlar (pseudo-code) Yük. Müh. Köksal GÜNDOĞDU 3 Sözde Kod Sözde
DetaylıDersin Sorumlusu: Yrd. Doç. Dr. Birol SOYSAL. Sunumları Hazırlayan: Doç. Dr. Bülent ÇAKMAK
MATLAB de Bilgisayar Programlama Dersin Sorumlusu: Yrd. Doç. Dr. Birol SOYSAL Sunumları Hazırlayan: Doç. Dr. Bülent ÇAKMAK M-dosyası Genel tanıtımı : Bir senaryo dosyası (script file) özel bir görevi yerine
DetaylıDüşünelim? Günlük hayatta bilgisayar hangi alanlarda kullanılmaktadır? Bilgisayarın farklı tip ve özellikte olmasının sebepleri neler olabilir?
Başlangıç Düşünelim? Günlük hayatta bilgisayar hangi alanlarda kullanılmaktadır? Bilgisayarın farklı tip ve özellikte olmasının sebepleri neler olabilir? Bilgisayar Bilgisayar, kendisine verilen bilgiler
Detaylı6.Hafta Kıyım Fonksiyonu (Hashing), BST. Doğrudan erişim tabloları Çarpışmaları ilmekleme ile çözmek Kıyım fonksiyonu seçimi Açık adresleme
1 6.Hafta Kıyım Fonksiyonu (Hashing), BST Doğrudan erişim tabloları Çarpışmaları ilmekleme ile çözmek Kıyım fonksiyonu seçimi Açık adresleme Sembol-tablosu problemi 2 Doğrudan erişim tablosu 3 4 Çözüm
DetaylıBM312 Ders Notları - 3 2014
DETERMİNİSTİK SONLU OTOMATLAR (DETERMINISTIC FINITE AUTOMATA) Bir Sonlu Otomat (FA) sabit ve sonlu kapasitede bir merkezi işlem ünitesine sahiptir. Giriş bilgisini input tape üzerinden string olarak alır.
DetaylıGünümüz bilgi toplumunda bilgisayar, her alanda kendine yer edinmiş ve insana, bir çok işlemde yardımcı olarak büyük kolaylık sağlamaktadır.
I. GİRİŞ Günümüz bilgi toplumunda bilgisayar, her alanda kendine yer edinmiş ve insana, bir çok işlemde yardımcı olarak büyük kolaylık sağlamaktadır. İnsanların elle yaptığı ve yapmakta olduğu bir çok
DetaylıBilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü
C ++ Ders 9 C ++ Ön İşlemciler Prof. Dr. M. Serdar ÇELEBİ, İTÜ C ++ Önişlemciler Giriş #include Önişlemci Direktifi #define Önişlemci Direktifi: Sembolik Sabitler #define Önişlemci Direktifi : Makrolar
DetaylıÖğr. Gör. Musa AYDIN Fatih Sultan Mehmet Vakıf Üniversitesi
Öğr. Gör. Musa AYDIN Fatih Sultan Mehmet Vakıf Üniversitesi İÇİNDEKİLER Değişken Nedir? Değişken kullanımı faydaları. Değişken türleri Değişken görünürlüğü (scope) Değişken türleri arası dönüşümler Örnek
DetaylıToplama işlemi için bir ikili operatör olan artı işareti aynı zamanda tekli operatör olarak da kullanılabilir.
www.csharpturk.net Türkiye nin C# Okulu Yazar Yunus Özen Eposta yunus@yunus.gen.tr Tarih 08.04.2006 Web http://www.yunusgen.tr ARİTMETİK OPERATÖRLER VE KULLANIM ŞEKİLLERİ Bilgisayarlar yapıları gereği,
DetaylıSAYILAR DOĞAL VE TAM SAYILAR
1 SAYILAR DOĞAL VE TAM SAYILAR RAKAM: Sayıları ifade etmek için kullandığımız 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 sembollerinden her birine rakam denir. Soru: a ve b farklı rakamlar olmak üzere a + b nin alabileceği
DetaylıBuna göre, eşitliği yazılabilir. sayılara rasyonel sayılar denir ve Q ile gösterilir. , -, 2 2 = 1. sayıdır. 2, 3, 5 birer irrasyonel sayıdır.
TEMEL KAVRAMLAR RAKAM Bir çokluk belirtmek için kullanılan sembollere rakam denir. 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 sembolleri birer rakamdır. 2. TAMSAYILAR KÜMESİ Z = {..., -3, -2, -1, 0, 1, 2, 3, 4,... }
Detaylı4- Turbo Pascal Bilgisayar Programlamada Kullanılan Şart Yapıları
4- Turbo Pascal Bilgisayar Programlamada Kullanılan Şart Yapıları Şart yapıları bir bilgisayar programının olmazsa olmazlarındandır. Şart yapıları günlük hayatımızda da çok fazla karşılaştığımız belirli
DetaylıHafta 9 C Dilinde Kontrol ve Döngü Yapıları
BLM111 Programlama Dilleri I Hafta 9 C Dilinde Kontrol ve Döngü Yapıları Yrd. Doç. Dr. Caner ÖZCAN Karar (Karşılaştırma) Komutları if-else Koşulların kontrolünde kullanılan komutlardır. Koşulların doğru
DetaylıBit, Byte ve Integer. BIL-304: Bilgisayar Mimarisi. Dersi veren öğretim üyesi: Dr. Öğr. Üyesi Fatih Gökçe
Bit, Byte ve Integer BIL-304: Bilgisayar Mimarisi Dersi veren öğretim üyesi: Dr. Öğr. Üyesi Fatih Gökçe Ders kitabına ait sunum dosyalarından adapte edilmiştir: http://csapp.cs.cmu.edu/ Adapted from slides
DetaylıPROGRAMLAMA TEMELLERİ
PROGRAMLAMA TEMELLERİ 2.HAFTA Yazılım Yazılım, elektronik aygıtların belirli bir işi yapmasını sağlayan programların tümüne verilen isimdir. Bir başka deyişle var olan bir problemi çözmek amacıyla bilgisayar
DetaylıSoru Toplam Puan Not
A grubu Pamukkale Üniversitesi Bilgisayar Mühendisliği Programlama Dilleri Dönem Sonu Sınavı Cevap Kağıdı 29.03.2017 Öğrenci Numarası : Adı Soyadı : Sınav çoktan seçmeli ve klasik olmak üzere iki kısımdan
DetaylıBİLGİSAYAR BİLİMİ DERSİ (KUR 1) PYTHON PROGRAMLAMA DİLİ ÇALIŞMA KÂĞIDI - 1
BİLGİSAYAR BİLİMİ DERSİ (KUR 1) PYTHON PROGRAMLAMA DİLİ ÇALIŞMA KÂĞIDI - 1 Ekrana Metin Yazdırmak Ekranda metin yazdırmak istendiğinde print komutu kullanılır. Kullanımı aşağıda verilmiştir. Parantez içinde
Detaylısayıların kümesi N 1 = { 2i-1: i N } ve tüm çift doğal sayıların kümesi N 2 = { 2i: i N } şeklinde gösterilebilecektir. Hiç elemanı olmayan kümeye
KÜME AİLELERİ GİRİŞ Bu bölümde, bir çoğu daha önceden bilinen incelememiz için gerekli olan bilgileri vereceğiz. İlerde konular işlenirken karşımıza çıkacak kavram ve bilgileri bize yetecek kadarı ile
DetaylıPROGRAMLAMAYA GİRİŞ DERS NOTLARI
PROGRAMLAMAYA GİRİŞ DERS NOTLARI PROGRAM Bilgisayar en basit olarak üç ana görevi yerine getiren bir makinedir. Girilen bilgiyi alır (INPUT), işler (PROCESSING) ve bu işlenmiş veriden bir sonuç (OUTPUT)
DetaylıBilgisayarda Programlama. Temel Kavramlar
Bilgisayarda Programlama Temel Kavramlar KAVRAMLAR Programlama, yaşadığımız gerçek dünyadaki problemlere ilişkin çözümlerin bilgisayarın anlayabileceği bir biçime dönüştürülmesi / ifade edilmesidir. Bunu
Detaylı