zoukankan      html  css  js  c++  java
  • 编译原理-词法分析01-扫描程序

    编译原理-词法分析01-扫描程序

    扫描程序scanner和词法分析程序lexical analysis是同一个意思。

    正则表达式,串格式的识别算法。

    有穷自动机,对由正则表达式给出的串的识别算法。

    0.术语

    记号token

    • 代表一个最小的信息单元。如if,[,],=,my,age等。

    • 一般分为三类:关键字,特殊符号,标识符ID&NUM。

    关键字keyword

    如if,while,do。

    标识符identifier

    用户定义的串,比如函数名,变量等。

    特殊符号special symbol

    比如运算符号,+,-,*,/,[,]。

    1.扫描程序

    TokenType

    记号类型定义

    
    typedef enum
    
    { IF,THEN,ELSE,PLUS,MINUS,NUM,ID...} TokenType;
    
    

    TokenRecord

    记号记录

    
    typedef struct{
    
        TokenType tokenval;
    
        union{
    
          char * stringval;
    
          int numberval;
    
        }
    
    }TokenRecord;
    
    
  • 相关阅读:
    十年经验手把手教你选购翡翠
    眼睛视力
    玻璃
    前端小技巧
    儿童牙齿矫正
    MySQL的JDBC驱动源码解析
    书海杂谈
    电子设备
    股市国家队
    影视
  • 原文地址:https://www.cnblogs.com/pengzhen/p/5835509.html
Copyright © 2011-2022 走看看