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

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

?? 386ldt.asm

?? suanfa de shiyan xw dui gan xingqu de pengyou you bangzhu
?? ASM
字號(hào):
;**********************************************************************
;   保護(hù)模式下的編程示例 			陳家祺	1996.6
;       ---局部描述符的應(yīng)用方法	
;   1 實(shí)模式進(jìn)入保護(hù)模式及保護(hù)模式返回實(shí)模式方法
;   2 保護(hù)模式下的指令操作(直接寫(xiě)屏,滿屏顯示'A')
;   * 環(huán)境: MASM6.0,TASM3.0, DOS6.2, 80486主機(jī), Himem.sys, 不能裝載Emm386.exe
;           不能裝載Emm386.exe,因?yàn)镋mm386.exe裝載后,cpu處于虛擬8086方式下
;**********************************************************************
jumpfar	MACRO	segf,offsetf		; 保護(hù)模式跳轉(zhuǎn)指令
	db 0eah				; 功能與目的:
	dw offsetf			; 1. 清除指令隊(duì)列
	dw segf				; 2. segf -> CS;offsetf -> IP
	ENDM

desc 	struc			; 描述符的結(jié)構(gòu)
  limit_15_0    dw ?		; 界限15-0
  base_15_0   	dw ?		; 基地址15-0
  base_23_16   	db ?		; 基地址23-16
  access   	db ?		; 訪問(wèn)權(quán)
  gran     	db ?		; 粒度,類型,界限19-16
  base_31_24   	db ?		; 基地址31-24
desc 	ends

dos_data  segment 		; 數(shù)據(jù)段
char		db   'A'	; 要顯示的字符
save_ss		dw ?		; SS保存區(qū)

;	*****	GDT 描述符表	*****
gdt_def		LABEL	BYTE
		desc < >		; 必須為空描述符
gdt_kcs		desc <0ffffh,    ?,  ?,9ah,0fh,00h>	;00000 - fffffH (1Mb)
gdt_kds		desc <00000h,    ?,  ?,92h,00h,00h> 	;00000 - 00000H (1b)
gdt_kss		desc <00000h,    ?,  ?,96h,00h,00h>;(sp=)00400 - 00000H (1K)
gdt_ldt1	desc <ldt1_end-ldt1_def, ?, ?,82h,00h, ? > ;LDT1表的描述符  
gdt_ldt2	desc <ldt2_end-ldt2_def, ?, ?,82h,00h, ? > ;LDT2表的描述符  
gdt_end		LABEL	BYTE
					; 設(shè)置GDTR用
gdtsize		dw gdt_end-gdt_def	; GDT描述符表的長(zhǎng)度
gdtload		dw ?			; GDT描述符表的線性基地址15-0,
		dw ?			; GDT描述符表的線性基地址31-16
;	*****	LDT1 描述符表	*****
ldt1_def	LABEL	BYTE
ldt1_uds	desc <0ffffh,8000h,0bh,92h,00h,00h>	;00000 - 0ffffH (64Kb)
ldt1_end	LABEL	BYTE
;	*****	LDT2 描述符表	*****
ldt2_def	LABEL	BYTE
ldt2_uds	desc <0ffffh,0000h,00h,92h,0fh,00h>	;00000 - fffffH (1Mb)
ldt2_end	LABEL	BYTE
				; GDT的選擇子
gdt_kcs_sel 	equ 08h		; CS選擇子
gdt_kds_sel 	equ 10h		; DS選擇子
gdt_kss_sel 	equ 18h		; SS選擇子
gdt_ldt1_sel 	equ 20h		; LDT1表的選擇子
gdt_ldt2_sel 	equ 28h		; LDT2表的選擇子
ldt1_uds_sel 	equ 04h		; LDT1的用戶DS選擇子
ldt2_uds_sel 	equ 04h		; LDT2的用戶DS選擇子

dos_data	ends

dos_stack   	segment stack  		; 堆棧段
		db 1024 dup (0)
dos_stack_sp 	dw 0
dos_stack 	ends

