1 Ekim 1989 Tarihli Commodore Gazetesi Sayfa 23

1 Ekim 1989 tarihli Commodore Gazetesi Sayfa 23
Metin içeriği (otomatik olarak oluşturulmuştur)

(1 12)— OÜ0 1100 (Normal ikilik karşılığı) (—İZ)— 1111 ÖĞL1 (Birinci derece- den karşılık) (4 D)— 0000 0001 Hil1 0100 Çİkinci derece- den karşılık) Şimdi isterseniz bu yöntemle bir toplama işlemi yapalım; (- 5)— O000 1000 (—İ)> 1111 1010 (Bu (4 6Y'nın () 0000 0010 ikinci dereçe- den karşılığı yani (—6)'dır) Baş tarafta yer alan 9 Bit'in bir bayfa sığmayacağını düşünürsek doğ- ru sonuca ulaştığımızı görürüz. Bu tür işlemlerde eğer negatif bir sonuç ortaya çıkarsa bunun gerçek değerini hesaplamak kolay değildir. Böyle durumlarda ortaya çıkan sayı- nın tekrar ikincil karşılığı hesaplanır ve işareti değişldirilir. (4 15) 0000 0101 (—6) 1111 1010 1111 (Ldİ Yukarıda çıkan sonuç (—İ)'in ikinci dereceden karşılığıdır. Kontrol için ikinci dereçeden karşılığını he- saplayıp, işaretini Lers çevirelim, Birinci dereceden karşılığı DOĞ0 D00Ü * 1 0000 0001 sonuç ÜĞ00 O00 —( 1) Çıkan sonucun (4 1) işaretini de- Biştirirsek aradığımız (—İ) sayısına ulaşırız. İşte bilgisayarımız yukarıda anlar- tığımız sistemle negatif sayıları hesap- lamaktadır, yalnız burada eksik ka- lan bazı noktalar var. Bunun için SKU yazıp kullandığınız monitör programından çıkıp aşağıdaki Basic satırlarımna girim. 10 AK——İ2 28 END Değişkenler Bellekte Nasıl Duruyor? Yazdığımız programı daha “RUN” ile çalıştırmayın, şimdi tekrar moni- tör programına girip biraz önceki Ba- sic satırlarım inceleyelim, Yalnız mo- nitör programını iİşletmek için #“RUN” komutunu kullanamayız, çünkü bu komutu kullandığımızda hafızadaki Basic programımız işleye- cektir. Bu nedenle monitör programı- nn başlangıç adresini bilip, © adres için “SYS” komutunu kullanmalıyız. C-ö4'ün Basic belleği normal du- rumlarda $080'dan başlamaktadır. Monitör programındayken M 0800 yazalım. Bizi burada $081C'ye kadar olan baytlar ilgilendirmektedir. Resim Vde belleğin bu bölümü kısaca yorumlan- maıştır. Basicç programımız $0813'de sön bulur. Bunu arka arkaya gelen iki boş bayt'tan anlıyoruz. Bu adreslerin ar- kasında programıda kullanıları değiş- kenlerin değerleri yer alır. Yalnız bir daha programımızı “RÜUN”* ile çalış- tırmadığımız için bu bayilar “0” de- Berindedir. “X” ile monitörden çıkıp programı çalıştırırsak $0813'e kadar olan baytlar değişmeyecek, fakat da- ha sonraki 7 bayt Resim 2'deki konu- ma pgelecektir. Önce $OS14 ve $0815'i ele alalım., Bu baytlar değişkenin adını ve tipini belirtir. Bilgisayar, burada iki baytım- da 7. Bit'i “1” olduğu için tam sayı- lar kullanılacağını anlar. Kullanılan değişkenin cinsini belirten 7. Bit'leri unutursak, $0814”de A harfinin kodu ve SÜB15'de sadece “0” değeri yer alır. Bildiğiniz gibi C-64 Basic'in de değiş- kenler en fazla iki harften olüşabil- mektedir. Geri kalan $OS18B - SOSLA arası baytlar İse tam sayı değişkenle- tinde kullanılmaz, $0817'de ikilik sistem karşılığı illi Ü100 olan $F4 yer almaktadır. Bu de- Ber (—İ2Y'nin ikinci dereceden karşı- lığıdır. Peki $0816'daki $FF ne anla- ma gelmektedir? Daha önce söyledi- ğimiz gibi dam sayılar hafızada 2 baytta saklanmaktadır. (—İ2)'nin 15 Bit ile gösterimi şu şekildedir: *İi2 Birinci dereceden karşılık 41 Düi 0000 GÜ00 1100 DT1 1K Jlll ÖON O000 O000 Dodü Od0 D1İ1 1LLI l1 0100 —-(—12) yüksek bayt alçak bayt —$FF — 5F4 2 bayt ile gösterilebilen en büyük pozitif sayı (432767) ve en küçük ne- Batif sayı (—32767)'dir. Şimdilik bu sayı oyunlarına sön ve- rebiliriz. Eğer yukarıda anlatılan sis- temle biraz işlem yaparsanız birçok sefer doğru sonuç çıkmasına rağmen bazen de yanlış değerlerle karşılaşır- sınız. Daha önce yeteri kadar açıklık ka- zandırmadığımız bir soruyu, şimdi rahatlıkla cçevaplayabiliriz: Kullandı- ğımız registerin 7. Bit'i eğer 1” de- Berini almışsa, statü registerindeki ne- gatif göstergesi kesinlikle 1” olur. Bu aylık da bu kadar! Gelecek ay kaldığımız yerden devam etmek üze- Te Adres : — OĞtA 0815 0816 ÜBİF7 0817 - OBTA Bayt : 1 2 4 5-7 C1 BÜ F4 dÜ O0 DÜ Değer : 1100 Ö001 1000 ÜÜ 1111 1111 1111 0100 7 Bitler tamsayı değişkenini — Yüksek bayt — Alçak bayt Büş belirtir. Ütüdğ O001 165 (—13) A'nın kodu Değişken adı ve tipi Değişken değeri Kullanılmamış Basic programlardaki değişkenler C-âG4 tarafından böyle düzenlenir.

Bu sayıdan diğer sayfalar: