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

資源簡介

可將c語言編譯成masm32匯編語言,分為4個文件(sca.c,p.c,table.c,g.c,其中sca.c是掃描文件,生成符號流,p.c 是生成語法樹,table.c是生成各種變量的表,g.c是直接生成masm32匯編代碼),是c編譯器,想學編譯原理的可以看看,是將c語言編譯成masm32匯編,編譯好后可以用masm匯編器直接編譯成可執行語言。該編譯程序可以自舉,也就是自己編譯自己。當然僅僅3000多行代碼,支持絕大多數c語法,但是不支持swich語句,另外不支持float 類型。本打包含有例程,程序源代碼,以及masm32匯編器!想學習編譯原理跟masm32匯編的朋友可以參考看看!舉例說明,比如編譯example.c文件,直接在命令行里輸入g example.c就可以在屏幕顯示匯編后的結果,如果直接編譯成文件則在命令行輸入g example.c -file=example.asm,則生成example.asm匯編文件,如果要編譯成可執行文件則再輸入masm example則生成example.exe可執行文件!

資源截圖

代碼片段和文件信息

#include?
#include?

#define?SIZE?256
//#define?MAX(x?y)?(x)?>?(y)???(x)?:?(y)


void?PreBc(char?*Pint?mint?*bmBc)
{
????int?i;
????for?(i?=?0;?i?????????bmBc[i]?=?m;
????for?(i?=?0;?i?????????bmBc[P[i]]?=?m-1-i;
????for(i=0;i????????printf(“%d?“bmBc[P[i]]);
????printf(“\n“);
}


void?PreGs(char?*Pint?mint?*bmGs){
????
????int?ijk;
????int?n;
????for(n=m-1;n>=0;n--){
????????i=m-1;
????????while(i>0){
????????????j=0;
????????????k=i;
????????????while(j0?&&?P[m-1-j]==P[k-1]){
????????????????j++;
????????????????k--;
????????????}
????????????if(k==0)
????????????????break;
????????????if(j==n?&&?P[m-1-j]!=P[k-1])????
????????????????break;
????????????i--;
????????}
????????bmGs[m-1-n]=m-i;
????}????????
}


void?BM(char?*Tchar?*P){
????int?i?j?bmBc[SIZE]?bmGs[SIZE]flag;
????int?mnmax;
????m=strlen(P);
????n=strlen(T);
????PreBc(PmbmBc);
????PreGs(PmbmGs);
????j?=?0;
flag=0;
????while(j<=n-m){
????????i=m-1;
????????while(i?>=?0?&&?P[i]?==?T[i?+?j])
????????????i--;
????????if?(i?????????????printf(“position:%d\n“?j);
????????????j=j+1;
????????????flag=1;
????????}
????????else{
if(bmBc[T[i?+?j]]-?m?+?1?+?i>bmGs[i])max=bmBc[T[i?+?j]]-?m?+?1?+?i;
else?max=bmGs[i];
????????????j=j+max;
}
????}
????if(!flag)
????????printf(“No?find.\n“);
}

int?main(){

????char?*T=“abcbabcdaaaaabcdaccbcaabca“;
????char?P[100];
????gets(P);
????printf(“%s\n“T);
????BM(TP);
????return?0;



}



?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???????1582??2019-03-02?17:07??compiler\example\bm.c

?????文件???????4905??2019-02-14?15:03??compiler\example\bp.c

?????文件???????3252??2019-01-30?09:08??compiler\example\cal.c

?????文件???????1329??2019-02-03?16:27??compiler\example\filewordsort.c

?????文件???????1633??2019-02-05?11:07??compiler\example\find.c

?????文件?????????79??2019-02-06?10:37??compiler\example\hello.c

?????文件????????723??2019-02-01?16:36??compiler\example\loan.c

?????文件???????2533??2019-02-01?15:58??compiler\example\maze.c

?????文件???????1161??2019-02-01?15:59??compiler\example\mm.c

?????文件???????6885??2019-03-02?16:07??compiler\example\pe.c

?????文件????????793??2019-02-06?09:44??compiler\example\qsort.c

?????文件????????300??2019-01-29?09:41??compiler\example\read.c

?????文件????????109??2019-02-06?10:41??compiler\example\str.c

?????文件????????724??2019-02-01?15:21??compiler\example\sunday.c

?????文件???????1191??2019-02-01?15:55??compiler\example\t.c

?????文件????????123??2019-02-01?16:31??compiler\example\win.c

?????文件????????456??2019-03-01?17:06??compiler\example\yhl.c

?????文件????????590??2019-02-03?10:01??compiler\example\zz.c

?????文件?????177664??2019-05-31?11:22??compiler\g.exe

?????文件?????540672??2010-01-25?20:18??compiler\masm\dumppe.exe

?????文件?????252466??2017-10-09?14:22??compiler\masm\gdi32.lib

?????文件?????554484??2017-10-09?14:22??compiler\masm\kernel32.lib

?????文件?????462899??1998-03-19?14:28??compiler\masm\link.exe

?????文件???????9687??2001-07-22?03:31??compiler\masm\ml.err

?????文件?????372736??1999-03-29?15:45??compiler\masm\ml.exe

?????文件?????117520??1998-09-19?19:30??compiler\masm\msdis100.dll

?????文件?????164112??1998-03-19?23:50??compiler\masm\msdis109.dll

?????文件?????157456??1998-06-10?04:50??compiler\masm\mspdb50.dll

?????文件?????434706??2017-10-01?10:13??compiler\masm\msvcrt.lib

?????文件?????438134??2017-10-09?14:22??compiler\masm\user32.lib

............此處省略14個文件信息

評論

共有 條評論