我是靠谱客的博主 儒雅歌曲,最近开发中收集的这篇文章主要介绍asm 8086 汇编除法溢出中断程序安装及配置中断向量表,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

asm 8086 汇编除法溢出中断程序安装及配置中断向量表

assume cs:code
; 安装除法溢出中断程序
code segment
start:
call st_of_i
mov ax,4c00h
int 21H
st_of_i:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; step 1: 设置要装载的代码的地址,si存储
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
mov ax,cs
mov ds,ax
mov si,offset sh_str
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; step 2: 代码要复制到的地址
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
mov ax,0
mov es,ax; 中断处理程序默认在内存 0段
mov di,200H; 溢出中断处理程序的偏移, 硬件规定
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; step 3: 开始传输中断处理程序
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
mov cx,offset div_of_end-offset sh_str; 传输长度
cld; 传输方向
rep movsb
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; step 4: 设置向量表
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
mov ax,0
mov es,ax
mov word ptr es:[0*4],200H
mov word ptr es:[0*4+2],0
ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
; show string start
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
sh_str:
jmp short sh_st
; 防止内存被覆写丢失, 类似定义方法局部变量
db "overflow!",0
sh_st:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; step 1: 取字符串,si首地址
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
mov ax,cs
mov ds,ax
mov ax,202h
add si,ax;首地址一定要取正确,根据代码位置去取
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; step 2: 输出位置,这里是是显存首地址(屏幕中间位置)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
mov ax,0B800H
mov es,ax
mov di,12*160+36*2; es:di 显存位置
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; step 3: 开始写
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
xor cx,cx
mov ah,2
s:
mov cl,[si]
mov ch,0
jcxz show_end
mov es:[di],cl
mov es:[di+1],ah
inc si
add di,2
jmp short s
show_end:
mov ax,4c00h
int 21H
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
; show string end
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
div_of_end: nop
code ends
end

最后

以上就是儒雅歌曲为你收集整理的asm 8086 汇编除法溢出中断程序安装及配置中断向量表的全部内容,希望文章能够帮你解决asm 8086 汇编除法溢出中断程序安装及配置中断向量表所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(42)

评论列表共有 0 条评论

立即
投稿
返回
顶部