• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    一種實(shí)現(xiàn)編程語言相互轉(zhuǎn)換的方法①

    2014-12-24 15:01:41費(fèi)立國顧衛(wèi)華蔣和超
    科技創(chuàng)新導(dǎo)報 2014年30期
    關(guān)鍵詞:轉(zhuǎn)換編程語言

    費(fèi)立國+顧衛(wèi)華+蔣和超

    摘 要:伴隨著計算機(jī)產(chǎn)業(yè)的快速發(fā)展,成本和效率成為下一步前進(jìn)的制約因素。當(dāng)前多數(shù)計算機(jī)語言之間受到平臺的束縛而不能相互通信,或依賴于操作系統(tǒng),或依賴于硬件,若要求平臺遷移或數(shù)據(jù)遷移,不僅給編程人員帶來很大的不便,更降低了開發(fā)的效率,使生產(chǎn)受到限制。XML語言由于本身的優(yōu)勢,能夠表示程序的結(jié)構(gòu)信息,所以考慮用XML語言表示程序結(jié)構(gòu)來實(shí)現(xiàn)各種編程語言之間的轉(zhuǎn)換是可行的。

    關(guān)鍵詞:編程語言 ?JavaCC ? 轉(zhuǎn)換 ? XML ?旅行者模式

    中圖分類號:TP313 文獻(xiàn)標(biāo)識碼:A 文章編號:1674-098X(2014)10(c)-0044-02

    該文主要完成以下工作:選定某種編程語言相對應(yīng)的.jj和.jjt文件,利用JavaCC工具建立該語言的編譯器和抽象語法樹,并依據(jù)它對抽語法樹各節(jié)點(diǎn)類型添加語義動作和接受方法,建立抽象旅行者和具體旅行者,建立可以完成轉(zhuǎn)換的驅(qū)動程序,編譯后得到可執(zhí)行的轉(zhuǎn)換器。

    1 應(yīng)用主要技術(shù)及原理簡介

    (1) JavaCC簡介。

    JavaCC英文全稱是(Java Compiler Compiler)是在擴(kuò)展了YACC的基礎(chǔ)上,使用Java語言開發(fā)的詞法語法分析器。

    JavaCC主要有以下功能:

    ①JavaCC用來處理語法文件(jj)生成解析代碼。

    ②JJTree用來處理jjt文件,生成樹節(jié)點(diǎn)代碼和jj文件。

    ③JJDoc根據(jù)jj文件,生成文本本件(Html)。

    (2)AST的基本結(jié)構(gòu)。

    抽象語法樹(abstract syntax tree或者縮寫為AST),或者語法樹(syntax tree),是對編程語言源程序的語法結(jié)構(gòu)的一種樹形表示形式。語法樹上的每一個節(jié)點(diǎn)都代表了一種結(jié)構(gòu)。每個節(jié)點(diǎn)代表了一個非終終結(jié)符。每個具體的單詞(由此法分析得到的)都在一個葉子節(jié)點(diǎn)上。根據(jù)抽象語法樹的定義及規(guī)則,可以得到這個語句對應(yīng)的語法樹。

    (3)XML語言簡介。

    XML語言的全稱是Extensible Markup Language,中文為可擴(kuò)展標(biāo)記語言,它允許開發(fā)人員根據(jù)自己的需求定義標(biāo)簽,可以將標(biāo)簽和內(nèi)容有效的分離。XML更加看重于數(shù)據(jù)的存儲形式和傳輸方式,且具有簡單易用、可擴(kuò)展性強(qiáng)、數(shù)據(jù)與其組織形式相互分離等優(yōu)勢。

    (4)旅行者模式簡介。

    旅行者模式是作者根據(jù)本次研究經(jīng)驗(yàn)結(jié)合大量的實(shí)際操作過程提出的一種新的行為型設(shè)計模式,這種模式可以對某個對象中各個節(jié)點(diǎn)元素進(jìn)行不同的操作,可以在不改變各節(jié)點(diǎn)類的基礎(chǔ)上定義作用于這些元素的操作。

    旅行者模式的特點(diǎn):

    旅行者模式把程序?qū)ο髴?yīng)用的數(shù)據(jù)結(jié)構(gòu)與作用在這種結(jié)構(gòu)之上的操作相互分離開,使得操作不依賴于結(jié)構(gòu)。

    旅行者模式更加適用于結(jié)構(gòu)相對固定但算法不穩(wěn)定的問題的解決。

    旅行者模式的優(yōu)勢在于新添操作方便。

    旅行者模式的基本原理:

    得到元語言的AST后,進(jìn)一步對語法樹中的每個節(jié)點(diǎn)生成一個抽象類(節(jié)點(diǎn)是在元語言的.jjt文件中定義的),接下來定義一個旅行者接口,實(shí)現(xiàn)這個接口的不同旅行者可以根據(jù)自己的需求對語法樹中的各個節(jié)點(diǎn)進(jìn)行操作,從而獲取所需的信息。一般抽象旅行者類都要有若干個具體旅行者子類來繼承,在所有的旅行者中都會有對應(yīng)的所有節(jié)點(diǎn)的方法,這樣選擇了某個旅行者,然后在該旅行者中找到具體的節(jié)點(diǎn)進(jìn)行操作,就可以完成提取所需信息的任務(wù)。

    2 從元語言到XML語言的轉(zhuǎn)換

    該文以C語言為例向讀者介紹如何將C語言轉(zhuǎn)換成XML,至于其他編程語言到XML的轉(zhuǎn)換可按照此法仿照完成。

    2.1 總體分析

    (1)定義C語言語法的.jjt文件,通過JavaCC工具生成C語言對應(yīng)的抽象語法樹和C語言的編譯器。(2)添加相應(yīng)的節(jié)點(diǎn)標(biāo)記和一定的規(guī)范。(3)通過旅行者模式對其進(jìn)行遍歷和提取所需的信息。

    此過程所對應(yīng)的流程圖如圖1所示。

    2.2 C語言到AST的實(shí)現(xiàn)

    首先獲得相應(yīng)語言的.jjt文件。執(zhí)行.jjt文件會生成七個文件。我們對其中的simple1.java進(jìn)行編譯就可以獲得Simple1.jj所定義的語法的編譯器。如果我們對C語言的.jj文件進(jìn)行JavaCC操作就可以得到一個名為CParser.java的文件,對其進(jìn)行編譯就得到了C語言的編譯器。

    2.3 旅行者模式設(shè)計

    (1)設(shè)計旅行者模式。

    訪問各個節(jié)點(diǎn)是通過旅行者實(shí)現(xiàn)的。添加旅行者的目的主要是為了從抽象語法樹到XML文件的轉(zhuǎn)換。為了便于以后的擴(kuò)展和深入,需要設(shè)計抽象旅行者接口和實(shí)現(xiàn)該接口的旅行者適配器。為了完成不同的操作,還需要許多具體的旅行者角色。

    由于C語言的AST是由JavaCC工具自動生成的,C語言的.jjt文件定義了該語法樹的層次結(jié)構(gòu),故不需設(shè)計樹的組織形式,只要設(shè)計旅行者模式,設(shè)計旅行者訪問語法樹的各個節(jié)點(diǎn)。

    旅行者模式的設(shè)計中的角色作用見表1。

    (2)創(chuàng)建旅行者。

    針對AST中的各個節(jié)點(diǎn)來建立相對應(yīng)的旅行者。本實(shí)例是將所有節(jié)點(diǎn)對應(yīng)的訪問者的travel方法在一個ToXmlTraveller類中實(shí)現(xiàn),ToXmlTraveller類繼承了旅行者適配器,這樣就可以根據(jù)用戶的需求(需要旅行者訪問哪些節(jié)點(diǎn))來對其travel方法編寫代碼,從而實(shí)現(xiàn)相應(yīng)的功能。

    下面給出在旅行者中對ASTInitializer類型節(jié)點(diǎn)的travel方法,其他的不同節(jié)點(diǎn)的travel方法的編寫與此類似。

    public Object travel(ASTInitializer node, Object data){endprint

    node.childrenAccept(traveller, element);

    return super.tarvel(node,data);

    }

    當(dāng)旅行者訪問某一結(jié)點(diǎn)的時候,就要有接受者來響應(yīng)相應(yīng)的動作。接收者是根據(jù)整個程序在運(yùn)行時來匹配相應(yīng)的旅行者的,每個節(jié)點(diǎn)的接受方法類似。

    下面給出在旅行者中ASTInitializer類型節(jié)點(diǎn)對應(yīng)的接受方法:

    public Object jjtAccept(CParser Traveller traveller,Object data){

    return traveller.travel(this, data);

    }

    (3)創(chuàng)建轉(zhuǎn)換器。

    至此,已經(jīng)建立了C語言轉(zhuǎn)為XML文檔的基礎(chǔ)架構(gòu),下面還需要一個驅(qū)動程序來觸發(fā)整個程序的運(yùn)行。下面是部分代碼:

    public static void main(String[] args){

    ...

    //解析器開始語法分析,生成待測程序的AST,并獲得TranslationUnit類型的根節(jié)點(diǎn)對象 ? ? ? ? ? ? ? ? ? ? TranslationUnit ast = cparser.TranslationUnit();

    //生成traveller對象,調(diào)用travel方法訪問所有AST節(jié)點(diǎn)

    ToXmlTraveller.traveller = new ToXmlTravellor();

    //根節(jié)點(diǎn)接受旅行者

    ast.jjtAccept(traveller,null);

    ...//輸出轉(zhuǎn)換完成的信息}

    驅(qū)動程序會根據(jù)filename這個源文件名開始生成AST文件,然后根據(jù)在各個節(jié)點(diǎn)中的travel所定義的方法來執(zhí)行相應(yīng)的動作,由jjtAccept來響應(yīng)動作,從而完成規(guī)定的功能。生成相應(yīng)的XML文件。

    3 實(shí)例分析

    (1)實(shí)例執(zhí)行。

    下面用一個實(shí)例來說明如何將C語言程序轉(zhuǎn)為XML文檔。以源程序Test.c為例,演示生成XML文件的過程。

    Test.c程序代碼如圖2所示:

    #include

    int main(void)

    {

    printf(“helloworld!”);

    return 0;

    }

    生成的XML文檔如圖2所示,文件轉(zhuǎn)換的速度是很快。用戶可以將源文件中想要的信息全部提出,只需在相應(yīng)的節(jié)點(diǎn)處添加travel即可。生成的XML文檔結(jié)構(gòu)清晰,在對其進(jìn)行處理的時候可以定義其中的節(jié)點(diǎn)信息,從而為下一步將其轉(zhuǎn)換為其他編程語言打下了基礎(chǔ)。

    4 從XML轉(zhuǎn)換為其他語言

    由于該文重點(diǎn)在于將編程語言轉(zhuǎn)換為XML文件,所以在此只對于XML轉(zhuǎn)換為其他編程語言作簡要介紹,有這種需求的讀者可以按照此思路進(jìn)行深入研究。

    XML文檔轉(zhuǎn)為其他編程語言,是將文檔按照匹配的XSLT(Extensible Stylesheet Language Transformation,擴(kuò)展樣式表轉(zhuǎn)換語言)轉(zhuǎn)化為特定語言。如圖3所示。

    5 結(jié)語

    該研究完成了編程語言之間相互轉(zhuǎn)換工作的前一部分,就是從某一編程語言到XML語言的轉(zhuǎn)換。其中是以C語言為例,從獲取.jj文件到最終生成XML文檔做了詳細(xì)的說明,其中也給出了每個過程的具體實(shí)現(xiàn)方法,至于其他語言轉(zhuǎn)換成XML語言可以參照C語言的方法實(shí)現(xiàn);而對于從XML文檔到編程語言的實(shí)現(xiàn)該文只是給出了大體的思路,并沒有具體的研究過程以及實(shí)現(xiàn)方式,有需要這可按本思路研究。

    參考文獻(xiàn)

    [1] Yves Savourel,著.XML國際化和本地化開發(fā)[M].李二勇,譯.北京:機(jī)械工業(yè)出版社,2002.

    [2] 王萬山.吉林大學(xué)碩士學(xué)術(shù)論文.從 Java語言到XML語言的轉(zhuǎn)換[D].吉林大學(xué)碩士學(xué)術(shù)論文.

    [3] https://javacc.dev.java.net/[EB/OL].endprint

    node.childrenAccept(traveller, element);

    return super.tarvel(node,data);

    }

    當(dāng)旅行者訪問某一結(jié)點(diǎn)的時候,就要有接受者來響應(yīng)相應(yīng)的動作。接收者是根據(jù)整個程序在運(yùn)行時來匹配相應(yīng)的旅行者的,每個節(jié)點(diǎn)的接受方法類似。

    下面給出在旅行者中ASTInitializer類型節(jié)點(diǎn)對應(yīng)的接受方法:

    public Object jjtAccept(CParser Traveller traveller,Object data){

    return traveller.travel(this, data);

    }

    (3)創(chuàng)建轉(zhuǎn)換器。

    至此,已經(jīng)建立了C語言轉(zhuǎn)為XML文檔的基礎(chǔ)架構(gòu),下面還需要一個驅(qū)動程序來觸發(fā)整個程序的運(yùn)行。下面是部分代碼:

    public static void main(String[] args){

    ...

    //解析器開始語法分析,生成待測程序的AST,并獲得TranslationUnit類型的根節(jié)點(diǎn)對象 ? ? ? ? ? ? ? ? ? ? TranslationUnit ast = cparser.TranslationUnit();

    //生成traveller對象,調(diào)用travel方法訪問所有AST節(jié)點(diǎn)

    ToXmlTraveller.traveller = new ToXmlTravellor();

    //根節(jié)點(diǎn)接受旅行者

    ast.jjtAccept(traveller,null);

    ...//輸出轉(zhuǎn)換完成的信息}

    驅(qū)動程序會根據(jù)filename這個源文件名開始生成AST文件,然后根據(jù)在各個節(jié)點(diǎn)中的travel所定義的方法來執(zhí)行相應(yīng)的動作,由jjtAccept來響應(yīng)動作,從而完成規(guī)定的功能。生成相應(yīng)的XML文件。

    3 實(shí)例分析

    (1)實(shí)例執(zhí)行。

    下面用一個實(shí)例來說明如何將C語言程序轉(zhuǎn)為XML文檔。以源程序Test.c為例,演示生成XML文件的過程。

    Test.c程序代碼如圖2所示:

    #include

    int main(void)

    {

    printf(“helloworld!”);

    return 0;

    }

    生成的XML文檔如圖2所示,文件轉(zhuǎn)換的速度是很快。用戶可以將源文件中想要的信息全部提出,只需在相應(yīng)的節(jié)點(diǎn)處添加travel即可。生成的XML文檔結(jié)構(gòu)清晰,在對其進(jìn)行處理的時候可以定義其中的節(jié)點(diǎn)信息,從而為下一步將其轉(zhuǎn)換為其他編程語言打下了基礎(chǔ)。

    4 從XML轉(zhuǎn)換為其他語言

    由于該文重點(diǎn)在于將編程語言轉(zhuǎn)換為XML文件,所以在此只對于XML轉(zhuǎn)換為其他編程語言作簡要介紹,有這種需求的讀者可以按照此思路進(jìn)行深入研究。

    XML文檔轉(zhuǎn)為其他編程語言,是將文檔按照匹配的XSLT(Extensible Stylesheet Language Transformation,擴(kuò)展樣式表轉(zhuǎn)換語言)轉(zhuǎn)化為特定語言。如圖3所示。

    5 結(jié)語

    該研究完成了編程語言之間相互轉(zhuǎn)換工作的前一部分,就是從某一編程語言到XML語言的轉(zhuǎn)換。其中是以C語言為例,從獲取.jj文件到最終生成XML文檔做了詳細(xì)的說明,其中也給出了每個過程的具體實(shí)現(xiàn)方法,至于其他語言轉(zhuǎn)換成XML語言可以參照C語言的方法實(shí)現(xiàn);而對于從XML文檔到編程語言的實(shí)現(xiàn)該文只是給出了大體的思路,并沒有具體的研究過程以及實(shí)現(xiàn)方式,有需要這可按本思路研究。

    參考文獻(xiàn)

    [1] Yves Savourel,著.XML國際化和本地化開發(fā)[M].李二勇,譯.北京:機(jī)械工業(yè)出版社,2002.

    [2] 王萬山.吉林大學(xué)碩士學(xué)術(shù)論文.從 Java語言到XML語言的轉(zhuǎn)換[D].吉林大學(xué)碩士學(xué)術(shù)論文.

    [3] https://javacc.dev.java.net/[EB/OL].endprint

    node.childrenAccept(traveller, element);

    return super.tarvel(node,data);

    }

    當(dāng)旅行者訪問某一結(jié)點(diǎn)的時候,就要有接受者來響應(yīng)相應(yīng)的動作。接收者是根據(jù)整個程序在運(yùn)行時來匹配相應(yīng)的旅行者的,每個節(jié)點(diǎn)的接受方法類似。

    下面給出在旅行者中ASTInitializer類型節(jié)點(diǎn)對應(yīng)的接受方法:

    public Object jjtAccept(CParser Traveller traveller,Object data){

    return traveller.travel(this, data);

    }

    (3)創(chuàng)建轉(zhuǎn)換器。

    至此,已經(jīng)建立了C語言轉(zhuǎn)為XML文檔的基礎(chǔ)架構(gòu),下面還需要一個驅(qū)動程序來觸發(fā)整個程序的運(yùn)行。下面是部分代碼:

    public static void main(String[] args){

    ...

    //解析器開始語法分析,生成待測程序的AST,并獲得TranslationUnit類型的根節(jié)點(diǎn)對象 ? ? ? ? ? ? ? ? ? ? TranslationUnit ast = cparser.TranslationUnit();

    //生成traveller對象,調(diào)用travel方法訪問所有AST節(jié)點(diǎn)

    ToXmlTraveller.traveller = new ToXmlTravellor();

    //根節(jié)點(diǎn)接受旅行者

    ast.jjtAccept(traveller,null);

    ...//輸出轉(zhuǎn)換完成的信息}

    驅(qū)動程序會根據(jù)filename這個源文件名開始生成AST文件,然后根據(jù)在各個節(jié)點(diǎn)中的travel所定義的方法來執(zhí)行相應(yīng)的動作,由jjtAccept來響應(yīng)動作,從而完成規(guī)定的功能。生成相應(yīng)的XML文件。

    3 實(shí)例分析

    (1)實(shí)例執(zhí)行。

    下面用一個實(shí)例來說明如何將C語言程序轉(zhuǎn)為XML文檔。以源程序Test.c為例,演示生成XML文件的過程。

    Test.c程序代碼如圖2所示:

    #include

    int main(void)

    {

    printf(“helloworld!”);

    return 0;

    }

    生成的XML文檔如圖2所示,文件轉(zhuǎn)換的速度是很快。用戶可以將源文件中想要的信息全部提出,只需在相應(yīng)的節(jié)點(diǎn)處添加travel即可。生成的XML文檔結(jié)構(gòu)清晰,在對其進(jìn)行處理的時候可以定義其中的節(jié)點(diǎn)信息,從而為下一步將其轉(zhuǎn)換為其他編程語言打下了基礎(chǔ)。

    4 從XML轉(zhuǎn)換為其他語言

    由于該文重點(diǎn)在于將編程語言轉(zhuǎn)換為XML文件,所以在此只對于XML轉(zhuǎn)換為其他編程語言作簡要介紹,有這種需求的讀者可以按照此思路進(jìn)行深入研究。

    XML文檔轉(zhuǎn)為其他編程語言,是將文檔按照匹配的XSLT(Extensible Stylesheet Language Transformation,擴(kuò)展樣式表轉(zhuǎn)換語言)轉(zhuǎn)化為特定語言。如圖3所示。

    5 結(jié)語

    該研究完成了編程語言之間相互轉(zhuǎn)換工作的前一部分,就是從某一編程語言到XML語言的轉(zhuǎn)換。其中是以C語言為例,從獲取.jj文件到最終生成XML文檔做了詳細(xì)的說明,其中也給出了每個過程的具體實(shí)現(xiàn)方法,至于其他語言轉(zhuǎn)換成XML語言可以參照C語言的方法實(shí)現(xiàn);而對于從XML文檔到編程語言的實(shí)現(xiàn)該文只是給出了大體的思路,并沒有具體的研究過程以及實(shí)現(xiàn)方式,有需要這可按本思路研究。

    參考文獻(xiàn)

    [1] Yves Savourel,著.XML國際化和本地化開發(fā)[M].李二勇,譯.北京:機(jī)械工業(yè)出版社,2002.

    [2] 王萬山.吉林大學(xué)碩士學(xué)術(shù)論文.從 Java語言到XML語言的轉(zhuǎn)換[D].吉林大學(xué)碩士學(xué)術(shù)論文.

    [3] https://javacc.dev.java.net/[EB/OL].endprint

    猜你喜歡
    轉(zhuǎn)換編程語言
    壓力-體積轉(zhuǎn)換在CFC編程語言中的實(shí)現(xiàn)解析
    Java編程語言的特點(diǎn)與應(yīng)用
    淺談不同編程語言對計算機(jī)軟件開發(fā)的影響
    電子制作(2018年1期)2018-04-04 01:48:36
    大數(shù)據(jù)時代檔案管理模式的轉(zhuǎn)換與創(chuàng)新
    資治文摘(2016年7期)2016-11-23 02:29:01
    論英漢語翻譯中語內(nèi)翻譯向語際翻譯的轉(zhuǎn)換
    淺談平面圖與立體圖的思維培養(yǎng)
    人間(2016年28期)2016-11-10 00:10:48
    高中化學(xué)教學(xué)中研究性學(xué)習(xí)的應(yīng)用探究
    成才之路(2016年25期)2016-10-08 10:51:36
    面向?qū)ο骔eb開發(fā)編程語言的的評估方法
    av天堂在线播放| 精品欧美一区二区三区在线| 亚洲五月色婷婷综合| 亚洲精品国产一区二区精华液| 成人免费观看视频高清| 久热爱精品视频在线9| 欧美精品亚洲一区二区| 97精品久久久久久久久久精品| 在线观看舔阴道视频| √禁漫天堂资源中文www| 18在线观看网站| 十八禁网站网址无遮挡| 他把我摸到了高潮在线观看 | 嫩草影视91久久| 99九九在线精品视频| 亚洲欧美清纯卡通| av天堂久久9| 国产日韩一区二区三区精品不卡| 欧美成狂野欧美在线观看| 一区在线观看完整版| 女人精品久久久久毛片| 69精品国产乱码久久久| 国产一区二区在线观看av| 久久久久国产一级毛片高清牌| 婷婷丁香在线五月| 91大片在线观看| 少妇猛男粗大的猛烈进出视频| 在线 av 中文字幕| 999久久久精品免费观看国产| 天天影视国产精品| 美女中出高潮动态图| a级片在线免费高清观看视频| 国产日韩欧美在线精品| 青春草视频在线免费观看| 女人被躁到高潮嗷嗷叫费观| 纯流量卡能插随身wifi吗| 欧美日韩亚洲高清精品| 成人国产一区最新在线观看| 国产又爽黄色视频| 一本一本久久a久久精品综合妖精| 一个人免费在线观看的高清视频 | 首页视频小说图片口味搜索| 亚洲激情五月婷婷啪啪| 欧美 日韩 精品 国产| 自线自在国产av| 成年动漫av网址| 国产91精品成人一区二区三区 | videos熟女内射| 国产欧美日韩一区二区三 | 国产成人一区二区三区免费视频网站| 可以免费在线观看a视频的电影网站| 9色porny在线观看| 99热国产这里只有精品6| 亚洲欧洲精品一区二区精品久久久| 精品国内亚洲2022精品成人 | 91精品三级在线观看| 国产91精品成人一区二区三区 | 欧美激情 高清一区二区三区| 亚洲精品国产精品久久久不卡| 久久人妻福利社区极品人妻图片| 国产精品久久久久久人妻精品电影 | 国产在线一区二区三区精| 日韩欧美免费精品| a级片在线免费高清观看视频| 男女床上黄色一级片免费看| 精品国产一区二区三区久久久樱花| 纵有疾风起免费观看全集完整版| 热99久久久久精品小说推荐| 欧美日本中文国产一区发布| 午夜福利在线免费观看网站| 精品免费久久久久久久清纯 | 搡老岳熟女国产| 亚洲精品国产精品久久久不卡| 亚洲精品久久久久久婷婷小说| e午夜精品久久久久久久| 久久精品亚洲av国产电影网| 国产三级黄色录像| 美女高潮到喷水免费观看| 欧美日韩亚洲综合一区二区三区_| 两人在一起打扑克的视频| 国产亚洲精品一区二区www | 成人国产一区最新在线观看| 国产成人精品久久二区二区91| 人妻久久中文字幕网| 亚洲午夜精品一区,二区,三区| 日韩欧美一区视频在线观看| 如日韩欧美国产精品一区二区三区| 高潮久久久久久久久久久不卡| 999精品在线视频| 黄色视频不卡| 免费不卡黄色视频| 色老头精品视频在线观看| 一区福利在线观看| 制服诱惑二区| 精品高清国产在线一区| 美女中出高潮动态图| 国产精品 国内视频| 亚洲精品国产色婷婷电影| 国产日韩欧美视频二区| 欧美日韩中文字幕国产精品一区二区三区 | 免费看十八禁软件| 国产99久久九九免费精品| 三上悠亚av全集在线观看| 90打野战视频偷拍视频| 欧美日韩亚洲国产一区二区在线观看 | 男人操女人黄网站| 中文字幕av电影在线播放| 欧美+亚洲+日韩+国产| 亚洲性夜色夜夜综合| 一本色道久久久久久精品综合| 欧美精品啪啪一区二区三区 | 18禁裸乳无遮挡动漫免费视频| 热99国产精品久久久久久7| 午夜影院在线不卡| www.av在线官网国产| 老熟妇仑乱视频hdxx| 天天躁日日躁夜夜躁夜夜| av免费在线观看网站| 欧美日韩亚洲高清精品| 国产主播在线观看一区二区| 国产一区二区三区在线臀色熟女 | h视频一区二区三区| 亚洲精品一二三| 精品视频人人做人人爽| 亚洲av日韩精品久久久久久密| 中文欧美无线码| 熟女少妇亚洲综合色aaa.| 日韩 亚洲 欧美在线| 亚洲精品一二三| 成年人黄色毛片网站| 精品一区在线观看国产| 日日摸夜夜添夜夜添小说| 黑丝袜美女国产一区| 亚洲一码二码三码区别大吗| 久久性视频一级片| 午夜成年电影在线免费观看| 又黄又粗又硬又大视频| 欧美+亚洲+日韩+国产| 中文字幕人妻丝袜一区二区| 亚洲精品日韩在线中文字幕| 2018国产大陆天天弄谢| 亚洲成人手机| 精品国产一区二区三区四区第35| 大香蕉久久成人网| 国产在视频线精品| 人人妻人人爽人人添夜夜欢视频| 亚洲第一欧美日韩一区二区三区 | 美女国产高潮福利片在线看| 国产欧美日韩精品亚洲av| 亚洲伊人久久精品综合| 亚洲精品成人av观看孕妇| 日本黄色日本黄色录像| 亚洲综合色网址| 午夜两性在线视频| 国产有黄有色有爽视频| 黑人欧美特级aaaaaa片| 国产日韩欧美在线精品| 桃红色精品国产亚洲av| 无限看片的www在线观看| 两个人免费观看高清视频| tocl精华| 久久精品亚洲熟妇少妇任你| 国产在线免费精品| www.熟女人妻精品国产| 三上悠亚av全集在线观看| 性色av乱码一区二区三区2| 亚洲欧洲精品一区二区精品久久久| 国产高清视频在线播放一区 | 日韩一区二区三区影片| 99国产综合亚洲精品| 黑人猛操日本美女一级片| 亚洲精品国产区一区二| 狠狠狠狠99中文字幕| 两个人看的免费小视频| 午夜影院在线不卡| 中文字幕人妻熟女乱码| 午夜激情av网站| 亚洲精品美女久久av网站| 亚洲成国产人片在线观看| 狠狠狠狠99中文字幕| 亚洲黑人精品在线| 国产男女内射视频| 欧美 亚洲 国产 日韩一| 一个人免费看片子| 国产男女超爽视频在线观看| 日本撒尿小便嘘嘘汇集6| 在线观看免费高清a一片| 亚洲欧美一区二区三区黑人| 国产精品 国内视频| 午夜免费鲁丝| av在线app专区| 久久女婷五月综合色啪小说| 久久久国产成人免费| 国产成人免费无遮挡视频| 日本五十路高清| 天堂中文最新版在线下载| 黑人猛操日本美女一级片| 热re99久久精品国产66热6| 久久久水蜜桃国产精品网| 国产成人av教育| 国产成+人综合+亚洲专区| 国产在线观看jvid| 满18在线观看网站| 免费久久久久久久精品成人欧美视频| 9色porny在线观看| 亚洲全国av大片| 色94色欧美一区二区| 精品欧美一区二区三区在线| 一二三四在线观看免费中文在| 两个人免费观看高清视频| 十八禁网站网址无遮挡| 久久这里只有精品19| 国精品久久久久久国模美| 少妇粗大呻吟视频| 99精品欧美一区二区三区四区| 亚洲国产av新网站| 老司机影院成人| 80岁老熟妇乱子伦牲交| 欧美精品一区二区免费开放| 黄色怎么调成土黄色| 女人被躁到高潮嗷嗷叫费观| 午夜福利在线免费观看网站| 成年女人毛片免费观看观看9 | 99re6热这里在线精品视频| 一区二区三区精品91| 91老司机精品| 亚洲中文字幕日韩| 老汉色av国产亚洲站长工具| 99热国产这里只有精品6| 超碰成人久久| avwww免费| 精品福利永久在线观看| 丰满迷人的少妇在线观看| 婷婷色av中文字幕| 久久久水蜜桃国产精品网| 性少妇av在线| 久久久久网色| 人妻 亚洲 视频| 亚洲五月婷婷丁香| 一级毛片女人18水好多| 伊人久久大香线蕉亚洲五| 欧美xxⅹ黑人| 国产片内射在线| 少妇粗大呻吟视频| 日韩欧美免费精品| 久久久精品94久久精品| 亚洲五月色婷婷综合| 久久精品人人爽人人爽视色| 亚洲欧美成人综合另类久久久| 丰满少妇做爰视频| 日本欧美视频一区| 免费看十八禁软件| 亚洲av电影在线观看一区二区三区| 国产成人欧美| 丝袜美腿诱惑在线| 2018国产大陆天天弄谢| 国产一级毛片在线| 肉色欧美久久久久久久蜜桃| 国产高清videossex| www.自偷自拍.com| 免费观看av网站的网址| 久久热在线av| 十八禁高潮呻吟视频| 亚洲精品日韩在线中文字幕| 日本av手机在线免费观看| 国产高清视频在线播放一区 | 免费一级毛片在线播放高清视频 | 亚洲精品成人av观看孕妇| 国产无遮挡羞羞视频在线观看| 久久久久视频综合| 一级黄色大片毛片| 亚洲精品粉嫩美女一区| 人妻久久中文字幕网| 亚洲成人免费电影在线观看| 久久精品人人爽人人爽视色| 亚洲综合色网址| 12—13女人毛片做爰片一| 久久人妻熟女aⅴ| 亚洲国产中文字幕在线视频| 国产亚洲一区二区精品| 女性生殖器流出的白浆| av网站在线播放免费| 一级黄色大片毛片| 国产三级黄色录像| 最新在线观看一区二区三区| 黄色视频在线播放观看不卡| 男女床上黄色一级片免费看| 亚洲国产av新网站| 日韩 亚洲 欧美在线| 精品人妻熟女毛片av久久网站| 99热国产这里只有精品6| 又黄又粗又硬又大视频| 亚洲第一av免费看| 精品视频人人做人人爽| 亚洲精品自拍成人| 美女福利国产在线| 精品国产一区二区三区四区第35| 欧美人与性动交α欧美精品济南到| 亚洲成人手机| 久久毛片免费看一区二区三区| 一进一出抽搐动态| 一级a爱视频在线免费观看| 老汉色av国产亚洲站长工具| 老司机午夜福利在线观看视频 | 熟女少妇亚洲综合色aaa.| 午夜福利影视在线免费观看| 久久狼人影院| 亚洲一区二区三区欧美精品| 国产精品欧美亚洲77777| 黄色 视频免费看| 日韩视频一区二区在线观看| 各种免费的搞黄视频| 麻豆乱淫一区二区| 美女高潮到喷水免费观看| 亚洲第一欧美日韩一区二区三区 | 久久午夜综合久久蜜桃| 国产精品久久久久久精品古装| 一本一本久久a久久精品综合妖精| 国产国语露脸激情在线看| 欧美激情久久久久久爽电影 | 在线观看舔阴道视频| 国产精品香港三级国产av潘金莲| 国产福利在线免费观看视频| 男女高潮啪啪啪动态图| 999精品在线视频| 91av网站免费观看| 国产成人免费观看mmmm| 热99国产精品久久久久久7| 日韩欧美一区二区三区在线观看 | 国产在视频线精品| 久久精品国产亚洲av香蕉五月 | 亚洲国产成人一精品久久久| 视频区欧美日本亚洲| 99热网站在线观看| 欧美精品啪啪一区二区三区 | 久久免费观看电影| av天堂久久9| 国产亚洲av高清不卡| 91麻豆精品激情在线观看国产 | 丝袜人妻中文字幕| 国产精品一区二区在线不卡| 国产无遮挡羞羞视频在线观看| 国产精品.久久久| 桃花免费在线播放| 欧美人与性动交α欧美软件| avwww免费| 麻豆av在线久日| 亚洲欧洲精品一区二区精品久久久| 不卡一级毛片| 90打野战视频偷拍视频| 日韩中文字幕视频在线看片| 欧美 亚洲 国产 日韩一| 丁香六月天网| 免费观看av网站的网址| 狂野欧美激情性xxxx| 亚洲一区中文字幕在线| av欧美777| 欧美精品一区二区大全| 最新的欧美精品一区二区| 桃花免费在线播放| 搡老乐熟女国产| 一二三四在线观看免费中文在| 99国产精品免费福利视频| 操美女的视频在线观看| 亚洲自偷自拍图片 自拍| 精品人妻在线不人妻| 亚洲一区二区三区欧美精品| 50天的宝宝边吃奶边哭怎么回事| 日本91视频免费播放| 狠狠狠狠99中文字幕| 国产精品欧美亚洲77777| 女人被躁到高潮嗷嗷叫费观| 天天操日日干夜夜撸| 国精品久久久久久国模美| 成人国产一区最新在线观看| 亚洲七黄色美女视频| 天堂8中文在线网| 999久久久精品免费观看国产| 大香蕉久久网| 亚洲国产av影院在线观看| 亚洲va日本ⅴa欧美va伊人久久 | 午夜福利免费观看在线| av天堂久久9| 涩涩av久久男人的天堂| 18在线观看网站| 又黄又粗又硬又大视频| 黄片小视频在线播放| 国产国语露脸激情在线看| 欧美 亚洲 国产 日韩一| 久久久欧美国产精品| 操出白浆在线播放| 色老头精品视频在线观看| 蜜桃在线观看..| 久久久精品国产亚洲av高清涩受| 老司机深夜福利视频在线观看 | 精品一区二区三区四区五区乱码| 在线观看舔阴道视频| 两个人免费观看高清视频| av福利片在线| 美女国产高潮福利片在线看| 国产精品二区激情视频| 国产精品亚洲av一区麻豆| 久久人人爽人人片av| 久久久国产精品麻豆| 亚洲综合色网址| 一二三四在线观看免费中文在| 亚洲精品美女久久av网站| 国产男人的电影天堂91| 动漫黄色视频在线观看| 国产一区二区三区在线臀色熟女 | 精品欧美一区二区三区在线| 韩国高清视频一区二区三区| 精品国产一区二区三区久久久樱花| 欧美中文综合在线视频| 欧美日韩亚洲高清精品| 亚洲七黄色美女视频| 啦啦啦视频在线资源免费观看| 国产成人免费观看mmmm| 亚洲午夜精品一区,二区,三区| 久久亚洲国产成人精品v| 一本—道久久a久久精品蜜桃钙片| 日韩一区二区三区影片| 丝袜在线中文字幕| 巨乳人妻的诱惑在线观看| bbb黄色大片| 国产视频一区二区在线看| 精品久久久久久久毛片微露脸 | 2018国产大陆天天弄谢| 午夜视频精品福利| 日韩大码丰满熟妇| 一级毛片电影观看| 久久精品国产a三级三级三级| 免费女性裸体啪啪无遮挡网站| 91大片在线观看| 日韩制服丝袜自拍偷拍| 久久99一区二区三区| 午夜成年电影在线免费观看| 久久人人97超碰香蕉20202| 亚洲七黄色美女视频| 人人澡人人妻人| av天堂在线播放| 国产色视频综合| 亚洲午夜精品一区,二区,三区| 蜜桃在线观看..| av福利片在线| 欧美精品亚洲一区二区| 久久亚洲国产成人精品v| 亚洲av男天堂| 亚洲精品第二区| 岛国毛片在线播放| 精品欧美一区二区三区在线| 性色av一级| 国内毛片毛片毛片毛片毛片| 亚洲欧洲精品一区二区精品久久久| 好男人电影高清在线观看| 免费女性裸体啪啪无遮挡网站| 久久热在线av| 欧美精品高潮呻吟av久久| 69精品国产乱码久久久| 9热在线视频观看99| 日韩熟女老妇一区二区性免费视频| 亚洲国产欧美在线一区| 婷婷色av中文字幕| 永久免费av网站大全| 大片免费播放器 马上看| 国产欧美日韩一区二区三 | 在线 av 中文字幕| 狠狠婷婷综合久久久久久88av| 咕卡用的链子| 美女脱内裤让男人舔精品视频| 亚洲国产欧美网| 一个人免费在线观看的高清视频 | 国产精品影院久久| 99热国产这里只有精品6| 超碰成人久久| 久久毛片免费看一区二区三区| 国产精品欧美亚洲77777| 国产日韩欧美在线精品| 国产精品亚洲av一区麻豆| av在线老鸭窝| 一本—道久久a久久精品蜜桃钙片| 国产在线一区二区三区精| 女警被强在线播放| 在线亚洲精品国产二区图片欧美| 视频在线观看一区二区三区| 亚洲一区中文字幕在线| 狠狠狠狠99中文字幕| 午夜福利视频精品| 女人久久www免费人成看片| 一级毛片女人18水好多| 热99久久久久精品小说推荐| 国产男人的电影天堂91| www.自偷自拍.com| 久久精品成人免费网站| a 毛片基地| 国产免费福利视频在线观看| 国产成+人综合+亚洲专区| 色94色欧美一区二区| 国产免费一区二区三区四区乱码| 亚洲中文av在线| 欧美久久黑人一区二区| 午夜免费观看性视频| 一本—道久久a久久精品蜜桃钙片| 少妇粗大呻吟视频| 欧美精品一区二区免费开放| 亚洲精品成人av观看孕妇| 国产福利在线免费观看视频| 老司机亚洲免费影院| 人人妻人人澡人人爽人人夜夜| 一级毛片女人18水好多| 十八禁网站网址无遮挡| 搡老乐熟女国产| 亚洲第一青青草原| 久久久久精品国产欧美久久久 | 十八禁网站网址无遮挡| 丰满人妻熟妇乱又伦精品不卡| 日韩视频在线欧美| 国产一区二区在线观看av| 亚洲国产欧美日韩在线播放| 嫁个100分男人电影在线观看| 国产精品熟女久久久久浪| 精品久久久久久久毛片微露脸 | 国产一级毛片在线| 嫁个100分男人电影在线观看| 97人妻天天添夜夜摸| 狠狠狠狠99中文字幕| 夜夜骑夜夜射夜夜干| 国产成人精品在线电影| 亚洲色图综合在线观看| 亚洲国产精品999| 丰满人妻熟妇乱又伦精品不卡| 男人添女人高潮全过程视频| 18禁裸乳无遮挡动漫免费视频| 伊人久久大香线蕉亚洲五| 国产欧美日韩一区二区精品| 亚洲精品在线美女| 亚洲精品自拍成人| 九色亚洲精品在线播放| 欧美激情高清一区二区三区| 男男h啪啪无遮挡| 精品人妻熟女毛片av久久网站| 国产片内射在线| 久热这里只有精品99| 精品久久蜜臀av无| 男人添女人高潮全过程视频| 欧美日韩亚洲国产一区二区在线观看 | 亚洲 欧美一区二区三区| 国产三级黄色录像| 一级毛片女人18水好多| 中文字幕人妻丝袜一区二区| 人人妻人人添人人爽欧美一区卜| 欧美黄色片欧美黄色片| 脱女人内裤的视频| 国产三级黄色录像| 亚洲 欧美一区二区三区| 最近最新中文字幕大全免费视频| 黄色毛片三级朝国网站| 久久久水蜜桃国产精品网| 午夜免费鲁丝| 亚洲国产精品999| 人人澡人人妻人| 亚洲成av片中文字幕在线观看| 久久久久久久久免费视频了| 精品乱码久久久久久99久播| 久久午夜综合久久蜜桃| 考比视频在线观看| 欧美另类一区| 亚洲成人国产一区在线观看| 丰满迷人的少妇在线观看| 久久中文看片网| 亚洲精品国产色婷婷电影| 80岁老熟妇乱子伦牲交| 丰满人妻熟妇乱又伦精品不卡| 国产伦理片在线播放av一区| 久久人人爽av亚洲精品天堂| 1024香蕉在线观看| 久久久久久久久免费视频了| 日本精品一区二区三区蜜桃| 久久国产精品人妻蜜桃| 精品乱码久久久久久99久播| 国产人伦9x9x在线观看| 热99久久久久精品小说推荐| 久久久国产一区二区| 天天躁狠狠躁夜夜躁狠狠躁| 亚洲免费av在线视频| 丁香六月天网| 久久久久视频综合| 男女无遮挡免费网站观看| 美女扒开内裤让男人捅视频| 男女无遮挡免费网站观看| 亚洲avbb在线观看| 在线观看免费视频网站a站| 亚洲精品国产一区二区精华液| 日韩电影二区| 亚洲国产中文字幕在线视频| av在线老鸭窝| 日本撒尿小便嘘嘘汇集6| 亚洲专区中文字幕在线| 黄色片一级片一级黄色片| 亚洲少妇的诱惑av| av又黄又爽大尺度在线免费看| 巨乳人妻的诱惑在线观看| 国产黄色免费在线视频| 97人妻天天添夜夜摸| 欧美日韩成人在线一区二区| 日韩免费高清中文字幕av| 99re6热这里在线精品视频| 人人妻人人添人人爽欧美一区卜| 久久久久精品人妻al黑| 日日夜夜操网爽| 亚洲av日韩精品久久久久久密| 搡老熟女国产l中国老女人| 99国产精品一区二区蜜桃av | 久久久水蜜桃国产精品网| 午夜福利视频精品|