勇往直前的专栏

写给以后的自己

Java专家系列:CPU Cache与高性能编程

认识CPU Cache CPU Cache概述 随着CPU的频率不断提升,而内存的访问速度却没有质的突破,为了弥补访问内存的速度慢,充分发挥CPU的计算资源,提高CPU整体吞吐量,在CPU与内存之间引入了一级Cache。随着热点数据体积越来越大,一级Cache L1已经不满足发展的要求,引入了...

2017-01-16 12:17:37

阅读数 305

评论数 0

7个示例科普CPU CACHE

  CPU cache一直是理解计算机体系架构的重要知识点,也是并发编程设计中的技术难点,而且相关参考资料如同过江之鲫,浩瀚繁星,阅之如临深渊,味同嚼蜡,三言两语难以入门。正好网上有人推荐了微软大牛Igor Ostrovsky一篇博文《漫游处理器缓存效应》,文章不仅仅用7个最简单的源码示例就将C...

2017-01-16 12:16:08

阅读数 405

评论数 0

关于2的补码

问一个基本的问题。 负数在计算机中如何表示? 举例来说,+8在计算机中表示为二进制的1000,那么-8怎么表示呢? 很容易想到,可以将一个二进制位(bit)专门规定为符号位,它等于0时就表示正数,等于1时就表示负数。比如,在8位机中,规定每个字节的最高位为符号位。那么,+8就是0000100...

2016-12-02 16:39:14

阅读数 243

评论数 0

Java常见的几种排序算法-插入、选择、冒泡、快排、堆排等

       本文就是介绍一些常见的排序算法。排序是一个非常常见的应用场景,很多时候,我们需要根据自己需要排序的数据类型,来自定义排序算法,但是,在这里,我们只介绍这些基础排序算法,包括:插入排序、选择排序、冒泡排序、快速排序(重点)、堆排序、归并排序等等。看下图: 给定数组:int dat...

2016-11-24 23:43:48

阅读数 259

评论数 0

原码、反码、补码的产生、应用以及优缺点有哪些?

google了一下,看到了这样一篇文章,注意到文中关于补码来历的描述,可以总结如下: 计算机里面,只有加法器,没有减法器,所有的减法运算,都必须用加法进行。 用补数代替原数,可把减法转变为加法。出现的进位就是模,此时的进位,就应该忽略不计。 二进制下,有多少位数参加运算,模就是在 1 的后面...

2016-11-24 22:45:57

阅读数 2179

评论数 1

提示
确定要删除当前文章?
取消 删除