Ynt: PicBasic'deki NCD nin Karşılığı

Başlatan ertan2002, 26 Aralık 2013, 15:01:34

ertan2002

Merhaba arkadaşlar,

bir arkadaşa yardım ediyorum, picbasic kodlarını çeviriyorum ccs c derleyicinse göre ama ncd diye bi komut varmış

açıklama şöyle


3) NCD :

NCD komutu ile binary bir sayının içerisindeki en soldaki lojik (1) hangi bitte ise o bitin sayısını değişkenin içerisine yükler.

A = NCD %00010011 ' Binary sayının içerisindeki en yüksek lojik (1) 4.bitte A = 7 olur



A =7 nasıl oluyor anlamadım. 4. bitte olabilir ama 7 nerden çıktı 0111 acaba şu şekile mi çeviriyorlar?

neyse mesela

a = (ncd b);
bunu ccs c de nasıl yapabilirm?
teşekkürler?


mesaj birleştirme:: 26 Aralık 2013, 15:20:06

ayrıca gosub un karşılığını da bulamadım, kodda goto var o zaten aynı ama bir de gosub var, return ile dönderiliyormuş falan
ve son olarak dec3 degisken şeklinde bi şey var bu da sayıyı 3 hane olarak gösteriyormuş, bunun karşılığını da bulamadım..

muhittin_kaplan

gosub aşağıdaki işi yapar.
int main (void){
  falanfilan();
  while(1)
  {
  }
}


void falanfilan (void){
......
}


basla:
    ...
    ...
   gosub falanfilan
   goto basla

falanfilan:
....
....
return



Alıntı YapX = NCD % 00110100                                      'En yüksek değerlikli "1" olan bit 6.sıradadır. 6 sayısı X'e atanır.
Y = NCD % 0000000000001000            'En yüksek değerlikli "1" olan bit 4.sıradadır. 4 sayısı Y'ye atanır.
Z = NCD % 00000000                                   'Değeri "1" olan hiçbir dijit olmadığından, Z'ye 0 atanır.

buna c için bir fonksiyon hazırlaman gerekir.

ertan2002