February 11, 2013

Alıntı (Salih Dinçer):

>
>     foreach(i; 0..13) {  // 64 / 5 bit = ~13
>         dizge ~= abece[veri & 31];
>         veri >>= 5;
>     }
> ```

>

Evet, şimdi karışıklık olmaz çünkü bütün ulong'lar 13 harfe dönüştürülüyor. :)

Peki decode doğru çalışıyor mu? abece'yi hiç göze almıyor.

Ali

-- 
[ Bu gönderi, <http://ddili.org/forum>'dan dönüştürülmüştür. ]
February 12, 2013

Böyle durumlarda 256 bayttan oluşan bir dizi kurabilirsin (jump table). (Eşleme tablosundan daha hızlı çalışacaktır.) Bu 256 baytın yalnızca Base32 kodlamasında kullanılan elemanları dolu olur.

Örneğin 'A'nın değerine karşılık gelen göz olur ama 'a'nın değeri boş olur. Böylece yine dizin[v] yaparak değeri bulursun ama doğrudan indekslendiği için eşleme tablosundan daha hızlı olur.

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

1 2
Next ›   Last »