Project

General

Profile

Actions

Язык описания шаблонов тестовых программ » History » Revision 6

« Previous | Revision 6/89 (diff) | Next »
Alexander Kamkin, 09/25/2011 01:08 PM


Язык M4TEST описания шаблонов тестовых программ

Язык M4TEST предназначен для компактного и переиспользуемого описания тестов для микропроцессоров и других программируемых устройств. Язык представляет собой смесь базового языка ассемблера (АЯ) и управляющего языка высокого уровня (УЯ). УЯ можно рассматривать как препроцессор, поскольку результатом выполнения его конструкций является текст на АЯ. Кроме того, никто не запрещает пользоваться стандартными препроцессорами (например, препроцессором языка программирования С или макропроцессора m4).

Шаблон - это последовательность операторов.

Template ::= Statement*

Операторы делятся на два класса: реальные операторы (операторы, которые порождают код) и мета операторы (операторы, которые используются для управления генерацией кода).

Statement ::= RealStatement | MetaStatement
InstructionStatement ::= (Instruction | InstructionClass) (@ Situation)?

Формат инструкции зависит от ассемблера. Обычно он имеет следующий вид:

ConcreteInstruction ::= Identifier (Parameter (, Parameter)+)?
InstructionClass ::= Identifier (Parameter (, Parameter)+)?
MetaStatement ::= MetaVariableDeclaration |
                  MetaVariableAssignment  |
                  MetaIfStatement         |
                  MetaForStatement        |
                  MetaWhileStatement      |
                  ...

Updated by Alexander Kamkin over 13 years ago · 89 revisions