Haberler:

Foruma Resim Yükleme ve Boyut Sınırlaması ( ! )  https://bit.ly/2GMFb8H

Ana Menü

Assembly 'mi ? PibasicPromu ?

Başlatan programmer07, 06 Şubat 2007, 02:35:56

diot

ASM mi BASIC mi ?

Her ikiside değil. Şöyle anlatayım :
 İlk bilgisayarı öğrenmeye başladığımda (1984senesi) Basic ile başlamıştım. Sonra MCU ları öğrenmeye başladığımda( Z80-8086)ASM ye girdim. Daha sonra ASM de uzmanlaştıkça CPU nun içinde nerler olup bitiyor merakı ile Z80 nin içyapısına daldık ki ... amanın içi bir derya .

   Daha sonraları bu işin Basic, C gibi dillerile olmayacağını anladım. Donanıma en yakın dil ASM idi fakat sayfalarca program yazmak zor du. Basic, C gibi diller bu konuda iyi idi fakat donanımdan uzaklaşıyordu. Ne yapmak lazımdı hem ASM gibi donanıma yakın hızlı ve karalı olacaktı hemde BASIC gibi az kodla işi bitirebilecektik.

    İki arkadaş bu konuda baya kafa yoruyorduk ve bir gün bir kitap fuarında TURBO ASM (BORLAND) diye bir kitap gördüm Meraklanmıştım ve 6 ciltlik bu kitabı almak zorunda hissetim kendimi ve aldık da.

    Sıra iki arkadaş bu kitapları incelemeye başladık. Evet kafamızda bir şimşek çaktı  :idea:  Z80 için kendi ASM mizi kendimiz yazacaktık.
    Başladık önce genel kullanım prosedürlerimiz oluşturduk.  Arkasından kullanım alanlarımıza göre include dosyalarımızı oluşturduk. Sıra library lere gelmişti. Onlarıda ihtiyacımız olan fonksiyonlara göre teker teker oluşturuyorduk.  Nihayet bitmeli olmuştu :) .
  Sonunda denemelere başladık ve mükemmel bir şekilde çalışıyordu.
günler geçtikçe yaptığımız projelerde bu derleyiciyi kullanırken bir çok fonksiyonuda ihtiyaç oldukça bu library lere kattık.
   Artık ikinci bir defa lazım olan kod fonksiyon kütüphanemizde bulunuyordu.
   Oluşturduğumuz dil C ile ASM arasında idi . İşimizide gayet kolayca görüyordu. Hızlı idi hata aramak kolaydı ve sayfalarca kod yazmaktank kurtulmuştuk.

   Sizlere de tavsiyem budur :

1. Önce kullanacağınız asm compilier i seçin (esnek olmalı )
2. Kendi prosedürlerinizi oluşturun.
3. En basit programı bile yazarken koyduğunuz kurallara uyun ve nesnesel programlaya yatkın olarak yazın.
4. Giriş ve çıkış bilgilerini hep aynı düzende alınki daha sonra bu yazılımları başka projelerde kullanabilesiniz.

    ASM programcılık sistemli çalışma ister. Bu sistemli çalışma düzenine alışırsanız ileride eminimki çok büyük projelere imza atmak sizler için sorun olmayacaktır.

   Sevgilerle...

Ziya

Bahsettiğiniz makro assembler gibi bir şey değil mi?

MPLAB direktifleri ile son derece esnek ve C ye yakın assembler rutinleri oluşturabilirsiniz. Turbo assemblerin farkı nedir ki?
Bu günden sonra hiç kimse sarayda, divanda, meclislerde ve seyranda Türk dilinden başka dil kullanmaya. (13 Mayıs 1277) Karamanoğlu Mehmet Bey

z

Turbo Assembler Borland'in PC islemciler icin cikarttigi derleyici. Son derece guclu ve TASM diye gecer. (Evet MASM in Borland versiyonu.) PIC turu islemcilerle alakasi yok.

808X serisi ve Z80 karsisina PIC ailesinin mukayese sansi bile olamaz.
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

diot

Evet TASM microsoftun MASM si gibi fakat çok daha güçlü ve esnek bir yapısı var. Macro komutlar tanımlama ve dahili komut setleri var 80x86 ailesi için. Fakat Pic için buna benzer bir ASM derleyicisi vardır herhalde. Ben pic için yazılmış asm derleyicileri birkaç tanesine baktım ve TASM ile  mukayese edilebilecek bir derleyici yok (benim gördüğüm kadarıyla).
Tek şansımız var oda ASM derleyicisini kendimiz oturup yazmak. Bu iş biraz sıkıntılı olduğundan MPLAB kullanılarak kendi kod kütüphanelerimizi oluşturmak.
   
Biz kendi yazdığımız Z80 derleyicisinde (  |  ) işaretini (RSX komut setleri için başlangıç işareti olarak kullanıyorduk)
örnek:
|spite (no,x,y,adres) ; Animasyon karakteri tanımlama
|lmove (x,y,x1,y1,$sprite_no,crash_on_adress  ) ; x,y kordinatından x1,y1 koordinatına kadar $sprite_no lu animasyonu kaydır ve herhangi başkabir sprite ile çakışırsa crash_on_adresi ne  sıçra gibi.

Anlatmak istediğim yazdığımız programları belli bir kalıba göre yazarsak daha sonra bir kaç programı beraberce kullanıp derleme şansımız olur.
Bunun için daha iyisi yoksa MPLAB derleyici kullanılabilir. Sonuçta kendi alışkanlıklarımıza göre özelleştirilmiş bir kod kütüphanemiz olur ve daha sonra yazacağımız uygulamalarda aynı şeyi iki defa yazmak durumunda kalmayız.

Sonuç olarak PBP bir editor yardımı ile kullanılan ve hazır makroları olan bir özel olarak yazılmış ASM derleyicisinden ibaret değilmidir.