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

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? pl0.pas

?? pl0的幾個(gè)小程序 老師給的 很簡(jiǎn)單 共享下
?? PAS
?? 第 1 頁(yè) / 共 3 頁(yè)
字號(hào):
program pl0(fa,fa1,fa2);

label 99;

const norw=13;
      txmax=100;
      nmax=14;
      al=10;
      amax=2047;
      levmax=3;
      cxmax=200;

type  symbol=(nul,ident, number, plus, minus, times, slash, oddsym,eql,neq,
              lss,leq,gtr,geq,lparen,rparen,comma,semicolon,period,becomes,
              beginsym, endsym,ifsym,thensym,whilesym, writesym, readsym,
              dosym, callsym,constsym, varsym,procsym);
      alfa=packed array[1..al] of char;
      oobject=(constant,variable,procedur);
      symset=set of symbol;
      fct=(lit,opr,lod, sto, cal,int, jmp,jpc);
      instruction=packed record
                           f:fct;
                           l:0..levmax;
                           a:0..amax
                         end;
var fa:text;
    fa1,fa2:text;
    listswitch:boolean;
    ch:char;
    sym:symbol;
    id:alfa;
    num:integer;
    cc:integer;
    ll:integer;
    kk:integer;
    cx:integer;
    line:array[1..81] of char;
    a:alfa;
    code: array[0..cxmax] of instruction;
    word: array[1..norw] of alfa;
    wsym: array[1..norw] of symbol;
    ssym: array[' '..'^'] of symbol;
    mnemonic: array[fct] of packed array[1..5] of char;
    declbegsys,statbegsys, facbegsys: symset;
    table: array[0..txmax] of record
                             name: alfa;
                                 case kind: oobject of
                                   constant:(val:integer);
                                   variable,procedur:(level,adr,size:integer)
                                 end;
    fin,fout:text;
    fname,fnamefa1:string;
    err:integer;

procedure error(n:integer);
  begin
    writeln('****',' ':cc-1,'!',n:2);
    writeln(fa1,'****',' ':cc-1,'!',n:2);
    err:=err+1
  end; (* of error*)

