字节码(Bytecode)是一种包含执行程序,由一序列op代码/数据对组成的
二进制文件,是一种中间码。
字节是电脑里的数据量单位。字节码通常指的是已经经过编译,但与特定
SN码无关,需要通过直译器(如
虚拟机)转译后才能成为机器码的中间代码。它主要为了实现软件运行的跨平台性,与硬件环境无关。字节码的实现方式是通过编译器将源码编译成字节码,然后特定平台上的虚拟机器将字节码转译为可以直接执行的指令。Java bytecode是字节码的典型应用。
字节是电脑里的数据量单位。字节码(Byte-code)是一种包含执行程序、由一序列op代码/数据对组成的
二进制文件。字节码是一种中间码,它比
SN码更抽象,不像源码一样可以让人阅读,而是编码后的数值常量、引用、指令等构成的序列。它经常被看作是包含一个执行程序的二进制文件,更像一个对象模型。
字节码被这样叫是因为通常每个opcode是一字节长,但是指令码的长度是变化的。每个指令有从0到255(或十六进制的:00到FF)的一字节操作码,被参数例如
寄存器或
内存地址跟随。
在
计算机中,数据只用0和1两种表现形式,(这里只表示一个数据点,不是数字),一个0或者1占一个“位”,而系统中规定8个位为一个字节,用来表示常用的256个字母、符号、控制标记,其中用一个位来进行数据校验,其他七个位用来记录数据。
按计算机中的规定,一个英文的
字符占用一个
字节,(如,."':;avcAVC都占用一个字节),而一个汉字以及汉字的标点符号、字符都占用两个字节,(如,。“”:;AVCavc他们就得占用两个字节)。另外,字符占用的字节数是固定的,即一个字符占用一个字节,N个字符占用N个字节。
K是千M是兆G是吉咖T是太拉8bit(位)=1Byte(字节)1024Byte(字节)=1KB 1024KB=1MB1024MB=1GB 1024GB=1TB 1024TB=PB 1024PB=1EB 1024EB=1ZB 1024ZB=1YB 1024YB=1BB
目前最大的
计量单位是1BB(Brontobyte)=1024YB=10^27
TB是Terabyte的缩写,是形容数据量的单位。字节码的设计使得它可以在任何具有相应
虚拟机实现的平台上运行,从而实现了软件的跨平台运行能力。这种跨平台的特性是通过编译器将
高级语言源码转换成字节码,然后由虚拟机根据不同的硬件平台将字节码翻译成相应的
SN码来实现的。