从零开发操作系统
菜树人
呵呵
展开
-
从零开发操作系统:汇编与C之间交互
说明 本文为b站从零开发操作系统的实验 main.asm 入口 extern myfun; [section .data] num1 dd 39 num2 dd 44 [section .text] global _start;_start符号成为可见的标识符,这样链接器就知道跳转到程序中的什么地方并开始执行程序。 global myprint; _start: push num2;堆栈传参数 push num1;堆栈传参数 call myfun;调用堆栈 add esp,8;用来平衡堆栈 push原创 2022-03-11 20:24:28 · 1457 阅读 · 0 评论 -
从零开发操作系统:自定义引导
编写启动boot.asm org 7c00h mov ax,cs mov ds,ax mov es,ax call Disp jmp $ Disp: mov ax,BootMsg mov bp,ax mov cx,16 mov ax,01301h mov bx,000ch mov dl,0 int 10h BootMsg: db "Hello,OS World!" times 510 - ($-$$) db 0 dw 0xaa55 创建iso nas原创 2022-03-06 21:37:35 · 538 阅读 · 0 评论 -
从零开发操作系统:MBR加载磁盘程序,突破512字节限制
说明 本文为b站从零开发操作系统的实验 mbr.asm ;能够将第二个扇区里面的内容加载进内存 ;mbr.asm loader.asm ;0 1 ;将loader放入0x900 LOADER_BASE_ADDR equ 0x900 LOADER_START_SECTOR equ 0x2;表示LBA方式, SECTION MBR vstart=0x7c00 mov ax,cs mov ds,ax mov es,ax mov ss,ax mov fs,ax原创 2022-03-07 20:46:00 · 391 阅读 · 0 评论