Bu sayfadaki yazılar
Sayfanın metni
Sayfa 70
100 PRINT “FİYATI GİRİN-TL.”; 110 5:TYP - 1:GOSUB 10000
Bu sefer TYP değişkeninin değeri 1 oldu. LNG değişkenine 5 değeri verdik. Veri alanımızda dört rakam olmasına rağmen veri alanının uzunluğuna beş vermemizin nedeni noktanın veri alanında bir karakter sayılmasıdır. Eğer desimal nokta kullanılmazsa maksimum 99999 TL. miktarında veri girebilir. Bundan dolayı rutinden dönüldükten sonra alınan verinin geçerli olup olmadığının kontrol edilmesi gerekir. Etkisini görmek için PROGRAM1'i yazıp çalıştırın. Ancak çalıştırmadan evvel diskete veya kasete bir kopya saklamayı unutmayın. Kaset kullanıcısı iseniz 100 numaralı satırdaki 8'i 1 yapın. Bir numaralı programın diskette olmasına veya kasette ikinci programdan sonra kaydedilmiş olmasına dikkat edin. İkinci programı çalıştırdığınızda ilk program otomatik olarak yüklenecek.
BASIC PROGRAMLAR
Birçok programda bir grup karakter dizisini sıralamak gerekir. Program Döküm Eki'ndeki program4 basit bir sıralama programı. Kullanılan yöntem BUBBLE SORT. Program US$(n) dizisindeki verileri sıralıyor. Programda kullanılan ikinci önemli değişken NU. Bu değişkende sıralanacak veri miktarı bulunuyor. Aslında bu program başka bir programa alt program olacak şekilde hazırlandı. Bu rutini çağırmadan evvel sıralanacak verileri US$(n) dizisine yerleştirin. NU değişkenine veri miktarını verin. Bundan sonra alt programı çağırabilirsiniz: BUBBLE SORT sıralama yönteminde dizideki her eleman kendinden daha küçük bir elemanla karşılaşana kadar yükselir. Bu sıralama yöntemi 30 veya 40 elemana kadar tatmin edici olabilir. Bundan daha fazla elemanlı dizilerde bekleme süresi artar. Programın satır satır açıklaması:
140: Dizinin uzunluğu programınızda NU değişkenine verdiğiniz değere göre DIM komutu ile belirlenir. 210: Döngü birinci elemandan başlatılır. 220: Birinci elemandan başlamak üzere sıralanacak eleman sayısının bir eksiğine kadar döngüye girilir. 230: A$ değişkeni dizinin N1'inci elemanının değerini alır. 240: B$ değişkeni A$ değişkenindeki elemandan bir sonraki elemanın değerini alır. 250: A$'daki büyük eleman B$'daki elemandan ufaksa B$ olduğu gibi kalır. İç döngü N1 değişkeninin bir sonraki değeri ile devam eder. 260: Eğer B$ değişkeni A$ değişkeninden 270: ufaksa iki değişkenin içerikleri değiştirilir. 280: 290: İç ve dış döngüler arttırılır. 300: 310: 320: Sıralanan dizi ekrana basılır.
RAM DISK
AMIGA gibi bilgisayarlarda RAM DISK isimli çok kullanışlı bir özellik vardır. Bu uygulama ile bilgisayar belleğinin bir kısmı disket sürücü olarak kullanılır. Program döküm ekindeki Program5 çalıştırıldığında bilgisayarımız 8Kb'lik bir RAM DISK'e kavuşacak. RAM DISK bir disket sürücü gibi çalışmakla birlikte kalıcı değil, İçinde saklanan bilgiler bilgisayarın kapatılması ile yok olur. Buna karşın RAM DISK normal bir disket sürücüye göre son derece hızlı. Bu avantaj sayesinde program yazarken RAM DISK işleri son derece kolaylaştırır. RAM DISK'imizin kapasitesi maksimum 8Kb ve bir kerede sadece bir tek program saklayabilir. RAM DISK'in kullanımına bir örnek verelim. Mesela bir program üzerinde çalışırken disketten directory almanız gerekti. İlk olarak programınızı RAM DISK'e SAVE eder ondan sonra LOAD"$", 8 komutunu verirsiniz. İşiniz bittikten sonra RAM DISK'ten programınızı yüklersiniz. RAM DISK'in kolay kullanımı için BASIC'e üç yeni komut eklendi. Ancak komutların üçü de direkt modda kullanılabilir. Komutlarımız ve işlevleri:
<-- (sola bakan ok tuşu) : Hafızadaki programı RAM DISK'e kaydeder. 1 : RAM DISK'e kaydedilmiş programı hafızaya yükler. <: RAM DISK'teki programı siler.
RAM DISK'i sadece BASIC programlarla çalışırken kullanabilirsiniz. RAM DISK'e program SAVE etmeden evvel programınızın 8KB'dan ufak olup olmadığını kontrol edin. Eğer 8Kb'dan büyükse RAM DISK'e kaydedilmeyecek ve ekranda bir mesaj çıkacak. Programı yazarken DATA komutlarında dikkatli olun. Programı çalıştırmadan evvel diskete SAVE edin. Programı çalıştırmak için SYS 49152, durdurmak için SYS 64738 yazmanız gerektiğini belirten bir mesaj çıkacak. İkinci SYS komutu bilgisayarı yeni açılmış gibi yapar.
Programın kullandığı adresler:
2-3 ve 251-254 : Geçici kullanım için 40960-49151 RAM DISK 49152-49416 : Programınızın kendisinin bulunduğu bölge.
Şimdilik hoşçakalın...
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 71
& Ye
BURAK KİPER
Yazımızın son bölümünün konusu ESC tuşu ile neler yapılabileceği hakkında. ESC tuşu klavyede en sol üst köşede bulunuyor. ESC tuşu ile başlayan 27 ayrı kontrol sayesinde değişik ekran kontrolleri kazanıyoruz. ESC tuşu ile başlayan bir komut kullanmak için, ilk olarak ESC tuşuna, bu tuşu bıraktıktan sonra da kullanacağımız komutu belirten tuşa basmamız gerekir. Unutmamamız gereken bir şey, komutun tuşuna basarken ESC tuşunu artık bırakmış olmamız gerektiğidir. Bu noktada ESC tuşu CTRL tuşundan ayrılıyor. ESC tuşu ile kullanılan kontrol komutlarını, Program içinde kullanmak da mümkündür. BASIC'te ESC tuşunun karşılığı CHR$(27)'dir. Bundan sonra kullanmak istediğimiz komutun karşılığını yazarız. 27 ESC komutunu üç gruba ayırıyoruz: 1) Yazılımında kolaylık sağlayan komutlar. 2) Ekran kontrol komutları. 3) Çeşitli Komutlar. Yazılım komutları Yazılım için olan ESC komutları sayesinde ekranın üzerinde çok kolay hareket edilebilinir. Yazmakta olduğumuz programa ekleme-çıkarmalar, kolay veri girişi sağlanır. Yazılımda kullanılan ESC komutları:
ESC A : Otomatik eklemeyi açar. ESC C : Otomatik eklemeyi kapar. ESC D : O anki satırı siler. ESC I : Boş bir satır açar. ESC J : O anki satırın başına gider. ESC K : O anki satırın sonuna gider. ESC O : Tırnak işareti açıldığında girilen modu kapar. ESC P : Bulunduğunuz satırı kursora kadar siler. ESC Q : Kursordan satırın sonuna kadar siler. ESC & : Kursordan ekranın sonuna kadar siler.
ESC A komutu otomatik eklemeyi açtıktan sonra programınızın herhangi bir satırına ekleme yaparken kursordan sonraki kısım silineceğine kaydırılır. Bu şekilde programınızın herhangi bir satırının ortasına ekleme yapacağınızda ekleme yapacağınız yere SHIFT INST tuşları ile yer açmak zorunda kalmazsınız. Ekleme işiniz bittiğinde otomatik eklemeyi ESC C ile kapatın. Çünkü otomatik eklemede işler oldukça yavaş ilerler. Commodore 128 SYSTEM kitabında ESC C komutunun tırnak işareti açıldığında girilen modu kapattığını yazıyor. Ancak bu komutun işlevi otomatik ekleme modunu kapatmaktır. ESC D komutunu kullanarak bulunduğumuz satırı sileriz. Ancak eğer bulunduğumuz program satırı bir ekran satırından daha uzunsa tüm program satırı silinir. Bulunduğumuz yere bir satır açmak için ESC I komutunu kullanıyoruz. Kursor yeni açılan satırda bulunuyor. Komutunu vermeden evvel kursoru yeni satır açılmasını istediğiniz yere getirmeyi unutmayın. ESC J ve ESC K komutları bir program satırında kolay hareket edebilmenizi sağlar. Burada unutmamanız gereken, bu komutların etkilerinin bir ekran satırında değil, bir program satırı üzerinde olduğudur. İki ekran satırı uzunluğundaki bir program satırında ESC K komutu verdiğinizde kursor bir alt satıra, program satırının sonuna gider. Özellikle ESC K komutu program satırına bir şey ekleyeceğimizde işimize yarar. Kursor tuşu ile satırın sonuna gitmek yerine ESC K komutunu kullanabiliriz. Tırnak işareti açtıktan sonra kursor tuşlarını veya diğer kontrol tuşlarını kullandığınızda grafik şekillerin yazıldığını görürsünüz. Tırnak açtıktan sonra kontrol tuşlarının eski işlevlerini yerine getirmelerini isterseniz ESC O tuşunu kullanmanız gerekiyor. Bundan başka SHIFT INST tuşları ile açtığınız boşluklarda da kontrol tuşları işlevlerini yerine getirmezler. ESC O komutu burada da işe yarıyor. SYSTEM GUIDE kitabında ESC O komutu için otomatik eklemeyi kapatır yazıyor. Gerçekte kitapta ESC O ve ESC C komutlarının açıklaması ters yazılmış. Ayrıca kitapta yazılmamış bir özellik daha var. ESC O komutunu ESC ESC tuşlarına basarak da yapmak mümkün. ESC P komutu bir program satırını başından kursorun bulunduğu yere kadar siler. Mesela kursoru satırın ortasına getirip komutu verirseniz program satırının ilk yarısı silinir. Silinen kısma satır numarası da dahildir. ESC Q komutu ESC P komutunu tamamlar nitelikte. Kursordan program satırının sonuna kadar olan bölümün silinmesini sağlar. Silinen kısımlar boşlukla dolar, kursor ve satırın kalan kısmı oldukları yerde kalırlar. Daha evvel söylediğimiz gibi bu komutların etkisi program satırı üzerindedir. ESC & komutu, ESC Q komutunun biraz daha gelişmiş halidir. Kursorun bulunduğu yerden ekranın sonuna kadar her şeyi siler. Ekran kontrol komutları,