汇编0号中断程序模拟
来源:互联网 发布:淘宝怎么根据图片搜索 编辑:程序博客网 时间:2024/04/29 12:55
1.什么是中断?
中断是指cpu停止当前指令,转而去执行其他指令或代码的一种机制,其中中断的信息被保存在中断向量表中。
80x86中断向量
I/O ADDR
INT TYPE(16进制)
FUNCTION
00 ~ 03
0
除法溢出中断
04 ~ 07
1
单步(用于DEBUG)
08 ~ 0B
2
非屏蔽中断(NMI)
0C ~ 0F
3
断点中断(用于DEBUG)
10 ~ 13
4
溢出中断
14 ~ 17
5
打印屏幕
18 ~ 1F
6/7
保留
2.我们来模拟0号中断,即除法溢出中断
DATAS SEGMENT DATAS ENDSSTACKS SEGMENT dw 8 dup(0)STACKS ENDSCODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKSSTART:mov ax,0 mov es,ax ;标记目标内存段地址 mov di,0200h ;标记目标地址偏移量 mov ax,cs ;标记源段地址 mov ds,ax mov si,offset do0 ;标记源地址偏移地址 mov cx,offset do0end-offset do0 ;标记字符处理函数代码长度 mov word ptr es:[0],di mov word ptr es:[2],es cld rep movsb int 00h ;模拟0号中断 do0:jmp do1 db 'overflow' do1:mov bx,cs mov ds,bx mov si,0202h ;因为jmp指令占2字节,所以di偏移量为202h mov di,12*160+5*2 mov ax,0b800h ;标记显存地址 mov es,ax mov cx,8 s:mov byte ptr al,ds:[si] ;高位地址记录字符属性,低位地址记录字符ASCII码 mov byte ptr es:[di],al inc si add di,2 loop s mov ax,4c00h int 21h do0end:nop ;标记结束以方便记录指令长度CODES ENDS END START
1 0
- 汇编0号中断程序模拟
- 模拟0号中断程序
- 8086汇编0号中断处理程序
- 汇编~~~~~~~~~中断处理程序
- S3C2440汇编中断程序
- 王爽汇编 实验12编写0号中断处理程序
- 王爽 汇编 实验12 编写0号中断的处理程序
- 【汇编】重写0号中断(除法溢出中断)
- 【汇编】改进版的0号中断
- 汇编--学习笔记(十三)-中断及中断处理程序
- 修改0号中断程序
- 汇编--中断
- 汇编------中断
- 51汇编模拟PT2272解码程序
- 51汇编模拟PT2272解码程序
- 【16位汇编】 模拟谈钢琴程序
- 第一个DOS中断处理程序(中断号为0)
- 用汇编实现中断的一个小程序
- Appium真机运行测试用例讲解
- linux下vi命令大全
- 删除github上的远程分支
- 命令提示符 cmd
- mouseover ,mouseout ,mouseenter,mouseleave区别
- 汇编0号中断程序模拟
- Matlab分类器大全
- python 剪刀石头布的入门demo
- 初识Spring框架笔记 (1)
- ImageMagick
- jetty,tomcat比较
- 集合框架_泛型高级之通配符
- FunDA(1)- Query Result Row:强类型Query结果行
- PLSQL使用技巧