722 日 , 2025 7:30:15
【礼拜二】
内容目录

MISS早啊 今天天气不错!


OS系统学习: (真的,我承认了,学习是最简单的事情,人间真相)
1、写函数来打印字符串
2、写函数来直接读取软盘上的数据

这个函数调了好久,记录一下,终于搞明白一个问题,为什么需要第二次push bx才行,没有这个操作就读不到,调试分析才是YYDS.

; ax    --> logic sector number
; cx    --> number of sector
; es:bx --> target address
ReadSector:
    push bx
    push cx
    push dx
    push ax

    call ResetFloppy

    push bx 
    push cx

    ;============== 逻辑扇区转换为磁盘上的具体位置(磁头号、柱面号、扇区号)  ==============
    mov bl, [BPB_SecPerTrk]  
    div bl  

    mov cl, ah
    add cl, 1   
    mov ch, al
    shr ch, 1   
    mov dh, al
    and dh, 1   
    mov dl, [BS_DrvNum]  

    ;============== 指定扇区长度 ==============
    pop ax
    pop bx

    ;============== 规定值,指定读取软盘的操作 ==============
    mov ah, 0x02 

read:     
    int 0x13
    jc read

    pop ax
    pop dx
    pop cx
    pop bx

    ret

1、解决了我的一个疑问,要FreeDOS查看data.img文件的原因,这两个之间的关系。
2、写了一个MemCmp来对比内存中的字符串,进一步通过FindEntry函数来查找内存中是否存在目标文件。
查到目标文件之后,那就后续好办了。


 
 



 
 



 
 



 
 



 
 



 
 



 
 



 
 

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!