• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            JACKY_ZZ[貓貓愛吃魚]

            春風拂面兩頰紅,秋葉灑地一片金。 夏荷搖曳一身輕,冬雪覆蓋大地銀。
            posts - 30, comments - 123, trackbacks - 0, articles - 0

            [ASM] bootsect - nasm

            Posted on 2014-11-12 20:23 jacky_zz 閱讀(264) 評論(0)  編輯 收藏 引用 所屬分類: ASM

             

             1 2012.6.30, Jinfeng @ SWUST
             2 ; nasm boot.asm -o boot.bin
             3 
             4     org 07c00h    ; cs:ip = 07c00h
             5 entry:
             6     ; set env
             7     mov ax,cs
             8     mov ds,ax
             9     mov es,ax
            10     mov ss,ax
            11     mov sp,0x400
            12     
            13 load_system:
            14     mov dx,0x0000
            15     mov cx,0x0002
            16     
            17     mov ax,0x1000
            18     mov es,ax
            19     xor bx,bx ; [es:bx]
            20     
            21     mov ax,0x0200+2        ; 1024 bytes
            22     int 0x13
            23     jnc move_system
            24 try_again:
            25     jmp load_system
            26     
            27 move_system:
            28     cli            ; don't need BIOS func
            29                 ; will open just before 'ret' to task 0 in new mode
            30     cld
            31     mov ax,0x1000
            32     mov ds,ax
            33     xor ax,ax 
            34     mov es,ax
            35     mov cx,0x0200
            36     sub si,si
            37     sub di,di
            38     rep movsb
            39     
            40 load_gdtr:
            41     mov ax,0x0000
            42     mov ds,ax
            43     
            44     mov ax,(gdtr-gdt)
            45     mov word [gdtr],ax
            46     mov dword [gdtr+2],gdt    ; not 0x7c00+gdt ?
            47     
            48     lidt [idtr]        ; CPU request IDT before jump into new mode
            49     lgdt [gdtr]
            50     
            51     mov al,0x02 
            52     out 0x92,al        ; open A20, enable 32-bit address
            53     
            54     mov ax,0x0001
            55     mov cr0,eax        ; set PE flag in EFLAGS register
            56     
            57     jmp dword 0x08:0            ; jmp to reset all registers in new mode
            58 
            59 ;end!!!
            60 
            61 gdt:    dw 0,0,0,0
            62         dw 0x1000,0x0000,0x9a00,0x00c0    ; 16Mb,0x0000,r/x
            63         dw 0x1000,0x0000,0x9200,0x00c0    ; 10MB,0x0000,r/w
            64         dw 0x0002,0x8000,0x920b,0x00c0    ; 8kb,0xb8000, 4kb<-swap->4kb
            65 
            66 gdtr:    dw 0x0000,0x0000,0x0000
            67 idtr:    dw 0x0000,0x0000,0x0000
            68 
            69 times 510-($-$$)    db        0
            70                     dw         0xaa55

             

            久久综合精品国产二区无码| 一本久道久久综合狠狠躁AV| 久久久国产精品福利免费 | 精品久久久久久国产免费了| 日批日出水久久亚洲精品tv| 久久一日本道色综合久久| 久久久国产精品网站| 久久中文字幕人妻熟av女| 九九久久99综合一区二区| 性高湖久久久久久久久AAAAA| 久久久久成人精品无码中文字幕| 99久久免费国产精品| 久久久一本精品99久久精品66| 久久久精品国产亚洲成人满18免费网站| 久久精品国产免费观看三人同眠| 久久中文娱乐网| 久久国产色AV免费看| 欧美久久天天综合香蕉伊| 久久99国产精品一区二区| 色欲av伊人久久大香线蕉影院 | 91精品国产91久久综合| 国内高清久久久久久| 久久国产午夜精品一区二区三区| 2022年国产精品久久久久| 久久久久亚洲av综合波多野结衣| 久久精品国产99久久丝袜| 青青青伊人色综合久久| 日韩精品久久久久久久电影蜜臀 | 久久久国产精品福利免费 | 99re久久精品国产首页2020| 久久久久久久波多野结衣高潮 | 久久这里只有精品视频99| 色综合久久综精品| 亚洲国产精久久久久久久| 亚洲国产成人久久精品动漫| 日本精品久久久久中文字幕8| 国产精品久久久久无码av| 国产精品福利一区二区久久| 国产91色综合久久免费| 99精品久久精品一区二区| 四虎国产精品免费久久5151|