Сейчас на форуме: tyns777, zombi-vadim (+4 невидимых)

 eXeL@B —› Программирование —› НФБН Асемблера
Посл.ответ Сообщение

Ранг: 108.7 (ветеран)
Активность: 0.040
Статус: Участник

Создано: 02 ноября 2007 12:41
· Личное сообщение · #1

Кто нибудь встречал НФБН (Нормальная форма Бэкуса-Науэра) для асма? Хотя существование такого в структуризированной форме сомнительно =\ , но хоть что то похожее есть?



Ранг: 54.0 (постоянный)
Активность: 0.020
Статус: Участник

Создано: 19 ноября 2007 00:42
· Личное сообщение · #2

а чо тут сомнительного? там же всё просто, чтото тоипа такого:


ident ::= letter ( letter | char )* .
command ::= operation [ operand ("," operand )* ] .
operation ::= "mov" | "not" | "xor" ... .
operand ::= register | memory | immediate.
register ::= reg8 | reg16 | reg32 .
reg8 ::= "AL" | "CL" | "DL" | ... .
memory ::= sizespec [segspec] "[" memdef "]" .
sizespec ::= "byte" | "word" | "dword".
segspec ::= ("cs" | "ds" | "es" | ... ) ":".
...
memdef ::= idxbase | immediate .
idxbase ::= ( scale "*" reg32 "+" reg32 ) | (reg32 ["+" reg32]).
и т.п.


типа такого, да. (...) - группировка, (...)* - 0 или более раз, [...] - 0 или 1 раз. вроде все примитивно. пляски с бубном будут когда это все надо будет в опкоды переводить, а потом линковать. но и там ничего сверхсложного нет.


 eXeL@B —› Программирование —› НФБН Асемблера
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати