This is a Boot Sector written by as86,but I can't understand some directives
Code:
BOOTSEG =0x07c0 I think when the first sector is read into memory,it is placed in 07c0:0000h. If the directive "jmpi go,BOOTSEG" is not existed,the next directive is "mov ax ,cs" And when the directive "jmpi go,BOOTSEG" is existed ,the program would jump to 07c0:go . The next directive is "mov ax ,cs" too! I want to know does the directive "jmpi go,BOOTSEG" make any sense? |
The BIOS examines the contents of the boot sector and looks for certain details before being willing to transfer control to it. I'm pretty sure starting with that short jmp opcode is one of the requirements.
If the BIOS doesn't approve the boot sector contents, it skips the device in the boot sequence. |
All times are GMT -5. The time now is 04:28 AM. |