|
|
Giriş çıkış deyşmleri bilgisayarlarla dış ortam arasındaki bilgi alışverişini ve çevre bellekte bilgi saklanması yaada çevre bellekten bilgi alınması olnağını sağlar giriş çıkış ünitesini ve ortamını , bilginin giriş ortamında yerleşme ve çıkış ortamında yerleştirilme biçimini , bellekte bilgi alışverişi yapacak data alanlarını belirtir . Giriş çıkş deyimleriile ilgili yardımcı deyiler şunlardır :
Bu deyimler aşağıda sırasıyla incelenecektir
READ deyim dış ortamdan ve çevre belleklerden bilgisayara bilgi aktarılması olnağını sağlar . Bu deyim bilgisayara bağlı giriş ünitesinden bilgi okunması durumunda
READ ( i, n, l,) liste
ve doğrudan ( rastgele ) erişimli disk kütüğünden bilgi okunması durumunda ise
READ ( i = r, n, l) liste
genel biçiminde yazılır . i, r, n, l, ve liste simgelreinin anlamlarısırası ile şöyledir :
i giriş çıkış ünitesinumarasını belirten bir tam say sabit , yada kütük belrtici birtamsayı sabit yada tamsatı değişkendir . B3700 sisteminde , i = 1,2...7 değerleri için giriş çıkış ortamı şu üniteleri gösterir
i ÜNİTE |
1- Magnetik şerit ünitesi 1 |
2- Magnetik şerit ünitesi 2 |
2- Magnetik şerit ünitesi 2 |
2- Magnetik şerit ünitesi 2 |
5- Kart okuyucusu |
6- Baskı makinası |
7- Kart delici |
r bir doğrudan erişimli tutanak ( random record ) numarasıdır . Bir işaretsiz tamsayı değişken ya da pozitif tamsayı ifade olabilir " = " yerine " ' " işareti kullanılabilir
n veri tipini ve dış ortamda yerleşme biçimini belirten iligili FORMAT deyimimin numarasıdır . Gİriş değiişken uzunluklu bir şerit kütüğünden ya da birdisk kütüğünden olursa n yazılmayabilir . bu durumda giriş blgilerinin okunacağı şerit yada disk kütüğü bir formatsız çıkış deyimi ile oluşturulmuş buşşunmalıdır . formatsız READ deyimi , girişin bir sıralı disk kütüğünden olması durumunda
READ ( i, l) liste
ve girişin bir doğrudan ( rastgele ) erişimli disk kütüğünden olması durumunda ise
READ ( i = r, L) liste
şeklinde yazılır. B3700 sisteminde doğrudan erşimli disk kütüğünden veri okuma durumunda bir FILE kartı kullanılmalıdır . l giriş çıkışsırasında uygunluk hatası ( parity error ), yada kütük sonu ( End-of-Fıle )durumu ile karşılaşırsa yapılacak eylemi ve dallanılacak değimi belirtir ;n1 , n2 deyim numaraları olmak üzere
ERR = n1 END = n2 ERR = n1 , END = n2 END =n2 , ERR =n1
biçimlerinde yazılır . Veri okuma sırasında , sistemin bulup düzeltemediği bir uygunluk hatası ortaya çıkarsa kontrol n1 numaralı deyime ; kütük sonu durumu ile karşılaşırsa kontrol n2 numaralı deyime dallanır . Kütük sonu durumu ile , ( a ) 1. kolonda bir geçersiz karakter bulunan bir kart okuma ; ( b ) şerit yada diskte yazılı son kayıttan daha ötesini okuma çabası ; ( c ) diskin yazılı olmıyan alanından bir kayıt okuma sırasında sırasındakarşılaşılır . READ deyiminin yazılışında l kısmı bulunmayabilir . Bu durumda deyim
READ ( i, n,) liste
yada
READ ( i = r, n,) liste
biçiminde yazılır . Bu deyimlerin icrası uygunluk hatası ve kütün sonu durumları ile karşılaşıldığında icra durur.
Liste indissiz yada indisli değşken ve dizi isimlerinden oluşur bunlar
d1, d2, ... , dn
şeklinde araları virgülle ayrılmış olarak sıra ile yazılır . Listedekideğişkenlere dış ortamdan okunan değerler atanır. Bu nedenle listedeki değişkenlerle dış ortamdan okunan değerler sıra , sayı ve mod bakımından uyuşmalıdır . Listedeki dizi imi indissiz yazılmışsa , bu dizinin tümü kolon düzeninde okunur .
WRITE deyimi bilgisayar belleğinden dış ortama ve yardımcı bellek ünitelerine bilgi aktarma olanağı sağlar . Bu deyim bilgisaya bağlı bir çıkış aygıtından bilgi alınması durumunda
WRITE ( i, n, liste )
genel biçiminde yazılır . Deyiminyazılışında n bulunöayabilir Formatsız Write deyimi , bir şerit ya da sıralı disk kütüğü çıkışında
WRITE ( i) liste
ve doğrudan ( rastgele ) erişimli disk kütüğü çıkışında ise
WRITE ( i = r) liste
biçiminde yazılır . Buradaki i , r , n ve liste simgelerinin anlamlar ve özellikleri READ deyiminde ayrıntıları ile açıklandığı gibidir .
Format deyimi bilgisayara bilgi giriş çıkışlarında data özelliklerini , yani verinin ne tipte ve ve ne uzunlukta olduğunu belirtir . Bir yadadaha çok giriş çıkış deyimi ilr ilişkili olan bu deyim
n FORMAT ( f1 , f1 , ..f1)
şeklinde yazılır . Buradan n giriş çıkış deyimlerinde belirtilen deyim numarası ve f1 , f2, .. , fn ise FORMAT deyimin bağlı olduğu giriş çıkış listesindeki değişkenlerin değerlerinin hangi formda dönüştürüleceğini gösteren alan bildirileridirler . Alan bildirileri ve giriş çıkış listesindeki değişkenle sayı , sıra ve mod bakımından uyuşmalıdırlar .
Format deyimi icra edilemez türde bir deyimdir ; fonksiyonu amaç programda bilgiiletimini istenen düzeydegerçekleştirmekti . Bu nedenle Temel Programın içinde herhangi bir yerdebulunabilir ; yalnız DO çevrimi kapsamının son deyimi olamaz .
FORMAT deyimindeki alan bildrilerinin gösterdiği karakterlerin toplamı , bir satır için en çok bir kayıt birimi kadar olabilir . Kayıt birimi IBM kartı için 80 , daktilo kağıt şerit için 87 , B9247 baskı makinası için ise 132 karakter olarak sınırlandırılmıştır .
Çeşitli alan bildirilerinin yazılışları , giriş ve çıkış için kullanıldıklarındda dönğştürme özellikleri ve FORMAT deyimine ilişkin ayrıntılar aşağıda açıklanacaktır .
Tamsayı büyüklüklerin giriş çıkışında kullanılır ; W alan uzunluğunu göstermek üzere
Iw
şeklinde yazılır
GİRİŞ . Veri tamsayı sabit olmalıdır ve sayı ala içinde sağdan hizalanmalıdır . Sayının işateti de w içindedir . Tamsayı büyüklüğü alan uzunluğunu aşmamalıdır .
ÇIKIŞ . Çıkış listesindeki bu alan bildirisine ilişkin tamsayı değişkeninin değeri , dış ortamda belirtilen kayıt ortamındaki alan içine sağdan hizalanarak yazılır . Artı işareti basılmaz , eksi işareti ise basılır . Tamsayı büyüklüğünün değeri ( işareti ile birlikte ) w den büyük bir sayı ise basılmaz , alan * işareti ile doldurulur .
Gerçel sayıların giriş çıkışı için kullanılır . w alan uzunluğu , d sağdan itibaren desimal noktanın yerini göstermek üzere
Fw.d
şeklinde yazılır . w alan uzunluğu seçilirken işaret ve desimal nokta için de birer yer düşünülmelidir ;bu nedenle w >= d + 2 olmalıdır .
Giriş . veri gerçelsayı olmalı ve sayı alan içinde sağdan hizalanmalıdır . Alan bildirisinde desimalsayını yeri belirtildiğinden , verilerde desimal nokta yazılmayabilir . Verideki desimal noktanın yeri alan bildirisinde gösterilene göre önceliklidir . Buna göre F10.0 alan bildirisi , herhangi bir üssüz gerçel sayının bilgisayara aktarılması olanağını sağlar .
Üslü gerçel sayıların giriş çıkışı için kullanılır :
Ew.d
şeklinde yazılır . w alan uzunluğunu , d bu alanda E den itibaren desimal noktanın yerini belirtir
GİRİŞ . Alan içinde desimal noktanın yeri bildirildiğinden veride desimal nokta yazılmayabilir . Verideki desimal noktanın yeri alan bildirisinde gösterilene göre önceliklidir . Buna göre E10.0 alan bildirisi , herhangi bir üslü gerçel sayının bilgisayara aktarılabilmesi olanağını sağlar . Üslü gösterim durumunda verinin alan içinde sağdan hizalanması gerekir .
ÇIKIŞ . Dış ortamda w sayıda yer ayrılır ; bunun içinde işaretve desimal nokta için birere yer ve üs için dört yer olmak üzere toplam 6 yer vardır . w - d >= 6 olmalıdır ; bu kurala uyulmazsa çıkış alanı * işaretleri ile doldurulur . Gerçel sqayı prezisyonu f olduğuna göre , dıl ortamda işaret ( pozitif ise basılmaz ) , desimal nokta ve üssü belirtmek için gerekli 6 karakterden başka , f > ( w - 6 ) ise f anlamlı hane , f >= ( w - 6 ) ise ( w - 6 ) anlamlı hane görünecektir . Alan bildirisinde bir n ölçek katsayısı kullanıldığında , bu sayı ile ile üs kısmı arasında bir desimal düzenleme yapma olanağı verir . n <= 0 ise , desimal noktanın solunda n anlamlı basamak konulur , bunu desimal noktanın solundaki ( d - n + 1 ) anlamlı basamak izler . Her iki durumdada üs uygun biçimde ayarlanır .
Çift incelikli gerçelsayılarıngirişçıkışında kullanılır :
Dw.d
Şeklinde yazılır . w alan uzunluğunu , d ise desimal noktanın yerini gösterir .
GİRİŞ . Çift incelikli gerçel sayı üslüyazılmışsa üs D harfi ile gösterilir . Giriş verisinin yazılış biçimine göre Fw.d ya da Ew.d dönüştürmeleri gibi çalışır
ÇIKIŞ . Çift incelikli sayıların dış ortama aktarılmasında kullanılmasının ve üssünD simgesi ile gösterilmesisin dışında Ew.d dönüştürülmesi gibiçalışır
Mantıksal büyüklüklerin giriş çıkışında kullanlır :
Lw
şeklinde yazılır w alan uzunluğunu gösterir
GİRİŞ . w alan uzunluğu >= 1 olmalıdır ; başta boşluklar olabilir . Giriş alanındaki ilk karakter TRUE ( doğru ) için T ve FALSE ( yanlış ) için F olmalıdır . Bunları izleyen karakter göz önüne alınmaz . Giriş ALanında T ya da F yoksa bu bilgisayar belleğine FALSE olarak aktarılır .
Tamsayı , gerçel çift incelikli , kompleks ve mantıksalbüyüklüklerin giriş çıkışında kullanılabilecek bir genel alan bildirisidir :
GW.d
şeklinde yazılır . w alan uzunluğunu d desimal noktanın yerini belirler .
GİRİŞ . Giriş verisiI ya da L tipinde ise , Gw.dalan bildirisi Iw ya da Lw olarak çalışır .d kısmı göz önüne alınmaz ; F , E ya da D tipinde ise Fw.d , Ew.d ya da Dw.d biçiminde çalışır . Giriş değişkeni kompleks ise gerçek ve sanal kısımlar için iki ayarı G alan bildirisi gereklidir
ÇIKIŞ . I yada L tipi büyüklerin çıkışında Iw olarak çalışır gerçel sayılar durumunda çıkış biçimi sayıların büyüklüğüne bağlı olarak aşağıdaki gibi çalışır
Değişkenin büyüklüğü | Eşdeğer dönüştürme |
0,1 <= n < 1 | F( w -4).d , 4X |
1 <= n < 10 | F( w -4).d , 4X |
... | ... |
... | ... |
... | ... |
10( d - 2 ) <= n < 10( d - 1 ) | F( w -4).1 , 4X |
10( d - 1 ) <= n < 10( d ) | F( w -4).0 , 4X |
diğer | Ew.d |
Çıkış değişkeni kompleks türdeise , gerçek ve sanal kısımlar için iki ayrı G alan bildirisi gereklidir.
Gerçel ve çift incelikli büyüklüklerin çıkışında w alan uzunluğu , üs desimal nokta ve işaret ( negatif ise ) için gerekli yerleri içermelidir . ( w - d ) >= 6 şartı sağlanmazsa , çıkış ortamı * işaretleri ile doldurulur .
Hekzadesimal büyüklüklerin giriş çıkışı için kullanılır :
Zw
şeklinde yazılır . w alan uzunluğunu belirtir GİRİŞ . Veri hekzadesimal sabit olmalıdır . Giriş alanındaki boşluklar sıfır olarak yorumlanır . Veri sağdan hizalanmış olmalıdır . Giriş verisi uzunluğu >w ise fazla haneler kesilerek soldan kesilerek bilgi belleğe aktarılır .
ÇIKIŞ . Hekzadesimal değer çıkışortamına sağdan hizalanmış yazılır ; kalan yerler varsa boş bırakılır . Değişkenin uzunluğu > w ise fazla haneler soldan kesilerek yazılır
Alfanümerik büyüklüklerin giriş .çkışı için kullanılır :
Aw
şeklinde yazılır .w alan uzunluğunu gösterir .
GİRİŞ . Alfanumerik bilgi bellekte karakter formunda saklanır ; bu nedenle hesaplamalarda kullanılamaz . Bilgi giriş alanında sağdan hizalanmış olmalıdır . w < b ise , alfanümerik büyüklük soldan hizalanmış olarak bellekte değişken olarak saklanır ; b - w boş yer kalır .
ÇIKIŞ . Alfanümerik bilgi çıkış ortamından sağdan hizalanarak yazılır . w > b değişken uzunluğu ( byte cinsinden ) ise , alfanümerik karakter dizisi çıkış ortamına soldan hizalanarak konulur ve sağdan b - w karakter kesilir .
Bir karakter dizisini giriş çıkışı için kullanılır :
wHs
şeklinde yazılır . w alan uzunluğunu , s karakter kümesini gösterir . Aynı işlem karakter dizisinin alan uzunluğunu belirtmeden 's' "s" şeklinde yazarak da gerçekleştrilebilir .
GİRİŞ . w sayıda karakter yerine s karakter kümesi geçer ; boşluk karakterleri de bunun içindedir .
ÇIKIŞ . Bildiriden sonra gelen w sayıda karakter , ya da bir giriş işlemi sonucu onun yerine geçirilmiş karakterler dış ortamda görünür .
Giriş çıkışta boşlukları göstermek için kullanılır :
wX
şeklinde yazılır . w alan uzunluğunu gösterir . Girişte w karakterlik yerin atlanmasını , çıkışta ise w sayıda karakterlik boşluk bırakılmasını sağlanır .
Giriş çııl listelerindeki verilerin ilk karakterlerinin bulunduğğu yeri belirlemekte kullanılır , n bu yeri göstermek üzere :
Tn
şeklinde yazılır . Baskı makinası ile çıkışta kullanıldığında veri gerçekte ( n - 1 ) karakter konumundan başlar ; çünkü kayıdın ilk karakteri şaryo kontrolü için kullanılır .
F , E ve D tipi alan bildirileri ile birlikte , giriş çıkışta sayıları düzenlemekte kullanılır . Örneğin F tipi alan bildirisi ile , n ölçek katsayısı olduğuna göre ,
nPFW.d
şeklinde yazılır . Bu yazılım çıkışta kullanılmışsa
dış ortamdaki sayı = bellekteki değeri X 10n
olur . Ölçek katsayısı pozitif ya da negatif olabilir . Düşünce geneldir ; giriş ve çıkışta geçerlidir . Ancak çoğunlukla çıkışta kullanılır .
Ölçek katsayısı E tipi alan bildirisi ile kullanılırsa , girişte herhangi bir etkisi olmaz ; çıkışta mantis^n ile çarpılır , üs n kadar azaltılır
Herhangi bir kayıt içindde n sayıda alanı aynı tipte yazmak için ilgilialan bildirisinin önüne n sayısına yazmak gerekir . n işaretsiz bir tamsayıdır . Eğer bir ölçek katsayısıda kullanılıyorsa , bu tekrar sayısınında önünde bulunur .
Alan bildiri gruplarının tekrarı ise bunu parantezler içine alarak önüne n tekrar sayısı yazmaklar sağlanır. Grup tekrar sayısı belirtilmemişse bu grup giriş çıkış lises bitinceye kadar tekrarlanır . Parantezler içine alarak gruplama dokuz düzeyde olabilir
alan tekrarı durumunun dışında FORMAT deyimi soldan sağa doğru yorumlanır . Giriş çıkış listesi bitmeden FORMAT deyiminin en sağındaki paranteze gelinmişse , diğer bir deyişle FORMAT deyimi bitmişse , denetim en son rastlana sol paranteze geri döner ; giriş çıkış listesi tamamlanıncaya kadar bu işlem tekrarlanır . Giriş çıkış listesi bitmesine rağmen FORMAT deyiminin en sağ parantezine , sonuna gelinmemiş olsa bile giriş çıkış deyiminin icrası tamamlanmış olur .
FORMAT deyimi içindeki bir / işareti bir kayıtın bitip ikinci bir kayıta geçildiğini gösterir . Girişte / işaretinsen sonraki karakterler göz önüne alınmaz . Çıkışta ise / işaretine rastlandığında kayıt bitirilir ve kalan çıkışbilgileri bir sonraki kayıta konulur . Girişte kayıt atlamak veçıkışta boş satır bırakmak için ardışık / işaretleri kullanılabilir . Genel olarak n+1 sayıdaki / işareti n sayıda boş satır bırakılmasını sağlar
Herhangi bir formatlı giriş çıkış deyiminde numarası bulunan ilgili format deyimi A tipi alan bildirisi ile yazılır ; böylece alan bildirilerini icra zamanında veri gibi okuma mümkün olur .
Bu deyim
FIND ( F = r )
şeklinde yazılır . Okuma zamanından önce bir tutanağın yüklenmesini sağlar . Tutanak tampon bellekte ( buffer ) değilse , Kullanılabilecek bir tampon bellek varsa , tutanağı içeren blokta okuma başlatılır ; yoksa FIND gözönüne alınmaz . Bir READ deyimi icra edildiğinde , okunacak bir tutanak olup olmadığını anlamak için tampon bellek kontrol edilir ; tutanak yoksa tutanağı içeren bloktaki READ başlatılır .
Şerit ya da disk kütüphanelerinde kullanılan bir deyimdir;
REWIND
şeklinde yazılır . Bu deyimin icrası ikütüğünün başlangıç konumuna getirilmesini sağlar . i kütüğünün son referansı bir WRİTE deyimi ise , başlangıç konumuna dönülmeden önce , kütük kapatılır . REWIND deyimi şerit ya da disk kütüklerinden başka yerde tanımsızdır .
i kütüğünden gösterge m kaydında bulunuyorsa BACKSPACE deyiminin icrası kütük göstergesinin bir önceki ( m - 1 ) . kayıda gelmesini sağlar . Bu deyim
BACKSPACE i
şeklinde yazılır ; yalnız magnetik şerit . disk yada kağıt şerit giriş kütükleri için tanımlanmıştır . i kütüğü başlangıç konumunda ise , bu deyimin icrasının hiçbir etkisi olmaz .
Bu deyim kütüğün kapatılmasını sağlar ve
ENDFILE i
genel biçiminde yazılır . Yalnız şerit kütükleri için tanımlanmıştır . Bir i kütüğünde WRITE deyimini izleyen bir ENDFILE deyimi varsa , bir kütük sonu ( END - OF - FILE ) kayıdı yazılır ve şerit bir sonra yazılacak kayıt , kütük sonu kaydını izleyecek biçimde konumlandırılır . i kütüğünde ENDFILE deyimi bir READ deyimini izlaerse , bitiş etiketlerine rastlanmışsa , şerit bir sonraki kütük başlangıcına konumlandırılır ; bitiş etiketine raslanmamışsa geri sarılır .
Kapatılmış bir kütükte BACKSPACE , ENDFILE , REWIND deyilerinden birinin icrası ile karşılaşırsa , bu deyim göz önüne alınmaz .
Bu deyim herhangi bir kürükte okunan en son kayıda yeniden erişilmesini sağlar ;
REREAD
genel biçiminde yazılır . İcra edilecek bir sonraki READ deyimi ile ilişkilidir ; son kayıdın kütükten okunmasını sağlar . REREAD deyiminden önce gelmelidir .
NAMELIST deyimi değişken yada diziisimlarikümesinin bir tek isimle belirlenmesini ve giriş çıkışta READ ya da WRTİTE deyimi listesine gerek kalmaksızın giriş çıkış yapılabilmesini sağlar . Bu deyim
NAMELIST / ad /i1 ,i2..../ ad2/in
genel şeklinde yazılır . Burada her ad bir isim listeris tanıtıcısı , her i bri değişken ve dizi isimlerinden oluşan bir listedir . Bir değişken ya da dizi ismi , birden çok adi ile ilişkili oalbilir .
GİRİŞ . NAMELİST deyimini izleyen bir READ deyimiyazarak sağlanır . Veri kütüğünün her kayıtının ilk karakteri göz önüne alınmaz ; ilk kayıtın ikinci karakteri ise & işareti olmalıdır . READ deyimini izleyen tanıtıcı ad , & işaretinden sonra gelir . Veri kütüğünde ikinci bir & işaretine rastlandığında ( bunu bir end deyimi izler ) okuma durur .
ÇIKIŞ. f yerine daha önce bildirilmiş bir NAMELIST adı bulunan bir formatlı çıkış deyimi icra ederek çıkış yapılır . Çıkışta liste belirtilmez .
|
|