系统功能调用Windows操作系统原理实验
一、实验目的
1、熟悉操作系统的系统功能调用。
2、掌握用C语言实现系统功能调用的方法和步骤。
3、掌握利用10H号功能调用(BIOS的显示I/O功能调用)来实现对屏幕的操作与控制。
二、实验内容
1、在屏幕的指定区域内显示字符串。(必做题)
2、在屏幕的制定区域内画框,在框内显示字符串。(提高题)
3、在屏幕上指定区域内画框并以动画形式显示字符串。(选做题)
清屏子程序:
void cls(void)
{ union REGS r;
r.h.ah=6; /*子功能号*/
r.h.al=0;
r.h.ch=0; /*左上角坐标*/
r.h.cl=0;
r.h.dh=24; /*右下角坐标*/
r.h.dl=79;
r.h.bh=7; /*7表示黑色*/
int86(0x10,&r,&r); /*系统功能调用*/
}
定位子程序:
void locate(int x, int y)
{ union REGS r;
r.h.ah=2; /*子功能号*/
r.h.dh=x; /*定位点坐标*/
r.h.dl=y;
r.h.bh=0;
int86(0x10,&r,&r);
}
在指定位置写参数:
void writech(int x , int y, char ch ,int attr)
{ union REGS r;
locate(x ,y);
r.h.ah=9;
r.h.bh=0;
r.h.al=ch;
r.h.bl=attr
r.x.cx=1;
int86(0x10,&r,&r);
}
屏幕画框可以用制表符来画。其主要方法是不断调用writech函数,在指定区域周围显示制表符,从而勾勒出一个窗口的轮廓。
制表符 ASCII码
┛ 217
┏ 218
┓ 191
┗ 192
┃ 179
━ 196
系统功能调用Windows操作系统原理实验的更多相关文章
- Windows操作系统深入解析原理
Windows运用程序编写插口(API)是对于Windows电脑操作系统大家族的客户方式系统软件程序编写插口.在32位版本号的Windows营销推广之前,31位版本号Windows电脑操作系统的程序编 ...
- 反射实现Model修改前后的内容对比 【API调用】腾讯云短信 Windows操作系统下Redis服务安装图文详解 Redis入门学习
反射实现Model修改前后的内容对比 在开发过程中,我们会遇到这样一个问题,编辑了一个对象之后,我们想要把这个对象修改了哪些内容保存下来,以便将来查看和追责. 首先我们要创建一个User类 1 p ...
- 华中科大MOOC 操作系统原理讨论题
1没有安装操作系统的计算机启动过程和结果? 启动会比较快,但功能很局限,无法使用常见的软件应用,对于普通用户来说,功能很局限,对于专业工程师来说,想使用没有操作系统的计算机也有难度.启动后进入 BIO ...
- 深入解析Windows操作系统笔记——CH2系统结构
2.系统结构 本章主要介绍系统的总体结构,关键部件之间的交互,以及运行在什么环境. 2.系统结构 2.1 需求和设计目标 2.2 操作系统模型 2.3 总体结构 2.3.1 可移植性 2.3.2 对称 ...
- C#调用windows API的一些方法
使用C#调用windows API(从其它地方总结来的,以备查询) C#调用windows API也可以叫做C#如何直接调用非托管代码,通常有2种方法: 1. 直接调用从 DLL 导出的函数. 2. ...
- windows编程原理
这里在学网络编程时遇到了讲解windows的编程,稍微整理一下windows编程原理,顺便复习一下. 首先,理解Windows 程序运行原理:Windows应用程序,操作系统,计算机硬件之间的相互关系 ...
- windows进程/线程创建过程 --- windows操作系统学习
有了之前的对进程和线程对象的学习的铺垫后,我们现在可以开始学习windows下的进程创建过程了,我将尝试着从源代码的层次来分析在windows下创建一个进程都要涉及到哪些步骤,都要涉及到哪些数据结构. ...
- 2017-2018-1 20155312《信息安全技术》实验二——Windows口令破解实验报告
2017-2018-1 20155312<信息安全技术>实验二--Windows口令破解实验报告 实验目的 了解Windows口令破解原理 对信息安全有直观感性认识 能够运用工具实现口令破 ...
- 初级游戏外挂编程详解 windows运行原理+游戏辅助编程 游戏外挂编程
详解游戏辅助编程 [目录] 1-什么是Windows API 2-Windows进程 3-Windows 的内存的运行原理 4-windows 中句柄的概念 5-Windows的变量类型 6-辅助实现 ...
随机推荐
- SpringBoot启动如何加载application.yml配置文件
一.前言 在spring时代配置文件的加载都是通过web.xml配置加载的(Servlet3.0之前),可能配置方式有所不同,但是大多数都是通过指定路径的文件名的形式去告诉spring该加载哪个文件: ...
- [Abp 源码分析]十一、权限验证
0.简介 Abp 本身集成了一套权限验证体系,通过 ASP.NET Core 的过滤器与 Castle 的拦截器进行拦截请求,并进行权限验证.在 Abp 框架内部,权限分为两块,一个是功能(Featu ...
- scala合并Array
val newarray = Array(1,2,3)++Array(4,5) newarray.foreach(println) 打印结果: 1 2 3 4 5
- Python内置函数(41)——max
英文文档: max(iterable, *[, key, default]) max(arg1, arg2, *args[, key]) Return the largest item in an i ...
- sql server 临时表(中) Tempdb监控
一. 监控概述 Tempdb库空间使用的一大特点,是只有一部分对象,例如用户创建的临时表.table变量等,可以用sys.allocation_units和sys.partitions这样的管理视图 ...
- 一个类是怎么被JVM执行的
现有如下代码,那么我们的JVM是怎么执行的呢 public class Test{ public static vodi main(String[] args){ MaYun my=new MaYun ...
- 【性能优化之道】每秒上万并发下的Spring Cloud参数优化实战
一.写在前面 相信不少朋友都在自己公司使用Spring Cloud框架来构建微服务架构,毕竟现在这是非常火的一门技术. 如果只是用户量很少的传统IT系统,使用Spring Cloud可能还暴露不出 ...
- curl 错误总结
证书域名与访问的域名不一致 问题:curl SSL: certificate subject name 'luffichen_server.tencent.com' does not match ta ...
- httpclient+jsoup实现小说线上采集阅读
前言 用过老版本UC看小说的同学都知道,当年版权问题比较松懈,我们可以再UC搜索不同来源的小说,并且阅读,那么它是怎么做的呢?下面让我们自己实现一个小说线上采集阅读.(说明:仅用于技术学习.研究) 看 ...
- 第46章 发现端点(Discovery Endpoint) - Identity Server 4 中文文档(v1.0.0)
发现端点可用于检索有关IdentityServer的元数据 - 它返回发布者名称,密钥材料,支持的范围等信息.有关详细信息,请参阅规范. 发现端点可通过/.well-known/openid-conf ...