CCS C Shift_left() komutu hakkında

Başlatan ziyaretci, 04 Nisan 2012, 20:54:28

ziyaretci

s.a kolay gelsin.

öncelikle size shift left komutunu kısaca anlatayım;

int abc[]={0b10011101,0b01111001,0b11110101,0b11100111};

shift_left(abc,4,0);  //abc dizisinin 4 elemanı aralarında  bir bit sola kaydırılacak. En sondaki paremetre 4 bilgiyi kendi aralarında sola kaydırdığımızda 4. bilginin 8. bitini besleyeceğimiz bit değerini belirtiyor.


evet kısaca anlatım bu şekilde sorum ise

bu dizindeki bilgileri 32 bit sola kaydırdığımda, dizin komple lojik sıfır olacak .Bu komutu kullandığım döngüden çıktığımda dizinin en baştaki hali yani hiç kaydırılmamış haline döner mi?


bu sorunun cevabı benim için çok önemli.Kendim denerdim fakat bulunduğum yerde bilgisayar yok

Teşekkürler.

ziyaretci

:{

Fikri olan yok galiba, bu kötü oldu tam yazdığım programın kılit noktası .s

necati

Ayni yere gelmesini istiyorsan   rotate kulanacaksin
rotate_right(x,2);
compiler da sag ustteki ? isaretii tiklayip aradigin i yaz
acilan sayfada daha genis aciklamalari bulacaksin
[email]entegreterbiyecisi@yahoo.com[/email]

ziyaretci

Cevabinız için teşekkürler .

yani shif_left komutu diziyi tamamen değiştiriyor mu?

rotateyi düşündüm fakat benim istediğimi tam manasıyla yapmıyor.Ben bilgiyi tamamen kaydırdıktan sonra başa dönmesini istiyorum dediğim rotate ile de olurda bilgiye fazladan 2-3 bit 0x00 eklemem lazım buda gereksiz yer kaplar .s  yapacağım yazılımda pic in hafızası %90 oraninda doldu buna bir çözüm ariyorum
shift komutu döngü dışına çıkınca dıziyi eski haline getir derse birisi güzel olur.Yurtta pc yok tabi deneme imkanıda yok.


birisi shift_left komutunun döngü dışına çıkıldığında diziyi eski haline getiriyormu diye isiste bakıverirse minnettar kalırım.