亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? mbr.txt

?? 這里主要是一個系統引導的MBR的一個匯編寫的程序
?? TXT
字號:
               How It Works -- Master Boot Record

                           Version 1a

             by Hale Landis (landis@sugs.tware.com)


THE "HOW IT WORKS" SERIES

This is one of several How It Works documents.  The series
currently includes the following:

* How It Works -- CHS Translation
* How It Works -- Master Boot Record
* How It Works -- DOS Floppy Boot Sector
* How It Works -- OS2 Boot Sector
* How It Works -- Partition Tables


MASTER BOOT RECORD

This article is a disassembly of a Master Boot Record (MBR).  The
MBR is the sector at cylinder 0, head 0, sector 1 of a hard disk.
An MBR is created by the FDISK program.  The FDISK program of all
operating systems must create a functionally similar MBR. The MBR
is first of what could be many partition sectors, each one
containing a four entry partition table.

At the completion of your system's Power On Self Test (POST), INT
19 is called.  Usually INT 19 tries to read a boot sector from
the first floppy drive.  If a boot sector is found on the floppy
disk, the that boot sector is read into memory at location
0000:7C00 and INT 19 jumps to memory location 0000:7C00.
However, if no boot sector is found on the first floppy drive,
INT 19 tries to read the MBR from the first hard drive.  If an
MBR is found it is read into memory at location 0000:7c00 and INT
19 jumps to memory location 0000:7c00.  The small program in the
MBR will attempt to locate an active (bootable) partition in its
partition table.  If such a partition is found, the boot sector
of that partition is read into memory at location 0000:7C00 and
the MBR program jumps to memory location 0000:7C00.  Each
operating system has its own boot sector format.  The small
program in the boot sector must locate the first part of the
operating system's kernel loader program (or perhaps the kernel
itself or perhaps a "boot manager program") and read that into
memory.

INT 19 is also called when the CTRL-ALT-DEL keys are used.  On
most systems, CTRL-ALT-DEL causes an short version of the POST to
be executed before INT 19 is called.

=====

Where stuff is:

   The MBR program code starts at offset 0000.
   The MBR messages start at offset 008b.
   The partition table starts at offset 00be.
   The signature is at offset 00fe.

Here is a summary of what this thing does:

   If an active partition is found, that partition's boot record
   is read into 0000:7c00 and the MBR code jumps to 0000:7c00
   with SI pointing to the partition table entry that describes
   the partition being booted.  The boot record program uses this
   data to determine the drive being booted from and the location
   of the partition on the disk.

   If no active partition table enty is found, ROM BASIC is
   entered via INT 18.  All other errors cause a system hang, see
   label HANG.

