Menu

data-definition-language

Extended Backus-Naur-Form (JPWS variant)

X Y      = X followed by Y
(X Y)    = X grouped with Y
X | Y    = X or Y
[X]      = X or empty
{X}      = a possibly empty sequence of X objects
X:y      = X repeated for y times
--       = comment to end of line

We use 2 kinds of literals

'abc' = string literal; the characters a, b, c are placed with their byte codes in ACSII (0..127) in the target
0x01 = integer literal; commonly used hexadecimal notation for integers in various lengths. 0x01 is integer 1 for 1 byte, 0x0001 for two bytes etc. If not mentioned otherwise, Big-Endian sequence of bytes is assumed.


Related

Wiki: binary-data-catalogue