dos_code 	segment 		; 代碼段
	assume  cs:dos_code, ds:dos_data, ss:dos_stack
main 	proc near
start :
	mov ax,dos_data
	mov ds,ax			; 設(shè)置DS
	cli
	mov ax,dos_stack
	mov ss,ax			; 設(shè)置SS
	mov save_ss,ax			; 保存SS
	mov sp,offset dos_stack_sp	; 設(shè)置SP, 定義堆棧

	call prot			; 調(diào)用保護(hù)模式操作子程

	sti
	mov	ah,0
	int	16h			; BIOS鍵盤中斷調(diào)用,等待按鍵!
	mov ah,4ch
	int 21h				; 返回DOS!
main endp

.386p
prot 	proc near
;	*****	設(shè)置GDT描述符的基地址	*****
	mov di,offset gdt_kcs		; 設(shè)置CS描述符的基地址
	mov ax,cs			; 將實(shí)模式DOS的段地址
	call copy_desc			; 換算為線性基地址

	mov di,offset gdt_kds		; 設(shè)置DS描述符的基地址
	mov ax,ds			; 將實(shí)模式DOS的段地址
	call copy_desc			; 換算為線性基地址

	mov di,offset gdt_kss		; 設(shè)置SS描述符的基地址
	mov ax,ss			; 將實(shí)模式DOS的段地址
	call copy_desc			; 換算為線性基地址

	mov ax,ds			; 計(jì)算GTD表的線性地址
	mov cx,10h
	mul cx
	add ax,offset gdt_def
	adc dx,0
	mov gdtload,ax
	mov gdtload+2,dx

;	*****	設(shè)置LDT1描述符的基地址	*****
	mov di,offset gdt_ldt1		; 設(shè)置DS描述符的基地址
	mov bx,offset ldt1_def		; 將實(shí)模式DOS的段地址
	call copy_ldt_desc		; 換算為線性基地址

;	*****	設(shè)置LDT1描述符的基地址	*****
	mov di,offset gdt_ldt2		; 設(shè)置DS描述符的基地址
	mov bx,offset ldt2_def		; 將實(shí)模式DOS的段地址
	call copy_ldt_desc		; 換算為線性基地址

	LGDT fword ptr gdtsize		; 裝載GDT

	mov ax,gdt_kss_sel		; 初始化保護(hù)模式的ss
	mov ss,ax			; 在保護(hù)模式下初始化ss將出錯(cuò)!
					; 原因?
	mov eax,cr0			
	or  al,1			; 設(shè)置控制寄存器CR0的PE位
	mov cr0,eax			; 進(jìn)入保護(hù)模式
	jumpfar	gdt_kcs_sel,prot_user	; 清除指令隊(duì)列,
prot_user:				; CS=gdt_kcs_sel(保護(hù)模式碼段)
	call vram_disp			; 調(diào)用保護(hù)模式下顯示子程

	mov eax,cr0			
	and al,0feh			; 清除控制寄存器CR0的PE位
	mov cr0,eax			; 切換到實(shí)模式
	jumpfar	dos_code,real_mode	; 清除指令隊(duì)列,CS=dos_code(實(shí)模式碼段) 
real_mode:				
	mov ax,dos_data
	mov ds,ax
	mov ss,save_ss			; 恢復(fù)堆棧段
	ret
prot  endp

vram_disp proc near			; 保護(hù)模式下直接寫(xiě)屏子程
	pushad
	mov ax,gdt_kds_sel		; 設(shè)置GDT的數(shù)據(jù)段
	mov ds,ax
	mov dl,char			; 取出要顯示字符'A'
	mov ax,gdt_ldt1_sel		; 設(shè)置LDT1的選擇子	
	LLDT ax               		; 裝載LDT1 -> LDTR
	mov ax,ldt1_uds_sel		; 設(shè)置LDT1的數(shù)據(jù)段
	mov ds,ax
	mov ebx,000000h
	mov ah,17h			; 字符顏色屬性,藍(lán)底白字
	mov al,dl			; 顯示字符'A'
	mov [ebx],ax

	mov ax,gdt_ldt2_sel		; 設(shè)置LDT2的選擇子		
	LLDT ax               		; 裝載LDT2 -> LDTR
	mov ax,ldt2_uds_sel		; 設(shè)置LDT1的數(shù)據(jù)段
	mov ds,ax
	mov ebx,0b8002h
	mov ah,1eh			; 字符顏色屬性,藍(lán)底黃字
	mov al,dl			; 顯示字符'A'
	mov [ebx],ax
	popad
	ret