NOTES (VERY IMPORTANT):

   1) The first byte of an active partition table entry is 80.
   This byte is loaded into the DL register before INT 13 is
   called to read the boot sector.  When INT 13 is called, DL is
   the BIOS device number.  Because of this, the boot sector read
   by this MBR program can only be read from BIOS device number
   80 (the first hard disk).  This is one of the reasons why it
   is usually not possible to boot from any other hard disk.

   2) The MBR program uses the CHS based INT 13H AH=02H call to
   read the boot sector of the active partition.  The location of
   the active partition's boot sector is in the partition table
   entry in CHS format.  If the drive is >528MB, this CHS must be
   a translated CHS (or L-CHS, see my BIOS TYPES document).
   No addresses in LBA form are used (another reason why LBA
   doesn't solve the >528MB problem).

=====

Here is the entire MBR record (hex dump and ascii).

OFFSET 0 1 2 3  4 5 6 7  8 9 A B  C D E F  *0123456789ABCDEF*
000000 fa33c08e d0bc007c 8bf45007 501ffbfc *.3.....|..P.P...*
000010 bf0006b9 0001f2a5 ea1d0600 00bebe07 *................*
000020 b304803c 80740e80 3c00751c 83c610fe *...<.t..<.u.....*
000030 cb75efcd 188b148b 4c028bee 83c610fe *.u......L.......*
000040 cb741a80 3c0074f4 be8b06ac 3c00740b *.t..<.t.....<.t.*
000050 56bb0700 b40ecd10 5eebf0eb febf0500 *V.......^.......*
000060 bb007cb8 010257cd 135f730c 33c0cd13 *..|...W.._s.3...*
000070 4f75edbe a306ebd3 bec206bf fe7d813d *Ou...........}.=*
000080 55aa75c7 8bf5ea00 7c000049 6e76616c *U.u.....|..Inval*
000090 69642070 61727469 74696f6e 20746162 *id partition tab*
0000a0 6c650045 72726f72 206c6f61 64696e67 *le.Error loading*
0000b0 206f7065 72617469 6e672073 79737465 * operating syste*
0000c0 6d004d69 7373696e 67206f70 65726174 *m.Missing operat*
0000d0 696e6720 73797374 656d0000 00000000 *ing system......*
0000e0 00000000 00000000 00000000 00000000 *................*
0000f0 TO 0001af SAME AS ABOVE
0001b0 00000000 00000000 00000000 00008001 *................*
0001c0 0100060d fef83e00 00000678 0d000000 *......>....x....*
0001d0 00000000 00000000 00000000 00000000 *................*
0001e0 00000000 00000000 00000000 00000000 *................*
0001f0 00000000 00000000 00000000 000055aa *..............U.*

=====

Here is the disassembly of the MBR...

This sector is initially loaded into memory at 0000:7c00 but
it immediately relocates itself to 0000:0600.

                 BEGIN:                      NOW AT 0000:7C00, RELOCATE

0000:7C00 FA            CLI                     disable int's
0000:7C01 33C0          XOR     AX,AX           set stack seg to 0000
0000:7C03 8ED0          MOV     SS,AX
0000:7C05 BC007C        MOV     SP,7C00         set stack ptr to 7c00
0000:7C08 8BF4          MOV     SI,SP           SI now 7c00
0000:7C0A 50            PUSH    AX
0000:7C0B 07            POP     ES              ES now 0000:7c00
0000:7C0C 50            PUSH    AX
0000:7C0D 1F            POP     DS              DS now 0000:7c00
0000:7C0E FB            STI                     allow int's
0000:7C0F FC            CLD                     clear direction
0000:7C10 BF0006        MOV     DI,0600         DI now 0600
0000:7C13 B90001        MOV     CX,0100         move 256 words (512 bytes)
0000:7C16 F2            REPNZ                   move MBR from 0000:7c00
0000:7C17 A5            MOVSW                      to 0000:0600
0000:7C18 EA1D060000    JMP     0000:061D       jmp to NEW_LOCATION

        NEW_LOCATION:                        NOW AT 0000:0600

0000:061D BEBE07      MOV     SI,07BE           point to first table entry
0000:0620 B304        MOV     BL,04             there are 4 table entries

        SEARCH_LOOP1:                        SEARCH FOR AN ACTIVE ENTRY

0000:0622 803C80      CMP     BYTE PTR [SI],80  is this the active entry?
0000:0625 740E        JZ      FOUND_ACTIVE      yes
0000:0627 803C00      CMP     BYTE PTR [SI],00  is this an inactive entry?
0000:062A 751C        JNZ     NOT_ACTIVE        no
0000:062C 83C610      ADD     SI,+10            incr table ptr by 16
0000:062F FECB        DEC     BL                decr count
0000:0631 75EF        JNZ     SEARCH_LOOP1      jmp if not end of table
0000:0633 CD18        INT     18                GO TO ROM BASIC

        FOUND_ACTIVE:                        FOUND THE ACTIVE ENTRY

0000:0635 8B14        MOV     DX,[SI]           set DH/DL for INT 13 call
0000:0637 8B4C02      MOV     CX,[SI+02]        set CH/CL for INT 13 call
0000:063A 8BEE        MOV     BP,SI             save table ptr

        SEARCH_LOOP2:                        MAKE SURE ONLY ONE ACTIVE ENTRY

