⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 00000001.htm

📁 80x86保护模式教程
💻 HTM
📖 第 1 页 / 共 2 页
字号:
EAX=00044A1C&nbsp;&nbsp;EBX=00000003&nbsp;&nbsp;ECX=00000000&nbsp;&nbsp;EDX=00000100&nbsp;<BR>ESI=00000000&nbsp;&nbsp;EDI=00000000&nbsp;&nbsp;EBP=00000000&nbsp;&nbsp;ESP=0000FFFE&nbsp;<BR>DS=4A1C&nbsp;&nbsp;SS=4A1C&nbsp;&nbsp;ES=4A1C&nbsp;&nbsp;FS=4A0C&nbsp;&nbsp;GS=4A0C&nbsp;<BR>-U&nbsp;1AE&nbsp;<BR>4A1C:000001AE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CLI&nbsp;<BR>4A1C:000001AF&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;LGDT&nbsp;&nbsp;&nbsp;&nbsp;CS:[BX]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;——→&nbsp;DUMP&nbsp;CS:[BX]&nbsp;——→&nbsp;&nbsp;<BR>4A1C:00000003&nbsp;&nbsp;18&nbsp;00&nbsp;C9&nbsp;A1&nbsp;04&nbsp;00&nbsp;&lt;---&nbsp;GDT&nbsp;表放在&nbsp;0004A1C9&nbsp;长度&nbsp;18h&nbsp;<BR>4A1C:000001B3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MOV&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR>EAX,CR0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;│&nbsp;<BR>4A1C:000001B6&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;OR&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR>EAX,1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;↓&nbsp;<BR>4A1C:000001BA&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MOV&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CR0,EAX&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR>4A1C:00000009&nbsp;&nbsp;00&nbsp;00&nbsp;00&nbsp;00&nbsp;00&nbsp;00&nbsp;00&nbsp;00-FF&nbsp;FF&nbsp;C0&nbsp;A1&nbsp;04&nbsp;9B&nbsp;00-00&nbsp;<BR>4A1C:000001BD&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;JMP&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;01C0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR>4A1C:00000010&nbsp;&nbsp;FF&nbsp;FF&nbsp;00&nbsp;80&nbsp;0B&nbsp;93&nbsp;00&nbsp;00&nbsp;(GDT表)&nbsp;<BR>4A1C:000001BF&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NOP&nbsp;<BR>4A1C:000001C0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MOV&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;AX,0008H&nbsp;<BR>4A1C:000001C3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MOV&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DS,AX&nbsp;<BR>4A1C:000001C5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MOV&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WORD&nbsp;PTR&nbsp;DS:[0000H],7041h&nbsp;<BR>&nbsp;&nbsp;<BR>&nbsp;&nbsp;<BR>由上面的&nbsp;GDT&nbsp;表知道&nbsp;此程式共规划了三个区段&nbsp;,其中&nbsp;0000&nbsp;区段是不使用&nbsp;<BR>故区段的表示方式如下:&nbsp;<BR>&nbsp;&nbsp;<BR>#0000&nbsp;&nbsp;Segment&nbsp;not&nbsp;present.&nbsp;<BR>#0008&nbsp;&nbsp;Base=0004A1C0&nbsp;&nbsp;Limit=0000FFFF&nbsp;&nbsp;Flags=9B&nbsp;&nbsp;USE32&nbsp;&nbsp;Byte&nbsp;granularity&nbsp;<BR>#0010&nbsp;&nbsp;Base=000B8000&nbsp;&nbsp;Limit=0000FFFF&nbsp;&nbsp;Flags=93&nbsp;&nbsp;USE32&nbsp;&nbsp;Byte&nbsp;granularity&nbsp;<BR>&nbsp;&nbsp;<BR>&nbsp;&nbsp;<BR>&nbsp;&nbsp;<BR>-G&nbsp;1BD&nbsp;<BR>EAX=00000001&nbsp;&nbsp;EBX=00000003&nbsp;&nbsp;ECX=00000000&nbsp;&nbsp;EDX=00000100&nbsp;<BR>ESI=00000000&nbsp;&nbsp;EDI=00000000&nbsp;&nbsp;EBP=00000000&nbsp;&nbsp;ESP=0000FFFE&nbsp;<BR>DS=4A1C&nbsp;&nbsp;SS=4A1C&nbsp;&nbsp;ES=4A1C&nbsp;&nbsp;FS=4A0C&nbsp;&nbsp;GS=4A0C&nbsp;<BR>4A1C:000001BD&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;JMP&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;01C0&nbsp;<BR>&nbsp;&nbsp;<BR>-T&nbsp;(这儿就算是进入保护模式了)&nbsp;<BR>EAX=00000001&nbsp;&nbsp;EBX=00000003&nbsp;&nbsp;ECX=00000000&nbsp;&nbsp;EDX=00000100&nbsp;<BR>ESI=00000000&nbsp;&nbsp;EDI=00000000&nbsp;&nbsp;EBP=00000000&nbsp;&nbsp;ESP=0000FFFE&nbsp;<BR>DS=0000&nbsp;&nbsp;SS=0000&nbsp;&nbsp;ES=0000&nbsp;&nbsp;FS=0000&nbsp;&nbsp;GS=0000&nbsp;<BR>0000:000001C0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MOV&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;AX,0008H&nbsp;<BR>0000:000001C3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MOV&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DS,AX&nbsp;<BR>0000:000001C5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MOV&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WORD&nbsp;PTR&nbsp;DS:[0000H],7041h&nbsp;<BR>&nbsp;&nbsp;<BR>&nbsp;&nbsp;<BR>&nbsp;&nbsp;<BR>因为进入保护模式&nbsp;,所以&nbsp;Selector&nbsp;的区段应该要去查&nbsp;GDT&nbsp;表格&nbsp;,这个例&nbsp;<BR>子的&nbsp;Selector&nbsp;0010&nbsp;的&nbsp;Base&nbsp;=&nbsp;B8000&nbsp;,所以...&nbsp;<BR>保护模式下的&nbsp;0010:00000000&nbsp;=&nbsp;真实模式下的&nbsp;B800:0000&nbsp;,这样您懂了吗?&nbsp;<BR>&nbsp;&nbsp;<BR>在行号&nbsp;1C5&nbsp;的位址有一行写入&nbsp;7041&nbsp;的动作&nbsp;,就是在萤幕秀&nbsp;'A'&nbsp;反白字元.&nbsp;<BR>&nbsp;&nbsp;<BR>最後要进入真实模式时&nbsp;,只要将&nbsp;CR0&nbsp;的&nbsp;Bit0&nbsp;设为&nbsp;'0'&nbsp;,再用一个跳越指&nbsp;<BR>令就回到真实模式了..&nbsp;<BR>&nbsp;&nbsp;<BR>--------------------------------------------------------------------------&nbsp;<BR>後记:&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;若有问题&nbsp;,烦在本站『站内信箱』留信给我....尽量避免使用网路信&nbsp;,&nbsp;<BR>且尽快提出&nbsp;,否则接下来的课程将会更难懂&nbsp;,如果你是完全不懂&nbsp;,麻烦也留&nbsp;<BR>信给我&nbsp;,我会再把这一章节再细细重新说明。至於对组合语言不懂&nbsp;,或是对&nbsp;<BR>保护模式没兴趣的人&nbsp;,本人就帮不上忙了。&nbsp;<BR>&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;A:下一次笔者将继续解说&nbsp;V86&nbsp;模式下的工作切换&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;B:等级权限&nbsp;/&nbsp;拦&nbsp;I/O&nbsp;<BR>&nbsp;&nbsp;<BR>┌———————————————————————————————————┐&nbsp;<BR>│&nbsp;&nbsp;Soft&nbsp;Bugger&nbsp;软体蛀虫&nbsp;90:90/2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;软体新技术的实行者&nbsp;&nbsp;│&nbsp;<BR>│&nbsp;&nbsp;BBS:02-5955461&nbsp;24HR&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ID:Werong&nbsp;Ho&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;--&nbsp;软蛀&nbsp;--&nbsp;&nbsp;│&nbsp;<BR>└———————————————————————————————————┘&nbsp;<BR>&nbsp;&nbsp;<BR>&nbsp;&nbsp;<BR>&nbsp;<BR><CENTER><H1>BBS水木清华站∶精华区</H1></CENTER></BODY></HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -