当前位置: 代码迷 >> 汇编语言 >> 关于任务状态段的有关问题
  详细解决方案

关于任务状态段的有关问题

热度:4420   发布时间:2013-02-26 00:00:00.0
关于任务状态段的问题
在TSS的标准定义应该是104个字节(26*4字节)而在80x86hi变语言程序设计教程中有关于TSS的类型定义,
却是105个字节最后一个DB 0FFh为什么会多出这么一个字节?

Assembly code
TASKSS STRUC       ;其他省略,这里其他的都明白了       DW $ + 2   ;这句I/O许可位图区的指针       DB 0FFh    ;这句的意思TASKSS ENDS


------解决方案--------------------------------------------------------
可能是再加上后面(DB 0FFh )那字节变成105个字节。
------解决方案--------------------------------------------------------
地址 $: DW $ + 2 ;这句I/O许可位图区的指针 下面那个就是$+2
$+2 : DB 0FFh ;这句的意思

------解决方案--------------------------------------------------------
书上好像有写 结束位
------解决方案--------------------------------------------------------
是104个字节无疑。
偏移102处是I/O位图的位移。如果小于等于104则说明没有I/O位图
------解决方案--------------------------------------------------------
这句:
Assembly code
DW $ + 2   ;这句I/O许可位图区的指针
------解决方案--------------------------------------------------------
大哥呀。。。你TSS描述符里不是有段界限么!TSS描述符的段界限(长度)减去104,不就。。。
  相关解决方案