Action Message Format -- AMF 3 (中文版 ) Fixed By ChinaEstone
what we call human nature is actually human habit .
1.3.1 Variable Length Unsigned 29-bit Integer Encoding
可变长度的无符号 29位整数的编码
AMF 3 makes use of a special compact format for writing integers to reduce the number of bytes
required for encoding.
AMF3 使用一种特别的压缩格式来写整数,用于压缩编码的字节数量。
As with a normal 32-bit integer, up to 4 bytes are required to hold the value however the high bit of
the first 3 bytes are used as flags to determine whether the next byte is part of the integer.
对于一个正常的 32-bit 的整数,需要 4个字节来存储,然而前 3个字节的最高位是用于标识下一 个
字节是不是整数的一部分
With up to 3 bits of the 32 bits being used asflags, only 29 significant bits remain for encoding an
integer. This means the largest unsigned integer value that can be represented is 2
29
–1
在32-bit 中多达 3个bit 是用来标志的,所以对编码的一个整数仅仅有 29个 bit 有意义。这意味着最
大的无符号的整数值是 2
29
-1 。
In ABNF syntax, the variable length unsigned 29-bit integer type is described as follows:
在ABNF 语法中 , 可变长度的无符号的 29位的整型数据类型描述如下 :
1.3.2 Strings and UTF-8
AMF 0 and AMF 3 use (non-modif ied) UTF-8 to encode strings. UTF-8 is the abbreviation for 8-bit
Unicode Transformation Format. UTF-8 strings are typically preceded with a byte-length header
followed by a sequence of variable length (1 to 4 octets) encoded Unicode code-points.
AMF0 和AMF3 使用 UTF-8 来编码字符串(没有变化的)。 UTF-8 是 8-bit 的Unicode Transformation
Format(统一的传输格式)的缩写。 UTF-8 字符串是典型的字节长度为头,紧跟着编码 Unicode
编码点的可变长度( 1到 4个字节)的字节序列。
AMF 3 usesa slightly modif ied byte-length header; a detailed descript ion is provided below and
referred to throughout the document.
AMF3 使用一个轻微改变的字节长度头;适用于整个文档的具体描述如下。
In ABNF syntax, [RFC3629] describes UTF-8 as follows:
在ABNF 句法, [RFC3629] 描述 UTF-8 如下: