[028][x86汇编语言]第十三章 程序的动态加载与执行(保护模式)

学习笔记

《x86汇编语言:从实模式到保护模式》
https://www.jianshu.com/p/d481cb547e9f

第十三章的 代码

  • 用户程序 c13.asm 代码行数81行
  • 内核程序 c13_core.asm 代码行数601行
  • 加载程序 c13_mbr.asm 代码行数221行

加载程序 c13_mbr.asm

https://www.jianshu.com/p/49cbc4161799

用户程序 c13.asm

https://www.jianshu.com/p/8b56ee466735

内核程序 c13_core.asm

https://www.jianshu.com/p/ad4ad1e165e4

代码使用

配书工具 :
编译工具 nasmide.exe
写扇区工具 fixvhdwr.exe

  • 1、编译加载程序 c13_mbr.asm,生成二进制文件c13_mbr.bin,将c13_mbr.bin文件写入虚拟硬盘的LBA逻辑扇区0号
  • 2、编译内核程序 c13_core.asm,生成二进制文件c13_core.bin,将c13_core.bin文件写入虚拟硬盘的LBA逻辑扇区1号
  • 3、编译用户程序 c13.asm,生成二进制文件 c13.bin,将 c13.bin文件写入虚拟硬盘的LBA逻辑扇区50号
  • 4、将数据文件diskdata.txt写入虚拟硬盘LBA逻辑扇区100号

运行结果

[028][x86汇编语言]第十三章 程序的动态加载与执行(保护模式)_第1张图片
第十三章 程序的动态加载与执行(保护模式).png

LBA扇区号

  • 加载程序中的调用


    [028][x86汇编语言]第十三章 程序的动态加载与执行(保护模式)_第2张图片
    内核程序 位于 硬盘LBA逻辑扇区号1.png
  • 内核程序中的调用


    [028][x86汇编语言]第十三章 程序的动态加载与执行(保护模式)_第3张图片
    用户程序 位于硬盘LBA逻辑扇区号 50.png
  • 用户程序中的调用


    [028][x86汇编语言]第十三章 程序的动态加载与执行(保护模式)_第4张图片
    数据文件位于硬盘LBA逻辑扇区号100.png

你可能感兴趣的:([028][x86汇编语言]第十三章 程序的动态加载与执行(保护模式))