亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > ASM > 正文

匯編語言的高級(jí)語言特性

2019-11-17 05:50:13
字體:
供稿:網(wǎng)友
     現(xiàn)在寫匯編語言,就象寫結(jié)構(gòu)化的高級(jí)語言一樣,非常的方便。不信?你看看下面寫的小程序就知道啦,沒有程序跳轉(zhuǎn),完全的結(jié)構(gòu)化設(shè)計(jì)。最后還附有 Glow Glove 總結(jié)的小篇文章,供大家學(xué)習(xí)參考。

;-------------------------------------------------------
;例:計(jì)算一個(gè)數(shù)據(jù)的階乘
;若結(jié)果較小,可放在 EAX 寄存器
;若結(jié)果較小,可放在 EDX:EAX 寄存器
;文件名:7.asm

        .386
        .model flat,stdcall
        option casemap:none


include windows.inc

include masm32.inc
include kernel32.inc
include user32.inc

includelib masm32.lib
includelib kernel32.lib
includelib user32.lib


        .data?
CharOut db 100 dup(?)

        .code

OutEdxEax PROTO :DWord      ;將EDX:EAX中的數(shù)據(jù)轉(zhuǎn)換成十進(jìn)制輸出字符串形式!

OutEdxEax proc lpString     ;比如:EDX=0,EAX=01234567H,則轉(zhuǎn)換后的字符串為:
                                    -> '19088743',0
        mov edi,lpString    ;指向存放結(jié)果的地址
        mov esi,lpString

        mov ecx,10          ;轉(zhuǎn)換成十進(jìn)制
        .while eax!=0 || edx!=0
            push eax    
            mov eax,edx
            xor edx,edx
            div ecx
            mov ebx,eax
            pop eax
            div ecx
            add dl,'0'      
            mov [edi],dl    ;存放結(jié)果
            inc edi
            mov edx,ebx
        .endw

        mov BYTE ptr [edi],0;字符串以0為結(jié)尾
        dec edi

        .while edi>esi      ;結(jié)果前變后,后變前!

            mov al,[esi]
            xchg al,[edi]
            mov [esi],al
            inc esi
            dec edi
        .endw
        ret
OutEdxEax   endp

start:          ;程序開始
    xor eax,eax ;存放結(jié)果的寄存器EDX:EAX=1
    xor edx,edx
    inc eax
    mov ecx,20  ;計(jì)算20的階乘。不能大于20,否則會(huì)溢出,結(jié)果將不再正確!
    .while ecx>0
        .if edx==0  ;結(jié)果在EAX中
            mul ecx
        .else       ;結(jié)果在EDX:EAX中
            push edx
            mul ecx
            pop ebx
            push eax
            push edx
            mov eax,ecx
            mul ebx
            pop edx
            add edx,eax
            pop eax
        .endif
        dec ecx
    .endw

    .if edx==0          ;結(jié)果在EAX中
        invoke dw2a,eax,addr CharOut
    .else               ;結(jié)果在EDX:EAX中
        invoke OutEdxEax,addr CharOut   ;用我們自己的程序轉(zhuǎn)換!
    .endif

    invoke StdOut,addr CharOut  ;控制臺(tái)輸出結(jié)果
    invoke ExitProcess,NULL     ;結(jié)束程序
    end start
----------------------------------------------------------------
生成7.exe的具體操作過程

D:/MASM7>ml /coff /I include 7.asm /link /subsystem:console /libpath:lib
Microsoft (R) Macro Assembler Version 6.14.8444

Copyright (C) Microsoft Corp 1981-1997.  All rights reserved.

Assembling: 7.asm
Microsoft (R) Incremental Linker Version 5.12.8078
Copyright (C) Microsoft Corp 1992-1998. All rights reserved.

/subsystem:console /libpath:lib
"7.obj"
"/OUT:7.exe"

D:/MASM7>7
2432902008176640000
D:/MASM7>_
---------------------------------------------------------------------
用W32dasm反編譯后的結(jié)果,大家可看看“匯編語言”是怎樣翻譯成“機(jī)器語言”的。

Program Entry Point = 00401042 (7.exe File Offset:00001642)

:00401000 55                      push ebp
:00401001 8BEC                    mov ebp, esp
:00401003 8B7D08                  mov edi, dword ptr [ebp+08]
:00401006 8B7508                  mov esi, dword ptr [ebp+08]
:00401009 B90A000000              mov ecx, 0000000A
:0040100E EB14                    jmp 00401024

