Haberler:

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

Ana Menü

Komutların gecikme saykılı ?

Başlatan y1lh4n, 24 Mart 2012, 12:58:25

y1lh4n

Pic basicte merak ettiğim konulardan biriside işlenilen komutların gecikme saykılları. Misal assembly de GOTO komutunun 2 saykıllık bir gecikme sağladığını öğrendim fakat basicte kullanılan FOR, İF,  gibi komutların kaç saykıllık bir gecikmeyle çalıştıklarıdır. Bu konu hakkında bilgim olursa çok daha rahat PAUSEUS komutunu kullanabileceğim. bu sırada PAUSE VE PAUSEUS komutlarında gecikme saykılları nedir işletildiği beklemeden haricen kendi saykıllarıda sözkonusudur heralde
Örneğin: PAUSEUS 500 ifadesi (500 mikrosaniye bekleme yaptıysa)
               Alt satırda 501 mikro saniyeden dewam mı edecektir? Yoksa kendi komut işleme saykılınıda 500den çıkaracakmıdır? 

Andromeda

Basic komutlarını hex e çevirip bakabilirsiniz..
basit bir program yazıp denemek lazım...
" Tanrı, iradesini hakim kılmak için yeryüzündeki iyi insanları kullanır, yeryüzündeki kötü insanlar ise kendi iradelerini hakim kılmak için Tanrı'yı kullanırlar." ..." Tanrı'dan mesaj gelmiyor, biz Tanrı'ya mesaj gönderiyoruz"

y1lh4n

hex de gördüğüm her satır bir saykıl olarak mı işliyor onu nasıl anlayacağım ?

OG

#3
Üst seviye dillerin problemidir, komutunuz ile ne kadar zaman gececeğini kestiremezsiniz. Derlemeyi yaparsınız ve kontrolunu yaparsınız, asm, list dosyasını da üretir, oradanda kontrol edebilirsiniz.

Veya timing çok hassas değil ise deneme yanılma yolu ile bulabilirsiniz.

Bu sebeple üst seviye dillerde (pbp, proton, c dilleri gibi) gereken yerlere gelince asm ye de dönebilirsiniz.

asm
endasm

olarak arayın. Forumda çok konuşuldu.

Alıntı Yaphex de gördüğüm her satır bir saykıl olarak mı işliyor onu nasıl anlayacağım ?
elek dil sürçmesi yapmış sanırım, hex değil asm den anlayabilirsiniz.  ASM'de her komutun kaç instruction cycle (işlemcinin adım ilerlemesi) gerektirdiği belli. Her adımın kaç nanosaniye / mikrosaniye olduğu da çalışma frekansına bağlı olduğundan o da belli. Hesap o yol ile yapılır.

16 serisi pic için örnek 4MHz ile çalışıyorsa, işlemci bu frekansın 1/4 değeri ile adım ilerliyor yani 1 MHz yapar. 1MHz için 1 clock süresi 1 mikrosaniye, yani instruction cycle 1mikrosaniye olur.

ASM dosyasındaki komutlar için işlemcinin datalarına bakarsınız her komut şu kadar adım veya bu kadar adım diye bellidir. Bununla hesaplarsınız.
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

y1lh4n

Asm de komutların işleme süreleriyle bi sıkıntım yok asıl sorun basic dilini asm ye çevirmede hem asm ye çevirmekte yetmiyor sanırım include dosyalarıda işin içine girdiğinde biraz karışıyor ozmn.