用coco2d 的時候,看到讀取ccbi檔案。順便研究了下。這個是mac 下 cocosbuilder 編輯完成以後發布的 2進製檔案,windows 下沒有工具開啟。就稍微研究了一下格式,這東西裡面坑真不少。以後研究透徹了在寫部落格記錄下。
目前發現乙個坑就是這裡面的 int 和uint 值是用的 elias gamma coding
具體可以看看 這裡。還有 特意研究的是ccbi中的 elias gamma coding 演算法。這篇文章裡,作者用到了計算log2,他是用c的庫函式的。想起很久一起那看到過的 快速的log2 的演算法。查了一下資料,查了一下,就是把乙個整數轉換成浮點數,以float 為例,就是乙個符號位,標記正負,8個指數為,還有剩下23個位數字。雙精度的浮點數 double 也是如此,只是位數不同。具體可以看一下ieee的浮點數標準。所以 整個log2的思路,就是把整數轉換成浮點數,然後把指數為取出來,然後在計算一下指數為裡有幾個值就可以了。 英文** 這裡
貼一下**
#include #include using namespace std;
namespace utility
};//-快速log2 的演算法
int fast_log2(int _val)
int main(int argc,char** argv)
{ int data = utility::to_int(argv[1]);
int log2_data = fast_log2(data);
cout <<"data: " << data <<" log2_data: "<< log2_data <
LOG2函式實現
log2 function,from lua source code log2 function c c code int luao log2 unsigned int x int l 1 while x 256 return l log 2 x log2 function python scrip...
Spring boot 快速整合log4j2
首先在前一篇的基礎上引入log4j的jar包,同時spring boot預設是用logback的日誌框架的,所以需要排除logback,不然會出現jar依賴衝突的報錯。org.springframework.boot spring boot starter web org.springframewo...
快速排序演算法2
package com.mianshi describe 快速排序演算法2 排序結果從小到大 create on 2011 05 25 author sylor.liu version 1.0 since jdk1.6 public class quicksort2 對資料進行快速排序 privat...