阿西吧 发表于 2017-7-16 21:02:38

汇编语言上天之路(第60-63(内中断))


第60-63(内中断)
        内中断:CPU发来特殊的信息,然后CPU去处理这个特殊信息
        如下情况将发生中断信息:
                1.除法错误
                2.单步执行
                3.执行into指令
                4.执行int指令
       
        CPU对中断的处理要有中断类型码,中断类型码通过查找中断向量表来定位中断处理程序
        中断向量表:存放中断处理程序的入口地址(8086PC机,中断向量表在内存0000:0000-0000:03FF存放)
        一个表项占两个字节:高地址存放中断程序的段地址,低地址存放中断程序的偏移地址


        中断过程:
                1.从中断信息获取中断类型码N
                2.pushf
                3.TF = 0,IF = 0(防止在中断处理程序中再次中断)
                4.push cs
                5.push ip
                6.IP = N*4,CS = N*4+2

        中断处理程序要用iret返回:
        iret:
                pop IP
                pop CS
                popf

        单步中断:
                CPU执行一条语句之后,检测到TF=1就产生单步中断
                debug的t命令,就是CPU单步中断处理程序,功能为显示了寄存器内容再等待输入
       
        对栈指针的设置:
                不响应中断的,所以mov ss,ax执行后,CPU不响应任何中断,所以一般ss,sp一起设置
               

实验12:
        **** Hidden Message *****
页: [1]
查看完整版本: 汇编语言上天之路(第60-63(内中断))