1. sayfa (Toplam 2 sayfa)
bölümün tam sayı olduğu takdirde çıkış veren komut?
Gönderilme zamanı: 29 Oca 2019, 09:18
gönderen mrsss2
Merhaba,
enkoderden okuduğum değişken bir değer var, kullanıcı da bu değerin bölünme aralıklarını belirleyebilecek. Enkoderden alınan ve sürekli değişen veri, kullanıcının girdiği değerin tam katı ise bir çıkış vermek istiyorum. Yani değişken olan enkoder verisi/kullanıcının girdiği değerler ( değişebilir) = 1,2,3,... ise bir çıkış almam gerekiyor. Bunun için hangi komutu kullanabilirim?
Re: bölümün tam sayı olduğu takdirde çıkış veren komut?
Gönderilme zamanı: 29 Oca 2019, 09:27
gönderen Uğur
Kalan datası 0 a eşit ise tam bölünmüştür bu yolla anlayabilirsiniz.
Re: bölümün tam sayı olduğu takdirde çıkış veren komut?
Gönderilme zamanı: 29 Oca 2019, 09:31
gönderen mrsss2
Uğur yazdı: 29 Oca 2019, 09:27
Kalan datası 0 a eşit ise tam bölünmüştür bu yolla anlayabilirsiniz.
Peki kalan datanın D502'de olduğunu nasıl anladık? Aşağı satırdaki komutun ismini verebilirseniz, ona göre bir araştırma yapmam daha iyi olabilir. Teşekkür ederim.
Re: bölümün tam sayı olduğu takdirde çıkış veren komut?
Gönderilme zamanı: 29 Oca 2019, 09:35
gönderen Uğur
32 bit bölme işlemlerinde sonuç datası 32 bittir doğal olarak D500-D501 çiftini işgal eder. Bu datadan sonraki 2 data ise kalanı ifade eder ve D502-D503 içerisinde kalan vardır. DLD= karşılaştırma komutu ile bu kalan datasnın içeriği 0 mı diye kontrol edilmiştir.
LD - Şartlı Kontak ve Karşılaştırmalar
Re: bölümün tam sayı olduğu takdirde çıkış veren komut?
Gönderilme zamanı: 29 Oca 2019, 10:10
gönderen mrsss2
Uğur yazdı: 29 Oca 2019, 09:35
32 bit bölme işlemlerinde sonuç datası 32 bittir doğal olarak D500-D501 çiftini işgal eder. Bu datadan sonraki 2 data ise kalanı ifade eder ve D502-D503 içerisinde kalan vardır. DLD= karşılaştırma komutu ile bu kalan datasnın içeriği 0 mı diye kontrol edilmiştir.
LD - Şartlı Kontak ve Karşılaştırmalar
Söylediğinize göre c251 sayıcısını 4 e bölüp D500'e atıyoruz. c251 de 32 bitlik bir datamız var, yine söylediğinize göre sonucun sadece D500'e değil D500 ve D501'E atılması gerekir. Biz DDIVC251 K4 D500 yazdığımızda ve sonucun yarısı D500'e atılıyor, kalanı ise D500'ü takip eden D501'e mi atılıyor? (D501 ile ilgili bir şey belirtmememize rağmen) Bunları bilmiyorum, 16 bitlik bir data için bölüm(sonuç) D20'de yazılıysa kalan D21'dedir diyebilir miyim? Bu bilgilere nereden ulaşabilirim?
Re: bölümün tam sayı olduğu takdirde çıkış veren komut?
Gönderilme zamanı: 29 Oca 2019, 10:16
gönderen Uğur
Manuelde komut açıklamalarında bu bilgiye ulaşabilirsiniz.
Re: bölümün tam sayı olduğu takdirde çıkış veren komut?
Gönderilme zamanı: 29 Oca 2019, 14:00
gönderen mrsss2
Uğur yazdı: 29 Oca 2019, 10:16
Manuelde komut açıklamalarında bu bilgiye ulaşabilirsiniz.
D600'den aldığım değişken veriyi, kullanıcıdan alıp D650'ye kaydettiğim veriye bölüyorum ve sonucu D700 e yazıyorum fakat D700'dekş sonuç ve D702'deki kalan bilgisini sürekli 0 gösteriyor. Sebebi ne olabilir?
Re: bölümün tam sayı olduğu takdirde çıkış veren komut?
Gönderilme zamanı: 29 Oca 2019, 14:28
gönderen Uğur
Öncelikle siz floating çalışıyorsunuz. Floating işlemlerin kalanı olmaz zaten virgüllüdür rakam. Birde DDIV komutu integer bölme içindir siz DDIVR ile floating olarak D600 ü D650 ye bölün ve sonucu yine D700 e yazdın ve ardından aşağıdaki gibi DINT ile D700 ü integer rakama çevirdiğiniz zaman kalan varsa M1021 biti aktif olacaktır.
Re: bölümün tam sayı olduğu takdirde çıkış veren komut?
Gönderilme zamanı: 29 Oca 2019, 14:45
gönderen mrsss2
Uğur yazdı: 29 Oca 2019, 14:28
Öncelikle siz floating çalışıyorsunuz. Floating işlemlerin kalanı olmaz zaten virgüllüdür rakam. Birde DDIV komutu integer bölme içindir siz DDIVR ile floating olarak D600 ü D650 ye bölün ve sonucu yine D700 e yazdın ve ardından aşağıdaki gibi DINT ile D700 ü integer rakama çevirdiğiniz zaman kalan varsa M1021 biti aktif olacaktır.
kalanın 0 olmasına bağlı olarak şartlı kontak kullanmayı düşünmüştüm.
Re: bölümün tam sayı olduğu takdirde çıkış veren komut?
Gönderilme zamanı: 29 Oca 2019, 14:46
gönderen Uğur
Yani kalanın olup olmaması bize kalanın sıfır olup olmadığının bilgisini zaten vermez mi ???