通过 "【自制操作系统01】硬核讲解计算机的启动过程" 和 "【自制操作系统02】环境准备与启动区实现" 的讲解,我们已经实现了一个最简单的操作系统(仅仅一条机器指令)。 今天我们要再往前进一步,逐渐将这个最简单的操作系统完善起来。之前最简单的操作系统是写在启动区的 512 字节里,这么小的空间以后 ...
分类:
其他好文 时间:
2020-01-25 18:17:49
阅读次数:
113
* [下载区] * 本地下载 百度网盘(提取码:pgr6) * [下载区] * * [介绍区] * 基于游侠15版本整合 自带按住空格连跳加速 内附可选模组 * [介绍区] * 软件截图: ...
分类:
其他好文 时间:
2020-01-25 18:12:17
阅读次数:
587
第11天 优化变量读写性能 以变量值的读写为例,向读者介绍基于这种理念的语言处理器性能优化方式。 11.1 通过简单数组来实现环境 假如函数包含局部变量x与y,程序可以事先将x设为数组的第0个元素,将y设为第1个元素,以此类推。这样一来,语言处理器引用变量时就无需计算哈希值。也就是说,这是一个通过编 ...
分类:
编程语言 时间:
2020-01-23 21:21:08
阅读次数:
90
第10天 无法割舍的数组 目标:为Stone语言添加简单的数组功能,下标(index)只能使用整数值。 10.1扩展语法分析器 代码清单10.1 与数组相关的语法规则 代码清单10.2 ArrayParser.java 代码清单10.3 ArrayLiteral.java 接下来我们根据新的语法规则 ...
分类:
编程语言 时间:
2020-01-22 21:32:07
阅读次数:
101
参考文章:【https://blog.csdn.net/u014205965/article/details/45972803】 ...
分类:
其他好文 时间:
2020-01-22 11:17:15
阅读次数:
85
第9天 设计面向对象语言 目标:为Stone语言添加类和对象的支持。仅支持单一继承 9.1 设计用于操作类与对象的语法 添加的类与对象的处理功能后,下面的Stone语言就能被正确执行了 首先定义一个Position类,方法由def语句定义。类中字段通过变量表示,并赋了初始值。上面的例子定义了move ...
分类:
编程语言 时间:
2020-01-21 23:25:07
阅读次数:
105
第8天 关联Java语言 本章要达到的目的:扩展Stone语言,使它能在程序中调用Java语言中的static方法 8.1 原生函数 Java语言提供了名为原生方法的功能,用于调用C语言等其他一些语言写成的函数。我们将为Stone语言添加类似的功能,让它能够调用由Java语言写成的函数。 原生函数将 ...
分类:
编程语言 时间:
2020-01-20 21:11:27
阅读次数:
105
本讲只为讲明白下面一个问题: 我们按下开机键后究竟发生了什么? 好的,这似乎是好多人都特别想搞明白的一个问题,有时候非常纳闷,为什么一个看似这么简单的问题,就是搜不到一个直面问题的答案呢? 好问题,我也不知道为什么会这样,但我猜是因为: 其一 ,似懂非懂的人太多,他们其实也不知道究竟发生了什么,所以 ...
分类:
其他好文 时间:
2020-01-20 19:23:37
阅读次数:
71
【自制操作系统01】硬核讲解计算机的启动过程目录 一、为什么是 BIOS 主导? 二、内存映射 三、实模式下的内存分布 四、怎么就从 BIOS 里的程序开始执行了 五、BIOS 里到底写了什么程序 六、0x7c00 是啥 七、启动区里的代码写了啥 八、操作系统内核写了啥 软硬件协同发展 历史遗留问题 ...
分类:
其他好文 时间:
2020-01-20 18:42:54
阅读次数:
64
第7天 添加函数功能 基本的函数定义与调用执行、引入闭包使Stone语言可以将变量赋值为函数,或将函数作为参数传递给其他函数 有些函数将有返回值的归为函数,没有返回值的归为子程序 7.1 扩充语法规则 函数定义语句的语法规则 此书将函数定义语句称为def语句。def语句仅能用于最外层代码,用户无法在 ...
分类:
编程语言 时间:
2020-01-20 00:09:21
阅读次数:
87