Z80 ASM BNF structure… am I on the right track?
I'm trying to learn BNF and attempting to assemble some Z80 ASM code. Since I'm new to both fields, my question is, am I even on the right track? I am trying to write the format of Z80 ASM as EBNF so that I can then figure out where to go from there to create machine code from the source. At the moment I have the following: Assignment = Identifier, ":" ; Instruction = Opcode, [ Operand ], [ Operand ] ; Operand = Identifier | Something* ; Something* = "(" , Identifier, ")" ; Identifier = Alpha, { Numeric | Alpha } ; Opcode = Alpha, Alpha ; Int = [ "-" ], Numeric, { Numeric } ; Alpha = "A" | "B"