procedure getsym;
  var i,j,k: integer;
  procedure getch;
    begin
      if cc=ll
         then
           begin
             if eof(fin)
               then
                 begin
                   write('program incomplete');
 (*                  goto 99                     *)
                 end;
               ll:=0;
               cc:=0;
               write(cx:4,' ');    { generate instruction address}
               write(fa1,cx:4,' ');
               while not eoln(fin) do
                 begin
                   ll:=ll+1;
                   read(fin,ch);
                   write (ch);
                   write(fa1,ch);
                   line[ll]:=ch
                 end;
               writeln;
               ll:=ll+1;
               readln(fin);line[ll]:=' ';
               writeln(fa1);
             end;
           cc:=cc+1;
           ch:=line[cc]
         end; (*getch*)

         begin (*getsym*)
           while ch=' ' do getch;
           if ch in ['a'..'z']
             then
               begin
                 k:=0;
                repeat
                   if k<al
                     then
                       begin
                         k:=k+1;
                         a[k]:=ch
                       end;
                     getch
                until not (ch in  ['a'..'z','0'..'9']);
                   if k>=kk
                     then kk:=k
                     else
                      repeat
                        a[kk]:=' ';
                        kk:=kk-1
                      until kk=k;
                     id:=a;
                     i:=1;
                     j:=norw;
                     repeat
                       k:=(i+j) div 2;
                       if id<= word[k]
                         then j:=k-1;
                         if id>=word[k]
                         then i:=k+1
                     until i>j;
                     if i-1>j
                       then sym:=wsym[k]
                       else sym:=ident
                     end
                     else
                       if ch in ['0'..'9']
                         then
                           begin (*number*)
                             k:=0;
                             num:=0;
                             sym:=number;
                             repeat
                               num:=10*num+(ord(ch)-ord('0'));
                               k:=k+1;
                               getch
                             until not (ch in ['0'..'9']);
                             if k>nmax
                               then error(30)
                             end
                             else
                              if ch=':'
                               then
                                begin
                                 getch;
                                 if ch='='
                                  then
                                   begin
                                    sym:=becomes;
                                    getch
                                   end
                                   else sym:=nul;
                                  end
                                  else
                                  if ch='<'
                                  then
                                   begin
                                    getch;
                                    if ch='='
                                     then
                                      begin
                                       sym:=leq;
                                       getch
                                      end
                                      else sym:=lss
                                     end
                                    else
                                    if ch='>'
                                     then
                                      begin
                                       getch;
                                       if ch='='
                                        then
                                         begin
                                          sym:=geq;
                                          getch
                                         end
                                        else sym:=gtr
                                       end
                                      else
                                       begin
                                       sym:=ssym[ch];   (* !!! *)
                                       getch
                                       end
                                  end;(*getsym*)

                                  procedure gen(x:fct;y,z:integer);
                                   begin
                                    if cx>cxmax
                                     then
                                      begin
                                       write ('program too long');
                      (*                 goto 99                      *)
                                      end;
                                     with code[cx] do
                                      begin
                                       f:=x;
                                       l:=y;
                                       a:=z
                                      end;
                                     cx:=cx+1
                                 end;(*gen*)

                              procedure test(s1,s2:symset; n:integer);
                                begin
                                 if not (sym in s1)
                                  then
                                   begin
                                    error(n);
                                    s1:=s1+s2;
                                     while not (sym in s1 ) do getsym
                                  end
                                end; (* test*)

              procedure block(lev,tx:integer;fsys:symset);
               var dx: integer;
                   tx0:integer;
                   cx0:integer;
               procedure enter(k:oobject);
                 begin
                   tx:=tx+1;
                   with table[tx] do
                    begin
                      name:=id;
                      kind:=k;
                      case k of
                        constant: begin
                          if num>amax
                           then
                            begin
                              error(31);
                              num:=0;
                            end;
                           val:=num
                          end;
                        variable:
                         begin
                          level:=lev;
                          adr:=dx;
                          dx:=dx+1;
                         end;
                        procedur:level:=lev
                      end
                    end
                   end;(*enter*)
              function position(id:alfa):integer;
                var i:integer;
                  begin
                    table[0].name:=id;
                    i:=tx;
                    while table[i].name<>id do i:=i-1;
                    position:=i
                  end(*position*);

           procedure constdeclaration;
             begin
               if sym=ident
                 then
                   begin
                     getsym;
                     if sym in [eql,becomes]
                       then
                         begin
                           if sym=becomes
                             then error(1);
                           getsym;
                           if sym=number
                             then
                               begin
                                 enter(constant);
                                 getsym
                               end
                             else error(2)
                           end
                         else error(3)
                       end
                     else error(4)
                   end;(*constdeclaration*)

                 procedure vardeclaration;
                   begin
                     if sym=ident
                       then
                         begin
                           enter (variable);

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品福利一区二区三区 | 国产suv一区二区三区88区| 国产精品视频观看| 欧美久久久久久久久| 国产成人8x视频一区二区| 日韩中文字幕不卡| 国产日产欧美精品一区二区三区| 欧美日韩国产综合草草| 成人综合激情网| 免费欧美在线视频| 亚洲精品乱码久久久久久黑人 | 亚洲欧洲成人精品av97| 欧美草草影院在线视频| 欧美性一区二区| 懂色av中文一区二区三区| 三级不卡在线观看| 亚洲美女免费视频| 国产亚洲欧美日韩在线一区| 欧美亚洲日本一区| av不卡免费电影| 国产suv精品一区二区6| 老司机精品视频一区二区三区| 成人av免费在线| 免费成人深夜小野草| 亚洲bt欧美bt精品777| 亚洲欧美日韩久久| 国产精品视频在线看| 欧美变态tickle挠乳网站| 欧美日韩精品福利| 91国产成人在线| 91免费看视频| 91在线视频免费观看| 国产传媒欧美日韩成人| 狠狠色狠狠色综合系列| 青椒成人免费视频| 天涯成人国产亚洲精品一区av| 亚洲狼人国产精品| 国产精品盗摄一区二区三区| 欧美激情一区二区三区不卡| 国产日产欧美一区二区视频| 久久久久99精品国产片| 精品国产伦一区二区三区观看方式| 欧美一级黄色片| 911精品国产一区二区在线| 欧美日韩专区在线| 欧美日韩精品一区二区三区蜜桃| 欧美亚洲综合另类| 91福利在线免费观看| 日本电影亚洲天堂一区| 色成人在线视频| 在线视频一区二区三区| 在线观看一区二区精品视频| 欧美在线免费观看视频| 在线观看成人免费视频| 欧美性猛交xxxxxx富婆| 69精品人人人人| 日韩精品资源二区在线| 精品国内二区三区| 久久精品亚洲麻豆av一区二区| 国产亚洲欧美日韩在线一区| 中文字幕视频一区| 一区二区三区中文字幕| 香蕉成人啪国产精品视频综合网| 麻豆免费精品视频| 国产剧情一区二区| 播五月开心婷婷综合| 色狠狠综合天天综合综合| 欧美少妇性性性| 欧美成人伊人久久综合网| xnxx国产精品| 亚洲色图在线播放| 午夜精品福利一区二区三区av | 成人av网在线| 欧美日韩一区视频| 精品av综合导航| 亚洲欧洲美洲综合色网| 亚洲一级片在线观看| 黄色精品一二区| 91一区二区在线| 日韩午夜中文字幕| 国产女人18毛片水真多成人如厕| 亚洲激情第一区| 久久99精品久久只有精品| eeuss鲁片一区二区三区| 欧美日韩国产高清一区| 久久精品免费在线观看| 亚洲精品一卡二卡| 麻豆成人在线观看| 99久久er热在这里只有精品66| 777色狠狠一区二区三区| 国产日本欧洲亚洲| 午夜av区久久| 成人v精品蜜桃久久一区| 欧美日韩亚洲高清一区二区| 中文字幕第一区二区| 亚洲电影一级片| 欧美电影免费观看高清完整版在| 中文字幕一区二区三区在线观看 | 国产另类ts人妖一区二区| 欧美综合亚洲图片综合区| 欧美精品一区二区三区四区| 一区二区三区91| 国产成人精品免费视频网站| 337p亚洲精品色噜噜噜| 亚洲人成网站在线| 国产一区二区影院| 欧美日韩国产综合一区二区| 国产精品久99| 国内精品国产成人国产三级粉色 | 国产一区二区三区在线观看精品 | 色成年激情久久综合| 久久网这里都是精品| 亚洲成人精品一区二区| 成人av在线资源网| 欧美精品一区二区三区高清aⅴ| 亚洲一区二区高清| 成人高清视频免费观看| 精品日韩av一区二区| 亚洲五码中文字幕| 91在线视频播放地址| 国产欧美一区二区三区网站| 九一久久久久久| 91精品视频网| 天天综合天天综合色| 色哦色哦哦色天天综合| 中文字幕一区在线| 国产成人在线看| 精品国产麻豆免费人成网站| 麻豆久久久久久| 制服视频三区第一页精品| 亚洲国产日韩a在线播放| 色婷婷狠狠综合| 亚洲精选视频在线| av中文字幕一区| 国产精品国产三级国产| 盗摄精品av一区二区三区| 久久九九久久九九| 国产一区二区三区在线看麻豆| 日韩欧美专区在线| 欧美私人免费视频| 亚洲激情图片一区| 在线一区二区观看| 亚洲最色的网站| 欧美日本一区二区三区四区| 午夜一区二区三区视频| 欧美性生活大片视频| 亚洲成人免费看| 91精品国产全国免费观看| 天天综合日日夜夜精品| 日韩一二三区不卡| 久久99国产精品久久| 精品国产伦一区二区三区观看方式 | 久久精品无码一区二区三区| 国产成人精品影视| 国产精品国产自产拍高清av | 亚洲视频电影在线| 一本到一区二区三区| 亚洲午夜羞羞片| 91精品福利在线一区二区三区| 另类人妖一区二区av| 久久久久成人黄色影片| jiyouzz国产精品久久| 亚洲精品伦理在线| 这里是久久伊人| 国产一区二区三区美女| 视频一区二区三区入口| 五月天激情综合| 4438x亚洲最大成人网| 久久黄色级2电影| 久久久99久久精品欧美| 成人丝袜高跟foot| 日韩毛片在线免费观看| 色婷婷久久久久swag精品| 日韩激情一二三区| 久久亚洲一区二区三区四区| www.激情成人| 午夜久久久影院| 久久久久久久久97黄色工厂| 2021国产精品久久精品| 97超碰欧美中文字幕| 天堂成人免费av电影一区| 欧美精品一区二区在线观看| 色综合色综合色综合色综合色综合| 午夜不卡在线视频| 久久久777精品电影网影网 | 日本道色综合久久| 免费看黄色91| 亚洲视频在线观看一区| 欧美一区二区三区免费视频| 成人动漫一区二区在线| 日韩国产在线观看| 中文字幕电影一区| 欧美日韩在线播放三区| 国产精品一区二区在线观看网站| 一区二区三区四区在线播放| 久久夜色精品国产噜噜av| 欧洲视频一区二区| 粉嫩嫩av羞羞动漫久久久| 亚洲一二三四区不卡| 国产人成亚洲第一网站在线播放 |