Loading...
Pic Programlama


 Forum

MPASM Da Hata Çıkarsa

MPASM Assembler Derlemede Hata Çıkarsa.

Eğer Compile işlemi sonunda errors ≠ 0 ise bu durumda biraz işiniz var demektir. (illaki çay içmek istiyosanız huzursuz huzursuz içebilirsiniz :) şimdi bizim burdaki örneğimizde 1ledyak.asm dosyaında hata çıkmadı ama biz bi hata çıkaralım ve üzerinden hata nasıl bulunacak onu açıklayalım. bi dosyayı assembly ederken rapor da aşağıdaki gibi error lar aldık diyelim.

mpasm compile error

Bu error´un karşısında yazan 4 sayısı sinirimizi bozabilir ama buna da şükretmeliyiz çünkü ya bide sadece hata var deyip geçseydi napacaktık, onu düşünmek lazım.

şimdi derlenen 177 satır kodumuzun içinde 4 tane hata var diyo, napacaz? tabiiki gidip ERR uzantılı dosyayı bulup içine bakacağız.

bu dosyayıda derlemeye çalıştığımız asm dosyasının bulunduğu dizinde bulabiliriz.

Burada örnek dosyamız 1ledyak.asm dosyası olduğu için hata dosyamız da bu dosyanın bulunduğu dizinde 1ledyak.err adında olacaktır)

gidip 1ledyak.err dosyamızı açıyoruz. (not defteri gibi bir metin editörü ile açabilirsiniz).

ve içinde hataların olduğu satırları arıyoruz. hataları bulduktan sonrada tekrar ASM dosyamızı açıp ilgili hataları birer birer gidereceğiz. eğer programınızda kod satırları çoksa biraz zor olabilir, ama genede çözüm var, dosyada metin arama özelliğini kullanarak Error kelimesini arayarak bulabilirsiniz.

şimdi dosyayı açalım ve hataları bulalım.

error_Dosyasi

1) 6 ıncı satırda bi hata var, hata olan kod EQUa =>halbuki bu değişken tanımlama için kullandığımız equ olmalıydı. gidip onu EQU yaparak düzeltiyoruz.

 

2) 12inci satırda bi hatamız var. Illegal opcode (PORTB)=> yalnız bu PORTB nin yazılışında bi hata yok, burda başka bi hata olmalı, gidip 12 inci satıra bakalım. ve burdan da görüyoruzki 12 inci satır CLRF PORTB olması gerekirken, CLRFg PORTB olarak girilmiş, burda ERR dosyasında CLRFg ifadesini warning olarak bir üst satırda görüyoruz. (niye CLRFg de warning verip de PORTB de Error verdi?- cevap:  burdaki olay ise şu: CLRF yazdığımızda bu assembler kodu olur, ama CLRFg yazdığınızda bu ifade satırın başında olduğu için bunu ETIKET olarak tanımaya çalışır. (sanırım oraya gelmişiz:))

 

3,4 ) bu iki hata da 28 ve 40 ıncı satırlarda. fakat esas hata burda değil. Error dosyasında açıklamaya bakarsak "Symbol not previously defined (SAYAC1)" yazıyor.
Burda MPASM diyo ki: "Sayac1 değişkenini daha önce tanımlamadınız, bilmediğim bişeyi kullanamam." O zaman öğretecez demektir, Gidip asm dosyamızda tanımlamaları yaptığımız bölüme bakıyoruz. ve görüyoruz ki aslında bu hatayı az önce düzeltmişiz. çünkü az önce 6 ıncı satırda bulunan hata SAYAC1 değişkenini tanımlarken bulduğumuz hataydı. ve düzeltmiştik. Not: Bu hataya düşmeyin.

 

Bir  hata başka bir hatanın sebebi olabilir. yani derleme sonucunda eğer 20 hata uyarısı aldıysanız derleme yapılırken 20 defa sorunla karşılaşılmış anlamına gelir, yoksa 20 tane hata var anlamına gelmez (ama olabilirde tabii). hatta yukarıdaki örneğe benzer şekilde bir hata olup çok hata uyarısı alabilirsiniz, örneğin bir değişkenin tanımlanmasında hata varsa ve bu değişkeni biz 20 yerde kullandıysak hatamız 1 yerde olmasına rağmen 20 tane hata uyarısı alırız. Üstteki hatayı düzelttiğinizde unutup 2 dk sonra aşağılarda bulduğunuz hatadan dolayı tekrar aynı hatayı ararsanız bulamazsınız, en güzeli birkaç düzeltme yaptığınızda bi karmaşa oluşursa MPASM la tekrar derleme yapın ve ERROR dosyasını tekrar açın. bu durumda en son hataları görmüş olacağınızdan sorun yaşamazsınız, uzun uzun hata aramazsınız.

 

Basamak basamak yani.

ERROR suz günler dileğiyle. 18.05.2005

new york abortion clinic website-knowledge.com quotes on abortion

Etiketler : Mpasm, hata, Error, Mpasm Compile, Compile Error, derleme hata, komut yazım, komut, kod yazma, kodlar, assembler, picbasic, pic basic pro, pic kodları, code, pic code
Yazan : mania  |
18 Haz 2005 Cts   
|  16.335 defa Okundu.
Yorumlar

(Toplam yorum : 2113 )
mahmut beşirli (Misafir)
13 Mar 2012 Sal

gerçekten çok iyi bir anlatıma yazmışsınız. elinize ve bilginize sağlık
would my boyfriend cheat i cheated on my boyfriend now what how to cheat on boyfriend
Yusuf Burak KIZILBAY (Misafir)
8 Ara 2012 Cts
Çok güzel bi anlatım çokkkk teşekkürler. Emeğinize sağlık 
spy calling spy tracking apps spy apps for android free download
Yorum Yaz
isim soyisim
Email
Anonim olarak mesaj yazıyorsunuz, Üye iseniz giriş yapınız.