- 博客(8)
- 收藏
- 关注
原创 操作系统-003- 进入保护模式
书中使用的一个宏定义来初始化描述符, 把3个参数按照规则填充到8个字节中,非常省事,那么后面有相同的表项,也可以按照这种方法来做; 描述符; usage: Descriptor Base, Limit, Attr; Base: dd; Limit: dd (low 20 bits available); Attr: dw (lower 4 bits of higher byte are always 0)%macro Descri...
2020-11-25 21:59:02
190
原创 操作系统-002- 环境配置
参考书籍 是于渊的 操作系统目的:简单化程序加载,使用DOS从bochs官网下载一个freeDOS,改名为freedos.img 创建虚拟软盘a.img 在bochsrc增加floppybfloppya: 1_44=freedos.img, status=insertedfloppyb: 1_44=a.img, status=insertedBochs-》启动freedos,在a盘A:> format B: 格式化b盘 在待加载...
2020-11-24 21:39:02
233
原创 操作系统-001- 环境配置
参考书:一个64位操作系统的设计与实现第一个boot程序代码如下,基本上没有不理解的地方org 0x7c00 ;必须指定位置,不然编译器会将其放到位置0BaseOfStack equ 0x7c00Label_Start: mov ax, cs mov ds, ax mov es, ax mov ss, ax mov sp, BaseOfStack;======= clear screen mov ax, 0600h
2020-11-22 17:26:17
234
原创 二、C语言中有符号和无符号数
在汇编中对数字的存储是有分有符号和无符号的,C语言同样如此,负数就是正数取反+1, 总结如下 负数 二进制 寄存器AL 十六进制 0-1 ...11111111 1111 1111 0xFF 0-2 ...
2019-01-18 15:02:57
518
原创 二、汇编函数
在汇编中,需要自己来设置函数的栈,重点是ebp寄存器的使用。注意代码中函数栈的结构:#栈结构图如下:#------- -4(%ebp)------- 临时结果#-------%ebp====old%esp-------#-------函数返回地址-------#------- 8(%ebp)------- 第一个参数#------- 12(%ebp)------- 第二个参数...
2019-01-17 14:23:31
378
原创 一、第一个汇编程序
参考书目:深入理解程序设计,使用linux汇编语言,本系列博客为其学习笔记测试代码一这里要注意的是,寄存器前面有%符号,立即数前面有$符号#目的:退出并向linux内核返回一个状态码#输入: none#输出: 使用echo $?来读取状态码.section .data #数据段,‘.’开头的指令仅由汇编器处理.section .text #文本段.glo...
2019-01-17 14:16:27
379
原创 一、 C语言基本数据类型
在汇编中,在data段,定义一个数据,是要明确是字节db,字还是字dwdb 0x55dw 0xaa55数据的取值都是有大小的。 如从内存地址中取出一个字节,必须在地址前面明确byte Mov byte[0x1234], 'P'c语言是从汇编发展而来,使用数据也是要明确数据的大小。非常明显的参考的汇编的label的使用。汇编name: db ‘H’在汇编中nam...
2019-01-17 14:10:19
253
原创 spark 1.6.1安装
spark 1.6.1 安装如下环境ubuntu 12, java 是1.7直接下载spark的源码:https://github.com/apache/spark编译过程在网站上也有说明,下面就是安装说明进行编译安装的:将源码解压后找个工作目录放好,进入工作目录,开始编译:build/mvn -DskipTests clean package, 中间过程比较长
2016-06-13 20:09:23
568
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人