学保护模式遇到的问题,小弟求解!
时间:2010-12-17
来源:互联网
最近看《80X86汇编语言程序设计》,请问代码段中使用的宏指令JUMP,扩展时候是什么样子啊?
还有就是DB 0EAH的意思是什么,是jmp跳转指令的机器码吗?
杨季文书中的代码
JUMP MACRO selector,offsetv
DB 0EAH ;操作码
DW offsetv ;16位偏移
DW selector ;段值或者选择子
ENDM
.
.
.
.
DSEG SEGMENT USE16
GDT LABEL BYTE ;全局描述符表GDT
DUMMY DESCRIPTOR <> ;空描述符
CODE DESCRIPTOR < 0FFFFH, , ,ATCE, >
CODE_SEL = CODE - GDT ;代码段描述符的选择子
DATAS DESCRIPTOR <0FFFFH,0H,11H,ATDW,0>
DATAS_SEL = DATAS - GDT ;源数据段描述符的选择子
DATAD DESCRIPTOR < 0FFFFH, , ,ATDW, >
DATAD_SEL = DATAD - GDT ;目标数据段描述符的选择子
GDTLEN = $ - GDT
VGDTR PDESC <GDTLEN-1,> ;伪描述符
BUFFERLEN = 256 ;缓冲区字节长度
BUFFER DB BUFFERLEN DUP(0);缓冲区
DSEG ENDS
.
.
.
.
JUMP <CODE_SEL>,<OFFSET VIRTUAL>
还有就是DB 0EAH的意思是什么,是jmp跳转指令的机器码吗?
杨季文书中的代码
JUMP MACRO selector,offsetv
DB 0EAH ;操作码
DW offsetv ;16位偏移
DW selector ;段值或者选择子
ENDM
.
.
.
.
DSEG SEGMENT USE16
GDT LABEL BYTE ;全局描述符表GDT
DUMMY DESCRIPTOR <> ;空描述符
CODE DESCRIPTOR < 0FFFFH, , ,ATCE, >
CODE_SEL = CODE - GDT ;代码段描述符的选择子
DATAS DESCRIPTOR <0FFFFH,0H,11H,ATDW,0>
DATAS_SEL = DATAS - GDT ;源数据段描述符的选择子
DATAD DESCRIPTOR < 0FFFFH, , ,ATDW, >
DATAD_SEL = DATAD - GDT ;目标数据段描述符的选择子
GDTLEN = $ - GDT
VGDTR PDESC <GDTLEN-1,> ;伪描述符
BUFFERLEN = 256 ;缓冲区字节长度
BUFFER DB BUFFERLEN DUP(0);缓冲区
DSEG ENDS
.
.
.
.
JUMP <CODE_SEL>,<OFFSET VIRTUAL>
作者: sungodll 发布时间: 2010-12-17
0EAH应该是jmp跳转指令的机器码
作者: masmaster 发布时间: 2010-12-17
很面熟 我记得王爽老师附录讲JMP原理里面有,是JMP的机器码
作者: znxllyuan 发布时间: 2010-12-17
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28