第一范文网 - 专业文章范例文档资料分享平台

北邮微机原理软件实验报告

来源:用户分享 时间:2025/5/20 10:26:17 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

.

stc rcl bx,1 loop a7 jmp a9 a8: clc rcl bx,1 loop a7 jmp a9

error1: mov ah,09h mov dx,seg message1 mov ds,dx mov dx,offset message1 int 21h jmp a1

error2: mov ah,09h mov dx,seg message1 mov ds,dx mov dx,offset message1 int 21h jmp a6

a9: mov cx,0000h pop ax div bx cmp bx,20h jz a14 push dx push ax mov ah,09h mov dx,seg message4 mov ds,dx mov dx,offset message4 int 21h mov bx,08h call xianshi mov bx,08h pop cx call xianshi mov ah,09h mov dx,seg message5 mov ds,dx mov dx,offset message5 int 21h mov bx,08h

Word 资料

;输入错误提示

.

pop cx call xianshi a14: pop dx ;恢复中断向量表

pop cx push ds mov ds,cx mov al,0 mov ah,25h int 21h pop ds ret start endp xianshi proc near a11: test cx,10000000b jz a10 mov ah,02h mov dl,'1' int 21h sal cx,1 dec bx jnz a11 jmp a12 a10: mov ah,02h mov dl,'0' int 21h sal cx,1 dec bx jnz a11 a12: ret xianshi endp int00 proc far

pop cx add cx,2 push cx cmp bx,0 jne next mov ah,09h mov dx,seg message mov ds,dx mov dx,offset message int 21h mov bx,20h jmp finish

Word 资料

;修改后的中断服务子程序 ;修改返回地址

;除数为0,显示错误信息; 退出

.

next: push ax mov dx,ax mov dx,0 div bx mov cx,ax pop ax div bx finish:iret int00 endp code ends end start

;做除法,被除数低16位AX暂存于堆栈 ; 被除数高16位改为低16位 ; 被除数高16位为0 ; 第一次除法 ; 保存高16位的商于CX

;恢复低16位被除数,高16位是上次的余数 ;商是CX:AX,余数是DX

五.运行结果

Word 资料

.

六.预习题

1.如何保护原有中断向量表中的中断服务程序的入口地址?

答:先读取中断向量表中0号中断的地址,压入堆栈,程序结束时弹出堆栈,写回中断向量表即可。

2.如何将你的中断服务程序入口地址置入中断向量表?

答:可以进行DOS功能调用,25H号用来把中断向量表写入DS:DX,35H号读取ES:BX中断向量表。其中,AL为中断类型。

Word 资料

搜索更多关于: 北邮微机原理软件实验报告 的文档
北邮微机原理软件实验报告.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c4juy28vr9j6msol1o4w75dq8n1si8z00uad_8.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top