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

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

?? asm2.asm

?? 用純C寫(xiě)的基于x86結(jié)構(gòu)的保護(hù)模式相關(guān)操作
?? ASM
字號(hào):
;名稱(chēng):ASM2.ASM
;功能:演示實(shí)方式和保護(hù)方式切換(切換到32位代碼段)
;----------------------------------------------------------------------------
INCLUDE         386SCD.INC
;----------------------------------------------------------------------------
DSEG            SEGMENT USE16                     ;16位數(shù)據(jù)段
;----------------------------------------------------------------------------
GDT             LABEL   BYTE                      ;全局描述符表
DUMMY           Desc    <>                        ;空描述符
Normal          Desc    <0ffffh,,,ATDW,,>         ;規(guī)范段描述符
Code32          Desc    <C32Len-1,,,ATCE,D32,>    ;32位代碼段描述符
Code16          Desc    <0ffffh,,,ATCE,,>         ;16位代碼段描述符
DataS           Desc    <DataLen-1,0,10h,ATDR,,>  ;源數(shù)據(jù)段描述符
DataD           Desc    <3999,8000h,0bh,ATDW,,>   ;顯示緩沖區(qū)描述符
Stacks          Desc    <StackLen-1,,,ATDW,,>     ;堆棧段描述符
;----------------------------------------------------------------------------
GDTLen          =       $-GDT                     ;全局描述符表長(zhǎng)度
VGDTR           PDesc   <GDTLen-1,>               ;偽描述符
;----------------------------------------------------------------------------
SaveSP          DW      ?                         ;用于保存SP寄存器
SaveSS          DW      ?                         ;用于保存SS寄存器
;----------------------------------------------------------------------------
Normal_Sel      =       Normal-GDT                ;規(guī)范段描述符選擇子
Code32_Sel      =       Code32-GDT                ;32位代碼段選擇子
Code16_Sel      =       Code16-GDT                ;16位代碼段選擇子
DataS_Sel       =       Datas-GDT                 ;源數(shù)據(jù)段選擇子
DataD_Sel       =       DataD-GDT                 ;目標(biāo)數(shù)據(jù)段選擇子
Stacks_Sel      =       Stacks-GDT                ;堆棧段描述符選擇子
;----------------------------------------------------------------------------
DataLen         =       16
;----------------------------------------------------------------------------
DSEG            ENDS                              ;數(shù)據(jù)段定義結(jié)束
;----------------------------------------------------------------------------
StackSeg        SEGMENT PARA STACK USE16
StackLen        =       256
                DB      StackLen DUP(0)
StackSeg        ENDS
;----------------------------------------------------------------------------
CSEG1           SEGMENT USE16 'REAL'              ;16位代碼段
                ASSUME  CS:CSEG1,DS:DSEG
;----------------------------------------------------------------------------
Start           PROC
                mov     ax,DSEG
                mov     ds,ax
                ;準(zhǔn)備要加載到GDTR的偽描述符
                mov     bx,16
                mul     bx
                add     ax,OFFSET GDT             ;計(jì)算并設(shè)置基地址
                adc     dx,0                      ;界限已在定義時(shí)設(shè)置好
                mov     WORD PTR VGDTR.Base,ax
                mov     WORD PTR VGDTR.Base+2,dx
                ;設(shè)置32位代碼段描述符
                mov     ax,CSEG2
                mul     bx
                mov     WORD PTR Code32.BaseL,ax
                mov     BYTE PTR Code32.BaseM,dl
                mov     BYTE PTR Code32.BaseH,dh
                ;設(shè)置16位代碼段描述符
                mov     ax,CSEG3
                mul     bx
                mov     WORD PTR Code16.BaseL,ax  ;代碼段開(kāi)始偏移為0
                mov     BYTE PTR Code16.BaseM,dl  ;代碼段界限已在定義時(shí)設(shè)置好
                mov     BYTE PTR Code16.BaseH,dh
                ;設(shè)置堆棧段描述符
                mov     ax,ss
                mov     WORD PTR SaveSS,ax
                mov     WORD PTR SaveSP,sp
                mov     ax,StackSeg
                mul     bx
                mov     WORD PTR Stacks.BaseL,ax
                mov     BYTE PTR Stacks.BaseM,dl
                mov     BYTE PTR Stacks.BaseH,dh
                ;加載GDTR
                lgdt    QWORD PTR VGDTR
                cli                               ;關(guān)中斷
                EnableA20                         ;打開(kāi)地址線A20
                ;切換到保護(hù)方式
                mov     eax,cr0
                or      al,1
                mov     cr0,eax
                ;清指令預(yù)取隊(duì)列,并真正進(jìn)入保護(hù)方式
                JUMP16  Code32_Sel,<OFFSET SPM32>