vram_disp endp	

copy_desc proc near			; 設(shè)置描述符的基地址
	mov cx,10h			; 將實(shí)模式DOS的段地址
	mul cx				; 換算為24位線性地址
	mov [di].base_15_0,ax		; 存入描述符中
	mov [di].base_23_16 ,dl
	ret
copy_desc endp
copy_ldt_desc proc near			; 設(shè)置LDT描述符的基地址
	mov ax,ds			; 將LDT表的基地址
	mov cx,10h			; 換算為32位線性地址
	mul cx
	add ax,bx
	adc dx,0			
	mov [di].base_15_0,ax		; 存入描述符中
	mov [di].base_23_16 ,dl
	mov [di].base_31_24 ,dh
	ret
copy_ldt_desc endp

dos_code ends
   	end start
;****************************** 源程序結(jié)束 ******************************

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91亚洲男人天堂| 国产在线精品视频| 国产色婷婷亚洲99精品小说| 99国产精品国产精品毛片| 免费人成在线不卡| 亚洲色图都市小说| 欧美α欧美αv大片| 欧美曰成人黄网| 成人av在线观| 精品一区二区三区在线播放视频 | 一区二区欧美精品| 精品第一国产综合精品aⅴ| 在线亚洲一区二区| 国产精品综合一区二区三区| 婷婷综合在线观看| 一级日本不卡的影视| 国产精品毛片高清在线完整版| 欧美一区二区福利在线| 在线一区二区视频| 97精品久久久久中文字幕| 国产一区二区三区黄视频| 亚洲成人综合网站| 一区二区三区色| 亚洲欧美一区二区久久| 国产精品久久久久久久久快鸭| 精品国一区二区三区| 欧美一区二区性放荡片| 欧美日韩色综合| 欧美视频一区二区在线观看| 91影视在线播放| www.亚洲色图| 99久久99久久精品国产片果冻| 国产v日产∨综合v精品视频| 九一久久久久久| 久久成人羞羞网站| 麻豆精品一区二区av白丝在线| 亚洲一区二区欧美| 亚洲午夜一区二区| 亚洲一区免费视频| 亚洲国产va精品久久久不卡综合 | 日韩一区在线播放| 日韩一区中文字幕| 国产精品二区一区二区aⅴ污介绍| 国产色婷婷亚洲99精品小说| 欧美国产成人在线| 国产精品伦一区| 亚洲视频一区二区在线观看| 亚洲欧洲中文日韩久久av乱码| 最新不卡av在线| 尤物av一区二区| 亚洲成精国产精品女| 蜜臀91精品一区二区三区| 国产在线麻豆精品观看| 国产成人免费视频网站高清观看视频| 国产精品影视网| caoporn国产一区二区| 91国偷自产一区二区三区观看| 在线视频综合导航| 欧美久久免费观看| 亚洲精品在线观看网站| 国产日本亚洲高清| 成人免费视频在线观看| 亚洲成人黄色影院| 精品一区免费av| 91美女片黄在线观看| 欧美精品xxxxbbbb| 2023国产精华国产精品| 国产精品久久久久久久久晋中| 亚洲精品中文字幕在线观看| 亚洲国产sm捆绑调教视频| 日本一道高清亚洲日美韩| 国产高清精品网站| 欧美在线观看一二区| 精品国产sm最大网站免费看| 国产欧美日韩在线观看| 亚洲一级二级在线| 精品在线免费观看| 91农村精品一区二区在线| 欧美一卡2卡3卡4卡| 中文文精品字幕一区二区| 一区二区三区在线观看动漫| 青娱乐精品在线视频| 成人深夜福利app| 欧美精品777| 国产精品久久久久国产精品日日| 亚洲资源在线观看| 寂寞少妇一区二区三区| 91色综合久久久久婷婷| 51精品国自产在线| 午夜婷婷国产麻豆精品| 国产精品亚洲午夜一区二区三区| 91同城在线观看| 26uuu精品一区二区在线观看| 综合激情成人伊人| 韩国中文字幕2020精品| 色综合久久中文综合久久牛| 日韩视频免费观看高清完整版| 日本一区二区三区四区| 午夜国产不卡在线观看视频| 国产91富婆露脸刺激对白| 制服丝袜亚洲精品中文字幕| 亚洲欧洲三级电影| 国产精品456| 日韩午夜精品电影| 亚洲aⅴ怡春院| 99久久精品免费看| 久久精品在线免费观看| 日韩—二三区免费观看av| 色综合久久天天| 中文成人av在线| 国产一区高清在线| 欧美一区中文字幕| 亚洲国产精品久久一线不卡| 99这里都是精品| 国产人久久人人人人爽| 精品一区二区在线视频| 4hu四虎永久在线影院成人| 亚洲已满18点击进入久久| 成av人片一区二区| 国产欧美日韩在线看| 国产在线视视频有精品| 日韩一二三四区| 午夜精品在线看| 欧美日韩一级大片网址| 亚洲黄色小说网站| 色狠狠一区二区| 亚洲男人的天堂在线观看| www.综合网.com| 国产精品久久久久三级| 成人精品一区二区三区四区| 国产亚洲综合av| 丰满岳乱妇一区二区三区| 久久久91精品国产一区二区精品| 精品一区二区三区视频在线观看| 日韩三级视频中文字幕| 久久精品理论片| 日韩精品一区在线| 精品一区二区在线视频| 久久蜜桃av一区二区天堂 | 17c精品麻豆一区二区免费| 国产传媒久久文化传媒| 久久只精品国产| 国产美女精品在线| 国产亚洲人成网站| 成人午夜私人影院| 亚洲欧美怡红院| 在线视频国产一区| 偷拍自拍另类欧美| 精品日韩欧美一区二区| 国产资源在线一区| 中文欧美字幕免费| 91成人免费在线| 视频一区在线视频| 欧美tickle裸体挠脚心vk| 国产精品99久久久| 亚洲免费观看视频| 91精品蜜臀在线一区尤物| 久久99精品久久久久久久久久久久| 日韩精品一区二区三区视频在线观看 | 欧美一区二区私人影院日本| 免费欧美在线视频| 天堂av在线一区| 精品国产一区二区精华| 国产91丝袜在线18| 亚洲一区二区视频| 日韩一级高清毛片| 成人免费观看视频| 亚洲成在线观看| 国产亚洲综合性久久久影院| 色婷婷av久久久久久久| 日本中文在线一区| 欧美激情一区在线观看| 91福利在线播放| 久久99精品国产麻豆婷婷洗澡| 国产精品视频线看| 欧美日韩视频在线第一区| 国产精品亚洲成人| 亚洲高清免费在线| 中文字幕va一区二区三区| 欧美午夜精品一区| 国产精品一品视频| 亚洲成人黄色影院| 国产精品美女久久久久久2018| 欧美日韩精品高清| 粉嫩av亚洲一区二区图片| 亚洲18影院在线观看| 国产日韩av一区二区| 欧美日韩一区二区三区高清| 国产精品自拍av| 三级不卡在线观看| 亚洲欧洲av一区二区三区久久| 欧美一区二区黄色| 91网页版在线| 国产91综合一区在线观看| 日本在线不卡一区| 亚洲免费在线观看视频| 欧美精品一区二区三区很污很色的| 色欧美乱欧美15图片| 国产精品香蕉一区二区三区| 日韩国产精品久久久久久亚洲|