Bir değişkeni alfasayısal bilgiye eşitleme nasıl olur..

Başlatan mcguiverali, 12 Mart 2008, 20:40:36

mcguiverali

Öncelikle merhabalar sorum şudur;

PBP'da bir değişkeni alfasayısal örneğin "kalem" gibi bir kelimeye nasıl eşitlerim yani;

K0="kalem"

gibi bir komut olsun ve K0 değişkenini bu alfasayısal bilgiye(kalem) eşitlesin..böyle bi komut varmıdır varsa kullanımı hakkında biraz bilgi verirmisiniz..şimdiden teşekkürler
Düşünmeden öğrenmek beyhude, öğrenmeden düşünmek, tehlikelidir.....

mcguiverali

Düşünmeden öğrenmek beyhude, öğrenmeden düşünmek, tehlikelidir.....

F493

herkese selamlar;


 aslında sorunuz zor olmayabilir ,aksine şuan imkansız gibi geliyo anladıgım kadarıyla.

 ama soruyu biraz daha açarsanız emin olun yardımcı oluruz..


K0 nedir, kalem demişsiniz bu kısım hep string mi olacak.

ben PBP bilmiyorum ama olayı anlarsak birşeyler çıkar.

birde ne yapmak istediginizi yazaranız bu işlemle,ozaman belki başka çözüm önerileride olur.


iyi çalışmalar.

 esen kalın.

mcguiverali

o zaman bide şöyle açıklayayaım ;

Örnegin bi değişken biyerde verilmiş olsun

LCDOUT K0 gibi
ve ben bu değişkenin degerini değiştirerek tekrar LCDOUT komutu yazmadan ekrana giden alfasayısal bilgiyi kontrol edebileyim
örn ;
LCDOUT komutundan once K0="kalem" yazdıgımda ekrana kalem K0="elma" yazdıgımda ise elma yazısı LCD ye gönderilsin
Düşünmeden öğrenmek beyhude, öğrenmeden düşünmek, tehlikelidir.....

F493

Selam.

 Anladıgım kadarıyla sizin istediginiz, bir fonksiyon .

        Şöyleki siz lcd 'ye bir yazı göndermek isteginizde LCDOUT tekrar tekrar yazmak istemiyorsunuz.

        Çünkü LCDOUT bellekte yer kaplıyor ve bunun tekrar tekrar yazılması bellegi lüzumsuz kullanma anlamına gelir..


Ben PBP bilmiyorum,
        C ile yazıyorum ancak yazılım da bazı teknik ve standart ifadeler vardır .Öncelikle bunun için bazı ifadeleri açıklıga kavuşturmamız gerekli


"mustafa"  ---> Bu bir string dir ,yani tırnak içerisinde olan tüm yazılar string olarak geçer.

stringler bellekte adres olarak tutulur.

örnek olarak yapılan en büyük hatalardan biriside karşılaştırmlardır..

if ( "1234" == "1234") // burada 1234 eşitmi 1234 dedim  ama koca bir yanlış.

çünkü string ifadelerin herbir elamanı adrestir aslında..

"1234" ;  1 = 0x75   ,  2 = 0x76   , 3 = 0x77 ,4=0x78; adreslerinin buralar oldugunu farzedelim bellekte.


"1234" //buda farklı bir adreste tutulur ve siz aslında karşılaştırmada adresleri karşılaştırırsınız .. bununda eşit olması mümkün değildir.

ancak stringlerin en büyük avantajı bellekte ard arda olmasıdır..

şimdi sizin isteginize gelinde .

ben genel anlamda deginicem PBP nun yapısını bilmiyorum artık siz uyarlarsınız.

Gönderilecek_yazı[10] ={}; // 10 indisli bir dizi tanımladık degişken olarak.



herhangi bir satır...........
ve burada ekrana mustafa yazmak istiyorum.

Gönderilecek_yazı = "mustafa0";   //ekrana yazı yazacagımız zaman ilk önce yazacagımız yazıyı diziye atıyoruz ve sonunada 0 (sıfır yazdım sonlandırmak için siz başka birşeyde yazabilirisniz.) yazdım.
ve  göndere gidiyoruz.

gönder;

...
..
...
.







burasıda sabit bir yer yani label sizde , C de ise Fonksiyon.

gönder:
 
for  

LCDOUT   Gönderilecek_yazı + k ;

k = k + 1;

k eşitmi  0 (sıfır) eşitse for dögüsü bitmiştir. yani göndercegimiz yazının bittigini buradan anlayacagız..;

eger k eşit değilse 0 'a daha gönderilecek yazı bitmemiş demektir.
göndermeye devam ediyoruz.


next


iyi çalışmalar diliyorum umarım yardımcı olabilmişimdir.

 esen kalın

tyildizak

Pbp'da String değişken desteklenmiyor,  byte cinsinden bir array tanımlamalısınız, maksimum 96 elemanlı olabilir.
   
   degisken var byte[5]
    degisken[0] = "K"
    degisken[1] = "A"
    degisken[2] = "L"
    degisken[3] = "E"
    degisken[4] = "M"


   Degisken array'inin değerini bir seferde değiştirebilir miyiz, emin değilim ama sanmıyorum. Proton kullanırsanız stringlerle işlemler yapabilirsiniz. Hatta en iyisi basic'e elveda deyip C kullanmaktır.

mcguiverali

teşekkür ederim sorumun cevabını aldım sanırım şimdi denediğimde değişkenim tek bir karaktere eşit oluyor..(K0="a" mesela)
demekki sizinde anlattıgınız gibi dizi değişkenlerle bu sorunu  cözebilirim..
sorumu yanıtlayıp yardımcı olan herkese sonsuz teşekkürler..
---------------------------------------------------------------------------------
Bilmemek ayıp değil ögrenmemek ayıp bilipte söylememek kişilik meselesi sanırım :?: ...
Düşünmeden öğrenmek beyhude, öğrenmeden düşünmek, tehlikelidir.....

Veli B.

Bu mesajınızla, bilen her üyeyi itham etmiş durumdasınız. Vakti müsait olmayabilir, emin olmayabilir, borda girmemiş olabilir vs. vs.
Lakin sizin sorunuza cevap verilmedi diye "bilen herkes benim soruma cevap vermeli idi vermeyenler kişiliksizdir... "gibi bir anlama gelen bu cümlenizden sonra; İleriki tarihlerde soracağınız sorulara cevap verecek arkadaşların hoşgörüsünü ve iyi niyetini takdir ve hayranlıkla  izleyeceğim...

mcguiverali

Sayın katana cümlem cesur olabilir ama sizin yorumunuzu
Alıntı yapılan: "katana""bilen herkes benim soruma cevap vermeli idi vermeyenler kişiliksizdir... "
kasdetmediğimide bilmenizi isterim sizin farklı yönde anlaşınız beni üzmüştür bu bakımdan yanlış anlaşıldgım için tüm yanlış anlayanlardan özür dilerim...saygılarımla...
Düşünmeden öğrenmek beyhude, öğrenmeden düşünmek, tehlikelidir.....