概念

http://www.juweixin.com/t/detail/148383

语法到底是什么?有人说语法是语言里的法律、法规;有人说语法是框架结构;还有人说语法就是对前人语言习惯的一种总结。以上这些说法都对,但是又不全对。

In linguistics, grammar is the set of structural rules governing the composition of clauses, phrases, and words in any given natural language. The term refers also to the study of such rules, and this field includes morphology, syntax, and phonology, often complemented by phonetics, semantics, and pragmatics.

在语言学中,语法是句子、短语和词汇在任何给定的自然语言中的结构规则组成。这个领域也包括这些规则的研究,这一领域包括形态学、语构、语音,常常辅以语音学,语义学和语用学。

我的理解:

1、 词法, 定义组成语言的单词, 是语言中最小单元。

2、 语法, 将单子组织成有含义的短语和句子的规则。

3、 语义, 结合上下文,可以推导出语句的真实含义。

语法糖

http://www.cnblogs.com/zhangyongjian/p/3628766.html

语法糖(Syntactic sugar),是由Peter J. Landin(和图灵一样的天才人物,是他最先发现了Lambda演算,由此而创立了函数式编程)创造的一个词语,它意指那些没有给计算机语言添加新功能,而只是对人类来说更“甜蜜”的语法。语法糖往往给程序员提供了更实用的编码方式,有益于更好的编码风格,更易读。不过其并没有给语言添加什么新东西。 举个例子:在C语言里用a[i]表示*(a+i),用a[i][j]表示*(*(a+i)+j),看来语法糖不是“现代语言”才有啊,连我们的老大哥C也有,而且这种写法简洁明了,也更好懂了。 实际上从面向过程到面向对象也是一种语法糖啊,C语言可以通过它的指针、类型转换,结构实现面向对象的编程风格,但是C++更进一步的推广了这种风格,更好用了

词法分析、语法分析、语义分析

http://blog.csdn.net/nic_r/article/details/7835908

词法分析(Lexical analysis或Scanning)和词法分析程序(Lexical analyzer或Scanner)
  词法分析阶段是编译过程的第一个阶段。这个阶段的任务是从左到右一个字符一个字符地读入源程序,即对构成源程序的字符流进行扫描然后根据构词规则识别单词(也称单词符号或符号)。词法分析程序实现这个任务。词法分析程序可以使用lex等工具自动生成。

语法分析(Syntax analysis或Parsing)和语法分析程序(Parser)
  语法分析是编译过程的一个逻辑阶段。语法分析的任务是在词法分析的基础上将单词序列组合成各类语法短语,如“程序”,“语句”,“表达式”等等.语法分析程序判断源程序在结构上是否正确.源程序的结构由上下文无关文法描述.

语义分析(Syntax analysis)
  语义分析是编译过程的一个逻辑阶段. 语义分析的任务是对结构上正确的源程序进行上下文有关性质的审查, 进行类型审查.例如一个C程序片断:
  int arr[2],b;
  b = arr * 10;
  源程序的结构是正确的.
  语义分析将审查类型并报告错误:不能在表达式中使用一个数组变量,赋值语句的右端和左端的类型不匹配.

词法分析实现:

http://www.cnblogs.com/yanlingyin/archive/2012/04/17/2451717.html

正则表达式的词法分析:

http://www.cnblogs.com/naturemickey/p/3667571.html