* Referenced by a (U)nconditional or (C)onditional Jump at Addresses:
|:00401026(C), :0040102A(C)
|
:00401010 50                      push eax
:00401011 8BC2                    mov eax, edx
:00401013 33D2                    xor edx, edx
:00401015 F7F1                    div ecx
:00401017 8BD8                    mov ebx, eax
:00401019 58                      pop eax
:0040101A F7F1                    div ecx
:0040101C 80C230                  add dl, 30
:0040101F 8817                    mov byte ptr [edi], dl
:00401021 47                      inc edi

:00401022 8BD3                    mov edx, ebx

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0040100E(U)
|
:00401024 0BC0                    or eax, eax
:00401026 75E8                    jne 00401010
:00401028 0BD2                    or edx, edx
:0040102A 75E4                    jne 00401010
:0040102C C60700                  mov byte ptr [edi], 00
:0040102F 4F                      dec edi
:00401030 EB08                    jmp 0040103A

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0040103C(C)
|
:00401032 8A06                    mov al, byte ptr [esi]
:00401034 8607                    xchg byte ptr [edi], al
:00401036 8806                    mov byte ptr [esi], al
:00401038 46                      inc esi
:00401039 4F                      dec edi

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00401030(U)
|
:0040103A 3BFE                    cmp edi, esi
:0040103C 77F4                    ja 00401032
:0040103E C9                      leave
:0040103F C20400                  ret 0004


//******************** Program Entry Point ********
:00401042 33C0                    xor eax, eax

:00401044 33D2                    xor edx, edx
:00401046 40                      inc eax
:00401047 B914000000              mov ecx, 00000014
:0040104C EB17                    jmp 00401065

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00401068(C)
|
:0040104E 0BD2                    or edx, edx
:00401050 7504                    jne 00401056
:00401052 F7E1                    mul ecx
:00401054 EB0E                    jmp 00401064

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00401050(C)
|
:00401056 52                      push edx
:00401057 F7E1                    mul ecx
:00401059 5B                      pop ebx
:0040105A 50                      push eax
:0040105B 52                      push edx
:0040105C 8BC1                    mov eax, ecx
:0040105E F7E3                    mul ebx
:00401060 5A                      pop edx
:00401061 03D0                    add edx, eax
:00401063 58                      pop eax

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00401054(U)
|
:00401064 49                      dec ecx


* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0040104C(U)
|
:00401065 83F900                  cmp ecx, 00000000
:00401068 77E4                    ja 0040104E
:0040106A 0BD2                    or edx, edx
:0040106C 750D                    jne 0040107B
:0040106E 6804304000              push 00403004
:00401073 50                      push eax
:00401074 E81F000000              call 00401098
:00401079 EB0A                    jmp 00401085

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0040106C(C)
|
:0040107B 6804304000              push 00403004
:00401080 E87BFFFFFF              call 00401000

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00401079(U)
|
:00401085 6804304000              push 00403004
:0040108A E825000000              call 004010B4
:0040108F 6A00                    push 00000000

* Reference To: KERNEL32.ExitProcess, Ord:0075h
                                  |
:00401091 E88E000000              Call 00401124
:00401096 CC                      int 03
:00401097 CC                      int 03

* Referenced by a CALL at Address:
|:00401074  
|
:00401098 55                      push ebp
:00401099 8BEC                    mov ebp, esp

:0040109B FF7508                  push [ebp+08]

* Possible StringData Ref from Data Obj ->"%lu"
                                  |
:0040109E 6800304000              push 00403000
:004010A3 FF750C                  push [ebp+0C]

* Reference To: USER32.wsprintfA, Ord:02A5h
                                  |
:004010A6 E88B000000              Call 00401136
:004010AB 83C40C                  add esp, 0000000C
:004010AE C9                      leave
:004010AF C20800                  ret 0008


:004010B2 CC                      int 03
:004010B3 CC                      int 03

* Referenced by a CALL at Address:
|:0040108A  
|
:004010B4 55                      push ebp
:004010B5 8BEC                    mov ebp, esp
:004010B7 83C4F4                  add esp, FFFFFFF4
:004010BA 6AF5                    push FFFFFFF5

* Reference To: KERNEL32.GetStdHandle, Ord:013Dh
                                  |
:004010BC E869000000              Call 0040112A
:004010C1 8945FC                  mov dword ptr [ebp-04], eax

