亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? wordcompile.h

?? 一個Pascal子集語言的編譯器
?? H
?? 第 1 頁 / 共 5 頁
字號:
//WordCompile.h


//inputfile:  所給定的源文件 
//outputfile: words.txt,wordtable1.txt
//tempfile:   temp.txt

#ifndef WORDCOMPILE_H_
#define WORDCOMPILE_H_

#include <stdio.h>
#include <iostream>
#include <fstream>
#include <stdlib.h>
#include <string.h>
using namespace std;

/*****************************************************************************************
    詞法分析器
    
    作用:從所給的文件中依次讀取出字符,進行詞法分析,判斷所使用的詞是否拼寫正確,并建立起變量表。
    
    要求:1。將每個詞和符號都使用空格分開以便以后的語法分析 
          2。去除所有的注釋
          3。將定義的變量及其類型寫入到符號表中 
          4。查找出所有變量定義不合法的,或是重復定義的變量
          5。給出錯誤信息 
          6。輸出文件與輸入文件的每行要互相對應。 
          
          
          
          
    分工:此部分分成兩大部分:變量掃描,關鍵字掃描。 
    
          變量掃描要求:
          1。在定義過程中所定義到的標識符,需要用符號表記錄下來。并根據類型及名稱判斷是否聲明重復。
          2。對于一般過程中所使用到的標識符,需要與符號表進行對照,如果匹配則通過檢測。
          3。對于沒有通過檢測的變量要給出錯誤信息
          4。注釋部分要在此模塊中被去除掉          
  
    變量表:包括變量類型及名稱,類型定義如下
    
                                WORDTABLE                    
                         類型                         標識號
                         
                        變量                          id 
                        整數integer                   101 
                        浮點數real                    102
                        布爾值boolean                 103
                        整數數組                      211 
                        浮點數數組                    212
                        布爾值數組                    213

                        過程Procedure                 800
                        過程的參數                    811
                                                      812
                                                      813 

                        返回整數的函數                701 
                        返回浮點數的函數              702
                        返回布爾值的函數              703
                        函數參數                      711
                                                      712
                                                      713 
                        
                        
                        程序名                        900
                        程序參數                      910 

                       
                        
            關鍵字掃描要求:
            1。能查詢出各個關鍵字,并按照特定格式輸出,如"+"輸出為op 1。
            2。找到定義變量的關鍵字,并給出允許輸入變量標識符的特定狀態
               此類關鍵字包括program , procedure , function , var 
            3。關鍵字的編碼:作出以下編碼表:
                        關鍵字                        標識號
                        @program                        program
                        @begin                          begin
                        @end                            end
                        
                        @integer                        def 1
                        @real                           def 2
                        @boolean                        def 3
                        @function                       fundction
                        @procedure                      procedure
                        @var                            var 
                         
                        @if                             if
                        @then                           then
                        @else                           else
                        @while                          while
                        @do                             do
                        @read                           read
                        @write                          write
                        @array                          array
                        @of                             of
                        @record                         record
                        @or                             or
                        @and                            and
                        @not                            not 
                        @true                           true    
                        @false                          false
                        
                        number(數字)                   number
                        :                              :
                        :=                             =
                        ;                              ;
                        '                              '
                        "                              "
                        (                              (
                        )                              )
                        [                              [
                        ]                              ]
                        +                              op 1
                        -                              op 2
                        *                              op 3
                        /                              op 4
                        div                            op 5
                        mod                            op 6
                        
                        =                              relop 0
                        >                              relop 1
                        <                              relop 2
                        <=                             relop 3
                        >=                             relop 4
                        <>                             relop 5
                        .                              .
                        ,                              ,
                        (建議在文件尾部添加一個0,以便語法分析分析) 
                        
    
    狀態機的建立:
                                                                                                  (均有Line++) 
      a b c d e f g h i j k l m n o p q r s t u v w x y z 0-9 : = ( ) [ ] {  } + - * / > < . , 空格   回車         
 2000                                                                    9999                      
 9999                                                                       2000                   
 (program,procedure)
 2000                              2001                         ---------------------對照符號表---------------------
 2001   -------其他均轉至5000----     2002
 2002                            2003
 2003    2007   2004 
 2004                                 2005
 2005 2006
 2006                        8881      
 2007        2008
 2008      2009
 2009                                        2010
 2010                                 2011
 2011        8882 
                                                                                           
 (begin,boolean)
 2000  2012             
 2012       2013                2016                         ----------------對照符號表-------------
 2013            2014
 2014               2015   
 2015                         8888 
 2016                           2017
 2017                    2018
 2018        2019
 2019 2020
 2020                         8803
 
      a b c d e f g h i j k l m n o p q r s t u v w x y z 0-9 : = ( ) [ ] {  } + - * / > < . , 空格   回車         
(end)
 2000        2021
 2021                          2022
 2022      8888 
(integer)
 2000               2023
 2023                          2024
 2024                                     2025
 2025        2026
 2026            2027                                       ----------------對照符號表-------------
 2027        2028
 2028                                 8801
(real)
 2000                                 2029
 2029        2030
 2030 2031
 2031                     8802
(function)
 2000          2032
 2032                                        2033
 2033                         2034
 2034    2035
 2035                                     2036
 2036               2037
 2037                            2038
 2038                         8888
      a b c d e f g h i j k l m n o p q r s t u v w x y z 0-9 : = ( ) [ ] {  } + - * / > < . , 空格   回車         
(if)                  
 2000                2023
 2023          8888
(then)
 2000                                      2040
 2040              2041
 2041        2042
 2042                         8888                            ----------------對照符號表----------------
(else)
 2000        2021
 2021                     2043
 2043                                    2044
 2044        8888                            
(while)
 2000                                            2045
 2045             2046
 2046               2047
 2047                     2048
 2048        8888
(do)
 2000      2049
 2049                           8888
(read)
 2000                                 2029
 2029        2030
 2030 2031
 2031                     8888
(write)
 2000                                            2045
 2045                                 2050
 2050              2051
 2051                                    2152
 2152        8888
      a b c d e f g h i j k l m n o p q r s t u v w x y z 0-9 : = ( ) [ ] {  } + - * / > < . , 空格   回車         
(array)
 2000 2052
 2052                                  2053
 2053                                  2054
 2054 2055   
 2055                                                8888
(of)
 2000                            2056
 2056         8888
(record)
 2000                                 2029                      ----------------對照符號表----------------
 2029       2030
 2030    2057
 2057                            2058
 2058                                  2059
 2059     8888
      a b c d e f g h i j k l m n o p q r s t u v w x y z 0-9 : = ( ) [ ] {  } + - * / > < . , 空格   回車         
(div)
 2000   2049
 2049             2060
 2060                                   8888
(mod)
 2000                   2061
 2061                      2062
 2062     8888
(and)
 2000 2052
 2052                     2063
 2063   8888
(or)
 2000                      2056
 2056                            8888
(var)
 2000                                         2064
 2064 2065
 2065                                8800
(not)
 2000                         2066
 2066                           2067
 2067                                     8888
(true)
 2000                                     2040
 2040                                2068
 2068                                      2069
 2069        8888
(false) 
 2000         2032
 2032 2070                 
 2070                     2071
 2071                                  2072
 2072        8888   
 
      a b c d e ....y z   0-9    : = ; ' " ( ) [ ] {  } + - * / > < . , 空格   回車         
(numbers數字) 
 2000                    3000
 3000 -------錯誤------  3000    ---------------2000_輸出" number"-------------------
 3000                                                             3001
 3001 -------錯誤------  3001    ---------------2000_輸出" number"-------------------
 
(:)      
 2000                          4001
 4001  ----------------------(除"="外)2000_輸出" :"----------------------------------                               
(:=) 
 4001                            2000_輸出" =" 
   
(;)                                輸出" ;" 
(')                                  輸出" '" 
(")                                    輸出" "" 
(()                                     輸出" (" 
())                                       輸出" )" 
([)                                         輸出" [" 
(])                                           輸出" ]" 
(+)                                                輸出op 1
(-)                                                  輸出op 2

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品剧情在线观看| 欧美在线观看一二区| 亚洲综合丁香婷婷六月香| 久久众筹精品私拍模特| 精品人在线二区三区| 欧美成人精精品一区二区频| 欧美一区二区三区在线观看 | 香蕉加勒比综合久久| 一区二区三区在线免费| 亚洲一线二线三线视频| 午夜婷婷国产麻豆精品| 日韩精品视频网站| 久久国产精品72免费观看| 黄色成人免费在线| 国产福利91精品一区二区三区| 精一区二区三区| 粉嫩高潮美女一区二区三区| 成人性生交大片免费看在线播放| 成人av午夜影院| 91黄色小视频| 日韩一区二区三免费高清| 久久久久久电影| 亚洲视频一区在线| 欧美a级理论片| 成人亚洲精品久久久久软件| 91丨九色porny丨蝌蚪| 欧美偷拍一区二区| 久久亚洲综合色| 亚洲精品伦理在线| 亚洲第一激情av| 狠狠色狠狠色合久久伊人| 不卡的电影网站| 欧美一级视频精品观看| 日本一区二区免费在线| 亚洲一区二区三区四区在线| 美国精品在线观看| 色综合天天性综合| 欧美一区二区三区视频在线观看| 久久精品视频一区二区| 亚洲一级二级三级在线免费观看| 久久66热re国产| 欧美丝袜自拍制服另类| 久久久久久久综合日本| 一区二区三区在线免费播放 | 国产成人精品亚洲午夜麻豆| 91免费观看在线| 日韩免费一区二区三区在线播放| 日韩理论片一区二区| 国产综合久久久久久鬼色| 在线免费观看日本一区| 国产欧美一区二区三区在线老狼| 午夜精品久久久久久久久| 成人蜜臀av电影| 欧美不卡激情三级在线观看| 一区二区欧美国产| 成人黄色免费短视频| 精品欧美乱码久久久久久| 亚洲免费观看在线视频| 国产99精品国产| 日韩精品一区二区三区swag| 香蕉成人伊视频在线观看| 99国内精品久久| 国产精品卡一卡二| 国产精品18久久久久久久久| 91精品欧美一区二区三区综合在| 亚洲人快播电影网| 成人黄色电影在线| 亚洲国产精品99久久久久久久久| 日本成人中文字幕| 欧美精品乱码久久久久久| 亚洲男人天堂av| 色综合色综合色综合色综合色综合| 久久久久久久久久久久久久久99| 蜜桃久久久久久| 日韩欧美一二三四区| 日韩电影一二三区| 日韩欧美一级片| 国内欧美视频一区二区| 久久午夜老司机| 国产精品中文字幕日韩精品| 2020国产精品| 国产成人综合在线| 国产片一区二区| jizzjizzjizz欧美| 亚洲一区二区三区在线看| 欧美在线观看视频一区二区三区| 亚洲一区二区三区精品在线| 欧美视频日韩视频在线观看| 亚洲第一久久影院| 日韩欧美二区三区| 国产成人免费视频| 亚洲激情在线播放| 欧美日本乱大交xxxxx| 热久久免费视频| 久久亚洲私人国产精品va媚药| 精品一区二区免费| 国产精品剧情在线亚洲| 在线观看免费一区| 麻豆国产欧美一区二区三区| 久久久国产精华| 91丨九色丨黑人外教| 日韩影院精彩在线| 久久久久久夜精品精品免费| 不卡av在线免费观看| 亚洲18影院在线观看| 亚洲精品一区在线观看| 99精品视频中文字幕| 日韩影院精彩在线| 中文字幕中文在线不卡住| 欧美日韩成人在线| 国产夫妻精品视频| 亚洲国产成人tv| 国产农村妇女精品| 欧美日韩国产高清一区二区三区 | 欧美不卡一区二区三区| av中文字幕一区| 日本不卡一二三区黄网| 欧美激情一区二区三区| 欧美视频一区二区三区在线观看| 精品中文字幕一区二区小辣椒| 中文字幕亚洲视频| 精品久久国产字幕高潮| 色综合中文字幕国产 | www亚洲一区| 欧美网站一区二区| 不卡一区二区中文字幕| 日韩二区在线观看| 亚洲精品水蜜桃| 国产日韩影视精品| 在线成人av网站| 91香蕉视频在线| 成人午夜视频福利| 经典三级在线一区| 日韩电影一区二区三区| 一区二区三区视频在线观看| 国产性做久久久久久| 日韩一区二区在线免费观看| 色综合久久中文综合久久牛| 国产精品一区免费视频| 青青青伊人色综合久久| 亚洲精品久久嫩草网站秘色| 国产香蕉久久精品综合网| 日韩一级片网站| 91麻豆精品国产91久久久久| 在线免费观看一区| 在线看国产日韩| 在线视频一区二区三| 色婷婷久久一区二区三区麻豆| 国产成人在线电影| 国产传媒日韩欧美成人| 国产乱理伦片在线观看夜一区| 久久99精品久久久久婷婷| 蜜臀av一级做a爰片久久| 免费人成黄页网站在线一区二区| 日韩中文字幕91| 美女视频黄 久久| 久久99精品视频| 国产精品77777竹菊影视小说| 狠狠色丁香婷婷综合| 国产揄拍国内精品对白| 韩国精品一区二区| 国产一区二区在线观看免费| 极品少妇xxxx精品少妇| 国产一区三区三区| 岛国一区二区在线观看| 成人av电影在线| 91美女片黄在线| 欧美视频精品在线观看| 欧美群妇大交群中文字幕| 在线电影国产精品| 日韩欧美成人一区| 欧美国产丝袜视频| 亚洲视频免费观看| 亚洲国产毛片aaaaa无费看| 午夜精品成人在线视频| 丁香啪啪综合成人亚洲小说| 国产精品1区二区.| 91日韩一区二区三区| 欧美另类久久久品| 久久综合网色—综合色88| 国产欧美一区二区精品性色| 国产精品福利一区| 日韩二区在线观看| 国产成人免费高清| 欧美揉bbbbb揉bbbbb| 久久亚洲精华国产精华液| 亚洲欧美日韩国产手机在线| 强制捆绑调教一区二区| 国产成人三级在线观看| 欧美日韩视频在线一区二区| 欧美精品一区二区三区高清aⅴ| 亚洲图片欧美激情| 麻豆成人在线观看| 91麻豆免费观看| 26uuu国产一区二区三区| 亚洲欧美在线aaa| 免费观看在线综合| 一本久久综合亚洲鲁鲁五月天| 日韩精品一区二区三区四区视频| 国产精品久线在线观看|