ToReal:         ;現(xiàn)在又回到實(shí)方式
                mov     ax,DSEG
                mov     ds,ax
                mov     sp,SaveSP
                mov     ss,SaveSS
                DisableA20
                sti
                mov     ax,4c00h
                int     21h
Start           ENDP
;----------------------------------------------------------------------------
CSEG1           ENDS                              ;代碼段定義結(jié)束
;----------------------------------------------------------------------------
CSEG2           SEGMENT USE32 'PM32'
                ASSUME  CS:CSEG2
;----------------------------------------------------------------------------
SPM32           PROC
                mov     ax,Stacks_Sel
                mov     ss,ax
                mov     esp,StackLen
                mov     ax,DataS_Sel
                mov     ds,ax
                mov     ax,DataD_Sel
                mov     es,ax
                xor     esi,esi
                xor     edi,edi
                mov     ecx,DataLen
                cld
Next:           lodsb
                push    ax
                CALL    ToASCII
                mov     ah,7
                shl     eax,16
                pop     ax
                shr     al,4
                CALL    ToASCII
                mov     ah,7
                stosd
                mov     al,20h
                stosw
                loop    Next
                JUMP32   Code16_Sel,<OFFSET SPM16>
SPM32           ENDP
;----------------------------------------------------------------------------
ToASCII         PROC
                and     al,00001111b
                add     al,30h
                cmp     al,39h
                jbe     Isdig
                add     al,7
IsDig:          ret
ToASCII         ENDP
;----------------------------------------------------------------------------
C32Len          =       $
;----------------------------------------------------------------------------
CSEG2           ENDS
;----------------------------------------------------------------------------
CSEG3           SEGMENT USE16 'PM16'
                ASSUME  CS:CSEG3
;----------------------------------------------------------------------------
SPM16           PROC
                xor     si,si
                mov     di,DataLen*3*2
                mov     ah,7
                mov     cx,DataLen
AGain:          lodsb
                stosw
                loop    AGain
                mov     ax,Normal_sel
                mov     ds,ax
                mov     es,ax
                mov     ss,ax
                mov     eax,cr0
                and     al,11111110b
                mov     cr0,eax
                jmp     FAR PTR ToReal
