随笔分类 -  读书笔记

1
摘要:即时编译器(Just In Time Compiler)为了提高执行效率将热点代码编译成与本地平台相关的机器码,并进行各种层次的优化的编译器。它并不是虚拟机必需的部分,但其性能的好坏、代码优化程度的高低却是衡量一款商用虚拟机优秀与否的最关键指标之一,也是虚拟机中最核心且最能体现虚拟机技术水平的部... 阅读全文
posted @ 2015-08-02 11:42 YGingko 阅读(413) 评论(0) 推荐(0)
摘要:相当多新生的java语法特性,都是靠编译器的“语法糖”来实现,而不是依赖虚拟机的底层改进来支持,java中即时编译器地运行期的优化过程对于程序运行来说更重要,而前端编译器在编译期的优化过程对于程序编码来说关系更加密切。Javac编译器编译过程大致可以分为3个过程,分别是解析与填充符号表过程,插入... 阅读全文
posted @ 2015-08-02 11:06 YGingko 阅读(322) 评论(0) 推荐(0)
摘要:虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的java类型,这就是虚拟机的类加载机制。在java语言里,类型的加载、连接和初始化过程都是在程序运行期间完成的,这会令类加载时稍微增加一些性能开销,但是会为java应用程序提供高度的... 阅读全文
posted @ 2015-07-31 13:11 YGingko 阅读(342) 评论(0) 推荐(0)
摘要:各种不同平台的虚拟机与所有平台都统一使用的程序存储格式---字节码(ByteCode)是构成平台无关性的基石。Class文件是一组以8位字节为基础单位的二进制流,各个数据项目严格按照顺序紧凑地排列在Class文件之中,中间没有添加任何分隔符,这使得整个Class文件中存储的内容几乎全部是程序运行... 阅读全文
posted @ 2015-07-30 16:14 YGingko 阅读(322) 评论(0) 推荐(0)
摘要:经过半个多世纪的发展、目前内存的动态分配与内存回收技术已经相当成熟,但作为程序猿还是得了解GC和内存分配。当需要排查各种内存溢出、内存泄漏、当垃圾收集成为系统达到更高并发量的瓶颈时,就需要对内存的动态分配与内存回收技术实施必要的监控和调节。 本文讲叙了内存中垃圾的收集及内存分配策略。相比较而言... 阅读全文
posted @ 2015-07-20 22:29 YGingko 阅读(271) 评论(0) 推荐(0)
摘要:本文转载地址:http://www.cnblogs.com/zuoxiaolong/p/computer15.html 引言 上一章我们已经介绍了汇编语言的基础部分,包括数据格式、寄存器以及操作数的标识方式,接下来我们就应该去认识一下汇编语言当中的各个指令了。这些指令大多数都非常简单,但是组合在一起 阅读全文
posted @ 2015-07-09 11:39 YGingko 阅读(1068) 评论(0) 推荐(0)
摘要:本文转载地址:http://www.cnblogs.com/zuoxiaolong/p/computer14.html 引言 本文的内容其实可以成为汇编语言的基础,因为汇编语言大部分时候是在操作一些我们平时开发看不到的东西,因此本文的目的就是搞清楚,汇编语言都是在操作些什么东西。或者更准确的说,各种 阅读全文
posted @ 2015-07-09 11:35 YGingko 阅读(618) 评论(0) 推荐(0)
摘要:本文转载地址:http://www.cnblogs.com/zuoxiaolong/p/computer13.html 为何要学习汇编语言 对于大部分猿友来说,平时写的都是一些高级程序设计语言,是计算机领域的诸多大神,经过几层的封装才让我们享有了这样的待遇。这样一来,我们在平时的开发过程中,可以省去 阅读全文
posted @ 2015-07-09 11:32 YGingko 阅读(326) 评论(0) 推荐(0)
摘要:本文转载地址:http://www.cnblogs.com/zuoxiaolong/p/computer12.html 前言 上一章我们简单介绍了IEEE浮点标准,本次我们主要讲解一下浮点运算舍入的问题,以及简单的介绍浮点数的运算。 之前我们已经提到过,有很多小数是二进制浮点数无法准确表示的,因此就 阅读全文
posted @ 2015-07-08 11:22 YGingko 阅读(648) 评论(0) 推荐(0)
摘要:本文转载地址:http://www.cnblogs.com/zuoxiaolong/p/computer11.html 2.6我们进行了二进制整数运算的最后一役,本次LZ将和各位一起进入浮点数的世界,这里没有无符号,没有补码,但是有各种各样的惊奇。倘若你真正的进入了浮点数的世界,一定会发现它原来是这 阅读全文
posted @ 2015-07-08 10:55 YGingko 阅读(1988) 评论(0) 推荐(1)
摘要:本文转载地址:http://www.cnblogs.com/zuoxiaolong/p/computer10.html 2.5我们着重介绍了二进制整数的加、减运算,本次我们继续介绍乘、除运算。 引言 运算一直是程序运行当中一个重要的环节,而在二进制的运算过程当中,加法运算又是重中之重,它基本上奠定了 阅读全文
posted @ 2015-07-08 10:44 YGingko 阅读(463) 评论(0) 推荐(0)
摘要:本文转载地址:http://www.cnblogs.com/zuoxiaolong/p/computer9.html 2.3我们介绍了无符号编码和补码编码,本次我们来看一下在这两种编码下,整数的运算是如何进行的。 引言 平时的编程过程中,当进行整数运算时,经常会遇到一些奇怪的结果,比如两个正数加出负 阅读全文
posted @ 2015-07-08 10:00 YGingko 阅读(654) 评论(0) 推荐(0)
摘要:本文转载地址:http://www.cnblogs.com/zuoxiaolong/p/computer8.html 在上一章中,我们着重介绍了整数的表示方式,也就是无符号编码和补码编码。本次我们来看一下二进制整数的扩展与截断,这部分内容是与C语言挂钩介绍的。因此我们首先来简单的看一下C语言的有符号 阅读全文
posted @ 2015-07-08 09:43 YGingko 阅读(2072) 评论(0) 推荐(0)
摘要:本文转载地址:http://www.cnblogs.com/zuoxiaolong/p/computer7.html 上一章我们简单的介绍了布尔代数以及C语言的位运算,本次我们主要来看,二进制如何表示整数,这是很重要的一章,希望各位猿友莫要错过。 C语言中的整数类型及范围 我们依然以C语言为例,C语 阅读全文
posted @ 2015-07-08 09:26 YGingko 阅读(703) 评论(0) 推荐(0)
摘要:本文转载地址:http://www.cnblogs.com/zuoxiaolong/p/computer6.html 布尔代数上的位运算 布尔代数是一个数学知识体系,它在0和1的二进制值上演化而来的。 我们不需要去彻底的了解这个知识体系,但是里面定义了几种二进制的运算,却是我们在平时的编程过程当中也 阅读全文
posted @ 2015-07-07 20:14 YGingko 阅读(453) 评论(0) 推荐(0)
摘要:本文转载地址:http://www.cnblogs.com/zuoxiaolong/p/computer5.html 引言 我们很难想象,1和0这两个再简单不过的数字,给计算机科学带来了彻底的改变。对于无法与人脑相比的计算机来说,简单的1和0就是最适合它们的数字。不过1个1或者1个0往往代表不了任何 阅读全文
posted @ 2015-07-07 16:20 YGingko 阅读(319) 评论(0) 推荐(0)
摘要:本文转载地址:http://www.cnblogs.com/zuoxiaolong/p/computer3.html 上一章LZ给各位展示了一下hello程序的简单执行过程,可以看出在这一过程当中,系统在数据的传输上花费了大量的时间。硬件开发商为了减少这种数据传输的时间成本,采用一种高速缓存的技术去 阅读全文
posted @ 2015-07-07 11:18 YGingko 阅读(1047) 评论(0) 推荐(0)
摘要:本文转载地址:http://www.cnblogs.com/zuoxiaolong/p/computer2.html hello world的执行 我们以linux系统为例,当我们执行一个简单的打印字符串的C程序时,我们需要在命令行输入./hello以及回车去执行该程序。在整个执行过程中,计算机主要 阅读全文
posted @ 2015-07-07 10:30 YGingko 阅读(555) 评论(0) 推荐(0)
摘要:本文转载地址:http://www.cnblogs.com/zuoxiaolong/p/computer1.html 本来LZ是打算好好研究一下JVM源码的,不过想来想去,LZ觉得应该先了解计算机系统的原理,再去研究JVM源码的精妙。因此LZ决定潜下心来好好研究下计算机系统原理,这是一个漫长的过程, 阅读全文
posted @ 2015-07-07 10:16 YGingko 阅读(379) 评论(0) 推荐(0)
摘要:引言 《像程序员一样思考》是一本训练程序员编程思想的指导书。本书以向个经典难题开篇,提出一些编程中常用的思想方法,如重述、类比、划分、消减等。同时也提供一些具体的技巧,如利用数组、指针动态内存、类解决问题。着重提出了大递归的思想,以及善假于外物的思路。本书注重程序员自信心的培养,提倡利用现有方法解... 阅读全文
posted @ 2015-07-06 11:44 YGingko 阅读(583) 评论(0) 推荐(0)

1