RANDOM – PBP Türkçe
RANDOM Var
Bir kereliğine “pseudo-randomization” (sözde-rastlantılaştırma) algoritmasını çalıştırır ve çıkan sonucu Var ile belirtilmiş değişkene yazar. Var değişkeni 16-bit uzunluğunda olmalıdır. Sabit indeks sayılarına sahip “Array” (dizi) yapısındaki değişkenler RANDOM ile kullanılabilirken, değişken indeks sayılarına sahip “Array” (dizi) yapısındaki değişkenler RANDOM ile kullanılamayabilir. “Array” (dizi) yapısına sahip olmayan 16-bit uzunluğundaki değişkenlerin kullanılmasında da zaten herhangi bir problem yoktur. Var değişkeni hem RANDOM komutuna giriş değeri olarak hem de sonucu saklamak için kullanılmaktadır. RANDOM komutu kullandığı algoritmada Var ile belirtilen değişkenin içindeki değeri de kullanmaktadır. Şunu da hatırlatmakta fayda vardır ki: Eğer Var ile belirtilen değişkenin içindeki değer başlangıçta hep aynı değere sahipse komut çalıştırldıktan sonra da aynı sayının üretileceği gibi bir kurar yoktur. Sonuç, rastlantısal bir şekilde üretilmektedir. Eğer herhangi bir değer belirtilmezse de RANDOM komutu sorunsuz çalışmaktadır. RANDOM komutu 1-65535 (1 ve 65535 dahil) aralığındaki sayıları sözde-rastlantısal üretmektedir.
Örnek
Not: “Sözde-rastlantısal” ifadesi bir terimdir ve yazılım ile üretilen rastgele sayıların çoğu bu şekilde adlandırılır. Bu PIC’lerdeki herhangi bir eksiklikten kaynaklanmamaktadır. Bazı kişiler tarafından aritmatik işlemler ile tam anlamıyla hiçbir zaman rastlantısal sonuçlar üretilmeyeceği düşüncesi de savunulmaktadır. Detaylı bilgi için Wikipedia’ya bakılabilir.
Hazar’ın Notu: RANDOM komutunu geçen senelerde deneme şansı buldum. Komut, sabit aralıklarla çağrıldığında benzer bir örüntü (pattern) ile sonuç döndürüyor. Bana göre algoritma oldukça başarısız. MeLabs forumlarında da bu dile getirilmişti. Alternatif öneriler de vardı. “En” rastlantısallığı (randomness) arayanlar için, ADC’li bir PIC alıp sinyal girişine “white noise” (beyaz gürültü) üreteci koyup, rastgele bir numaraya ihtiyacı olduğunda ADC’den okuma yapmasını önerebilirim.
İlgili Kaynaklar:
Pseudo-randomization (Sözde-rastlantılaştırma)
White Noise (Beyaz Gürültü)
- http://en.wikipedia.org/wiki/White_noise (İngilizce)
- http://sozluk.sourtimes.org/show.asp?t=white+noise
MeLabs Forumları
- http://www.picbasic.co.uk/forum/ (İngilizce)
Örüntü (Pattern)
Tüm fonksiyonların listesine buradan bakabilirsiniz.
Bu yazı, “İzoelektronik – Atölye” grubu tarafından, 90alper90 ve Hazar kullanıcı adlı grup üyelerinin ortak, aktif çalışması ile hazırlanmıştır.



Emeklerinize çok teşekkür ediyorum. Bir an önce tüm komutların tamamlanmasını sabırsızca bekliyoruz .Son komut için bayağı bekledik. Lütfen biraz acele edebilir misiniz?
İlginize teşekkür ediyorum.
Evet, uzun bir süredir maalesef bir çeviri yapamadık. Sene içindeki işlerin yoğunluğu ile maalesef pek zaman ayırmak mümkün olmuyor. Yaz dönemini fırsat bilerek biz de bu işi elimizden geldiği kadar hızlandırmaya çalışıyoruz. Umarım en kısa sürede çalışmalar biter ve elektronik dünyasına güzel bir Türkçe kaynak kazandırılmış olur.
Çeviri işini yaparken cümle cümle çevirip yapamıyoruz. Çevirilen yazılar komut açıklamaları olduğundan komutun kullanılışını iyice anlamamız ve araştırmamız gerekiyor. Aslında bizi en çok oyalayan kısım da burası. Bazı durumlarda komutun işleyişini anlayabilmek için komutu test etmemiz gerekiyor. Bu yazılar kaynak oluşturacağından yazıların mümkün olduğunca en az hata ile yayınlanması çok önemli. İzoelektronik – Atöyle gurubu üzerinde yaptığımız tartışmalara sonucu son haline ulaşıyoruz. Yazılar Türkçe dil bilgisi kurallarına uygun hale getirilip, Web formatına çevrildikten sonra yayınlanıyor. Oldukça titiz çalışmaya çalıştığımızdan olsa gerek yazıların hazırlanması zaman alıyor.
Tekrar teşekkürler…