Closed hangingman closed 3 years ago
ref #32
$ cat src/bnfc/test.txt DB 0x01, 0x02
DB 0x02 # comment
DB 0x03 ; comment
DB "hello"
DB WORD 3*3:0x30
- ファイル ```bash ./build/src/nask_parse --scan ./src/bnfc/test.txt test.img Parse Successful! [Abstract Syntax] (Prog [(MnemonicStmt [OpcodesDB] [(MnemoArg [(ImmExp [(HexFactor "0x01")])]), (MnemoArg [(ImmExp [(HexFactor "0x02")])])]), (MnemonicStmt [OpcodesDB] [(MnemoArg [(ImmExp [(HexFactor "0x02")])])]), (MnemonicStmt [OpcodesDB] [(MnemoArg [(ImmExp [(HexFactor "0x03")])])]), (MnemonicStmt [OpcodesDB] [(MnemoArg [(ImmExp [(StringFactor "hello")])])]), (MnemonicStmt [OpcodesDB] [(MnemoArg [(RangeExp [WordDataType] (MulExp (ImmExp [(NumberFactor 3)]) (ImmExp [(NumberFactor 3)])) (ImmExp [(HexFactor "0x30")]))])])])
$ cat ./src/bnfc/test.txt | ./build/src/nask_parse --scan test.img
Parse Successful!
[Abstract Syntax] (Prog [(MnemonicStmt [OpcodesDB] [(MnemoArg [(ImmExp [(HexFactor "0x01")])]), (MnemoArg [(ImmExp [(HexFactor "0x02")])])]), (MnemonicStmt [OpcodesDB] [(MnemoArg [(ImmExp [(HexFactor "0x02")])])]), (MnemonicStmt [OpcodesDB] [(MnemoArg [(ImmExp [(HexFactor "0x03")])])]), (MnemonicStmt [OpcodesDB] [(MnemoArg [(ImmExp [(StringFactor "hello")])])]), (MnemonicStmt [OpcodesDB] [(MnemoArg [(RangeExp [WordDataType] (MulExp (ImmExp [(NumberFactor 3)]) (ImmExp [(NumberFactor 3)])) (ImmExp [(HexFactor "0x30")]))])])])
ref #32
確認
DB 0x02 # comment
DB 0x03 ; comment
DB "hello"
DB WORD 3*3:0x30
Parse Successful!
[Abstract Syntax] (Prog [(MnemonicStmt [OpcodesDB] [(MnemoArg [(ImmExp [(HexFactor "0x01")])]), (MnemoArg [(ImmExp [(HexFactor "0x02")])])]), (MnemonicStmt [OpcodesDB] [(MnemoArg [(ImmExp [(HexFactor "0x02")])])]), (MnemonicStmt [OpcodesDB] [(MnemoArg [(ImmExp [(HexFactor "0x03")])])]), (MnemonicStmt [OpcodesDB] [(MnemoArg [(ImmExp [(StringFactor "hello")])])]), (MnemonicStmt [OpcodesDB] [(MnemoArg [(RangeExp [WordDataType] (MulExp (ImmExp [(NumberFactor 3)]) (ImmExp [(NumberFactor 3)])) (ImmExp [(HexFactor "0x30")]))])])])