《汇编语言与接口技术》课程教学资源(PPT课件)第5章 软件接口技术

1 第5章 软件接口技术 5.1 软件接口概述 5.2 接口软件及层次结构 5.3 DOS系统中的接口调用 5.4 Windows系统中的接口调用 5.5 Linux下的接口调用

2 5.1 软件接口概述 ◼ 命令接口——交互式命令 ◼ 程序接口——系统调用 5.2 接口软件及层次结构 第5章 软件接口技术 操作系统 驱动软件 硬件层 应用软件 图 5.1 驱动软件的层次接口

3 第5章 软件接口技术 DOS BIOS 硬件层 应用软件 应用环境 驱动软件 硬件层 应用软件 设备管理 用户空间 内核空间 (a) DOS系统的调用层次 (b) 高级操作系统的调用层次 图 5.2 设备调用层次

4 5.3 DOS系统中的接口调用 ◼ DOS系统是单用户的操作系统 ◼ DOS系统提供给用户的编程界面大体有如下几种: ◼ 裸机层软件开发,利用芯片或板卡(适配器)支持的寄存器或 内存数据区编程。需要用户非常清楚设备的硬件细节,编程较 复杂,但软件实现速度最快。 ◼ BIOS级软件开发,利用BIOS基本输入输出系统所提供的一些 服务功能编程。 ◼ 系统功能级软件开发,利用DOS系统提供的系统功能编程。 第5章 软件接口技术

5 5.3.1 BIOS中断调用及实现 1. BIOS中断调用概述 ◼ BIOS是固化在ROM中的一组I/O设备驱动程序 ◼ INT n ; n=05H~1FH 例:调用10H视频服务功能中的02H功能(设置光标位置),将光标移 至3行14列。 MOV AH, 02H MOV DH, 3 MOV DL, 14 INT 10H 第5章 软件接口技术

6 2. 视频服务 ◼ INT 10H 例:利用BIOS视频服务的AH=0CH子功能实现写像素点。调用子程序 之前,需要用DX保存行号,CX保存列号,AL保存颜色值,这是 0CH子功能要求的。 WRITINGPIXEL PROC NEAR PUSH AX MOV AH,0CH INT 10H POP AX WRITINGPIXEL ENDP 第5章 软件接口技术

7 第5章 软件接口技术 3. 键盘服务 ◼ INT 09H ;硬件中断,键盘ISR(键盘中断服务程序) ◼ INT 16H ;软件中断,键盘DSR(键盘设备服务程序) ◼ BIOS键盘服务包括3个子功能:0号功能、1号功能和2号功能。 表 5.3 键盘服务功能列表 子功能号 含 义 出 口 参 数 AH=0 从键盘输入一个字符 AL=ASCII码(或0) AH=扫描码(或扩展扫描码) AH=1 判断键盘有无字符输入 ZF=0 有键按下,键代码保存在AX中 ZF=1 无键按下 AH=2 当前键盘特殊键状态 AL=KB-FLAG的变量

8 4. 并行打印机服务 ◼ INT 17H ◼ 0号功能——给打印机传送一个字符 ◼ 1号功能——初始化打印机 ◼ 2号功能——读打印机状态 均可通过AH返回打印机状态字节 第5章 软件接口技术 =1,不忙,打印机可用 =1,打印机表示响应 =1,打印机无纸 =1,打印机选中 D7 D6 D5 D4 D3 D2 D1 D0 =1,打印机出现超时错误 未定义 未定义 =1,打印机出错 图 5.3 打印机状态定义

9 5.3.2 DOS的系统调用 1. DOS系统调用概述 ◼ 主要包括:磁盘管理、内存管理和基本输入输出管理等。 ◼ INT 21H 2. 基本I/O功能调用 3. DOS功能调用实例 MYDATA SEGMENT PARAMETERS DB 100 DB ? DB 100 DUP(?) MESSAGE DB 'What is your name?' DB '$' MYDATA ENDS MYSTACK SEGMENT STACK DB 100 DUP(?) MYSTACK ENDS 第5章 软件接口技术

