初识ASN.1

本文介绍了asn1c工具的安装与使用,asn1c能够自动生成asn.1定义的数据编码和解码代码。在Linux环境下,通过配置、编译和安装asn1c,然后利用asn1c命令处理asn.1文件,生成对应的C源代码。通过修改样例程序,避免了多个main函数冲突的问题,最终展示了asn.1数据的BER编码测试结果。
摘要由CSDN通过智能技术生成
ASN.1:ASN.1抽象语法标记(Abstract Syntax Notation One) ASN.1是一种 ISO/ITU-T 标准,描述了一种对数据进行表示、编码、传输和解码的数据格式。它提供了一整套正规的格式用于描述对象的结构,而不管语言上如何执行及这些数据的具体指代,也不用去管到底是什么样的应用程序。---百度百科

asn1c: The ASN.1 compiler is a tool for creating data encoders and decoders out of formal ASN.1 specifications.是由是Lev Walkin开发,按照ASN语法定义自己所需的数据结构,如struct,使用asn1c命令,能够自动生成所需的C/C++代码;在代码中使用依据的描述信息(asn_DEF_),调用对应的encode和decode完成编码和解码操作(BER、XER、PER)。


asn1c自动生成的代码只是为你完成编码和解码操作,并不包含其他如网络传输的接口。

把asn1c-0.9.24.tar.gz(这不是最新版本)下载,解包,依次按照configure,make,make install的步骤编译、安装; 安装成功后可使用asn1c命令。


Linux 可直接安装deb包:

<strong>sudo dpkg -i asn1c_0.9.24+dfsg-1_i386.deb</strong>

以下是asn1c help文档中的实例:
rectangle.asn1:
RectangleModule
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值