段间呼叫gdt,为什么要call fword ptr [MyGateSelector]这样用?

duplicate 2003-12-27 01:25:59
段间呼叫gdt,为什么要call fword ptr [MyGateSelector]这样用
...全文
233 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
sh210 2003-12-28
  • 打赏
  • 举报
回复
补充Areslee(易水)
fword = 6 byte
但是以8字节对齐
Areslee 2003-12-27
  • 打赏
  • 举报
回复
FWORD=6 BYTE
QWORD=8 BYTE
sh210 2003-12-27
  • 打赏
  • 举报
回复
一个基本的调用不适用与这种定位于ring0而实际在ring3的callgate程序。我们需要进行"far call"
(inter-privilege level call), 因此为了调用callgate,必须这样做:

short farcall[3];
farcall[0 --> 1] = offset from the target operand. This is ignored when a
callgate is used

farcall[2] = callgate selector

----"IA-32 Intel Architecture Software Developer's Manual (Volume 2)" (see [5]).
csdsjkk 2003-12-27
  • 打赏
  • 举报
回复
MyGateSelector dd 偏移
dd 段选择子
duplicate 2003-12-27
  • 打赏
  • 举报
回复
fword,8个字节,为什么要把他转换为这样?请高手指教

21,460

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