0000:063C 83C610      ADD     SI,+10            incr table ptr by 16
0000:063F FECB        DEC     BL                decr count
0000:0641 741A        JZ      READ_BOOT         jmp if end of table
0000:0643 803C00      CMP     BYTE PTR [SI],00  is this an inactive entry?
0000:0646 74F4        JZ      SEARCH_LOOP2      yes

          NOT_ACTIVE:                        MORE THAN ONE ACTIVE ENTRY FOUND

0000:0648 BE8B06      MOV     SI,068B           display "Invld prttn tbl"

         DISPLAY_MSG:                        DISPLAY MESSAGE LOOP

0000:064B AC          LODSB                     get char of message
0000:064C 3C00        CMP     AL,00             end of message
0000:064E 740B        JZ      HANG              yes
0000:0650 56          PUSH    SI                save SI
0000:0651 BB0700      MOV     BX,0007           screen attributes
0000:0654 B40E        MOV     AH,0E             output 1 char of message
0000:0656 CD10        INT     10                   to the display
0000:0658 5E          POP     SI                restore SI
0000:0659 EBF0        JMP     DISPLAY_MSG       do it again

                HANG:                        HANG THE SYSTEM LOOP

0000:065B EBFE        JMP     HANG              sit and stay!

           READ_BOOT:                        READ ACTIVE PARITION BOOT RECORD

0000:065D BF0500      MOV     DI,0005           INT 13 retry count

           INT13RTRY:                        INT 13 RETRY LOOP

0000:0660 BB007C      MOV     BX,7C00
0000:0663 B80102      MOV     AX,0201           read 1 sector
0000:0666 57          PUSH    DI                save DI
0000:0667 CD13        INT     13                read sector into 0000:7c00
0000:0669 5F          POP     DI                restore DI
0000:066A 730C        JNB     INT13OK           jmp if no INT 13
0000:066C 33C0        XOR     AX,AX             call INT 13 and
0000:066E CD13        INT     13                   do disk reset
0000:0670 4F          DEC     DI                decr DI
0000:0671 75ED        JNZ     INT13RTRY         if not zero, try again
0000:0673 BEA306      MOV     SI,06A3           display "Errr ldng systm"
0000:0676 EBD3        JMP     DISPLAY_MSG       jmp to display loop

             INT13OK:                        INT 13 ERROR

0000:0678 BEC206      MOV     SI,06C2              "missing op sys"
0000:067B BFFE7D      MOV     DI,7DFE              point to signature
0000:067E 813D55AA    CMP     WORD PTR [DI],AA55   is signature correct?
0000:0682 75C7        JNZ     DISPLAY_MSG          no
0000:0684 8BF5        MOV     SI,BP                set SI
0000:0686 EA007C0000  JMP     0000:7C00            JUMP TO THE BOOT SECTOR
                                                      WITH SI POINTING TO
                                                      PART TABLE ENTRY

Messages here.

0000:0680 ........ ........ ......49 6e76616c *           Inval*
0000:0690 69642070 61727469 74696f6e 20746162 *id partition tab*
0000:06a0 6c650045 72726f72 206c6f61 64696e67 *le.Error loading*
0000:06b0 206f7065 72617469 6e672073 79737465 * operating syste*
0000:06c0 6d004d69 7373696e 67206f70 65726174 *m.Missing operat*
0000:06d0 696e6720 73797374 656d00.. ........ *ing system.     *

Data not used.

0000:06d0 ........ ........ ......00 00000000 *           .....*
0000:06e0 00000000 00000000 00000000 00000000 *................*
0000:06f0 00000000 00000000 00000000 00000000 *................*
0000:0700 00000000 00000000 00000000 00000000 *................*
0000:0710 00000000 00000000 00000000 00000000 *................*
0000:0720 00000000 00000000 00000000 00000000 *................*
0000:0730 00000000 00000000 00000000 00000000 *................*
0000:0740 00000000 00000000 00000000 00000000 *................*
0000:0750 00000000 00000000 00000000 00000000 *................*
0000:0760 00000000 00000000 00000000 00000000 *................*
0000:0770 00000000 00000000 00000000 00000000 *................*
0000:0780 00000000 00000000 00000000 00000000 *................*
0000:0790 00000000 00000000 00000000 00000000 *................*
0000:07a0 00000000 00000000 00000000 00000000 *................*
0000:07b0 00000000 00000000 00000000 0000.... *............    *

