lua源码里看到的,这个应该优化的很好了吧

int luaO_log2 (unsigned int x) { 
  static const lu_byte log_2[256] = { 
    0,1,2,2,3,3,3,3,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 
    6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6, 
    7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7, 
    7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7, 
    8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 
    8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 
    8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 
    8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8 
  }; 
  int l = -1; 
  while (x >= 256) { l += 8; x >>= 8; } 
  return l + log_2[x]; 
}

快速计算log2()相关推荐

  1. [Julia语言]使用Chudnovsky 算法快速计算圆周率 Pi (π) 值

    测试用的电脑是一台10年老电脑,CPU型号:E3 1230V2,3.3GHZ,4核8线程,8GB内存. 用下面的Julia程序,计算1万位的Pi值,耗时为0.26秒. 作为比较,用Julia实现的另一 ...

  2. ubuntu 使用FFTW快速计算离散傅里叶变换

    FFTW ( the Faster Fourier Transform in the West) 是一个快速计算离散傅里叶变换的标准C语言程序集,其由MIT的M.Frigo 和S. Johnson 开 ...

  3. SQL优化(二) 快速计算Distinct Count

    2019独角兽企业重金招聘Python工程师标准>>> 原创文章,首发自个人站点 ,转载请务必注明出处 http://www.jasongj.com/2015/03/15/count ...

  4. 快速计算文件的MD5/SHA1/SHA256等校验值(Windows/Linux)

    从网络上下载文件,尤其是非常大的文件怎么确保文件准确无误呢? 通常网站提供文件时会同时提供该文件的校验值,如MD5,SHA1,SHA256等, 当文件下载完成后,计算它的校验值,如果和网站提供的一致, ...

  5. 快速计算整数的二进制表示法中1的个数

    快速计算整数的二进制表示法中1的个数 题目:给定一个无符号32位整数x,求x的二进制表示法中含1的个数? 第一种算法: int OneCount(unsigned int x) {   for(int ...

  6. python利用近似公式计算π_Excel函数公式大全之利用SUMSQ函数快速计算多个数据的平方和...

    各位Excel天天学的小伙伴们大家好,欢迎收看Excel天天学出品的excel2019函数公式大全课程.今天我们要学习的函数是数学函数中的SUMSQ函数,SUMSQ函数的功能是快速计算多个数据的平方和 ...

  7. 网络基础知识 快速计算子网掩码的2种方法

    网络基础知识 快速计算子网掩码的2种方法<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office ...

  8. Python一句话实现秦九韶算法快速计算多项式的值

    关于秦九韶算法快速计算多项式值的原理描述请参考之前推送的文章Python使用秦九韶算法求解多项式的值.本文重点演示Python函数reduce()和lambda表达式的用法.代码没加注释,如果不好理解 ...

  9. 妙用Python内置函数int()快速计算等比数列前n项和

    本文要点在于Python内置函数int()的用法,所以计算等比数列前n项和时没有使用数学上的公式Sn=a1*(1-q^n)/(1-q). 一般遇到这样的问题,很容易想到使用循环来实现,以计算1+2+4 ...

最新文章

  1. Exception testing
  2. python数据结构推荐书-腾讯十年Python开发老司机推荐的入门书籍,你确定不看吗?...
  3. Performance comparison Raw device VS Ext2 VS Ext3 VS OCFS
  4. linux基础命令下载,Linux基础命令教程豪华版
  5. 系统工程理论与实践投稿经验_钱学森的系统工程 | 如是读
  6. delphi 获取数组长度_Java中的数组(基础篇六)
  7. Java for LeetCode 036 Valid Sudoku
  8. MacOS Monterey 12.3.1(21E258) OC 0.7.9 / Cl 5145 / PE 三分区原版黑苹果镜像
  9. eclipse如何设置眼睛保护色
  10. 美剧深度扫盲:有线电视台之风起云涌--之一(转载)
  11. 多路数据采集系统软件测试,基于AT89S52多路数据采集系统的设计-测试测量-与非网...
  12. java 记牌_JAVA入门之简易扑克牌游戏
  13. 计算机视觉和模式识别领域企业论坛,第三届中国模式识别与计算机视觉大会(PRCV 2020)圆满举办...
  14. puml绘制思维导图_盘点那些美美哒的在线思维导图制作神器
  15. 全球与中国纳米铝硅合金粉末市场深度研究分析报告
  16. 基于javaweb+JSP+Servlet宿舍管理系统(超级管理员、宿舍管理员、学生)
  17. C-ECAP认证规则说明
  18. 日语中的接打电话礼貌用语
  19. 【vue.js】+云存储(实现图片上传功能)
  20. 邮件黑名单系列文章十 : IP被UCEProtect列入黑名单

热门文章

  1. 基于注意力模型和卷积循环神经网络的中文自然场景文本识别
  2. 小程序 html编辑器,小程序富文本编辑器editor初体验
  3. 常见Web源码泄漏及其利用
  4. Eclipse注释中文格式没对齐
  5. Laravel9+Layui实现的低代码开发平台
  6. mojave时间机器文件服务器,黑苹果懒人版CDR镜像macOS Mojave 10.14.1(18D42)
  7. Flink菜鸟教程(一)——从入门到开发
  8. 高精地图编辑生成 opendrive OpenSCENARIO
  9. 【JMP白皮书下载】 | 可靠性增长之探讨与案例分享
  10. HTML5学习(三):布局标签、列表、超链接和id