第三部分 虚拟机执行子系统 第六章 类文件结构 无关性的基石 多种语言(不仅仅是Java)编译成字节码(非机器码,与操作系统和指令集无关)Class文件,只要该文件符合虚拟机对Class文件的要求便可以在JVM中运行。 Class类文件结构 魔数 CAFEBABE、次版本号2u、主版本号2u; 常量 ...
分类:
其他好文 时间:
2019-07-04 17:14:51
阅读次数:
89
现代JVM在执行Java代码的时候,通常都会将解释执行与编译执行两者结合起来 所谓解释执行,就是通过解释器来读取字节码,遇到相应的指令就去执行该指令。 所谓编译执行,就是通过即时编译器(Just In Time,JIT) 将字节码转为本地机器码来执行;现代JVM会根据代码热点来生成相应的本地机器码。 ...
分类:
其他好文 时间:
2019-06-30 14:19:32
阅读次数:
226
编程语言可以从两个方面进行分类:是否需要编译,运行时是否可以改变。 1、按是否需要编译分类:编译型语言,解释型语言,混合型语言。 1.1、编译型语言:需要将源代码编译成机器码,再由机器运行机器码。例如:C,C++ 优点:只需编译一次,运行速度快,执行效率高; 缺点:每次修改都需要重新编译,只能在兼容 ...
分类:
编程语言 时间:
2019-06-29 19:11:28
阅读次数:
106
OSI开放式互联参考模型 七层 第1层 物理层 机械、 电子、定时接口通信信道上的原始比特流传输 解释:首先要解决两台物理机之间的通信需求,机器A >机器B发送比特流 (物理层主要定义了物理设备的标准,如网线的类型,光纤的接口,传输比特流(0/1)转换为电流强弱,到达目的地后,再转换为0/1机器码( ...
分类:
编程语言 时间:
2019-06-27 00:40:01
阅读次数:
126
python 2和3的区别1.解释型和编译型 1.编译型: 1.先把代码编译成机器码-->计算机寄存器去运行 C 2.先把代码编译场XXX >计算机去找虚拟机执行代码-->机器码交给计算机去运行 C JAVA C# 2.解释型: 边解释边执行 python1.列表-->字符串 join([])2.字 ...
分类:
其他好文 时间:
2019-06-26 19:16:37
阅读次数:
108
1.简述解释型和编译型编程语言 编译型:先把代码编译成XXX文件,计算机找虚拟机执行代码,机器码交给计算机去运行 解释型:边解释边执行 2.位和字节的关系? 8位等于1字节 b8位 3. ...
分类:
其他好文 时间:
2019-06-24 20:52:14
阅读次数:
79
芯片解密以后一般得到的是二进制或十六进制的机器码,是可以将这些机器码转化成汇编语言的,就是反汇编。反汇编(Disassembly):把目标代码转为汇编代码的过程,也可以说是把机器语言转换为汇编语言代码、低级转高级的意思,软件一切神秘的运行机制全在反汇编代码里面。下面列举出一些ST的芯片型号:STM32F071RBSTM32F051T8STM32F071V8STM32F051K6STM32F051R
分类:
其他好文 时间:
2019-06-19 14:49:53
阅读次数:
139
编译器的核心任务是把C程序翻译成机器的汇编语言(assembly language)。汇编语言是人类可以阅读的编程语言,也是相当接近实际机器码的语言。由此导致每种 CPU 架构都有不同的汇编语言。 通常情况下,GCC 把汇编语言输出存储到临时文件中,并且在汇编器执行完后立刻删除它们。但是可以使用-S ...
分类:
其他好文 时间:
2019-06-16 11:27:11
阅读次数:
99
1. 汇编文件说明 : 汇编文件以 【.s】结尾的文件格式 注释:多行注释 /* */ ; 单行注释 @ 2. 符号说明: 1) 汇编指令,一条指令对应一个机器码,完成一定的功能 2) 伪指令,一条指令对应多条机器码,完成一个稍微复杂的功能 3) 伪操作,不会生成机器码,为了协助编译器,进行编译的, ...
分类:
其他好文 时间:
2019-06-12 19:49:54
阅读次数:
111
编译语言和解释语言 1、编译语言: 需要通过编译器(compiler)将源代码编译成机器码,之后才能执行的语言。 一般需经过编译,链接两个步骤: 编译:把原代码编译成机器码 链接:把各个模块和依赖库串起来生成可执行文件。 优点: 编译器一般会有预编译的过程对代码进行优化。因为编译只做一次,运行时不需 ...
分类:
编程语言 时间:
2019-06-07 15:36:01
阅读次数:
128