Skip to content

Aylar: Temmuz 2012

Logisim

Logisim devre elemanlarını çizmeye ve simüle etmeye yarayan, Mantık Devreleri, Bilgisayar Mimarisi gibi derslerde kullandığımız açık kaynaklı bir programdır. Buna alternatif ücretli programlar vardır. Onlarla tam devre çizim ve simülasyonu yapılabiliyor. Fakat Elektrik-Elektronik öğrencisi değilseniz, işin mantığını öğrenmek istiyorsanız Logisim size yetecektir.

Örneğin bir bitlik bir hafıza hücresini aşağıdaki gibi çizdiğimizde nasıl çalıştığını Logisim sayesinde daha iyi anlayabiliriz. Burada Read/Write anahtarı “0” olduğunda girişteki değer D flip-flopuna yazılır, “1” olduğunda ise okuma işlemi gerçekleşir.

Continue reading Logisim

Leave a Comment

Jflap Türkçe Kaynak

Otomata Teorisi dersinde Jflap üzerinde pratik yapmamız gerekiyordu. Fakat programın nasıl kullanılacağıyla ilgili Türkçe kaynak sıkıntısı vardı. Hocamız odev olarak Jflap kullanım klavuzu yapmamızı istedi. Ben de birebir çeviri yerine her konu başlığı altında ne anlatılmak istenmişse teker teker deneyip, çeviriden çok da ayrılmadan toplam 255 sayfalık bir klavuz hazırladım.

Klavuz sadece Jflap değil aslında, Otomata Teoriyle ilgili aşağı yukarı tüm konuları kapsıyor. Otomata ile ilgili örnekleri bir program üzerinde denemenin daha öğretici olduğunu düşünüyorum. Bu yüzden Otomata çalışırken klavuzdan faydalanmanız çok büyük yarar sağlayacaktır. Bu çalışma için sadece “Jflap Kullanım Klavuzu” değil, esasında “Jflap ile Otomata Teorisi” demek daha doğru olur. Jflap CC lisanslı bir program olduğu için hiçbir ücret ödemeden bu programı kullanabilirsiniz. Otomata Teori, konularını anlamanızda büyük yardımı olacaktır.

Continue reading Jflap Türkçe Kaynak

2 Comments

Jflap’ta Silme ve Multiple Run

Durumları ve Geçişleri Silmek

Silme işlemi alışa geldiğimiz programlardan biraz farklıdır. Araç çubuğundan silme aracı   seçilir. Silinmek istenen durum ya da geçişin üzerine çift tıklama yapılmasıyla birlikte silme işlemi gerçekleşir.

Çoklu Dizgeleri Sonlu Durum Otomatında Denemek

Program elimizdeki dizgeleri FA üzerinde denememize de izin veriyor. Bunun için “Input” menüsü altından Multiple Run seçeneğini seçiyoruz.

 

Çoklu Çizge Sekmesini Açmak

Continue reading Jflap’ta Silme ve Multiple Run

Leave a Comment

Jflap’ta Başlangıç ve Son Durumları Tanımlamak, Geçişleri Oluşturmak

Keyfi olarak q0 bizim başlangıç durumumuz olsun. Bu durumumuzu tanımlamak için önce araç çubuğundan özellik düzenleme aracını  seçiyoruz. Daha sonra oluşturduğumuz q0 ‘ın üzerine gelip sağ tıklıyoruz. Sonuçta aşağıdaki gibi bir görüntü ortaya çıkacaktır.

 

Durum Menüsü

Açılan pop-up menüden initial’i seçtiğimizde q0 başlangıç durumu olacaktır. Sol tarafında ok işareti belirecektir.

Continue reading Jflap’ta Başlangıç ve Son Durumları Tanımlamak, Geçişleri Oluşturmak

Leave a Comment

Linux Yaz Kampı ’12

linux yaz kampı
Linux Yaz Kampı ’12

Linux Yaz Kampı için başvurular başladığında sınavlarımız vardı. Bütünlemeye kalıp kalmayacağımız belli değildi. Eğer bir kaç dersten bütünlemeye kalırsak ya Bolu’dan gidip gelmek zorunda kalacaktık, ya yarıda bırakıp LKD’nin kara listesine adımızı yazdıracaktık, ya da hiç katılmayacaktık. Bizim için gerçekten riskli bir karardı. Özellikle beni bu kampta cezbeden, sonunda bir yazılım üretip bunu da GPL lisansıyla yayınlama vaadiydi. Sadece teorik bir eğitim olsa ve sonunda da katılım sertifikası verilen bir kamp olsaydı, bütünlemeye kalma riski varken muhtemelen katılmazdım.

Continue reading Linux Yaz Kampı ’12

Leave a Comment

Jflap Sonlu Otomatlar-Durum Oluşturmak

JFLAP sonlu otomatları bir M beşlisi olarak tanımlar. Matematiksel olarak gösterecek olursak:

M = (Q, Σ, δ, qs, F) şeklindedir. Burada:

Q sonlu durumları
Σ giriş alfabesini
δ geçiş fonksiyonunu, δ :
D → 2Q olan yerde D, Q × Σ* ifadesinin sonlu altkümesidir.
qsQ’nun üyesidir. Giriş durumudur.
FQ’nun üyesidir. Son durumdur.

Bu tanım ayrıca deterministik olmayan sonlu otomatları da tanımlar.

JFLAP’ta farklı tür otomatların yapılandırılması epeyce benzerdir. Bu yüzden bir sonlu durum otomatını yapılandırmakla işe başlayalım.

Elimizde L = {ambn : m ≥ 0, n > 0, n tektir} şeklinde bir dil bulunsun. Bu a’dan her sayıda tekrar olabileceğini fakat b’den tek sayı adedince tekrar olabileceğini bize söylemektedir. Yani b(1),bbb(3),bbbbb(5)… şeklinde.

Continue reading Jflap Sonlu Otomatlar-Durum Oluşturmak

Leave a Comment

JFLAP NEDİR?

JFLAP NEDİR?

JFLAP, nondeterministik sonlu otomatlar, nondeterministik pushdown otomatlar, multi-tape Turing makineleri, muhtelif çeşitlerde gramerler, parsing(ayrıştırma) ve L-sistemler gibi konu başlıklarını içeren formal dilleri tecrübe etmek için yazılmış bir programdır. En yeni sürümü 3 Eylül 2009’da çıkmıştır.

JFLAP’IN TARİHİ
FLAP, Rensselaer Polytecnic Enstitüsünde (Amerika) 1990 yıllarında Susan Rodger, önderliği altında çalışan öğrenciler tarafından otomatlar için yazılmış, yazılım parçaları olarak başlatıldı. Rodger’in 1994 yıllında Duke Üniversitesine(Amerika/Durham) taşınmasıyla birlikte JFLAP projesi de bu üniversite bünyesine katılmış oldu.
JFLAP’ın tarihi gelişimi ve bazı sürümlerinin kaynak kodları için http://www.jflap.org/jflaptmp/ adresine bakabilirsiniz.
JFLAP için 2005 ve 2006 yıllarında çalıştaylar düzenlenmiştir.

Continue reading JFLAP NEDİR?

Leave a Comment