词法、语法与语义相关知识相关推荐

  1. 词法语法语义_阅读法语的开源

    词法语法语义 说英语的人有很多很棒的开源资源,很容易忘记,并不是每个人都可以用英语进行交流. 因此,我一直在寻找西班牙语和法语的出色开源资源,以便在需要时可以推荐它们. 我最近看过的一个是LinuxF ...

  2. 视频压缩算法的相关知识

    视频压缩算法的相关知识 MPEG-1 MPEG 视频压缩编码后包括三种元素:I帧(I-frames).P帧(P-frames)和B帧(B-frames).在MPEG编码的过程中,部分视频帧序列压缩成为 ...

  3. 命题逻辑中的语法与语义,可靠性与完备性

    命题逻辑中的语法与语义,可靠性与完备性 1 导言 初学数理逻辑的时候,一个非常重要的点就是对可靠性与完备性概念的理解,这两个概念极为重要,却又经常让人觉得 难以理解.        说它重要是因为它涉 ...

  4. 北大青鸟培训第一天:HTML初级代码介绍和相关知识(持续更新)

    代码解释 <!DOCTYPE html> <html lang="en"><head><meta charset="UTF-8& ...

  5. HTML入门基础教程相关知识

    HTML入门基础教程 html是什么,什么是html通俗解答: html是hypertext markup language的缩写,即超文本标记语言.html是用于创建可从一个平台移植到另一平台的超文 ...

  6. JVM-HotSpot虚拟机-即时编译器、编译优化等相关知识

    @author Kode @date:2018年6月28日11:02 第五期:JVM-HotSpot虚拟机-即时编译器.编译优化等相关知识. 这一部分怎么理解呢?我觉得应该找个主线把它串起来. 估计很 ...

  7. 达内html5是什么,Web前端工程师应该知道的HTML5相关知识有哪些

    今天小编要跟大家分享的文章是关于Web前端工程师应该知道的HTML5相关知识有哪些?随着互联网技术的快速发展,人们对互联网的使用越来越大,对于界面和用户体验的要求越来越高.因此Web前端越来越火,前端 ...

  8. shell的相关知识(变量、脚本定义)

    一.shell的相关知识: 1.对于shell编程语言大体分为:机器语言.汇编语言.高级语言 2.shell变量类型:事先确定数据的存储格式和长度 shell变量分为:字符型.数值型 数值型又分为:整 ...

  9. 后端技术:消息队列MQ/JMS/Kafka相关知识介绍

    ?今天给大家分享消息队列MQ/JMS/Kafka相关知识介绍 1.消息队列介绍 首先举个收快递的栗子,传统的收快递,快递小哥把我们的快递送到我们的手里.他需要什么条件嗯? 快递小哥有时间送, 我们有时 ...

最新文章

  1. 用VS2005打开方案出现“此安装不支持该项目类型”
  2. Sicily1798. Alice and Bob[策略问题]
  3. 笔记-计算机网络基础-网络存储技术
  4. RAID原理分析总结
  5. PAT1055 集体照 (25 分)【3/6通过】
  6. 【Linux】使用du、df 和 sort 命令快速找出Linux系统中的大文件
  7. usb4java android,USB audio on Android platform
  8. python 把list中的所有元素串起来变为字符串
  9. 存储端显示主机链路降级_链路优化、产品升级,腾讯广告让汽车营销更轻松
  10. 2021-06-26图层的概念
  11. Java语言的发展史
  12. 利用python在word文档中查找关键字(支持多个文档和多个关键字)
  13. ArcGIS之定义投影
  14. WOE编码和IV信息量
  15. cacti监控部署——网络流量监控
  16. java数组的四种拷贝方式
  17. r语言是高级编程语言_R编程语言介绍
  18. 《被讨厌的勇气》整理
  19. 华为发布:30岁以下员工仅占28% 你信吗?
  20. [BX]、loop、inc、dec指令

热门文章

  1. .Net内存管理、垃圾回收
  2. Android内存泄漏总结
  3. Eclipse 搭建Android开发环境(整理)
  4. TensorFlow模型实现:UNet模型
  5. 详解Bitmap之ARGB_8888/RGB_565/ALPHA_8/ARGB_4444
  6. [PTA]L2-001 紧急救援 (25 分)
  7. 关于Struts2的通配方法、转发重定向
  8. map端join和reduce端join的区别
  9. MVC5 数据注解和验证
  10. IE haslayout的理解与bug修复