:004010C4 FF7508                  push [ebp+08]
:004010C7 E820000000              call 004010EC
:004010CC 8945F4                  mov dword ptr [ebp-0C], eax
:004010CF 6A00                    push 00000000
:004010D1 8D45F8                  lea eax, dword ptr [ebp-08]
:004010D4 50                      push eax
:004010D5 FF75F4                  push [ebp-0C]
:004010D8 FF7508                  push [ebp+08]
:004010DB FF75FC                  push [ebp-04]

* Reference To: KERNEL32.WriteFile, Ord:02B9h
                                  |
:004010DE E84D000000              Call 00401130
:004010E3 8B45F8                  mov eax, dword ptr [ebp-08]
:004010E6 C9                      leave
:004010E7 C20400                  ret 0004


:004010EA CC                      int 03
:004010EB CC                      int 03

* Referenced by a CALL at Address:
|:004010C7  
|
:004010EC 55                      push ebp
:004010ED 8BEC                    mov ebp, esp
:004010EF 53                      push ebx
:004010F0 8B4508                  mov eax, dword ptr [ebp+08]

:004010F3 8D5003                  lea edx, dword ptr [eax+03]

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0040110B(C)
|
:004010F6 8B18                    mov ebx, dword ptr [eax]
:004010F8 83C004                  add eax, 00000004
:004010FB 8D8BFFFEFEFE            lea ecx, dword ptr [ebx+FEFEFEFF]
:00401101 F7D3                    not ebx
:00401103 23CB                    and ecx, ebx
:00401105 81E180808080            and ecx, 80808080
:0040110B 74E9                    je 004010F6
:0040110D F7C180800000            test ecx, 00008080
:00401113 7506                    jne 0040111B
:00401115 C1E910                  shr ecx, 10
:00401118 83C002                  add eax, 00000002

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00401113(C)
|
:0040111B D0E1                    shl cl, 1
:0040111D 1BC2                    sbb eax, edx
:0040111F 5B                      pop ebx
:00401120 C9                      leave
:00401121 C20400                  ret 0004

* Referenced by a CALL at Address:
|:00401091  
|

* Reference To: KERNEL32.ExitProcess, Ord:0075h
                                  |
:00401124 FF2508204000            Jmp dword ptr [00402008]


* Referenced by a CALL at Address:
|:004010BC  
|

* Reference To: KERNEL32.GetStdHandle, Ord:013Dh
                                  |
:0040112A FF2500204000            Jmp dword ptr [00402000]

* Referenced by a CALL at Address:
|:004010DE  
|

* Reference To: KERNEL32.WriteFile, Ord:02B9h
                                  |
:00401130 FF2504204000            Jmp dword ptr [00402004]

* Reference To: USER32.wsprintfA, Ord:02A5h
                                  |
:00401136 FF2510204000            Jmp dword ptr [00402010]
:0040113C 00000000000000000000    BYTE 10 DUP(0)

------------------------------------------------------------------
MASM 6.x 新增指令列表:  Glow Glove 制 (請(qǐng)?bào)w諒小弟辛勞,勿消去)

MASM 6.x 推出以久,但市面上有關(guān)之書籍及資料卻少得可憐,小弟當(dāng)初接觸
MASM 6.x 時(shí),辛辛勞苦才找出資料的,為了那些後進(jìn)不用踏著先烈的血跡前
撲後繼,特將小弟「翻」出來的東東公布出來。

這些指令都是小弟從書上(厚顏無恥,在老板的白眼下辛勞抄下來的)
及MASM 6.0 之范例程式中翻出來的,若有遺落疏失,請(qǐng)包涵。
請(qǐng)?bào)w諒小弟之辛勞,勿將小弟的ID消去。

MASM 6.x與MASM 5.x最大不同,在於6.x 比5.x 更高階化了(或說更PASCAL化),
其內(nèi)提供了判定、回圈、模組化副程式等,各種令組合語言使用者望穿秋水之指
令,看完內(nèi)容,請(qǐng)不要感動(dòng)的痛哭流涕,或恨他為什麼不早點(diǎn)出來。

運(yùn)算符號(hào):
    == : 等於        &  : 位元測(cè)試
    != : 不等於      !  : 否 NOT
    >  : 大於        && : 且 AND
    <  : 小於        || : 或 OR

