8086的内中断典型如int 21h的分析
- 除法错误:0执行div指令产生除法溢出
- 单步执行:1
- 执行into指令:4
- 执行int n指令,立即数n为中断类型码
- CPU接到中断信息:执行中断处理程序
- 中断信息和入口地址联系:中断向量表共1024个字节256个中断
- 每个入口地址占四个字节,放IP共2个字节和CS共2个字节
- 中断类型码和入口地址的映射关系
(IP) = (N * 4)
(CS) = (N * 4 + 2)
- 0号中断
assume cs:code
code segment
start:
mov ax,8
mov bx,0
div bx
mov ah,4ch
int 21h
code ends
end start
- 中断所在的位置
- 观察
INT 21H
,计算得0000:0084
- 中断过程由CPU硬件自动完成
- 由中断类型码找到中断向量并由它设置CS和IP
- 从中断信息取得中断类型码
- 标志寄存器的值入栈——中断过程要改变标志寄存器的值,需要保护
- 设置标志寄存器TF和IF为0
- CS内容入栈
- IP内容入栈
- 从中断向量表读取中断处理程序的入口地址,设置IP和CS
取得中断类型码N
pushf
TF = 0 IF = 0
push CS
push IP
(IP) = (N * 4),(CS) = (N * 4 + 2)
- CPU随时可能检测中断信息,所以中断程序常驻内存(一直存储在内存的某段空间中)
- 中断处理程序的入口地址,即中断向量,必须存储在中断向量表的表项中
(0000:0000 - 0000:03FF)
8086的内中断典型如int 21h的分析相关推荐
- INT 21H中断大全
中断INT 21H : 1.字符功能调用类(Character-Oriented Function)******************************************** 01H.0 ...
- 系统功能调用DOS中断INT 21H功能包单字符输入01单字符输出02字符串输入0a字符串输出09
微机原理与接口技术39讲 BIOS和DOS系统调用 BIOS更加底层,可以直接使用DOS DOS软中断INT 21H 调用步骤 单字符输入 按下回车退出 assume cs:codecode segm ...
- 汇编语言随笔(10)-内中断及实验12(返回到dos的中断处理程序)
不同类型内中断的区分-中断类型码 8086cpu中在下面4种情况下会产生内中断:(1),除法错误 (如之前提到的除法溢出) (2),单步执行 (3),执行into指令 ( ...
- 内中断---汇编学习笔记
内中断 "中断信息"是要求CPU马上进行某种处理,并向所要进行的该种处理提供了必备的参数的通知信息. 12.1 内中断的产生 当CPU内部有下面的情况发生的时候,将产生相应的中断信 ...
- 【汇编语言】王爽 - 内中断复习
0 前言 基于王爽<汇编语言>和Coursera的<计算机组成>课程. 1 中断分类 CPU在执行指令的过程中,产生了一个异常/中断,因为CPU只能同时执行一条指令,所以需要暂 ...
- 汇编语言笔记(四):内中断
汇编语言笔记:内中断 章节目录 概念 中断过程 示例: 0 号中断处理 作者能力有限, 如果您在阅读过程中发现任何错误, 还请您务必联系本人,指出错误, 避免后来读者再学习错误的知识.谢谢! 概念 中 ...
- 内中断,外中断,软中断,硬中断,异常,陷阱
不管是内中断,外中断,软中断还是硬中断都是按照中断源来划分的. 一.外中断 狭义上的中断(interruption)指的就是外中断. 指来自CPU执行指令以外的事件的发生,希望处理机能够向设备发下一个 ...
- 【汇编】 INT 21H 命令
INT 21H是指令自动转入中断子程序的入口 上面这句话很难理解吧,相信很多新手都看不懂在说什么. 下面我来举个例子: 以8086 CPU的汇编为例,输出一个字符串,就要使用如下指令: MOV AH, ...
- 使用emu8086学习汇编 int 21h 指令
INT 21H是DOS的中断调用,根据AH的值执行不同的功能: 在emu8086看一下: 单独输入一条指令: 进入仿真: 看一下程序代码,也就是用户程序,是存储在内存地址的01000.01001: R ...
最新文章
- Oracle按照时间统计总结
- 2.2 物理层传输介质
- 页面加载后如何使JavaScript执行?
- 发布本人汉化最后一个CommunityServer的版本,blog名称也改为 Asp.net源码交流中心...
- java缓存技术选型,重难点整理
- Matlab | Matlab从入门到放弃(6)——数组
- VS 2005竟然会突然失踪
- 360极速模式和兼容模式对页面的影响
- docker-compose参数介绍
- MATLAB矩阵的算术运算
- CNN_TensorFlow图像分类代码
- 重大网络教育计算机基础章节答案,网络教育计算机基础1答案
- linux 磁盘管理三部曲——(1)磁盘结构,认识分区
- win10PE安装到硬盘
- # 图书馆网上销售系统(c#+sql server)
- echarts的用法
- 《企业管理学》管理理论的产生于发展知识点总结
- Java学习方法——类的构造方法
- Physics-informed neural networks: A deep learning framework论文笔记
- Ext.TabPanel学习