构造类型:有序列和集合两种,分别是SEQUENCE、SEQUENCE OF(有序列表)和SET、SET OF(无序集合)。
标签类型:通用标签(UNIVERSAL)、应用标签(APPLICATION)、上下文专用标签(CONTEXT-SPECIFIC)、私有标签(PRIVATE)。
常用通用数据类型:
标签 | 类型 |
---|---|
UNIVERSAL1 | BOOLEAN |
UNIVERSAL2 | INT |
UNIVERSAL3 | BIT STRING |
UNIVERSAL4 | OCTET STRING |
UNIVERSAL16 | SEQUENCE / SEQUENCE OF |
UNIVERSAL17 | SET / SET OF |
image.png
image.png
image.png
image.png
image.png
image.png
例题:基本编码规则中哪两种字段需要扩充?其扩充方法是什么?
一是当标签值大于30时标签字段需要扩充,二是当值部分大于一个字节的表示范围时长度字段需要扩充(>=127)。
对标签值扩充方法:
1、用5位表示0~30的编码,当标签号>=30时,这5位全为1,作为转义符,实际的标签号编码表示在后续字节中;
2、后续字节中的左边第一位表示是否为最后一个扩充字节,只有最后一个扩充字节的左边第一个位置0,其余扩充字节左边第一位置1。
对长度字段的扩充方法:
1、小于127的数用长度字节右边7位表示,最左边的一位置0;
2、大于等于127的数用后续若干字节表示,原来的长度字节第一位置1,其余7位指明后续用于表示长度的字节数。
image.png
网友评论