Bu sayfadaki yazılar
Sayfanın metni
Sayfa 57
Merhaba sevgili Amiga'cılar... Bir ay daha geçti ve yine birlikte dershanemizdeyiz. Önce genel olarak geçen sayıya bir göz atalım. Geçen sayımızda Digital lojik devrelere genel bir bakıştan sonra kapılara geçtik. Burada inverter, and, or, nor ve nand kapılarını örneklerle işledik.
Hatırlarsanız "Boole Cebri" diye bir matematik olayından söz ettik. Bu sayıda size Boole Cebri'nden ve Flip flop devrelerden söz etmek istiyorum.
LOJİK DEVRELER VE BOOLE
EŞİTLİKLERİ ARASINDAKİ
İLİŞKİLER
Boole Cebri, iki değerli fonksiyonlar için kullanılmak üzere geliştirilmiş bir matematik sistemidir. Boole Cebri sayesinde basit ya da karmaşık çeşitli lojik fonksiyonlar alışılagelmiş matematiksel biçimde ifade edilebilir. Bu matematik sistem, dijital devrelerin anlaşılmasında ve tasarlanmasında kullanılır.
Bu sayede dijital devrelerin analiz edilmeleri ve nasıl çalıştıklarının anlaşılması kolayca sağlanır. Boole Cebri'nin diğer bir amacı da en basit, en ucuz ve en verimli lojik devre tasarımında kullanılmasıdır.
Gerçekte Boole Cebri'nin normal matematikte kullandığımız işlemlerden fazla farkı yoktur. Çarpma, bölme, toplama ve çıkarma işlemleri vardır. Ancak kullanılan değerler ya "0" ya da "1" olabilir. Boole Cebri'nin temel mantığını kavradıktan sonra bu matematiksel işlemleri yapmak oldukça kolaydı. Ancak tam kavrayabilmek için ilkokulda dört işlem yapmayı öğrendiğimiz günlere dönmemiz gerekir. Fakat bu kez sayılar 0'dan 10'a kadar değildir. Aslında 10'lu matematikten çok daha kolaydır. Sözgelimi bizim bildiğimiz matematikte 1 + 1 = 2'dir. Ancak Boole Cebri'ne göre aynı işlemin sonucu 1 + 1 = 10 (Bir- Sıfır)'dır. Bu kesinlikle on değildir. Bir sıfırın anlamı yine bizim bildiğimiz iki'dir. Ancak lojikte böyle bir tanım yoktur. Bunu daha iyi kavrayabilmek için normal matematikte 9'dan sonra gelecek yine tek hanelik herhangi bir şekil düşünün. Bunu bildiğimiz matematik kalıbına oturtamazsınız. Aynı şekilde bizim kullandığımız iki, Boole Cebri'nde anlamsızdır.
Lojik devrelerde Boole Cebri en çok tasarımcıların işine yarar. Karmaşık bir lojik devrede pek çok giriş olabilir. İşte bu girişlerin hesaplanması ve çıkışın ayarlanması gerekmektedir. Burada tüm ayarlamalar Boole Cebri'nin yardımı ile olur.
Buna bir örnek verelim: Sözgelimi altı kişilik bir öğrenci grubu okulun son günlerinde sinemaya gitmek isterler. Fakat gidilecek filme karar verebilmeleri için 3 erkek öğrencinin hemfikir olması ve kalan 3 kız öğrenciden en az birinin onlarla aynı fikirde olması gerekmektedir. Bu konuda aralarında anlaştıktan sonra önce öğretmenlerinden daha sonra da okul müdüründen olumlu cevap almaları gerekmektedir. Şimdi örneğimizi biraz açalım.
Soru: Sinemaya gidilecek mi, gidilmeyecek mi?
Şartlar: 1- Ali, Cem ve Osman gitmeye karar vermeli.
2- Nilgün, İrem veya Rezzan arasından en az biri de gitmek istemeli.
3- Öğretmen izin vermeli. 4- Müdür izin vermeli. Şimdi bu olayı matematiksel olarak formüle dökelim. Bütün şahısları baş harfleri ile tanımlayacağız:
Sinema = [((A.C.O). (N + İ + R) . Ö).M]
Bu formülü incelersek sonuçta yukarıda belirttiğimiz şartlara göre tüm olasılıklar sırasıyla sağlanmıştır. Formülde harflerin yerine olumlu görüş var ise değer 1, olumsuz görüş var ise değer 0 olacaktır. Şimdi formül üzerindeki verilerden faydalanarak bu olayı bir lojik devre olarak çizelim.
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 56
basmakla eşdeğerdir. Daha geniş anlamda ise uyarı flaglarını aktive ederek "işlem" argümanıyla belirtilen CLI işlemini durdurmaktır. ALL argümanı tüm flagları aktive eder.
örnek:
1) break 1 D
CHANGETASKPRI
Format: CHANGETASKPRI öncelik Amiga, CPU düzeyinde belli işlemleri yaparken özel task (görev) numaraları kullanır. Bazı işlemler bilgisayar için hayati öneme sahip olduklarından bunlara öncelik verilir. Bu komut ise belli bir CLI işleminin önceliğini kendi isteğinize uygun biçimde değiştirmenizi sağlar. Yani başka bir deyişle birden çok CLI penceresinde yapılan işlemlerde bu komutla önceliğini arttırdığınız veya azalttığınız penceredeki CLI işlemleri, öncelikli veya daha az öncelikli yapılır, öncelik hiyerarşisi +127'den -128'e kadar azalır ancak CLI işlemlerine +5'ten fazla öncelik vermemelisiniz. Değişik CLI pencerelerinin işlem numaralarını STATUS komutuyla görmek mümkündür.
HANDLER TANIM
Workbench 1.3;L Aux-Handler Seri porttan giriş ve çıkış işlemlerini yapar. Disk-Validator Sürücüye konan herhangi bir disketi okuyarak kayıta hazır hale getirir. FastFileSystem Harddisk erişimini hızlandırır. Newcon-Handler Shell pencereleri açar. Pipe-Handler Programlar arasında özel bir iletişim kanalı oluşturur. Port-Handler PAR:, SER: ve PRT gibi fiziksel araçlar için DOS arabirimini çalıştırır. RAM-Handler Dosyaları bellekte saklama işlemlerini gerçekleştirir. SHELL-SEG Shell'i kontrol eder. Speak-Handler Konuşma olarak çıkış verir.
veya bir sürücüdeki disketin root directory'sinin içine girmenizi sağlar. Komutu argümansız olarak girecek olursanız o an içinde bulunduğunuz directory'nin adı verilecektir. Örnek:
örnek:
1) changetaskpri 4 CD Format: CD directory-adı sürücü-adı CD komutu herhangi bir directory'nin
1) cd dh0:
COPY
Format: COPY [FROM isim] [TO isim] [ALL] [QUIET] [BUFFER = NN] [CLONE] [DATE] [COM] [NOPRO]
CLI'nin en çok kullanılan komutlarından biri olan Copy komutu dosyaları ve directory'leri bir disket içinde veya bir disketten başka diskete kopyalamaya yarar. Normal durumda "from" ve "to" argümanlarını vermek zorunda değilsiniz ancak "to" argümanını önce yazarsanız "from"u da vermeniz gereklidir.
ALL seçeneği ile bir directory içindeki tüm dosyalar ve alt directory'ler "to" directory'sine kopyalanır.
QUIET, kopyalanan dosya ve directory'lerin isimlerinin CLI penceresinde gösterilmemesini sağlar.
BUFFER ile kopyalama esnasında kullanılan 512 bayt'lık buffer'ların sayısı belirlenir.
Kopyalama işlemini CLONE seçeneğini ekleyerek yaparsanız kaynak (orijinal) dosyanın, tarih ve dosya notları gibi özel bilgileri de hedef dosyaya kopyalanır. DATE seçeneği yalnızca tarihi, COM ise yalnızca dosya notlarını kopyalar. Kaynak dosyanın koruma bit'lerinin durumunu hedef dosyaya kopyalamak istemiyorsanız NOPRO seçeneğini kullanmalısınız. örnek:
1) Copy df0:s all to ram:s1 quiet do- ne nopro