zoukankan      html  css  js  c++  java
  • protect.inc

    Des_32  EQU 4000h ; 32 位段
    Des_16  EQU 0000h ; 16 位段
    Des_G  EQU 8000h ; 段界限粒度, G=1 表示界限粒度为4K 字节


    Des_DPL0  EQU   00h ; DPL = 0 00 0  0000
    Des_DPL1  EQU   20h ; DPL = 1 01 0  0000
    Des_DPL2  EQU   40h ; DPL = 2 10 0  0000
    Des_DPL3  EQU   60h ; DPL = 3 11 0  0000

    Des_DR  EQU 90h ;1001  0000  存在的 只读     数据段类型值
    Des_DRW  EQU 92h ;1001  0010  存在的 可读写   数据段属性值
    Des_DRWA EQU 93h ;1001  0011  存在的 可读写  已访问  数据段类型值

    Des_DRWAS EQU 93h ;1001  0111  存在的 可读写  已访问  数据段类型值

    Des_C  EQU 98h ;1001  1000  存在的 只执行  代码段属性值
    Des_CR  EQU 9Ah ;1001  1010  存在的 可执行可读  代码段属性值
    Des_CE  EQU 9Ch ;1001  1100  存在的 只执行    一致 代码段属性值
    Des_CER  EQU 9Eh ;1001  1110  存在的 可执行可读一致  代码段属性值

    Des_LDT  EQU   82h ;1000  0010  局部描述符表段类型值
    Des_TaskGate EQU   85h ;1000  0101  任务门类型值
    Des_386TSS EQU   89h ;1000  1001 可用 386 任务状态段类型值
    Des_386CGate EQU   8Ch ;1000  1100  386 调用门类型值
    Des_386IGate EQU   8Eh ;1000  1110  386 中断门类型值
    Des_386TGate EQU   8Fh ;1000  1111  386 陷阱门类型值

    Sel_RPL0  EQU 0 ; ┓
    Sel_RPL1  EQU 1 ; ┣ RPL
    Sel_RPL2  EQU 2 ; ┃
    Sel_RPL3  EQU 3 ; ┛

    Sel_TIG  EQU 0 ; ┓TI
    Sel_TIL  EQU 4 ; ┛

    PG_P  EQU 1 ; 页存在属性位
    PG_RWR  EQU 0 ; R/W 属性位值, 读/执行
    PG_RWW  EQU 2 ; R/W 属性位值, 读/写/执行
    PG_USS  EQU 0 ; U/S 属性位值, 系统级
    PG_USU  EQU 4 ; U/S 属性位值, 用户级

    %macro Descriptor 3     ; 段基址, 段界限,  属性
     dw %2 & 0FFFFh    ; 段界限 1    (2 字节)
     dw %1 & 0FFFFh    ; 段基址 1    (2 字节)
     db (%1 >> 16) & 0FFh   ; 段基址 2    (1 字节)
     dw ((%2 >> 8) & 0F00h) | (%3 & 0F0FFh) ; 属性 1 + 段界限 2 + 属性 2  (2 字节)
     db (%1 >> 24) & 0FFh   ; 段基址 3    (1 字节)
    %endmacro ; 共 8 字节

    %macro Gate 4      ; 选择子、偏移、属性1、属性2
     dw (%2 & 0FFFFh)    ; 偏移 1    (2 字节)
     dw %1     ; 选择子    (2 字节)
     dw (%3 & 1Fh) | ((%4 << 8) & 0FF00h) ; 属性     (2 字节)
     dw ((%2 >> 16) & 0FFFFh)   ; 偏移 2    (2 字节)
    %endmacro ; 共 8 字节

  • 相关阅读:
    【Docker】命令 restart
    【Docker】命令 rename
    小知识点笔记一(原始版)
    Java常用类——匿名对象
    Java常用类——Arrays工具类
    Java常用类——Scanner类
    Python怎么测试异步接口
    接口测试面试题
    Pycharm使用常见问题
    接口测试命令Httpie的使用
  • 原文地址:https://www.cnblogs.com/sunkang/p/2038828.html
Copyright © 2011-2022 走看看