
ARM
文章平均质量分 89
Jtag特工
代码和人工智能老兵
展开
-
ART世界探险(4) - 数据传送指令和桶型移位器
指令系统的第一讲,我们将学习桶形移位器,这是个可以在ALU运算前对第二个操作数进行操作的神奇器件。同时也学习MOV, MVN和几个可以单独使用的移位指令,以及他们对应的java指令原创 2016-07-22 20:43:17 · 2164 阅读 · 0 评论 -
ART世界探险(5) - 计算指令
我们分析一下ARM, ARM v7a, ARM64 v8a, x86, x86_64, mips, mips64和Java字节码的整数和浮点运算。原创 2016-07-24 22:19:18 · 2968 阅读 · 0 评论 -
ART世界探险(6) - 流程控制指令
java, arm, mips, x86处理分支和循环的指令原创 2016-07-25 02:36:27 · 3928 阅读 · 0 评论 -
ART世界探险(10) - 异常处理
对于编译Java的话,有一个问题不能不考虑,就是异常处理的问题。异常处理是基于Java的语句块的,翻译成本地代码的话,需要针对这些指令的地址进行一下重排。 我们来看下ART是如何实现异常处理的。原创 2016-07-28 18:20:33 · 1983 阅读 · 3 评论 -
ART世界探险(11) - OAT文件格式分析
既然是要探险,咱们就保持一定的深度,起码将来可以做个基于ART的黑客之类的。 所以我们针对细节多下一些工夫,先仔细分析一下OAT文件的格式。原创 2016-08-03 18:23:25 · 2676 阅读 · 0 评论 -
ART世界探险(3) - ARM 64位CPU的架构快餐教程
前面我们说过,Dalvik如果没有JIT的话,可以做到架构无关,让Dalvik指令都解释执行。但是ART是AOT,要编译成针对芯片具体的机器指令。 所以,研究Dalvik的时候可以不用太关心目标指令,而我们研究ART必须对目前最流行的微处理器的架构有个基本的了解。原创 2016-07-22 16:48:46 · 3149 阅读 · 0 评论 -
ART世界探险(12) - OAT文件分析(2) - ELF文件头分析(中)
ELF中的section和segment原创 2016-08-04 20:17:30 · 1905 阅读 · 0 评论