• DocumentCode
    1335146
  • Title

    The design and implementation of an ASN.1-C compiler

  • Author

    Neufeld, Gerald W. ; Yang, Yueli

  • Author_Institution
    Dept. of Comput. Sci., British Columbia Univ., Vancouver, BC, Canada
  • Volume
    16
  • Issue
    10
  • fYear
    1990
  • fDate
    10/1/1990 12:00:00 AM
  • Firstpage
    1209
  • Lastpage
    1220
  • Abstract
    Abstract syntax notation one (ASN.1) has been widely used in international standard specification: its transfer-syntax, the basic encoding rules (BER), is used as the external data representation. A BER implementation called the ED library is presented. The ED library includes a number of encoding and decoding routines that may be used as primitive functions to compose encoders and decoders for arbitrarily complicated ASN.1 data types. Based on the ED library an ASN.1-C compiler, called CASN1, is designed and implemented to free the protocol implementers from the arduous work of translating protocol-defined data-types and constructing their encoders and decoders. Given an ASN.1 protocol specification, CASN1 automatically translates the input ASN.1 modules into C and generates the BER encoders and decoders for the protocol defined data-types. The CASN1 design principles, user interface, and some example applications are discussed. The performance of the ED library and generated CASN1 code is also measured and discussed
  • Keywords
    decoding; encoding; program compilers; protocols; standards; ASN.1-C compiler; C; CASN1; ED library; abstract syntax notation one; basic encoding rules; decoding; design; external data representation; implementation; international standard specification; protocol; transfer-syntax; user interface; Bit error rate; Communication standards; Computer languages; Computer science; Decoding; Encoding; ISO standards; Libraries; Protocols; User interfaces;
  • fLanguage
    English
  • Journal_Title
    Software Engineering, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0098-5589
  • Type

    jour

  • DOI
    10.1109/32.60300
  • Filename
    60300