輔助運(yùn)算符號(hào):
    ZERO?     : ZERO ZF=1,ZR        !ZERO?     : NOT ZERO ZF=0,NZ
    CARRY?    : CARRY CF=1,CY       !CARRY?    : NOT CARRY CF=0,NC
    OVERFLOW? : OVERFLOW,OV         !OVERFLOW? : NOT OVERFLOW,NV
    SIGN?     : NEGATIVE,NG         !SIGN?     : PLUS,PL
    PARITY?   : PARITY EVEN,PE      !PARITY?   : PARITY ODD,PO


Examples:
    .IF AX == 1               .REPEAT
    .IF ZERO?                 .UNTIL ZERO?
    .IF !(AX & 0Fh)
    .IF AL=ESC || AL=CR
    看到這些指令了嗎? 是不是似曾相識(shí),期待以久了。

判定式:
    .IF
         .
    .ELSEIF
         .
    .ELSE
         .
    .ENDIF

    .ELSEIF 及.ELSE 為非必要之動(dòng)作,寫過高階語言的應(yīng)該不難了解才對(duì)!

回圈指令:
    (1) 前測(cè)式:
        .WHILE
              .
              .
        .ENDW
        當(dāng)條件成立,即執(zhí)行回圈內(nèi),否則執(zhí)行回圈後之動(dòng)作

    (2) 後測(cè)式:
      1.  .REPEAT
              .
              .
          .UNTIL
        or
      2.  .REPEAT
              .
              .
          .UNTILCXZ

      1. 回圈一直到條件成立即停止回圈
      2. 同1 ,但加上判定CX是否為0 (OR的關(guān)系,即條件為真或CX==0)

輔助指令:
    .BREAK
    .COUNTINE

    配合上述回圈指令運(yùn)用
    .BREAK    可中止回圈
    .COUNTINE 可跳至回圈開頭
    可在其後加上敘述,敘述成立才動(dòng)作

嗯! 愈看愈像PASCAL了

Examples:

    .WHILE AX==1 || !ZERO?     .REPEAT
            .                         .
    .ENDW                      .UNTIL (AX & 1)

    .REPEAT
            .

        .BREAK .IF ZERO?
            .
        .COUNTINE
            .
    .UNTILCXZ (DX == 0)

引申:
    上述之判定式及回圈,其實(shí)就是CMP XX,YY
                                Jxx xxxx,LOOPxx xxxx
                                之組合。

    其內(nèi)動(dòng)作復(fù)雜,小弟寫不出來 :~~( 請(qǐng)寫過MASM 5.x的人自行
    體會(huì)那種復(fù)雜的古老方式。

以上內(nèi)容為:MASM 6.x 新增指令列表:  Glow Glove 制 (請(qǐng)?bào)w諒小弟辛勞,勿消去)


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