The partition table starts at 0000:07be.  Each partition table
entry is 16 bytes.  This table defines a single primary partition
which is also an active (bootable) partition.

0000:07b0 ........ ........ ........ ....8001 *            ....*
0000:07c0 0100060d fef83e00 00000678 0d000000 *......>....x....*
0000:07d0 00000000 00000000 00000000 00000000 *................*
0000:07e0 00000000 00000000 00000000 00000000 *................*
0000:07f0 00000000 00000000 00000000 0000.... *............    *

The last two bytes contain a 55AAH signature.

0000:07f0 ........ ........ ........ ....55aa *..............U.*

/end/
-- 
\\===============\\=======================\\
 \\  Hale Landis  \\      303-548-0567     \\
 // Niwot, CO USA // landis@sugs.tware.com //
//===============//=======================//


?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
美日韩一区二区| 中文字幕一区二区三区在线观看 | 欧美激情在线看| 丰满岳乱妇一区二区三区| 久久丝袜美腿综合| av午夜一区麻豆| 一区二区久久久| 精品视频在线免费看| 日本一区中文字幕| 久久亚区不卡日本| 91亚洲午夜精品久久久久久| 亚洲成人免费av| 久久亚洲影视婷婷| 在线一区二区视频| 日韩av网站在线观看| 精品乱人伦小说| 91美女片黄在线| 美日韩一区二区| 国产精品久久久久久久久搜平片| 91福利在线播放| 理论片日本一区| 亚洲视频免费观看| 日韩欧美一二三四区| a在线播放不卡| 人妖欧美一区二区| 国产精品国产三级国产普通话蜜臀| 91成人在线精品| 国产精品一区免费视频| 亚洲色图制服诱惑| 欧美精品一区二| 色香蕉成人二区免费| 另类小说欧美激情| 亚洲国产成人av| 欧美极品aⅴ影院| 91麻豆精品国产91久久久使用方法| 国产成人亚洲综合a∨猫咪| 亚洲不卡一区二区三区| 国产精品亲子伦对白| 日韩一区二区电影在线| 色呦呦一区二区三区| 国产成人在线电影| 美女一区二区视频| 亚洲狠狠爱一区二区三区| 国产午夜精品福利| 91精品国产乱码| 色婷婷久久久亚洲一区二区三区 | 午夜欧美在线一二页| 国产女人18水真多18精品一级做| 欧美日韩国产高清一区| 99久久精品免费精品国产| 国内偷窥港台综合视频在线播放| 亚洲地区一二三色| 最近中文字幕一区二区三区| 久久精品日韩一区二区三区| 91精品国产全国免费观看| 在线免费观看日本欧美| 99精品视频在线观看| 成人免费视频一区二区| 韩国精品在线观看| 精品一区二区三区在线播放视频| 视频一区视频二区中文| 亚洲综合一区二区三区| 亚洲精品久久嫩草网站秘色| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 91久久奴性调教| 99久久国产综合精品色伊| 国产精品一区二区x88av| 激情伊人五月天久久综合| 免费精品视频在线| 麻豆成人在线观看| 九九视频精品免费| 国产综合色在线视频区| 国产精品一区专区| 国产成人av网站| 丰满放荡岳乱妇91ww| 国产精品一区免费在线观看| 国产白丝精品91爽爽久久| 国产精品系列在线观看| 高清国产午夜精品久久久久久| 国产成人免费视频网站 | 99精品视频一区二区| 91丝袜美腿高跟国产极品老师| 91同城在线观看| 91国产免费看| 欧美一区二区三区男人的天堂| 欧美一区2区视频在线观看| 日韩欧美在线不卡| 久久久久久久综合日本| 中文字幕国产一区| 成人免费一区二区三区视频 | 亚洲欧美色图小说| 亚洲成人黄色小说| 久久精品国产在热久久| 国产精品自产自拍| 99久久国产综合精品色伊| 欧美性色欧美a在线播放| 日韩一卡二卡三卡| 国产色产综合色产在线视频| 亚洲欧洲综合另类在线| 石原莉奈在线亚洲二区| 国产一区欧美二区| 99久久婷婷国产精品综合| 欧美日韩亚洲综合在线| 26uuu国产在线精品一区二区| 中文欧美字幕免费| 亚洲韩国精品一区| 九九久久精品视频| 91片黄在线观看| 91精品国产一区二区三区蜜臀| 久久久久久久久一| 一级做a爱片久久| 久久电影网电视剧免费观看| 不卡一区二区在线| 欧美精品乱码久久久久久| 久久综合精品国产一区二区三区| 中文字幕一区av| 视频一区二区国产| 成人黄色综合网站| 欧美一级免费观看| 成人免费在线视频观看| 久久99久久久欧美国产| 色综合中文字幕国产 | 亚洲一区在线看| 国产麻豆日韩欧美久久| 欧美日韩在线播| 国产精品久久久久一区| 久久不见久久见免费视频1| 色综合一区二区| 久久久精品一品道一区| 日韩国产一二三区| 在线视频综合导航| 国产亚洲一区二区在线观看| 石原莉奈一区二区三区在线观看| 99麻豆久久久国产精品免费优播| 欧美v亚洲v综合ⅴ国产v| 亚洲线精品一区二区三区八戒| 成人一区二区三区在线观看| 日韩欧美国产综合一区| 偷拍亚洲欧洲综合| 91成人国产精品| 亚洲欧洲一区二区三区| 夫妻av一区二区| 久久综合中文字幕| 久久精品国产精品青草| 91精品国产91久久综合桃花| 一区二区三区在线视频观看| 97久久精品人人爽人人爽蜜臀 | 欧美α欧美αv大片| 亚洲成人www| 欧美性猛交xxxx乱大交退制版| 国产精品美女www爽爽爽| 国产精品亚洲а∨天堂免在线| 精品国产露脸精彩对白| 蜜臀va亚洲va欧美va天堂| 欧美精品色一区二区三区| 一区二区不卡在线视频 午夜欧美不卡在 | 亚洲成精国产精品女| 一本大道av一区二区在线播放| 国产精品美女久久福利网站| 成人激情综合网站| 国产精品灌醉下药二区| av亚洲精华国产精华精| 亚洲人成人一区二区在线观看| gogogo免费视频观看亚洲一| 国产精品女主播av| 99re6这里只有精品视频在线观看 99re8在线精品视频免费播放 | 欧美日韩夫妻久久| 日韩国产欧美一区二区三区| 717成人午夜免费福利电影| 日本亚洲三级在线| 91精品国产美女浴室洗澡无遮挡| 热久久免费视频| 精品国产乱码久久久久久久| 国产麻豆日韩欧美久久| 欧美国产一区视频在线观看| eeuss鲁片一区二区三区在线观看| 国产精品免费av| 在线视频一区二区三| 亚洲高清免费视频| 88在线观看91蜜桃国自产| 久久国产成人午夜av影院| 国产午夜精品久久| 91免费在线播放| 亚瑟在线精品视频| 精品国产髙清在线看国产毛片 | 亚洲精品水蜜桃| 欧美日韩中文精品| 久久精品99国产国产精| 国产亚洲综合色| 日本道色综合久久| 裸体健美xxxx欧美裸体表演| 国产日产欧美一区| 色偷偷久久人人79超碰人人澡| 午夜精品久久久久久久蜜桃app| 日韩欧美中文一区二区| 丁香啪啪综合成人亚洲小说| 亚洲第一成人在线| 国产欧美日韩麻豆91| 欧美色精品在线视频| 国产一区二区调教|