91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 8KB
    文件類型: .java
    金幣: 1
    下載: 0 次
    發布日期: 2021-01-08
  • 語言: Java
  • 標簽: 編譯原理??java實現??

資源簡介

1.根據狀態轉換圖直接編程 編寫一個詞法分析程序,它從左到右逐個字符的對源程序進行掃描,產生一個個的單詞的二元式,形成二元式(記號)流文件輸出。在此,詞法分析程序作為單獨的一遍,如下圖所示。 具體任務有: (1)組織源程序的輸入 (2)識別單詞的類別并記錄類別編號和值,形成二元式輸出,得到單詞流文件 (3)刪除注釋、空格和無用符號 (4)發現并定位詞法錯誤,需要輸出錯誤的位置在源程序中的第幾行。將錯誤信息輸出到屏幕上。 (5)對于普通標識符和常量,分別建立標識符表和常量表(使用線性表存儲),當遇到一個標識符或常量時,查找標識符表或常量表,若存在,則返回位置,否則返回0并且填寫符號

資源截圖

代碼片段和文件信息

import?java.io.*;
import?java.util.*;
public?class?cffx?{
String?sourceFile;//源文件名
String?sentence;//程序語句
String?word=““;//分析得到的字符串
String?keyWord[]={“int““char““float““void““const““for““if““else““then““while““switch““break““begin““end“};
String?id[]=new?String[100];
int?idLength=0;//記錄標志符表中存放的標志符的個數
String?num[]=new?String[100];
int?numLength=0;//記錄常數表中存放的常數的個數
int?line=0;//當前讀到的行數
public?boolean?isDigit(char?ch){
if((ch>=‘0‘)&&(ch<=‘9‘))
return?true;
else
return?false;
}
public?boolean?isLetter(char?ch){
if(((ch>=‘A‘)&&(ch<=‘Z‘))||((ch>=‘a‘)&&(ch<=‘z‘)))
return?true;
else
return?false;
}
public?void?isKeyword(String?str){
int?i=0;
for(;i if(str.equals(keyWord[i]))//是關鍵字
{
System

評論

共有 條評論