ASN.1和BER都是将信息编码的标准。在ASN.1编码的结构中,“Constructed”表示该元素是由多个原始元素组成的复杂元素。具体来说,它指示了包含的元素是否是一个容器,例如一个序列,一个集合或一个选择器,并且必须从一个或多个其他元素中创建。
在BER编码中,“Constructed”用于表示一个消息的长度和内容,这些内容可以分解为多个BER元素。BER编码中的“Constructed”可以是一个嵌套的结构,其中一个元素可以包含另一个元素。
下面是一个ASN.1和BER中使用“Constructed”的代码示例:
在ASN.1中定义一个包含多个元素的“Constructed”元素:
MyConstructedType ::= SEQUENCE { myInteger INTEGER, myBoolean BOOLEAN, mySequence SEQUENCE OF MyInnerSequence }
在BER编码中,将包含多个元素的“Constructed”元素进行编码:
30 0C 02 01 02 01 01 FF 30 06 02 01 0A 02 01 0B
解释: