自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

talent_CYJ

When the going gets tough, the tough get going

  • 博客(9)
  • 收藏
  • 关注

原创 <30天自制操作系统>第八天

花了将近1周时间来理清之前模糊的概念,感觉思路清晰了很多,今天是八天内容中的最后一天。以后的内容就不会每天都写文章了。今天的内容还是关于鼠标的控制,但是是让它真正的动起来。在主函数中,我们取得了鼠标的数据。for (;;) { io_cli(); if (fifo8_status(&keyfifo) + fifo8_status(&mousefifo) == 0) {

2016-07-26 14:15:08 813

原创 <30天自制操作系统>第六天

为了让鼠标能移动起来,必须使用中断,而要使用中断则必须将GDT和IDT初始化。在此之前,首先要初始化PIC,它的意思是可编程中断控制器。它是将多个中断信号集合成一个中断信号的装置,PIC检测着输入管脚的多个中断信号,只要有一个中断信号过来,就将唯一的输出管脚信号变成ON,并通知给CPU。 其中与CPU直接相连的PIC为主PIC,与主PIC相连的PIC称为从PIC。其中从PIC通过第2号IRQ与主P

2016-07-25 11:20:38 1171

原创 <30天自制操作系统>第五天

这章节内容比上一章节的更进了一步,不只是显示图像,而是显示文字。一个字符可以用8x16的长方形像素点阵来表示。例如: 将这些数据整理成一组数组,即static char font_A[16] = {0x00, 0x18, 0x18, 0x18, 0x18…} 有了这些数据之后只需将其写到VRAM中即可,下列函数实现该功能:void putfont8(char *vram, int xsize

2016-07-23 10:11:28 800

原创 <30天自制操作系统>第四天

第四天内容主要是基于第三天的图形界面显示更进了一步。主要是更复杂的显示,而不是单纯的切换到显示模式。对显卡内存进行数据写入,从而显示出我们想要的画面。想要画东西,只要往VRAM里写数据即可,先看以下程序:_write_mem8: ; void write_mem8(int addr, int data); MOV ECX,[ESP+4] ; [ESP+4]中存放

2016-07-22 14:03:10 1226

原创 <30天自制操作系统>第三天

在第三天中,在原来的基础上添加了部分功能。; haribote-ipl; TAB=4 ORG 0x7c00 ; 指明程序的装载地址; 以下这段是标准FAT12格式软盘专用的代码 JMP entry DB 0x90--略--; 程序核心entry: MOV AX,0

2016-07-21 18:22:09 1371

原创 <30天自制操作系统>第二天

第二天内容主要是关于一些寄存器的介绍以及使用。以下程序是对第一天程序的完善:; hello-os; TAB=4 ORG 0x7c00 ; 指明程序的装载地址; 以下这段是标准FAT12格式软盘专用的代码 JMP entry DB 0x90--略--; 程序核心entry: MOV AX,

2016-07-21 14:25:59 486

原创 <30天自制操作系统>第一天

买了这本书将近一年才开始看- =,最近看完第八天的内容,也就是实现了鼠标的移动。总的来说这本书感觉还是可以,大致上可以了解到一个操作系统是如何搭建。语言幽默风趣,每天的任务量不是特别多并且每天的章节内容明确,由于每个程序我都只是编译现成的代码来看实现效果,所以学完了8天的内容之后,许多概念还是迷迷糊糊,所以今天开始为每一天的内容写文章,总结这本书自己比较模糊的内容,同时也帮助自己梳理一下知识点,也为

2016-07-21 10:26:01 848

原创 编写程序tail,将其输入中的最后n行打印出来。

默认情况下,n的值为10,可通过可选参数改变n的值,命令tail -n将打印其输入的最后n行。#include <stdio.h>#include <stdlib.h>#include <string.h>#define DEFLINS 10#define LINES 100 #define MAXLEN 100 //每一行最大字符数量void error(char *);

2016-07-04 14:38:27 1406

原创 C语言编写的简单计算器程序

这两天在看一个C语言写的计算器程序,做了不少的功夫,跟着作者一步步的进行完善,了解了许多细节性的东西,在此自己做个总结,加深自己对程序的印象,也算是梳理。在该计算器程序,能进行加减乘除、sin、cos、exp等操作,同时能进行数值保存功能。而该计算器使用逆波兰表示法。即所有运算符都跟在操作数的后面,比如下列表达式: (1 - 2) * (4 + 5)采用逆波兰表示法表示为:1 2 - 4 5

2016-07-01 10:03:13 25175

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除