第9章bios和dos功能调用分解.ppt

  1. 1、本文档共26页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
用户编程原则 ①尽可能使用DOS的系统功能调用,提高程序可移植性。 ②在DOS功能不能实现的情况下,考虑用BIOS功能调用。(比如读打印机状态:BIOS中断17H的功能2) ③在DOS和BIOS的中断子程序不能解决问题时, 才使用IN/OUT指令直接控制硬件。(比如声音控制) IRET指令 可见,int 指令的最终功能和call指令相似,都是调用一段程序。一般情况下,系统将一些具有一定功能的子程序,以中断处理程序的方式提供给应用程序调用。 我们在编程的时候,可以用int指令调用这些子程序,而在子程序中安排iret指令返回。我们将这样的中断处理子程序简称为中断例程。 Iret指令的执行过程相当于: pop ip pop cs pop flags 例:检测键盘输入的字符是否为回车键 Wait_here: mov ah,7 int 21h ;等待输入 cmp al,0dh ;比较判断 jne wait-here Int 10h的功能01:设置光标大小。光标行的开始和结束数据分别放在ch和cl的低4位(0~3位光标的大小),ch的4位为0显现光标,为1则关闭光标。光标只在文本方式中出现,在图形方式下光标消失。 Int 10h的功能02:设置光标位置。Dh和dl寄存器中为光标位置的行列号,bh中为页号(单色显示器页号为0 )。 例: mov ch,5 mov cl,7 mov ah,1 int 10h mov dh,4 mov dl,5 mov bh,0 mov ah,2 int 10h 功能03 :bh中指定页号。把光标位置的行号回送给dh,列号回送给dl,光标大小的参数填入ch和cl 。 mov ah,3 mov bh,0 int 10h ;返回参数dh:dl=行:列 4、选择显示页 功能05:由程序确定显存中的显示区域。入口参数:页号送给al。 mov al,1 mov ah,5 int 10h ;显示b800:1000的信息 Your site here 第九章 BIOS 和 DOS 中断 中断:使cpu中止正在执行的程序而转去处理特殊事件的操作。 中断源:引起中断的事件。8086/8088CPU最多有256个中断源,这些中断源根据来自CPU的内部还是外部分为两大类:内部中断源和外部中断源。 外中断(硬中断): 外设的 I/O 请求 —— 可屏蔽中断INTR 电源掉电 / 奇偶错 —— 非屏蔽中断NMI 所谓不可屏蔽中断是指该中断请求不能通过软件的方式对其屏蔽,一旦出现NMI中断请求,CPU必须立即响应。 内中断(软中断): INT 指令 / CPU 错(除法错、溢出)/ 为调试程序设置的中断(t、g命令) 中断传送方式 非屏蔽中断请求 中断逻辑 INT n INTO 除法错 单步 n 4 0 1 CPU 2 NMI 8259A 可编程中断控制器 (PIC) IR0 系统定时器 IR1 键盘 IR2 彩色/图形接口 IR3 保留 IR4 串行通讯口 IR5 保留 IR6 软盘 IR7 打印机 INTR 08 09 0A 0B 0C 0D 0E 0F 80x86 中断源(图中引线端标示的数字为分配的终端类型号N(0-255)): 8259A外部有28个引脚。有9片8259A可构成64级中断源。 类型0的(IP) 类型0的(CS) 类型1的(IP) 类型1的(CS) 类型N的(I

文档评论(0)

jiayou10 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档