从机器码到汇编
DB:define byte 向文件写入字节:DB 0x6f
RESB:reserve byte 从当前地址开始空出n个字节,即向接下来的n个字节写入0x00
如:resb 10
如:resb 0x1fe-$ $代表当前已经写入的字节数,用0x1fe减去当前已写入的字节数个字节,也就是说从当前地址开始直到0x1fe这个地址,全部填入0x00
DW:define word word表示16位,也就是两个字节,DB是一个字节,DW就是两个字节
DD:define double word 两个word,也就是四个字节
扇区:计算机从磁盘读取数据,不是一个字节一个字节读取的,扇区是计算机从磁盘读取数据的最小单位,通常根据出厂设置的不同,一个扇区可能为512/2048/8096字节,但最常见的是512字节,比如我们常用的各种格式(NTFS,FAT32)
磁盘扇区大小可通过WinHex查看https://blog.csdn.net/yangyang031213/article/details/79030247
通常启动载体可从bios选择,而选定的磁盘第一个扇区(通常一个扇区为512字节)装的是操作系统的载入程序
计算机通电时会自动读取第一个扇区,而如果第一个扇区最后两个字节不是0x55 0xAA,计算机就认为这张盘上没有所需的启动程序,报一个不能启动的错误(至于为什么是这两个字节,这是计算机设计者设定的,遵守就完事了);如果计算机最后是这两个字节,就开始执行这个程序
通常第一个扇区放的用来加载操作系统的程序叫做启动程序加载器(initial program loader)有时也将启动区成为IPL,IPL的名称必须为8个字节,如果名字长度不够8字节,可以补上空格