《Linux内核设计的艺术》学习笔记(五)INT 0x10中断
参考书籍:
1. 《IBM-PC汇编语言程序设计》
2. http://www.ctyme.com/intr/int-10.htm
◆ 设置显示方式:
功能号:AH = 00H
调用参数:AL = 00H 40 × 25 黑白文本,16级灰度
AL = 01H 40 × 25 16色文本
AL = 02H 80 × 25 黑白文本,16级灰度
AL = 03H 80 × 25 16色文本
AL = 04H 320 × 200 4色图形
AL = 05H 320 × 200 黑白图形,4色灰度
AL = 06H 640 × 200 黑白图形
AL = 07H 80 × 25 黑白文本
AL = 08H 160 × 200 16色图形(MCGA)
AL = 09H 320 × 200 16色图形(MCGA)
AL = 0AH 640 × 200 4色图形(MCGA)
AL = 0DH 320 × 200 16色图形(EGA/VGA)
AL = 0EH 640 × 200 16色图形(EGA/VGA)
AL = 0FH 640 × 350 单色图形(EGA/VGA)
AL = 0DH 320 × 200 16色图形(EGA/VGA)
AL = 0DH 320 × 200 16色图形(EGA/VGA)
AL = 0E 640 × 200 16色图形(EGA/VGA)H
AL = 0F 640 × 350 单色图形(EGA/VGA)H
AL = 10 640 × 350 16色图形(EGA/VGA)H
AL = 11H 640 × 480 单色图形(VGA)
AL = 12H 640 × 480 16色图形(VGA)
AL = 13H 320 × 200 256色图形(VGA)
◆ 置光标类型:
功能号:AH = 01H
调用参数:CH0~3 = 光标起始行
CL0~3 = 光标结束行
◆ 置光标位置:
功能号:AH = 02H
传入参数:BH = 页号
DH/DL = 行/列
◆ 读光标位置:
功能号:AH = 03H
传入参数:BH = 页号
返回参数:CH = 光标起始行
CL = 光标结束行
DH/DL = 行/列
◆ 获取当前video模式:
功能号:AH = 0FH
返回参数:AH = 字符列数
AL = 播放模式
BH = 活动页
◆ 获取当前适配器的设置信息:
功能号:AH = 12H
输入参数:BL = 10H
返回参数:BH = 0,单色模式;1,彩色模式
BL = VRAM容量(00h = 64K,01h = 128h,02h = 192K,03h = 256K)
CH = 特征连接器标志位
CL = EGA开关设置
◆ 显示字符串:
功能号:AH = 13H
输入参数:ES:BP = 字符串地址
AL = 写方式(0~3)
CX = 字符串长度
DH/DL = 起始行/列
BH/BL = 页号/属性
《Linux内核设计的艺术》学习笔记(五)INT 0x10中断的更多相关文章
- linux内核设计与实现学习笔记-模块
模块 1.概念: 如果让LINUX Kernel单独运行在一个保护区域,那么LINUX Kernel就成为了“单内核”. LINUX Kernel是组件模式的,所谓组件模式是指:LINUX K ...
- 《Linux内核设计与实现》第五章学习笔记
<Linux内核设计与实现>第五章学习笔记 姓名:王玮怡 学号:20135116 一.与内核通信 在Linux中,系统调用是用户空间访问内核的唯一手段:除异常和陷入外,它们是内核 ...
- 《Linux内核设计与实现》第五周读书笔记——第十一章
<Linux内核设计与实现>第五周读书笔记——第十一章 20135301张忻 估算学习时间:共2.5小时 读书:2.0 代码:0 作业:0 博客:0.5 实际学习时间:共3.0小时 读书: ...
- Linux内核设计与实现 读书笔记 转
Linux内核设计与实现 读书笔记: http://www.cnblogs.com/wang_yb/tag/linux-kernel/ <深入理解LINUX内存管理> http://bl ...
- linux内核设计的艺术--系统启动第一步
计算机究竟是如何执行起来的呢,在我学习计算机的时候一直不是非常明确,可是近期借了本<linux内核设计的艺术>算是知道了计算机从按开机到启动操作系统之间究竟做了些什么. 这本书刚開始介绍的 ...
- linux内核分析第四周学习笔记
linux内核分析第四周学习笔记 标签(空格分隔): 20135328陈都 陈都 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.co ...
- Linux内核分析第二周学习笔记
linux内核分析第二周学习笔记 标签(空格分隔): 20135328陈都 陈都 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.co ...
- linux内核分析第一周学习笔记
linux内核分析第一周学习笔记 标签(空格分隔): 20135328陈都 陈都 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.co ...
- 初探内核之《Linux内核设计与实现》笔记上
内核简介 本篇简单介绍内核相关的基本概念. 主要内容: 单内核和微内核 内核版本号 1. 单内核和微内核 原理 优势 劣势 单内核 整个内核都在一个大内核地址空间上运行. 1. 简单.2. 高效 ...
- 《Linux内核设计的艺术》学习笔记(一)从开机加电到加载三个汇编源码
实验内核版本:0.11 ◆ 从开机到main函数的三步: ① 启动BIOS,准备实模式下的中断向量表和中断服务程序: ② 从启动盘加载OS程序到内存中,加载OS程序的工作就是利用第一步中的中断服务 ...
随机推荐
- HID USB设备开发技术【转】
本文转载自: 1.高速USB和USB2.0有区别吗? 高速USB和USB2.0是有区别的,区别在于USB2.0是一种规范,而"高速USB"仅指在USB2.0规范中数据传输率 ...
- 【python cookbook】【字符串与文本】12.文本过滤和清理
问题:例如清除在web页面表单中填入了pýtĥöñis这样的文本 解决方法:str.translate()方法 s = 'p\xfdt\u0125\xf6\xf1\x0cis\tawesome\r\n ...
- Spring JDBC保存枚举对象含关键字报错原因之一
报错信息: org.springframework.jdbc.UncategorizedSQLException: PreparedStatementCallback; uncategorized S ...
- 图解 交集(join)和 合并(union)
假设我们有两张表. Table A 是左边的表. Table B 是右边的表. 其各有四条记录,其中有两条记录是相同的,如下所示: id name id name 1 Pirate ...
- php如何支持实现多线程并发
<?php if(function_exists('date_default_timezone_set')) { date_default_timezone_set('PRC'); } func ...
- log4j里面的info,debug,error级别有什么区别
一共分为五个级别:DEBUG.INFO.WARN.ERROR和FATAL.这五个级别是有顺序的,DEBUG < INFO < WARN < ERROR < FATAL,明白这一 ...
- GHOST出错
error 15:file not found grub问题VFS:Cannot open root device "sda" or unknow-block 可能是磁盘驱动程序问 ...
- JavaScript和angularJs语法支持严格模式:”use strict”
如果给JavaScript和angularjs代码标志为“严格模式”,则其中运行的所有代码都必然是严格模式下的.其一:如果在语法检测时发现语法问题,则整个代码块失效,并导致一个语法异常.其二:如果在运 ...
- ACM学习之路————一个大整数与一个小整数不得不说得的秘密
这个相对于两个大整数的运算来说,只能说是,low爆了. 只要利用好除法的性质,这类题便迎刃而解.O(∩_∩)O哈哈~ //大整数除一个int数 #include<iostream> #in ...
- asp.net 父窗体获取子窗体的返回值,可用来对父窗体局部更新
今天在项目上遇到了这个问题,其实只是window.returnValue的简单应用,不是asp.net的专属内容.作为积累,记录一个简单的实现模型. 图1 用到的文件 从图1中我们可以看到,只用到了 ...