99成人精品| 亚洲视频tv| 老熟女高潮一区二区三区| 伊人午夜电影| 国产偷国产偷亚洲高清97cao| 91av视频导航| 免费黄色特级片| 久久免费视频色| 欧美中文字幕视频在线观看| 亚洲少妇中文字幕| 成人一区二区三| 欧美精品自拍偷拍| 四虎4hu影库永久地址| 国产九九视频一区二区三区| 奇米影视亚洲| 精品无人乱码一区二区三区的优势| 欧美裸体bbwbbwbbw| 欧美无毛视频| 日本午夜一本久久久综合| 欧美人与z0zoxxxx视频| 久草视频福利在线| 欧美精品久久一区二区| 久久久精品中文字幕| 久久精品国产99久久99久久久| 亚洲线精品久久一区二区三区| 久久视频在线免费观看| 制服丝袜国产精品| 婷婷五月色综合| 在线观看av大片| 4438全国成人免费| 国内精品久久影院| 欧美日韩国产一二三区| h视频免费观看| 日韩中文字幕三区| 性欧美69xoxoxoxo| 日韩在线第二页| 亚洲欧洲中文日韩久久av乱码| 国产91精品久久久| 国产一区二区色噜噜| 91视频免费看片| 国内精品免费午夜毛片| 欧美午夜久久| 日韩欧美国产综合| 黄色污网站在线免费观看| 成人黄色大片在线免费观看| 欧美一级bbbbb性bbbb喷潮片| 国内毛片毛片毛片毛片毛片| 人妻体内射精一区二区三区| avtt天堂资源网| 超碰91在线播放| 情se视频网在线观看| 五月婷在线视频| 天堂中文www在线| 国产69精品久久久久久久| 苍井空浴缸大战猛男120分钟| 黄视频免费在线看| av免费网站在线观看| 亚洲免费视频二区| 任你操精品视频| 视频一区在线视频| 成人精品一区二区三区电影免费| 久久久伦理片| 日韩在线一卡二卡| 国产美女亚洲精品7777| 国产欧美精品xxxx另类| 国产高清自拍一区| 青青草免费观看视频| 久久久久国产精品麻豆| 91精品办公室少妇高潮对白| 亚洲综合精品久久| 国产69精品久久久久久久| 久久久美女视频| 日韩欧美中文字幕视频| 日本学生初尝黑人巨免费视频| 成人毛片18女人毛片| 精品三级在线| 日本韩国一区二区| 国产精品夜夜夜一区二区三区尤| 一级日本不卡的影视| 精品日本一线二线三线不卡| 亚洲九九在线| 给我免费观看片在线电影的| 成人一区二区不卡免费| 精品国产三级电影在线观看| 丁香花高清电影在线观看完整版| 手机看片福利在线观看| 中文字幕人妻精品一区| 色综合久久天天综合网| 污视频在线免费观看| 99亚洲视频| 美女做暖暖视频免费在线观看全部网址91| 欧美日韩一级黄色片| 亚洲午夜无码av毛片久久| 亚洲第一男人天堂| 人妻少妇精品视频一区二区三区| 国产精品视频区| 欧美日韩国产一中文字不卡| 久久精品亚洲欧美日韩精品中文字幕| 日本爱爱爱视频| 国a精品视频大全| 亚洲免费观看高清| 欧美不卡在线一区二区三区| 精品中国亚洲| 久久精品一区二区国产| 国产精品久久久久久久久免费丝袜| 色吊一区二区三区| 国内精品久久久久影院一蜜桃| 国产精品久久久久久久浪潮网站| 欧美绝品在线观看成人午夜影视| 国产在线观看你懂的| 欧美日韩美女一区二区| 亚洲av熟女高潮一区二区| 99re8在线精品视频免费播放| 91精品入口| 扒开腿狂躁女人爽出白浆2| 中文字幕网站在线观看| 日本精品一区二区三区视频| 国产三级漂亮女教师| 日韩成人在线播放| 午夜久久久久久噜噜噜噜| 三上悠亚 电影| 九九这里只有精品视频| 五月天婷婷综合| 国产日韩在线观看视频| 国产稀缺真实呦乱在线| 99热在线这里只有精品| 国产一区二区播放| 日韩高清欧美激情| 欧美性活一级视频| 久久av无码精品人妻系列试探| 成人ww免费完整版在线观看| 欧美日韩麻豆| 不卡视频观看| 国产福利资源| 日韩精品欧美在线| 午夜激情福利网| 日韩夫妻性生活xx| 成人黄色短视频在线观看| 精品久久久久久无| 欧美成人免费小视频| 超碰在线播放97| 乱子伦视频在线看| 狠狠色伊人亚洲综合成人| 亚洲一区二区三区中文字幕在线观看| 黄色免费视频大全| 欧美国产在线电影| 亚洲一区影音先锋| 激情av综合网| 亚洲男女毛片无遮挡| 在线观看视频污| 国产精品88久久久久久| 在线āv视频| 亚洲天堂岛国片| 成人婷婷网色偷偷亚洲男人的天堂| 久久久一本精品99久久精品66| 2020国内自拍视频| 亚洲精品国产精品乱码视色| 操人视频在线观看欧美| 日本黄色www| wwwwww欧美| 久久免费精品视频| 国产在线观看欧美| 国产精品香蕉视屏| 污污的网站在线看| 欧美精品videossex88| 欧美精品一二三| 国产精品免费区二区三区观看| 好男人www社区在线视频夜恋| 久久精品国产亚洲av高清色欲| 中文在线字幕在线观看| 日韩国产欧美一区| 久久黄色免费视频| 国产又白又嫩又爽又黄| 国产伦精品一区二区| 午夜在线观看免费一区| 亚洲国内自拍| 欧美军同video69gay| 欧美网站在线| mm131国产精品| 五月婷婷激情综合| 福利片在线看| 午夜精品亚洲一区二区三区嫩草| 日韩国产在线观看| 国产日韩精品一区二区| 亚洲精品无码专区| 亚洲一级网站| 国产成人aa在线观看网站站| 色综合色狠狠天天综合色| 女同性互吃奶乳免费视频| 国产伦精品一区二区三区高清版| 妞干网在线观看| 欧美影片第一页| 岛国片免费看| 欧美成人精品欧美一级乱| 在线观看av中文| 国产在线观看91| 日本一区二区三不卡| 久久婷婷综合国产| 国产99久久久国产精品潘金| 亚洲欧洲一区二区三区| 欧美黄色一级片视频| 欧美最猛黑人xxxx黑人猛交3p| 久久日本片精品aaaaa国产| 国产女人18毛片| 成人高清视频观看www| 91入口在线观看| 97视频热人人精品免费| 91蜜桃婷婷狠狠久久综合9色| 伊人久久一区| 乱馆动漫1~6集在线观看| 日韩专区在线| 国产精品一区二区三区观看| 成人h动漫精品一区二区无码| 亚洲精品你懂的| 青青青视频在线免费观看| 亚洲欧洲综合另类| 78m国产成人精品视频| 免费萌白酱国产一区二区三区| 国产乱色国产精品免费视频| 97se国产在线视频| 大陆极品少妇内射aaaaa| 亚洲一区二区中文| 亚洲精品aⅴ中文字幕乱码| 欧美xxxooo| 久久婷婷国产麻豆91天堂| 中文字幕毛片| 国产亚洲色婷婷久久| 日韩精品一区二区久久| 久久久久久久久久久久国产| 小视频福利在线| 欧美午夜电影在线| 久久精品久久精品亚洲人| 国产自产2019最新不卡| 成人激情视屏| 亚洲国产精品中文| 日韩av不卡一区| 中文字幕精品一区日韩| 亚洲在线色站| www.中文字幕.com| 国产又粗又长又大的视频| 天堂在线免费观看视频| 99久久这里只有精品| 成人一区二区三区视频| 国产91高潮流白浆在线麻豆| 在线观看日批视频| 神马影院一区二区三区| 超碰精品在线观看| 日韩黄色动漫| 无码人妻aⅴ一区二区三区| 99re在线视频上| 精品电影在线观看| 蜜臀av中文字幕| 麻豆美女网站| 女同久久另类99精品国产| 伊人影院蕉久影院在线观看| 婷婷久久国产对白刺激五月99| 给个网站可以在线观看你懂的| 无限国产资源| 国产精品久久婷婷六月丁香| 亚洲在线不卡| 国产成人精品999在线观看| www视频免费看| 国内久久视频| 男女激情无遮挡| 久久精品午夜福利| 亚洲成人免费电影| jizzjizz少妇亚洲水多| 亚洲欧美日韩不卡一区二区三区| 日韩精品免费一区二区三区| 亚洲国产高清一区二区三区| 亚洲视频在线免费看| 国产二级一片内射视频播放| 亚洲在线视频| 日本韩国在线不卡| 亚洲va欧美va人人爽成人影院| www黄色日本| 乱亲女秽乱长久久久| 日韩在线观看av| 97人人模人人爽人人澡| 免费一看一级毛片| 91精品国产一区二区三区香蕉| 日韩免费视频播放| 亚洲精品成人精品456| 日本vs亚洲vs韩国一区三区| 久久久全国免费视频| 亚洲一区 欧美| 成人乱色短篇合集| 欧美日韩中文字幕一区二区| 五月激情五月婷婷| 国产youjizz在线| 亚洲欧美一区二区三区国产精品| 色屁屁一区二区| 久久综合久久鬼| 女人喷潮完整视频| 日日噜噜噜夜夜爽爽狠狠视频| 久久网这里都是精品| 国产精品久久久久一区二区三区共| 国产精品久久久久久久一区二区| 欧美色网一区二区| 精品国内产的精品视频在线观看| sese在线播放| 欧美三级中文字| www在线免费观看视频| 午夜精彩视频在线观看不卡| 国产精品一区二区三区在线播放| 亚洲欧洲国产专区| 懂色av蜜臀av粉嫩av分享吧| 奇米色欧美一区二区三区| 国产日产精品1区| 最新亚洲精品| 国产成人精品久久亚洲高清不卡| 日韩欧美色综合网站| 色婷婷亚洲mv天堂mv在影片| 无码少妇精品一区二区免费动态| 欧美日韩高清在线| 日日夜夜一区二区| 久久国产综合| 国产三级精品网站| 欧美黑人性受xxxx精品| 91短视频版在线观看www免费| 一级黄色录像在线观看| 综合网五月天| a天堂视频在线观看| 福利视频第一区| 68精品国产免费久久久久久婷婷| 北条麻妃在线视频观看| av片在线观看网站| 亚洲国产另类久久精品|