SPM16           ENDP
;----------------------------------------------------------------------------
CSEG3           ENDS
;----------------------------------------------------------------------------
                END     Start

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成av人片一区二区| av一区二区三区黑人| 中文字幕第一页久久| 欧美曰成人黄网| 韩国成人精品a∨在线观看| 亚洲美女屁股眼交| 久久亚洲一区二区三区四区| 在线欧美日韩国产| 国产福利精品导航| 奇米在线7777在线精品| 亚洲免费观看在线观看| 久久女同性恋中文字幕| 欧美另类一区二区三区| 91女神在线视频| 国产资源精品在线观看| 香蕉成人伊视频在线观看| 国产精品毛片大码女人| 337p日本欧洲亚洲大胆色噜噜| 在线观看av一区二区| 成人黄页毛片网站| 国产呦精品一区二区三区网站| 无吗不卡中文字幕| 一区二区三区四区激情| 中文一区在线播放| 久久蜜桃av一区二区天堂| 欧美一区二区三区四区视频| 欧美性色aⅴ视频一区日韩精品| 成人久久久精品乱码一区二区三区 | 91精品国产91久久久久久一区二区| 粉嫩aⅴ一区二区三区四区五区| 麻豆成人91精品二区三区| 亚洲成人免费影院| 一区二区三区在线观看网站| 国产精品入口麻豆九色| 国产婷婷色一区二区三区在线| 日韩欧美一区在线| 欧美一级视频精品观看| 91麻豆精品国产91| 欧美午夜不卡在线观看免费| 色狠狠一区二区三区香蕉| 99免费精品在线观看| 成人激情免费电影网址| 成人免费av资源| 成人av动漫在线| 波多野结衣在线一区| 7799精品视频| 欧美一区二区精品久久911| 欧美肥妇bbw| 在线成人午夜影院| 日韩一区二区免费高清| 日韩视频免费观看高清在线视频| 欧美一二三区在线| 欧美www视频| 久久尤物电影视频在线观看| 久久久午夜精品理论片中文字幕| 久久久99久久| 国产精品丝袜在线| 亚洲精品国产无天堂网2021| 亚洲综合视频在线观看| 午夜天堂影视香蕉久久| 美女久久久精品| 国产精品综合网| eeuss鲁片一区二区三区| 色婷婷综合在线| 欧美三级电影网| 日韩你懂的在线播放| 久久久久久久久岛国免费| 国产精品入口麻豆原神| 亚洲一区二区av电影| 日韩激情av在线| 狠狠色综合日日| av欧美精品.com| 欧美天堂一区二区三区| 精品久久一区二区三区| 欧美韩国日本综合| 亚洲无人区一区| 精品一区中文字幕| 白白色 亚洲乱淫| 欧美日韩国产精选| 久久久亚洲综合| 一区二区视频在线| 老色鬼精品视频在线观看播放| 高清不卡在线观看| 欧美色中文字幕| 久久综合五月天婷婷伊人| 1024精品合集| 奇米影视在线99精品| 99久久精品久久久久久清纯| 在线成人午夜影院| 国产精品电影院| 日本视频在线一区| 不卡高清视频专区| 日韩欧美aaaaaa| 亚洲欧美另类小说| 激情文学综合插| 欧美自拍偷拍午夜视频| 久久精品亚洲乱码伦伦中文| 亚洲综合男人的天堂| 国精产品一区一区三区mba桃花| 91久久精品一区二区| 久久亚洲春色中文字幕久久久| 一区二区三区美女视频| 国产露脸91国语对白| 欧美日韩激情在线| 成人欧美一区二区三区白人| 精品写真视频在线观看| 欧美亚洲一区二区在线观看| 久久精品视频网| 日韩不卡一区二区| 在线国产亚洲欧美| 国产精品美女视频| 韩国av一区二区三区四区| 欧美日韩一级二级| 亚洲柠檬福利资源导航| 国产精品66部| 日韩女优制服丝袜电影| 午夜亚洲福利老司机| 色综合久久天天综合网| 日本一区二区在线不卡| 久久av中文字幕片| 欧美老女人在线| 一区2区3区在线看| 97aⅴ精品视频一二三区| 国产人伦精品一区二区| 久久草av在线| 日韩写真欧美这视频| 亚洲成av人综合在线观看| 91啦中文在线观看| 最新中文字幕一区二区三区| 成人污视频在线观看| 国产日韩欧美一区二区三区乱码 | 精品久久人人做人人爰| 日韩成人伦理电影在线观看| 欧美三区在线观看| 夜夜精品视频一区二区| 色婷婷久久99综合精品jk白丝| 国产精品久久精品日日| 成人精品视频网站| 国产亚洲精品福利| 国产精品亚洲视频| 欧美经典一区二区| 国产成人av网站| 欧美精彩视频一区二区三区| 国产不卡在线播放| 国产精品女同互慰在线看| 成人黄色小视频| 国产精品你懂的在线欣赏| a级精品国产片在线观看| 中文字幕五月欧美| 日本久久精品电影| 亚洲国产精品久久不卡毛片 | www.在线成人| 亚洲手机成人高清视频| 色狠狠色噜噜噜综合网| 亚洲电影视频在线| 日韩三级.com| 国产一区二区三区黄视频| 国产欧美日韩精品a在线观看| 国产成人在线视频网址| 国产精品久久久久久福利一牛影视 | 欧美自拍偷拍一区| 午夜久久久久久| 日韩欧美国产1| 成人美女视频在线看| 一区二区久久久久久| 欧美一区二区三区在线电影| 精品无码三级在线观看视频| 中文字幕乱码日本亚洲一区二区| 99国产欧美另类久久久精品| 亚洲成人www| 欧美精品一区二区三区四区| 成人免费电影视频| 香蕉久久一区二区不卡无毒影院 | 久久99日本精品| 欧美极品少妇xxxxⅹ高跟鞋| 色偷偷成人一区二区三区91| 午夜国产精品一区| 久久久久久久久久美女| 色伊人久久综合中文字幕| 日本伊人午夜精品| 国产精品色眯眯| 欧美日韩成人一区| 国产成人精品免费| 午夜在线电影亚洲一区| 国产亚洲人成网站| 欧美写真视频网站| 国产高清久久久久| 亚洲一二三区视频在线观看| 久久综合九色综合欧美98 | 成人免费高清视频在线观看| 亚洲成人动漫一区| 国产精品日产欧美久久久久| 欧美精品亚洲二区| a亚洲天堂av| 精品综合免费视频观看| 一区二区三区四区不卡在线| 精品国产髙清在线看国产毛片| 91久久精品国产91性色tv| 国产一区二区不卡| 天天综合色天天|