2 u011283912 u011283912 于 2016.02.11 17:15 提问

BNF范式设计问题,向大家请教

大家,过年好;
考虑到自身需求,需要自定义一种操作语言; 对于语言设计查阅了好多资料; 问下大家:我已经定义了指令集,那么写出对应BNF范式的难度有多大呢? 设计完BNF范式后,是手写还是利用已知的工具进行词法、语法、语义分析呢?

1个回答

caozhy
caozhy   Ds   Rxr 2016.02.11 20:59

不知道你说的“指令集”是什么玩意。是指你编程语言中的关键字么?那基本来说,这和BNF无关,你还没有设计语法规则呢。你的语法规则越复杂,BNF范式就越复杂。
至于语法词法分析,既可以用工具,也可以手写,但是从实用的角度来说,几乎所有主流的编程语言的编译器,都是手工实现的。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
编译技术,从BNF范式到文法识别简介
今日漫谈的是编译技术,作为计算机科学中的皇后,一只是编程中最为关键的技术之一,但由于太过繁杂,往往不被一般开发者重视。但其实,它是计算机代码优美结构的基石,了解编译技术,往往能让你成为更加优秀的程序员。
BNF范式学习
BNF 规定是推导规则(产生式)的集合,写为: ::= 这里的 符号> 是非终结符,而表达式由一个符号序列,或用指示选择的竖杠'|' 分隔的多个符号序列构成,每个符号序列整体都是左端的符号的一种可能的替代。从未在左端出现的符号叫做终结符。 基本原理       BNF类似一种数学游戏:从一个符号开始(叫做起始标志,实例中常用S表示),然后给出替换前面符号的规则。BNF语法定
C语言BNF范式
C89,bnf范式
BNF范式 如何用C++实现自动推导
BNF范式ATTACK::= ATTACK_NAME { SIGNATURES  MATCH                                DESCRIPTION }ATTACK_NAME::= SIGNATURES::= SIGNATURE  SIGNATURES | εSIGNATURE::= IP_SIGNATURE | DIR | GET_SIGNATURE | OPT_S
语法规范:BNF与ABNF 巴斯克范式
语法规范:BNF与ABNF 巴斯克范式 BNF        巴科斯范式(BNF: Backus-Naur Form 的缩写)是由 John Backus 和 Peter Naur 首先引入的用来描述计算机语言语法的符号集。现在,几乎每一位新编程语言书籍的作者都使用巴科斯范式来定义编程语言的语法规则。    在BNF中,双引号中的字("word")代表着这些字符本身。而double_quot
C语言的BNF范式表示
bison 的规则中,对文法的描述,使用的是BNF范式,这是一种上下文无关文法。 用BNF来描述C语言,比自然语言简练多了,当然,逻辑上会有点复杂,不过平时可以研究研究。 以下代码来自 http://www.cs.man.ac.uk/~pjj/bnf/c_syntax.bnf
巴科斯-诺尔(BNF范式)范式
BNF是“Backus Naur Form”的缩写。John Backus和Peter Naur首次引入一种形式化符号来描述给定语言的语法(最早用于描述ALGOL 60 编程语言,参见[Naur60])。确切地说,早在UNESCO(联合国教科文组织)关于ALGOL 58的会议上提出的一篇报告中,Backus就引入了大部分BNF符号。虽然没有什么人读过这篇报告,但是在Peter Naur读这篇报告时,他发现Backus对ALGOL 58的解释方式和他的解释方式有一些不同之处,这使他感到很惊奇。首次设计ALGO
什么是BNF EBNF 巴科斯范式及其扩展 BNF & Augmented BNF
什么是BNF范式,什么又是EBNF范式? 巴科斯范式及其扩展 BNF & Augmented BNF                 什么是巴科斯范式?        巴科斯范式(BNF: Backus-Naur Form 的缩写)是由 John Backus 和 Peter Naur 首先引入的用来描述计算机语言语法的符号集。   现在,几乎每一位新编程语言书籍的作者都使用巴科
什么是BNF范式,什么又是EBNF范式? http://blog.csdn.net/designlife/article/details/3206543
什么是BNF范式,什么又是EBNF范式? 巴科斯范式及其扩展 BNF & Augmented BNF                 什么是巴科斯范式?        巴科斯范式(BNF: Backus-Naur Form 的缩写)是由 John Backus 和 Peter Naur 首先引入的用来描述计算机语言语法的符号集。   现在,几乎每一位新编程语言书籍的作者都使用巴科
the science of programming BNF范式的优先级
the science of programming 的三点 0.如何用BNF范式写优先级语法 1.关于一个数组的数学解析:数组就是一个函数,index->value的映射 2.BNF范式与正则表达式是不同的,之前一直搞混乱了。正则表达式是用来描述词法,BNF范式是用来描述语法的。 --------------------------------------------------------------------