BlobWriter.WriteCompressedInteger(Int32) 方法
定义
实现 ECMA-335-II 章节 23.2 中定义的压缩无符号整数编码:Blob 和签名。Implements compressed unsigned integer encoding as defined by ECMA-335-II chapter 23.2: Blobs and signatures.
public:
void WriteCompressedInteger(int value);
public void WriteCompressedInteger (int value);
member this.WriteCompressedInteger : int -> unit
Public Sub WriteCompressedInteger (value As Integer)
参数
- value
- Int32
例外
value 不能表示为压缩的无符号整数。value can't be represented as a compressed unsigned integer.
注解
如果值介于 0 (0x00) 和 127 (0x7F) ,其中包含,则将编码为单字节整数 (第7位为明文,保存在位6到 0) 中的值。If the value lies between 0 (0x00) and 127 (0x7F), inclusive, encode as a one-byte integer (bit 7 is clear, value held in bits 6 through 0).
如果值介于 28 (0x80) 和 214-1 (0x3FFF) (含),则将编码为带有位15集的2字节整数,位14明文 (保存在第13位到 0) 值中。If the value lies between 28 (0x80) and 214 - 1 (0x3FFF), inclusive, encode as a 2-byte integer with bit 15 set, bit 14 clear (value held in bits 13 through 0).
否则,编码为4字节整数,位31集,位30集,位 29 clear (值保留在第28到 0) 。Otherwise, encode as a 4-byte integer, with bit 31 set, bit 30 set, bit 29 clear (value held in bits 28 through 0).