10 MYCODE SEGMENT ASSUME CS:MYCODE, DS:MYDATA, SS:MYSTACK START PROC FAR PUSH DS MOV AX, 0 PUSH AX MOV AX, MYDATA MOV DS, AX DISP: MOV DX, OFFSET MESSAGE MOV AH, 09H INT 21H KEY: MOV DX, OFFSET PARAMETERS MOV AH, 0AH INT 21H RET START ENDP MYCODE ENDS END START 第5章 软件接口技术
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《汇编语言与接口技术》课程教学资源(PPT课件)第6章 存储器技术.ppt
- 《汇编语言与接口技术》课程教学资源(PPT课件)第2章 80x86微处理器.ppt
- 《汇编语言与接口技术》课程教学资源(PPT课件)第4章 80x86汇编语言程序设计.ppt
- 《汇编语言与接口技术》课程教学资源(PPT课件)第1章 微型计算机概述.ppt
- 《汇编语言与接口技术》课程教学资源(PPT课件)第3章 80x86指令系统和寻址方式.ppt
- 《汇编语言与接口技术》课程教学大纲 Assembly Language and Interface Technology.doc
- 浙江科技大学:《计算机网络》课程教学资源(PPT课件)第6章 应用层.ppt
- 浙江科技大学:《计算机网络》课程教学资源(PPT课件)第5章 运输层.ppt
- 浙江科技大学:《计算机网络》课程教学资源(PPT课件)第7章 网络安全.ppt
- 浙江科技大学:《计算机网络》课程教学资源(PPT课件)第4章 网络层.ppt
- 浙江科技大学:《计算机网络》课程教学资源(PPT课件)第3章 数据链路层.ppt
- 浙江科技大学:《计算机网络》课程教学资源(PPT课件)第1章 概述(主讲:马伟锋).ppt
- 浙江科技大学:《计算机网络》课程教学资源(PPT课件)第2章 物理层.ppt
- 浙江科技大学:《计算机网络》课程教学大纲(实验课).doc
- 浙江科技大学:《计算机网络》课程教学大纲 Computer Networks Technology.doc
- 清华大学出版社:《计算机硬件技术基础》课程电子教案(PPT教学课件)第10章 网络硬件.ppt
- 清华大学出版社:《计算机硬件技术基础》课程电子教案(PPT教学课件)第9章 外围设备.ppt
- 清华大学出版社:《计算机硬件技术基础》课程电子教案(PPT教学课件)第8章 外围设备接口.ppt
- 清华大学出版社:《计算机硬件技术基础》课程电子教案(PPT教学课件)第7章 与外设的数据传输.ppt
- 清华大学出版社:《计算机硬件技术基础》课程电子教案(PPT教学课件)第6章 微机总线.ppt
- 《汇编语言与接口技术》课程教学资源(PPT课件)第8章 中断和DMA技术.ppt
- 《汇编语言与接口技术》课程教学资源(PPT课件)第7章 串并行接口技术.ppt
- 《汇编语言与接口技术》课程教学资源(作业习题)汇编语言与接口技术练习题(题目).doc
- 《汇编语言与接口技术》课程教学资源(作业习题)汇编语言与接口技术练习题(答案).doc
- 清华大学出版社:《计算机操作系统教程》习题解答与实验指导(教材PDF电子版,第2版,编著:张尧学).pdf
- 《Java程序设计》课程教学课件(PPT讲稿)04 Java面向对象3-面向对象特征(1/3).pptx
- 《Java程序设计》课程教学课件(PPT讲稿)04 Java面向对象4-面向对象特征(2/3).pptx
- 《Java程序设计》课程教学课件(PPT讲稿)04 Java面向对象5-面向对象特征(3/3).pptx
- 《Java程序设计》课程教学课件(PPT讲稿)05 Java异常处理.pptx
- 《Java程序设计》课程教学课件(PPT讲稿)06 Java文件输入输出.pptx
- 《Java程序设计》课程教学课件(PPT讲稿)07 Java线程.pptx
- 《Java程序设计》课程教学课件(PPT讲稿)08 Java网络编程.pptx
- 《Java程序设计》课程教学课件(PPT讲稿)09 Java数据库编程(1/2).pptx
- 《Java程序设计》课程教学课件(PPT讲稿)09 Java数据库编程(2/2).pptx
- 《Java程序设计》课程教学课件(PPT讲稿)0 1Java概述.pptx
- 《Java程序设计》课程教学课件(PPT讲稿)02 Java程序设计基础1—运算符和表达式.pptx
- 《Java程序设计》课程教学课件(PPT讲稿)03 Java程序设计基础2—数组.pptx
- 《Java程序设计》课程教学课件(PPT讲稿)03 Java程序设计基础3—程序流程控制.pptx
- 《Java程序设计》课程教学课件(PPT讲稿)04 Java面向对象1-软件开发周期简介.pptx
- 《Java程序设计》课程教学课件(PPT讲稿)04 Java面向对象2-面向对象程序设计基础.pptx
