MyOs-day2

过程

1.制作512字节的启动区ipl.nas放在helloos3文件夹中

2.从tolset中将z_new_w中的make.bat复制到helloos3文件夹(helloos3是新建的文件夹)中

3.制作Makefile文件(集合了需要的命令)

4.运行!con文件输入make run,会按顺序自动生成ipl.bin      ipl.lst    helloos.img文件,并在虚拟机打开

源文件

Makefile

ipl.nas

命令解释

ORG  告诉nask,在开始执行时候,把这些机器语言指令,装在哪个地址中。如果没有,有指令就不能被正确的翻译和执行,并且$也会发生变化,它变成了代表将要读入的内存地址

JMP   相当于c语言的goto语言,是跳转的意思

entry:是标签的生命,用于指定JMP指令的跳转目的地

MOV   赋值

16位寄存器

AX——accumulator,累加寄存器

CX——counter,技术寄存器

DX——data,数据寄存器

BX——base,基址寄存器

SP——stack pointer,栈指针寄存器

BP——base pointer,基址指针寄存器

SI——source index,源变址寄存器

DI——destination index,目的变址寄存器

这些寄存器全部都是16位寄存器,可以储存16位的二进制数

 

8个寄存器全部合起来共16个字节

 

段寄存器

ES——附加段寄存器

CS——代码段寄存器

SS——栈段寄存器

DS——数据段寄存器

FS——没有名称

GS——没有名称

 

8位寄存器

AL——累加寄存器低位

CL——计数寄存器低位

DL——数据寄存器低位

BL——基址寄存器低位

AH——累加寄存器高位

CH——计数寄存器高位

DH——数据寄存器高位

BH——基址寄存器高位

32位寄存器

EAX

ECX

EDX

EBX

ESP

EBP

ESI

EDI


其他文章