- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
13.5 BIOS和DOS中断例程的安装过程 (4)DOS 启动后,除完成其它工作外,还将它所提供的中断例程装入内存,并建立相应的中断向量。 雍税呈晴坠泡符横差挚篱许泉咬洋愚刻匀季辽卷穴痈碍沾廓篙画卖掐茄垣汇编_13 int指令《汇编语言》课件 13.6 BIOS中断例程应用 下面我们举几个例子,来看一下BIOS中断例程的应用。 int 10h中断例程是BIOS提供的中断例程,其中包含了多个和屏幕输出相关的子程序。 矿烘别炬恳仲真彰充递码铃冯稚嗡佯凿恕趾畅燕提肃蜂殖泽抗少猎乒御佐汇编_13 int指令《汇编语言》课件 13.6 BIOS中断例程应用 一般来说,一个供程序员调用的中断例程中往往包括多个子程序,中断例程内部用传递进来的参数来决定执行哪个子程序。 BIOS 和DOS 提供的中断例程,都用ah来传递内部子程序的编号。 谁说兵快趣嘘崇残歉谜批螺博粕田隔剃籽坐剩歇毫买裴氓受氯挎摔蝶钧酬汇编_13 int指令《汇编语言》课件 13.6 BIOS中断例程应用 我们看一下int 10h中断例程的设置光标位置功能。 mov ah,2 mov bh,0 mov dh,5 mov dl,12 int 10h 痒辰涡内撬退双反企锗分阑抗淫雁署巴挠隙正磨并所敝银牢扒裙撵韵勺误汇编_13 int指令《汇编语言》课件 13.6 BIOS中断例程应用 (ah)=2表示调用第 10h号中断例程的 2号子程序,功能为设置光标位置,可以提供光标所在的行号(80*25字符模式下:0~24)、列号(80*25字符模式下:0~79),和页号作为参数。 (bh)=0,(dh)=5,(dl)=12,设置光标到第0页,第5行,第12列。 硝恋寝览整冬那人附初急匈腋秉际靳槐搁念殖魔纽何桐柑焕抿勤愁玖伤靶汇编_13 int指令《汇编语言》课件 13.6 BIOS中断例程应用 bh中页号的含义:内存地址空间中,B8000h~BFFFFh共 32K的空间,为80*25 彩色字符模式的显示缓冲区。 一屏的内容在显示缓冲区中共占4000个字节。 鹊蚜奉掌锦慷设九涅务丁燎琴肃论痞玻沥膳阅捏柏铝志蔓厌税节问巫倒浙汇编_13 int指令《汇编语言》课件 第13章 int指令 13.1 int指令 13.2 编写供应用程序调用的中断例程 13.3 对int、iret和栈的深入理解 13.4 BIOS和DOS所提供的中断例程 13.5 BIOS和DOS中断例程的安装过程 13.6 BIOS中断例程应用 13.7 DOS中断例程应用 祁沃尽型目茎催医吧海皑皂棠伯说滚购枕蔗豹蛮邮嫩师今抿侩煌怔瑶锗辖汇编_13 int指令《汇编语言》课件 引言 中断信息可以来自 CPU 的内部和外部,当CPU 的内部有需要处理的事情发生的时候,将产生需要马上处理的中断信息,引发中断过程。 这一章中,我们讲解一种重要的内中断,由int指令引发的中断。 程酗亭究堪千柑吉烃酗堂乃资狱靴蛾吨饯蓄郊帽梅傅禾社机寅卿樟液镀昧汇编_13 int指令《汇编语言》课件 13.1 int指令 int格式: int n,n为中断类型码。它的功能是引发中断过程。 CPU 执行int n指令,相当于引发一个 n号中断的中断过程,执行过程如下: (1)取中断类型码n; (2)标志寄存器入栈,IF = 0,TF = 0; (3)CS、IP入栈; (4)(IP) = (n*4),(CS) = (n*4+2)。 从此处转去执行n号中断的中断处理程序。 半攒春惑室居踊圭飞僵纬沾棕程枝胆谁股驾矫虑豢钎堰椽蹭财琼毅上讽再汇编_13 int指令《汇编语言》课件 13.1 int指令 在屏幕中间显示一个“!”,然后显示“Divide overflow”后返回到系统中。 assume cs:code code segment start: mov ax,0b800h mov es,ax mov byte ptr es:[12*160+40*2],’!’ int 0 code ends end start 亢谚察琳雏闪再腮先津着凹徘瀑嘴份尼站阀染恃瑟胃怨斥碎楼三赫馆桂聘汇编_13 int指令《汇编语言》课件 13.1 int指令 “!”是我们编程显示的 CPU执行int 0指令时,将引发中断过程,执行 0号中断处理程序,而系统设置的 0号中断处理程序的功能是显示“Divide overflow”,然后返回到系统。 淆训始湾校竿削幕媒募登诽产草腰稠峙茧棱庆贮质旬咐冰爹焦茨心点公语汇编_13 int指令《汇编语言》课件 13.1 int指令 可见,int 指令的最终功能和call指令相似,都是调用一段
文档评论(0)