• 【译】x86程序员手册36-9.9异常汇总


    9.9 Exception Summary 异常汇总

    Table 9-6 summarizes the exceptions recognized by the 386.

     

    Table 9-6. Exception Summary

     

    Description               Interrupt   Return Address  Exception     Function That Can Generate

    Number      Points to       Type          the Exception

    Faulting

    Instruction

     

    Divide error               0          YES             FAULT         DIV, IDIV

    Debug exceptions           1

    Some debug exceptions are traps and some are faults.  The exception

    handler can determine which has occurred by examining DR6.  (Refer to Chapter 12.)

    Some debug exceptions are traps and some are faults.  The exception

    handler can determine which has occurred by examining DR6.  (Refer to Chapter 12.) Any instruction

    Breakpoint                 3          NO              TRAP          One-byte INT 3

    Overflow                   4          NO              TRAP          INTO

    Bounds check               5          YES             FAULT         BOUND

    Invalid opcode             6          YES             FAULT         Any illegal instruction

    Coprocessor not available  7          YES             FAULT         ESC, WAIT

    Double fault               8          YES             ABORT         Any instruction that can

    generate an exception

    Coprocessor Segment

    Overrun                    9          NO              ABORT         Any operand of an ESC

    instruction that wraps around

    the end of a segment.

    Invalid TSS               10          YES             FAULT

    An invalid-TSS fault is not restartable if it occurs during the

    processing of an external interrupt.        JMP, CALL, IRET, any interrupt

    Segment not present       11          YES             FAULT         Any segment-register modifier

    Stack exception           12          YES             FAULT         Any memory reference thru SS

    General Protection        13          YES             FAULT/ABORT

    All GP faults are restartable. If the fault occurs while attempting to

    vector to the handler for an external interrupt, the interrupted program is

    restartable, but the interrupt may be lost.  Any memory reference or code

    fetch

    Page fault                14          YES             FAULT         Any memory reference or code

    fetch

    Coprocessor error         16          YES             FAULT

    Coprocessor errors are reported as a fault on the first ESC or WAIT

    instruction executed after the ESC instruction that caused the error.        ESC, WAIT

    Two-byte SW Interrupt     0-255       NO              TRAP          INT n

     

    9.10 Error Code Summary 错误代码汇总

    Table 9-7 summarizes the error information that is available with each exception.

    Table 9-7. Error-Code Summary

     

    Description                       Interrupt     Error Code

    Number

     

    Divide error                       0            No

    Debug exceptions                   1            No

    Breakpoint                         3            No

    Overflow                           4            No

    Bounds check                       5            No

    Invalid opcode                     6            No

    Coprocessor not available          7            No

    System error                       8            Yes (always 0)

    Coprocessor Segment Overrun        9            No

    Invalid TSS                       10            Yes

    Segment not present               11            Yes

    Stack exception                   12            Yes

    General protection fault          13            Yes

    Page fault                        14            Yes

    Coprocessor error                 16            No

    Two-byte SW interrupt             0-255         No

     

  • 相关阅读:
    Qt 数据库篇
    js字符串函数(转)
    如何解决IE无法识别html5中的新标签(article、abbr、header等)
    web多页打印问题
    诡异的Spinner级联样式
    discuz x2用户删除了,帖子不能用了,恢复帖子的办法
    创业公司如何招聘优秀工程师
    清除目录下的SVN信息
    .NET 项目SVN 全局排除设置
    编程技术面试的五大要点
  • 原文地址:https://www.cnblogs.com/mqmelon/p/6693600.html
Copyright © 2020-2023  润新知