바이너리 형식은 일반적으로 쉽게 지정되지 않은; 그들은 거의 같은 ASN.1로 높은 수준 표시된 언어로 지정되지 않은 (및 사양은 될 수 없다 기존 바이너리 포맷으로 복고풍 장착). bdec 프로젝트는 마크 업 언어로 임의의 바이너리 형식을 지정하고, 높은 수준의 사양 주어진 바이너리 형식에 대해 자동으로 디코더 및 인코더를 만들 수있는 시도이다.
bdec XML 사양은 ASN.1에서 발견 구조에 기반 구조를 사용한다.
사용법 :
bdec 라이브러리는 디코딩 / 인코딩 라이브러리 및 명령 줄 디코딩 및 인코딩 응용 프로그램으로 구성되어 있습니다. 사양을 감안할 때, 명령 줄 응용 프로그램은 이진 파일에 포함 된 데이터의 XML 표현을 만들 것이며, (일부 표현을 위해) 바이너리로 다시 XML로 변환 할 수 있습니다.
라이브러리는 XML 출력, 또는 임의로 바이너리 데이터에 포함되는 구조를 나타내는 파이썬 객체를 생성 할 수있다.
예를 들어; 실행에 의해 생성 된 FAT 부팅 섹터의 XML 표현 :
DD 경우 =는 / dev / sda1과 BS = 512 카운트 = 1 | 디코드 bootsector.xml
특징 :
그것은 빨리 쓰기 (읽기)하기 쉬운 사양
사용자 지정 디코더를 쓸 필요가 (; 통과 또는 실패 중 하나 디코딩 모든 오류 조건은 내부적으로 처리되지 않습니다).
명령 줄 응용 프로그램은 문제가있는 파일의 육안 검사를 할 수 있습니다.
유니 코드를 인식, 리틀 엔디안 / 인식 빅 엔디안
다운 비트 필드를 지정합니다 (예 : 하나의 비트 플래그)
이 릴리스의 새로운 기능입니다 :
바이너리 데이터 구조를 인코딩이 지원됩니다.
이것은 파이썬의 경우, XML 및 C 구조체에서 인코딩을 포함한다.
사양은 이제 단순히 디코딩 / 인코딩 / 컴파일 프로그램 사양의 모든 파일을 전달하여 여러 개의 파일로 분할 할 수 있습니다.
0.5.1 버전의 새로운 기능 : 누락 된 참조 항목이있을 때
이 릴리스 올바른 항목을보고합니다.
그것은 알에서 실행할 때 마코가 예외를 컴파일 수정 (된 .pyc 파일을 무시합니다).
0.5.0 버전의 새로운 기능 : (약 다섯 배)
컴파일 속도 향상과 파이썬의 디코딩 속도 향상 (30 회까지).
컴파일 된 선택은 지금 '열거'과 '노동 조합'으로 표시됩니다.
표현식은 이제 직접 디코딩 옵션을 참조 할 선택 항목을 참조 할 수 있습니다.
':'숨겨 엔트리 힌트 새로운 '도움말'섹션을 포함하는 문서에 첨가 하였다.
때문에 표현에 그 값과 항목에서 모두 전달되는 항목은 수정되었습니다.
컴파일 된 사양의 기대 값과 리틀 엔디안 필드가 수정되었습니다.
0.4.1 버전의 새로운 기능 :
이 프로젝트는 (템플릿 포함) 달걀로 컴파일 할 수 있습니다.
생성 된 C는 C ++ 프로그램에서 사용할 수 있습니다 (예를 들어, 통근 C).
계란의 일부가 설치하는 'bdecode'와 'bcompile는'설치됩니다.
생성 된 C 언어 유형 이름 실행 일관성이다.
0.4.0 버전의 새로운 기능 :
이 릴리스 수 있습니다 일반적인 항목은 다른 이름을 부여합니다.
그것은 생성 된 C 코드의 가독성을 향상시킨다.
그것은 C 헤더 불필요한 데이터 구조를 포함하지 않을 것이다.
그것은 LGPL로 변경되었습니다.
설명서 업데이트, C 디코더에서 다양한 수정 및 MP3 사양에 대한 수정이 있습니다.
댓글을 찾을 수 없습니다